اكتشف التباين في تعداد الأنواع المهددة بالانقراض باستخدام Amazon Rekognition PlatoBlockchain Data Intelligence. البحث العمودي. عاي.

اكتشف التباين في أعداد الأنواع المهددة بالانقراض باستخدام Amazon Rekognition

يواجه كوكبنا أزمة انقراض عالمية. تقرير الامم المتحدة يُظهر عددًا مذهلاً من أكثر من مليون نوع يُخشى أن يكون على طريق الانقراض. تشمل الأسباب الأكثر شيوعًا للانقراض فقدان الموائل والصيد الجائر والأنواع الغازية. العديد من أسس الحفاظ على الحياة البريةوعلماء الأبحاث والمتطوعين و حراس مكافحة الصيد الجائر نعمل بلا كلل لمعالجة هذه الأزمة. سيؤدي الحصول على معلومات دقيقة ومنتظمة حول الحيوانات المهددة بالانقراض في البرية إلى تحسين قدرة دعاة حماية الحياة البرية على دراسة الأنواع المهددة بالانقراض والحفاظ عليها. يستخدم علماء الحياة البرية والموظفون الميدانيون كاميرات مزودة بمحفزات تعمل بالأشعة تحت الحمراء تسمى مصائد الكاميرا، ووضعها في أكثر المواقع فعالية في الغابات لالتقاط صور للحياة البرية. ثم تتم مراجعة هذه الصور يدويًا ، وهي عملية تستغرق وقتًا طويلاً.

في هذا المنشور ، نعرض الحل باستخدام تسميات Amazon Rekognition المخصصة جنبًا إلى جنب مع مصائد كاميرات استشعار الحركة لأتمتة هذه العملية للتعرف على الأنواع المولدة ودراستها. Rekognition Custom Labels هي خدمة رؤية حاسوبية مُدارة بالكامل تتيح للمطورين إنشاء نماذج مخصصة لتصنيف وتحديد الكائنات في الصور الخاصة والفريدة من نوعها لحالة الاستخدام الخاصة بهم. نحن بالتفصيل كيفية التعرف على أنواع الحيوانات المهددة بالانقراض من الصور التي تم جمعها من مصائد الكاميرات ، ورسم رؤى حول عدد سكانها ، واكتشاف البشر من حولهم. ستكون هذه المعلومات مفيدة لدعاة الحفاظ على البيئة ، الذين يمكنهم اتخاذ قرارات استباقية لإنقاذهم.

حل نظرة عامة

يوضح الرسم البياني التالي بنية الحل.

يستخدم هذا الحل خدمات الذكاء الاصطناعي والتقنيات بدون خادم والخدمات المدارة التالية لتنفيذ بنية قابلة للتطوير وفعالة من حيث التكلفة:

  • أمازون أثينا - خدمة استعلام تفاعلية بدون خادم تسهل تحليل البيانات في Amazon S3 باستخدام SQL القياسي
  • الأمازون CloudWatch - خدمة المراقبة والمراقبة التي تجمع بيانات المراقبة والتشغيل في شكل سجلات ومقاييس وأحداث
  • الأمازون DynamoDB - قاعدة بيانات ذات قيمة أساسية ومستندات توفر أداءً مكونًا من رقم واحد بالمللي ثانية على أي مقياس
  • AWS لامدا - خدمة حوسبة بدون خادم تتيح لك تشغيل التعليمات البرمجية استجابةً لمشغلات مثل التغييرات في البيانات أو التحولات في حالة النظام أو إجراءات المستخدم
  • أمازون QuickSight - خدمة ذكاء أعمال مدعومة بخوادم تعمل بنظام التعلم الآلي (ML) توفر رؤى ولوحات معلومات تفاعلية وتحليلات غنية
  • الأمازون إعادة الاعتراف - يستخدم ML لتحديد الكائنات والأشخاص والنصوص والمشاهد والأنشطة في الصور ومقاطع الفيديو ، وكذلك الكشف عن أي محتوى غير لائق
  • تسميات Amazon Rekognition المخصصة - يستخدم AutoML للمساعدة في تدريب النماذج المخصصة لتحديد الكائنات والمشاهد في الصور الخاصة باحتياجات عملك
  • خدمة Amazon Simple Queue Service (Amazon SQS) - خدمة قائمة انتظار مُدارة بالكامل للرسائل تتيح لك فصل الخدمات المصغرة والأنظمة الموزعة والتطبيقات التي لا تحتاج إلى خادم وتوسيع نطاقها
  • خدمة Amazon Simple Storage (Amazon S3) - يعمل كمخزن للعناصر للمستندات ويسمح بالإدارة المركزية باستخدام ضوابط وصول مضبوطة بدقة.

الخطوات عالية المستوى في هذا الحل هي كما يلي:

  1. تدريب وبناء نموذج مخصص باستخدام Rekognition Custom Labels للتعرف على الأنواع المهددة بالانقراض في المنطقة. في هذا المنشور ، نتدرب على صور وحيد القرن.
  2. يتم تحميل الصور التي يتم التقاطها من خلال مصائد كاميرا مستشعر الحركة إلى حاوية S3 ، والتي تنشر حدثًا لكل صورة يتم تحميلها.
  3. يتم تشغيل وظيفة Lambda لكل حدث يتم نشره ، والذي يسترد الصورة من حاوية S3 ويمررها إلى النموذج المخصص لاكتشاف الحيوانات المهددة بالانقراض.
  4. تستخدم وظيفة Lambda واجهة Amazon Rekognition API لتحديد الحيوانات في الصورة.
  5. إذا كانت الصورة تحتوي على أي أنواع مهددة بالانقراض من وحيد القرن ، تقوم الوظيفة بتحديث قاعدة بيانات DynamoDB بعدد الحيوانات وتاريخ التقاط الصورة والبيانات الوصفية المفيدة الأخرى التي يمكن استخلاصها من الصورة EXIF رأس.
  6. يتم استخدام QuickSight لتصور عدد الحيوانات وبيانات الموقع التي تم جمعها في قاعدة بيانات DynamoDB لفهم التباين في أعداد الحيوانات بمرور الوقت. من خلال النظر إلى لوحات المعلومات بانتظام ، يمكن لمجموعات الحفظ تحديد الأنماط وعزل الأسباب المحتملة مثل الأمراض أو المناخ أو الصيد الجائر الذي قد يتسبب في هذا التباين واتخاذ خطوات استباقية لمعالجة المشكلة.

المتطلبات الأساسية المسبقة

مطلوب مجموعة تدريب جيدة لبناء نموذج فعال باستخدام Rekognition Custom Labels. لقد استخدمنا الصور من AWS Marketplace (مجموعة بيانات الحيوانات والحياة البرية من Shutterstock) و Kaggle لبناء النموذج.

تنفيذ الحل

يتضمن سير العمل لدينا الخطوات التالية:

  1. تدريب نموذج مخصص لتصنيف الأنواع المهددة بالانقراض (وحيد القرن في مثالنا) باستخدام قدرة AutoML في Rekognition Custom Labels.

يمكنك أيضًا تنفيذ هذه الخطوات من وحدة التحكم Rekognition Custom Labels. للحصول على تعليمات ، راجع خلق المشروع, إنشاء مجموعات بيانات التدريب والاختبارو تدريب نموذج Amazon Rekognition Custom Labels.

في هذا المثال ، نستخدم مجموعة البيانات من Kaggle. يلخص الجدول التالي محتويات مجموعة البيانات.

تُشير عدة التدريبات مجموعة الاختبار
أسد 625 156
وحيد القرن 608 152
فيل أفريقي 368 92
  1. قم بتحميل الصور الملتقطة من مصائد الكاميرا إلى حاوية S3 المخصصة.
  2. حدد إخطارات الحدث في أذونات قسم من حاوية S3 لإرسال إشعار إلى قائمة انتظار SQS محددة عند إضافة كائن إلى الحاوية.

تحديد إعلام الحدث

يؤدي إجراء التحميل إلى تشغيل حدث موجود في قائمة الانتظار في Amazon SQS باستخدام إشعار حدث Amazon S3.

  1. أضف الأذونات المناسبة عبر سياسة الوصول الخاصة بقائمة انتظار SQS للسماح لحاوية S3 بإرسال الإشعار إلى قائمة الانتظار.

ML-9942- حدث لا

  1. قم بتكوين مشغل Lambda لقائمة انتظار SQS بحيث يتم استدعاء وظيفة Lambda عند استلام رسالة جديدة.

الزناد لامدا

  1. قم بتعديل نهج الوصول للسماح لوظيفة Lambda بالوصول إلى قائمة انتظار SQS.

سياسة الوصول إلى وظيفة Lambda

يجب أن تمتلك وظيفة Lambda الآن الأذونات الصحيحة للوصول إلى قائمة انتظار SQS.

أذونات وظيفة Lambda

  1. قم بإعداد متغيرات البيئة بحيث يمكن الوصول إليها في الكود.

متغيرات البيئة

رمز وظيفة Lambda

تؤدي وظيفة Lambda المهام التالية عند تلقي إشعار من قائمة انتظار SNS:

  1. قم بإجراء مكالمة API إلى Amazon Rekognition لاكتشاف الملصقات من النموذج المخصص الذي يحدد الأنواع المهددة بالانقراض:
exports.handler = async (event) => {
const id = AWS.util.uuid.v4();
const bucket = event.Records[0].s3.bucket.name;
const photo = decodeURIComponent(event.Records[0].s3.object.key.replace(/+/g, ' '));
const client = new AWS.Rekognition({ region: REGION });
const paramsCustomLabel = {
Image: {
S3Object: {
Bucket: bucket,
Name: photo
},
},
ProjectVersionArn: REK_CUSTOMMODEL,
MinConfidence: MIN_CONFIDENCE
}
let response = await client.detectCustomLabels(paramsCustomLabel).promise();
console.log("Rekognition customLabels response = ",response);

  1. قم بإحضار علامات EXIF ​​من الصورة للحصول على تاريخ التقاط الصورة وبيانات EXIF ​​الأخرى ذات الصلة. يستخدم الكود التالي التبعيات (الحزمة - الإصدار) exif-reader - ^ 1.0.3 ، sharp - ^ 0.30.7:
const getExifMetaData = async (bucket,key)=>{
return new Promise((resolve) => {
const s3 = new AWS.S3({ region: REGION });
const param = {
Bucket: bucket,
Key : key
};

s3.getObject(param, (error, data) => {
if (error) {
console.log("Error getting S3 file",error);
resolve({status:false,errorText: error.message});
} else {
sharp(data.Body)
.metadata()
.then(({ exif }) => {
const exifProperties = exifReader(exif);
resolve({status:true,exifProp: exifProperties});
}).catch(err => {console.log("Error Processing Exif ");resolve({status:false});})
}
});
});
}

var gpsData = "";
var createDate = "";
const imageS3 = await getExifMetaData(bucket, photo);
if(imageS3.status){
gpsData = imageS3.exifProp.gps;
createDate = imageS3.exifProp.image.CreateDate;
}else{
createDate = event.Records[0].eventTime;
console.log("No exif found in image, setting createDate as the date of event", createDate);
}

الحل الموضح هنا غير متزامن ؛ يتم التقاط الصور بواسطة مصائد الكاميرا ثم يتم تحميلها في وقت لاحق إلى حاوية S3 للمعالجة. إذا تم تحميل صور مصيدة الكاميرا بشكل متكرر ، فيمكنك توسيع الحل لاكتشاف البشر في المنطقة المراقبة وإرسال إخطارات إلى النشطاء المعنيين للإشارة إلى الصيد الجائر المحتمل بالقرب من هذه الحيوانات المهددة بالانقراض. يتم تنفيذ ذلك من خلال وظيفة Lambda التي تستدعي Amazon Rekognition API لاكتشاف الملصقات الخاصة بوجود الإنسان. إذا تم الكشف عن شخص ما ، يتم تسجيل رسالة خطأ في CloudWatch Logs. يؤدي المقياس المفلتر في سجل الأخطاء إلى تشغيل إنذار CloudWatch الذي يرسل بريدًا إلكترونيًا إلى نشطاء الحفظ ، الذين يمكنهم بعد ذلك اتخاذ مزيد من الإجراءات.

  1. قم بتوسيع الحل بالكود التالي:
const paramHumanLabel = {
Image: {
S3Object: {
Bucket: bucket,
Name: photo
},
},
MinConfidence: MIN_CONFIDENCE
}

let humanLabel = await client.detectLabels(paramHumanLabel).promise();
let humanFound = humanLabel.Labels.filter(obj => obj.Name === HUMAN);
var humanDetected = false;
if(humanFound.length > 0){
console.error("Human Face Detected");
humanDetected = true;
}

  1. إذا تم اكتشاف أي نوع من الأنواع المهددة بالانقراض ، تقوم وظيفة Lambda بتحديث DynamoDB بالعدد والتاريخ والبيانات الوصفية الاختيارية الأخرى التي يتم الحصول عليها من علامات EXIF ​​للصورة:
let dbresponse = await dynamo.putItem({
Item: {
id: { S: id },
type: { S: response.CustomLabels[0].Name },
image: {S : photo},
createDate: {S: createDate.toString()},
confidence: {S: response.CustomLabels[0].Confidence.toString()},
gps: {S: gpsData.toString()},
humanDetected: {BOOL: humanDetected}
},

TableName: ANIMAL_TABLENAME,
}).promise();

الاستعلام عن البيانات وتصورها

يمكنك الآن استخدام Athena و QuickSight لتصور البيانات.

  1. قم بتعيين جدول DynamoDB كمصدر بيانات لأثينا.مصدر بيانات DynamoDB
  1. أضف تفاصيل مصدر البيانات.

الخطوة المهمة التالية هي تحديد وظيفة Lambda التي تتصل بمصدر البيانات.

  1. اختار قم بإنشاء وظيفة Lambda.

وظيفة لامدا

  1. أدخل أسماء AthenaCatalogName و SpillBucket؛ يمكن أن يكون الباقي الإعدادات الافتراضية.
  2. انشر وظيفة الموصل.

موصل لامدا

بعد معالجة جميع الصور ، يمكنك استخدام QuickSight لتصور بيانات تباين السكان بمرور الوقت من أثينا.

  1. في وحدة تحكم Athena ، اختر مصدر بيانات وأدخل التفاصيل.
  2. اختار قم بإنشاء وظيفة Lambda لتوفير موصل إلى DynamoDB.

قم بإنشاء وظيفة Lambda

  1. في لوحة معلومات QuickSight ، اختر تحليل جديد و مجموعة بيانات جديدة.
  2. اختر أثينا كمصدر للبيانات.

أثينا كمصدر للبيانات

  1. أدخل الكتالوج وقاعدة البيانات والجدول للاتصال والاختيار أختار.

الكتالوج

  1. إنشاء مجموعة بيانات كاملة.

الكتالوج

يوضح الرسم البياني التالي عدد الأنواع المهددة بالانقراض التي تم التقاطها في يوم معين.

مخطط QuickSight

يتم تقديم بيانات GPS كجزء من علامات EXIF ​​للصورة الملتقطة. نظرًا لحساسية موقع هذه الحيوانات المهددة بالانقراض ، لم يكن لدى مجموعة البيانات الخاصة بنا موقع GPS. ومع ذلك ، فقد أنشأنا مخططًا جغرافيًا مكانيًا باستخدام بيانات محاكاة لإظهار كيف يمكنك تصور المواقع عندما تكون بيانات GPS متاحة.

الرسم البياني الجغرافي المكاني

تنظيف

لتجنب تكبد تكاليف غير متوقعة ، تأكد من إيقاف تشغيل خدمات AWS التي استخدمتها كجزء من هذا العرض التوضيحي - حاويات S3 وجدول DynamoDB و QuickSight و Athena ونموذج Rekognition Custom Labels المدرب. يجب عليك حذف هذه الموارد مباشرة عبر وحدات تحكم الخدمة الخاصة بكل منها إذا لم تعد بحاجة إليها. تشير إلى حذف نموذج Amazon Rekognition Custom Labels لمزيد من المعلومات حول حذف النموذج.

وفي الختام

في هذا المنشور ، قدمنا ​​نظامًا آليًا يحدد الأنواع المهددة بالانقراض ، ويسجل عدد سكانها ، ويقدم رؤى حول التباين في عدد السكان بمرور الوقت. يمكنك أيضًا توسيع الحل لتنبيه السلطات عندما يكون البشر (الصيادون المحتملون) بالقرب من هذه الأنواع المهددة بالانقراض. من خلال إمكانات الذكاء الاصطناعي / التعلم الآلي في Amazon Rekognition ، يمكننا دعم جهود مجموعات الحفظ لحماية الأنواع المهددة بالانقراض وأنظمتها البيئية.

لمزيد من المعلومات حول Rekognition Custom Labels ، يرجى الرجوع إلى بدء استخدام Amazon Rekognition Custom Labels و الإشراف على المحتوى. إذا كنت جديدًا في Rekognition Custom Labels ، فيمكنك استخدام المستوى المجاني الخاص بنا ، والذي يستمر لمدة 3 أشهر ويتضمن 10 ساعات تدريب مجانية شهريًا و 4 ساعات استدلال مجانية كل شهر. تتضمن Amazon Rekognition Free Tier معالجة 5,000 صورة شهريًا لمدة 12 شهرًا.


حول المؤلف

الكاتب- jyothiجيوثي جودار هو Partner Solutions Architect Manager في AWS. تعمل بشكل وثيق مع شريك عالمي في تكامل النظام لتمكين العملاء ودعمهم من نقل أعباء العمل الخاصة بهم إلى AWS.

اكتشف التباين في تعداد الأنواع المهددة بالانقراض باستخدام Amazon Rekognition PlatoBlockchain Data Intelligence. البحث العمودي. عاي.جاي راو هو مهندس حلول رئيسي في AWS. يستمتع بتقديم التوجيه الفني والاستراتيجي للعملاء ومساعدتهم في تصميم وتنفيذ الحلول على AWS.

الطابع الزمني:

اكثر من التعلم الآلي من AWS