في قطاع الزراعة ، تلعب مشكلة تحديد وحساب كمية الفاكهة على الأشجار دورًا مهمًا في تقدير المحاصيل. أصبح مفهوم تأجير الشجرة واستئجارها شائعًا ، حيث يستأجر مالك الشجرة الشجرة كل عام قبل الحصاد بناءً على حصاد الفاكهة المقدرة. تعد الممارسة الشائعة المتمثلة في عد الفاكهة يدويًا عملية تستغرق وقتًا طويلاً وتتطلب جهدًا كثيفًا. إنها واحدة من أصعب المهام ولكن أهمها للحصول على نتائج أفضل في نظام إدارة المحاصيل الخاص بك. يساعد تقدير كمية الفاكهة والزهور المزارعين على اتخاذ قرارات أفضل - ليس فقط بشأن أسعار الإيجار ، ولكن أيضًا بشأن ممارسات الزراعة والوقاية من أمراض النبات.
هذا هو المكان الذي يمكن أن يساعد فيه حل التعلم الآلي (ML) لرؤية الكمبيوتر (CV) المزارعين. تسميات Amazon Rekognition المخصصة هي خدمة رؤية حاسوبية مُدارة بالكامل تسمح للمطورين ببناء نماذج مخصصة لتصنيف وتحديد الكائنات في الصور التي تكون محددة وفريدة من نوعها لعملك.
لا تتطلب منك Rekognition Custom Labels أن يكون لديك أي خبرة سابقة في رؤية الكمبيوتر. يمكنك أن تبدأ ببساطة بتحميل عشرات الصور بدلاً من الآلاف. إذا تم تصنيف الصور بالفعل ، يمكنك البدء في تدريب نموذج ببضع نقرات. إذا لم يكن الأمر كذلك ، فيمكنك تسميتها مباشرة داخل وحدة التحكم Rekognition Custom Labels أو استخدام الحقيقة الأمازون SageMaker الأرض لتصنيفهم. تستخدم Rekognition Custom Labels تعلم النقل لفحص بيانات التدريب تلقائيًا ، وتحديد إطار النموذج الصحيح والخوارزمية ، وتحسين المعلمات الفائقة ، وتدريب النموذج. عندما تكون راضيًا عن دقة النموذج ، يمكنك البدء في استضافة النموذج المدرب بنقرة واحدة فقط.
في هذا المنشور ، نعرض كيف يمكنك بناء حل شامل باستخدام Rekognition Custom Labels لاكتشاف وعد الفاكهة لقياس العائد الزراعي.
حل نظرة عامة
نقوم بإنشاء نموذج مخصص لكشف الفاكهة باستخدام الخطوات التالية:
- قم بتسمية مجموعة بيانات بالصور التي تحتوي على الفاكهة باستخدام الحقيقة الأمازون SageMaker الأرض.
- قم بإنشاء مشروع في Rekognition Custom Labels.
- قم باستيراد مجموعة البيانات المصنفة الخاصة بك.
- درب النموذج.
- اختبر النموذج المخصص الجديد باستخدام نقطة نهاية API التي تم إنشاؤها تلقائيًا.
تتيح لك Rekognition Custom Labels إدارة عملية تدريب نموذج ML على وحدة تحكم Amazon Rekognition ، مما يبسط عملية تطوير النموذج الشامل والاستدلال.
المتطلبات الأساسية المسبقة
لإنشاء نموذج قياس العائد الزراعي ، تحتاج أولاً إلى إعداد مجموعة بيانات لتدريب النموذج عليها. بالنسبة لهذا المنشور ، تتكون مجموعة البيانات الخاصة بنا من صور الفاكهة. الصور التالية تظهر بعض الأمثلة.
لقد حصلنا على صورنا من حديقتنا الخاصة. يمكنك تنزيل ملفات الصور من ملف جيثب ريبو.
في هذا المنشور ، نستخدم فقط عددًا قليلاً من الصور لعرض حالة استخدام محصول الفاكهة. يمكنك تجربة المزيد من الصور.
لإعداد مجموعة البيانات الخاصة بك ، أكمل الخطوات التالية:
- خلق خدمة تخزين أمازون البسيطة دلو (أمازون S3).
- قم بإنشاء مجلدين داخل هذه المجموعة ، يسمى
raw_data
وtest_data
، لتخزين الصور لوضع العلامات واختبار النماذج. - اختار تحميل لتحميل الصور إلى مجلداتها الخاصة من GitHub repo.
الصور التي تم تحميلها غير مصنفة. يمكنك تسمية الصور في الخطوة التالية.
قم بتسمية مجموعة البيانات الخاصة بك باستخدام الحقيقة الأرضية
لتدريب نموذج ML ، تحتاج إلى صور معنونة. يوفر Ground Truth عملية سهلة لتسمية الصور. يتم تنفيذ مهمة وضع العلامات من قبل القوى العاملة البشرية ؛ في هذا المنشور ، تقوم بإنشاء قوة عاملة خاصة. يمكنك استخدام الأمازون ميكانيكي ترك لوصفها على نطاق واسع.
إنشاء قوة عاملة التسمية
لنقم أولاً بإنشاء قوة عاملة خاصة بوضع العلامات. أكمل الخطوات التالية:
- على وحدة تحكم SageMaker ، تحت الحقيقة الأرضية في جزء التنقل ، اختر القوى العاملة وضع العلامات.
- على خاص علامة التبويب، اختر إنشاء فريق خاص.
- في حالة اسم الفريق، أدخل اسمًا لقوى العمل لديك (بالنسبة لهذه المشاركة ،
labeling-team
). - اختار إنشاء فريق خاص.
- اختار قم بدعوة عمال جدد.
- في مجلة إضافة العمال عن طريق عنوان البريد الإلكتروني ، أدخل عناوين البريد الإلكتروني لعمالك. لهذا المنصب ، أدخل عنوان البريد الإلكتروني الخاص بك.
- اختار قم بدعوة عمال جدد.
لقد قمت بإنشاء قوة عاملة خاصة بالعلامات ، والتي ستستخدمها في الخطوة التالية أثناء إنشاء وظيفة التصنيف.
قم بإنشاء وظيفة وضع العلامات على الحقيقة الأرضية
لتحسين وظيفة التصنيف الخاصة بك ، أكمل الخطوات التالية:
- على وحدة تحكم SageMaker ، تحت الحقيقة الأرضية، اختر وضع العلامات على الوظائف.
- اختار إنشاء وظيفة وضع العلامات.
- في حالة اسم العمل، أدخل
fruits-detection
. - أختار أريد تحديد اسم سمة التسمية مختلفًا عن اسم مهمة التصنيف.
- في حالة اسم سمة التصنيفأدخل
Labels
. - في حالة إعداد بيانات الإدخال، حدد إعداد البيانات الآلي.
- في حالة موقع S3 لمجموعات بيانات الإدخال، أدخل موقع S3 للصور ، باستخدام الحاوية التي أنشأتها مسبقًا (
s3://{your-bucket-name}/raw-data/images/
). - في حالة موقع S3 لمجموعات بيانات الإخراج، حدد حدد موقعًا جديدًا وأدخل موقع الإخراج للبيانات المشروحة (
s3://{your-bucket-name}/annotated-data/
). - في حالة نوع البيانات، اختر صورة.
- اختار استكمال إعداد البيانات.
يؤدي هذا إلى إنشاء ملف بيان الصورة وتحديث مسار موقع إدخال S3. انتظر الرسالة "اتصال بيانات الإدخال ناجح". - وسع تكوين إضافي.
- أكد ذلك مجموعة بيانات كاملة يتم تحديد.
يستخدم هذا لتحديد ما إذا كنت تريد توفير جميع الصور لوظيفة وضع العلامات أو مجموعة فرعية من الصور بناءً على عوامل التصفية أو العينات العشوائية. - في حالة فئة المهمة، اختر صورة لأن هذه مهمة للتعليق التوضيحي للصورة.
- لأن هذه حالة استخدام للكشف عن كائن ، لـ اختيار المهام، حدد الصندوق المحيط.
- اترك الخيارات الأخرى كخيار افتراضي واختر التالى.
- اختار التالى.
أنت الآن تحدد العاملين لديك وتكوين أداة وضع العلامات. - في حالة أنواع العمال، حدد خاصفي هذا المنشور ، تستخدم قوة عاملة داخلية لإضافة تعليق توضيحي على الصور. لديك أيضًا خيار تحديد قوة عاملة تعاقدية عامة (أمازون ميكانيكال تورك) أو قوة عاملة شريكة (يدير البائع) حسب حالة الاستخدام الخاصة بك.
- بالنسبة للفرق الخاصة - اختر الفريق الذي أنشأته مسبقًا.
- اترك الخيارات الأخرى كخيار افتراضي وانتقل لأسفل إلى أداة وسم الصندوق المحيطمن الضروري تقديم تعليمات واضحة هنا في أداة وضع العلامات لفريق وضع العلامات الخاص. تعمل هذه التعليمات كدليل للمعلقين أثناء وضع العلامات. الإرشادات الجيدة موجزة ، لذلك نوصي بقصر التعليمات الشفوية أو النصية على جملتين والتركيز على التعليمات المرئية. في حالة تصنيف الصور ، نوصي بتوفير صورة واحدة معنونة في كل فئة كجزء من التعليمات.
- أضف تصنيفين:
fruit
وno_fruit
. - أدخل التعليمات التفصيلية في ملف حقل الوصف المراد تقديمه تعليمات للعمال. فمثلا:
You need to label fruits in the provided image. Please ensure that you select label 'fruit' and draw the box around the fruit just to fit the fruit for better quality of label data. You also need to label other areas which look similar to fruit but are not fruit with label 'no_fruit'
يمكنك أيضًا تقديم أمثلة اختياريًا على صور التصنيف الجيدة والسيئة. تحتاج إلى التأكد من أن هذه الصور متاحة للجمهور. - اختار إنشاء لإنشاء وظيفة وضع العلامات.
بعد إنشاء الوظيفة بنجاح ، فإن الخطوة التالية هي تسمية صور الإدخال.
ابدأ وظيفة الوسم
بمجرد إنشاء الوظيفة بنجاح ، تكون حالة الوظيفة InProgress
. هذا يعني أنه تم إنشاء الوظيفة وإخطار القوى العاملة الخاصة عبر البريد الإلكتروني فيما يتعلق بالمهمة الموكلة إليهم. نظرًا لأنك قمت بتعيين المهمة لنفسك ، يجب أن تتلقى بريدًا إلكترونيًا يحتوي على إرشادات لتسجيل الدخول إلى مشروع Ground Truth Labeling.
- افتح البريد الإلكتروني واختر الرابط المقدم.
- أدخل اسم المستخدم وكلمة المرور الواردة في البريد الإلكتروني.
قد تضطر إلى تغيير كلمة المرور المؤقتة الواردة في البريد الإلكتروني إلى كلمة مرور جديدة بعد تسجيل الدخول. - بعد تسجيل الدخول ، حدد وظيفتك واختر بدء العمل.
يمكنك استخدام الأدوات المتوفرة للتكبير والتصغير والتحريك ورسم المربعات المحيطة في الصور. - اختر التسمية الخاصة بك (
fruit
orno_fruit
) ثم ارسم مربعًا محيطًا في الصورة للتعليق عليها. - عندما تنتهي ، اختر تسجيل.
لقد قمت الآن بتسمية الصور التي سيتم استخدامها بواسطة نموذج ML للتدريب بشكل صحيح.
أنشئ مشروع Amazon Rekognition الخاص بك
لإنشاء مشروع قياس العائد الزراعي ، أكمل الخطوات التالية:
- في وحدة تحكم Amazon Rekognition ، اختر تسميات مخصصة.
- اختار البدء.
- في حالة اسم المشروع، أدخل
fruits_yield
. - اختار إنشاء مشروع.
يمكنك أيضًا إنشاء مشروع على المشاريع الصفحة. يمكنك الوصول إلى ملف المشاريع الصفحة عبر جزء التنقل. الخطوة التالية هي توفير الصور كمدخلات.
قم باستيراد مجموعة البيانات الخاصة بك
لإنشاء نموذج قياس العائد الزراعي ، تحتاج أولاً إلى استيراد مجموعة بيانات لتدريب النموذج باستخدامه. بالنسبة لهذا المنشور ، تم تصنيف مجموعة البيانات الخاصة بنا بالفعل باستخدام Ground Truth.
- في حالة استيراد الصور، حدد استيراد الصور المسمى SageMaker Ground Truth.
- في حالة موقع ملف البيان، أدخل موقع حاوية S3 لملف البيان الخاص بك (
s3://{your-bucket-name}/fruits_image/annotated_data/fruits-labels/manifests/output/output.manifest
). - اختار إنشاء مجموعة بيانات.
يمكنك رؤية مجموعة البيانات المصنفة الخاصة بك.
الآن لديك مجموعة بيانات الإدخال الخاصة بك لنموذج ML لبدء التدريب عليها.
تدريب نموذجك
بعد تسمية صورك ، تكون جاهزًا لتدريب نموذجك.
انتظر حتى يكتمل التدريب. الآن يمكنك البدء في اختبار الأداء لهذا النموذج المدرب.
اختبر نموذجك
نموذج قياس العائد الزراعي الخاص بك جاهز الآن للاستخدام ويجب أن يكون في Running
حالة. لاختبار النموذج ، أكمل الخطوات التالية:
الخطوة 1: ابدأ النموذج
في صفحة تفاصيل الطراز الخاص بك ، على استخدم النموذج علامة التبويب، اختر آبدأ.
توفر Rekognition Custom Labels أيضًا استدعاءات واجهة برمجة التطبيقات لبدء نموذجك واستخدامه وإيقافه.
الخطوة 2: اختبر النموذج
عندما يكون النموذج في Running
الدولة ، يمكنك استخدام نموذج البرنامج النصي للاختبار analyzeImage.py
لحساب كمية الفاكهة في الصورة.
- قم بتنزيل هذا البرنامج النصي من ملف جيثب ريبو.
- قم بتحرير هذا الملف لاستبدال المعلمة
bucket
مع اسم الجرافة وmodel
مع نموذج Amazon Rekognition الخاص بك ARN.
نحن نستخدم المعلمات photo
و min_confidence
كمدخلات لهذا البرنامج النصي Python.
يمكنك تشغيل هذا البرنامج النصي محليًا باستخدام ملف واجهة سطر الأوامر AWS (AWS CLI) أو استخدام أوس كلاودشيل. في مثالنا ، قمنا بتشغيل البرنامج النصي عبر وحدة تحكم CloudShell. لاحظ أن CloudShell هو مجانا للاستخدام.
تأكد من تثبيت التبعيات المطلوبة باستخدام الأمر pip3 install boto3 PILLOW
إذا لم تكن مثبتة بالفعل.
تُظهر لقطة الشاشة التالية المخرجات التي كشفت عن ثمارتيْن في صورة الإدخال. قدمنا 15.jpeg كوسيطة للصورة و 85 كملف min_confidence
.
يوضح المثال التالي الصورة 15.jpeg مع اثنين من الصناديق المحيطة.
يمكنك تشغيل نفس البرنامج النصي مع الصور الأخرى والتجربة عن طريق تغيير درجة الثقة بشكل أكبر.
الخطوة 3: أوقف النموذج
عند الانتهاء ، تذكر أن تتوقف عن النموذج لتجنب تكبد رسوم غير ضرورية. في صفحة تفاصيل النموذج ، في علامة التبويب استخدام النموذج ، اختر إيقاف.
تنظيف
لتجنب تكبد رسوم غير ضرورية ، احذف الموارد المستخدمة في هذه الإرشادات عندما لا تكون قيد الاستخدام. نحتاج إلى حذف مشروع Amazon Rekognition وحاوية S3.
احذف مشروع Amazon Rekognition
لحذف مشروع Amazon Rekognition ، أكمل الخطوات التالية:
- في وحدة تحكم Amazon Rekognition ، اختر استخدم التسميات المخصصة.
- اختار إبداء الأن.
- في جزء التنقل ، اختر المشاريع.
- على المشاريع الصفحة ، حدد المشروع الذي تريد حذفه.
- اختار حذف.
• حذف المشروع يظهر مربع الحوار.
- اختار حذف.
- إذا لم يكن للمشروع نماذج مرتبطة:
- أدخل حذف لحذف المشروع.
- اختار حذف لحذف المشروع.
- إذا كان المشروع يحتوي على نماذج أو مجموعات بيانات مرتبطة:
- أدخل حذف لتأكيد رغبتك في حذف النموذج ومجموعات البيانات.
- اختيار إما حذف النماذج المرتبطة, حذف مجموعات البيانات المرتبطةالطرق أو احذف مجموعات البيانات والنماذج المرتبطة، اعتمادًا على ما إذا كان النموذج يحتوي على مجموعات بيانات أو نماذج أو كليهما.
قد يستغرق حذف النموذج بعض الوقت حتى يكتمل. لاحظ أن وحدة تحكم Amazon Rekognition لا يمكنها حذف النماذج قيد التدريب أو قيد التشغيل. حاول مرة أخرى بعد إيقاف أي نماذج قيد التشغيل مدرجة ، وانتظر حتى تكتمل النماذج المدرجة كتدريب. إذا قمت بإغلاق مربع الحوار أثناء حذف النموذج ، فلا يزال يتم حذف النماذج. لاحقًا ، يمكنك حذف المشروع بتكرار هذا الإجراء.
- أدخل حذف لتأكيد رغبتك في حذف المشروع.
- اختار حذف لحذف المشروع.
احذف حاوية S3
تحتاج أولاً إلى تفريغ الحاوية ثم حذفها.
- على الأمازون S3 وحدة ، اختر الدلاء.
- حدد الحاوية التي تريد إفراغها ، ثم اختر فارغ.
- قم بتأكيد رغبتك في إفراغ الحاوية عن طريق إدخال اسم المجموعة في حقل النص ، ثم اختر فارغ.
- اختار حذف.
- أكد رغبتك في حذف الحاوية عن طريق إدخال اسم المجموعة في حقل النص ، ثم اختر حذف دلو.
وفي الختام
في هذا المنشور ، أوضحنا لك كيفية إنشاء نموذج اكتشاف كائن باستخدام Rekognition Custom Labels. تسهل هذه الميزة تدريب نموذج مخصص يمكنه اكتشاف فئة الكائن دون الحاجة إلى تحديد كائنات أخرى أو فقدان الدقة في نتائجه.
لمزيد من المعلومات حول استخدام التسميات المخصصة ، راجع ما هي ملصقات Amazon Rekognition المخصصة؟
عن المؤلفين
ديراج ثكور هو مهندس حلول مع Amazon Web Services. إنه يعمل مع عملاء وشركاء AWS لتقديم إرشادات حول اعتماد سحابة المؤسسة وترحيلها واستراتيجيتها. إنه متحمس للتكنولوجيا ويستمتع بالبناء والتجريب في مجال التحليلات و AI / ML.
سمير جويل هو مهندس حلول كبير في هولندا ، يقود نجاح العملاء من خلال بناء نماذج أولية على أحدث المبادرات. قبل انضمامه إلى AWS ، تخرج سمير بدرجة الماجستير من بوسطن ، مع التركيز على علوم البيانات. إنه يستمتع ببناء وتجريب مشاريع الذكاء الاصطناعي / التعلم الآلي على Raspberry Pi. يمكنك أن تجده على لينكدين:.
- AI
- ai الفن
- مولد الفن ai
- الروبوت ai
- الأمازون إعادة الاعتراف
- الذكاء الاصطناعي
- شهادة الذكاء الاصطناعي
- الذكاء الاصطناعي في البنوك
- روبوت ذكاء اصطناعي
- روبوتات الذكاء الاصطناعي
- برنامج ذكاء اصطناعي
- التعلم الآلي من AWS
- سلسلة كتلة
- مؤتمر blockchain ai
- عملة عبقرية
- الذكاء الاصطناعي للمحادثة
- مؤتمر التشفير ai
- دال
- التعلم العميق
- google ai
- آلة التعلم
- أفلاطون
- أفلاطون ع
- الذكاء افلاطون البيانات
- لعبة أفلاطون
- أفلاطون داتا
- بلاتوغمينغ
- مقياس ai
- بناء الجملة
- زفيرنت