تتيح لك مهمة التعرّف على الإيماءة MediaPipe التعرف على إيماءات اليد في الوقت الفعلي نتائج إيماءة اليد المعروفة إلى جانب معالم الأيدي المرصودة. يمكنك استخدام هذه المهمة للتعرف على إيماءات يد معينة من واستدعاء ميزات التطبيق التي تتوافق مع تلك الإيماءات.
تعمل هذه المهمة على بيانات الصور باستخدام نموذج تعلُّم الآلة (ML)، وتقبل إما بيانات ثابتة أو تدفقًا مستمرًا. تنتج المهمة تسليم المعالم في إحداثيات الصورة، معالم اليد في إحداثيات العالم، استخدام اليدين (اليد اليسرى أو اليمنى) وفئات إيماءات اليد المتعددة اليدين.
البدء
يمكنك بدء استخدام هذه المهمة باتّباع أحد أدلة التنفيذ هذه المنصة المستهدفة. ترشدك هذه الأدلة الخاصة بنظام التشغيل خلال تنفيذ هذه المهمة، باستخدام نموذج مقترح، وتقديم أمثلة على التعليمات البرمجية مع خيارات الضبط المقترَحة:
- Android - مثال على الرمز - الدليل
- Python - مثال على الرمز - الدليل
- الويب - مثال على الرمز - الدليل
تفاصيل المهمة
يصف هذا القسم الإمكانات والمدخلات والمخرجات والإعدادات. الخيارات لهذه المهمة.
الميزات
- معالجة إدخال الصور - تشمل المعالجة تدوير الصور وتغيير حجمها والتسوية وتحويل مساحة اللون.
- الحد الأدنى للنتيجة: فلترة النتائج استنادًا إلى نتائج التوقّع.
- القائمة المسموح بها للتصنيفات وقائمة الحظر: تحديد فئات الإيماءات من خلال النموذج.
إدخالات المهام | نتائج المهام |
---|---|
تقبل ميزة "التعرّف على الإيماءة" إدخال أحد أنواع البيانات التالية:
|
تُنتج "أداة التعرّف على الإيماءة" النتائج التالية:
|
خيارات الإعدادات
تتضمّن هذه المهمة خيارات الضبط التالية:
اسم الخيار | الوصف | نطاق القيمة | القيمة الافتراضية | |
---|---|---|---|---|
running_mode |
لضبط وضع التشغيل للمهمة. هناك ثلاثة
وسائل النقل: IMAGE: وضع إدخالات الصورة الفردية فيديو: وضع الإطارات التي تم فك ترميزها لفيديو معيّن LIVE_STREAM: وضع البث المباشر للإدخال البيانات، مثل تلك الواردة من الكاميرا. في هذا الوضع، يجب أن يكون resultListener يتم استدعاءها لإعداد مستمع للحصول على النتائج بشكل غير متزامن. |
{IMAGE, VIDEO, LIVE_STREAM } |
IMAGE |
|
num_hands |
يمكن اكتشاف الحد الأقصى لعدد الأيدي من خلال
GestureRecognizer .
|
Any integer > 0 |
1 |
|
min_hand_detection_confidence |
الحد الأدنى لنتيجة الثقة لرصد اليد تُعد ناجحة في نموذج اكتشاف راحة اليد. | 0.0 - 1.0 |
0.5 |
|
min_hand_presence_confidence |
الحد الأدنى لدرجة الثقة في نتيجة التواجد باليد نموذج اكتشاف المعالم. في وضع "الفيديو" ووضع البث المباشر في "أداة التعرّف على الإيماءة"، إذا كانت نتيجة الثقة باليد من خلال نموذج المعالم على اليد أقل من هذا الحد، فإنها تؤدي إلى نموذج اكتشاف راحة اليد. بخلاف ذلك، استخدام خوارزمية تتبع اليد البسيطة لتحديد موقع اليد(الأيدي) لاكتشاف المعالم لاحقًا. | 0.0 - 1.0 |
0.5 |
|
min_tracking_confidence |
يشير ذلك المصطلح إلى الحد الأدنى لدرجة الثقة التي يجب أن يراعيها تتبُّع اليد. وناجح. هذا هو الحد الأدنى لحجم صندوق الإحاطة بين اليدين في الإطار الحالي والإطار الأخير. في وضع الفيديو ووضع البث في أداة التعرّف على الإيماءة، في حال تعذّر التتبُّع، تعمل ميزة التعرّف على الإيماءة على تشغيل اليد الرصد. وبخلاف ذلك، يتم تخطي اكتشاف اليد. | 0.0 - 1.0 |
0.5 |
|
canned_gestures_classifier_options |
خيارات تهيئة سلوك مصنف الإيماءات الجاهزة. الإيماءات الجاهزة هي ["None", "Closed_Fist", "Open_Palm", "Pointing_Up", "Thumb_Down", "Thumb_Up", "Victory", "ILoveYou"] |
|
|
|
custom_gestures_classifier_options |
خيارات ضبط سلوك مصنِّف الإيماءات المخصّصة |
|
|
|
result_callback |
تعمل هذه السياسة على ضبط أداة معالجة النتائج لتلقّي نتائج التصنيف.
بشكل غير متزامن عندما تكون أداة التعرّف على الإيماءات في وضع البث المباشر
لا يمكن استخدام الإذن إلا عند ضبط "وضع التشغيل" على LIVE_STREAM |
ResultListener |
لا ينطبق | لا ينطبق |
النماذج
تستخدم أداة التعرّف على الإيماءة حزمة نموذج مع حزمتَي نماذج معبّأتَين مسبقًا: حزمة نموذج معلم اليد وحزمة نموذج تصنيف الإيماءات. تشير رسالة الأشكال البيانية يرصد نموذج المعالم وجود أيدي وأشكال هندسية لليد، وتبدأ الإيماءة نموذج التعرف على الإيماءات بناءً على هندسة اليد.
اسم الطراز | شكل الإدخال | نوع الكمية | بطاقة الطراز | الإصدارات |
---|---|---|---|---|
HandGestureClassifier | 192 × 192، 224 × 224 | العدد العائم 16 | المعلومات | الأحدث |
تدعم هذه المهمة أيضًا تعديل حزمة النموذج باستخدام مصمم النماذج. لمزيد من المعلومات عن استخدام مصمم النماذج لتخصيص نماذج لهذه المهمة، راجِع صفحة تخصيص النماذج لأداة التعرّف على الإيماءة.
حزمة نموذج معلم اليد
ترصد حِزمة نموذج المَعالم اليدوية طريقة أقلمة النقاط الرئيسية لـ 21 قاطعًا لليد. الإحداثيات داخل مناطق اليد التي تم اكتشافها. تم تدريب النموذج على ما يقرب من 30 ألف صورة من العالم الحقيقي، بالإضافة إلى العديد من اليد الاصطناعية المعروضة نماذج مفروضة على خلفيات مختلفة. اطلع على تعريف المعالم الـ 21 أدناه:
تحتوي حزمة نموذج معلم اليد على نموذج اكتشاف راحة اليد نموذج اكتشاف معالم اليد. يحدد نموذج اكتشاف راحة اليد منطقة بالأيدي من الصورة المدخلة بالكامل، ويعثر نموذج اكتشاف المعالم باليد على المعالم على صورة اليد التي تم اقتصاصها والمحددة في نموذج اكتشاف راحة اليد
وبما أنّ نموذج رصد راحة اليد يستغرق وقتًا أطول، يمكنك استخدام وضع "الفيديو" أو "البث المباشر". وضع البث: تستخدم أداة التعرّف على الإيماءة مربّع الإحاطة الذي تم تحديده من خلال اليد التي تم رصدها في الإطار الحالي لترجمة منطقة الأيدي في المرحلة التالية الإطار. ويقلل هذا من عدد المرات التي تشغِّل فيها "أداة التعرّف على الإيماءة" نموذج رصد راحة اليد. فقط عندما لا يتمكن نموذج المعالم اليدوية من تحديد القدرات المطلوبة أو عدد اليدين أو فشل التتبع باليد، فإن نموذج كشف راحة اليد لإعادة تحديد موضع الأيدي.
حزمة نموذج تصنيف الإيماءات
يمكن لحزمة نموذج تصنيف الإيماءة التعرف على إيماءات اليد الشائعة التالية:
0 - Unrecognized gesture, label: Unknown
1 - Closed fist, label: Closed_Fist
2 - Open palm, label: Open_Palm
3 - Pointing up, label: Pointing_Up
4 - Thumbs down, label: Thumb_Down
5 - Thumbs up, label: Thumb_Up
6 - Victory, label: Victory
7 - Love, label: ILoveYou
إذا اكتشف النموذج اليدين ولم يتعرف على الإيماءة، فإن الإيماءة أداة التعرف على أنها تعرض نتيجة "بلا". إذا لم يكتشف النموذج اليدين، أداة التعرّف على الإيماءات تكون فارغة.
تحتوي حزمة نموذج تصنيف الإيماءات على مسار شبكة عصبية من خطوتين باستخدام نموذج تضمين إيماءة متبوعًا بنموذج تصنيف الإيماءات. يمكنك الاطّلاع على مزيد من التفاصيل في بطاقة نموذج تصنيف الإيماءة.
يقوم نموذج تضمين الإيماءة بترميز ميزات الصورة في متجه الخصائص، فإن نموذج التصنيف عبارة عن مصنِّف إيماءات خفيف يستخدم الميزة الخط المتجه كمدخل. تحتوي حزمة نموذج تصنيف الإيماءات المقدمة على مصنف الإيماءات الجاهزة، الذي يكتشف الإيماءات السبع الشائعة لليد أعلاه. يمكنك توسيع حزمة النموذج للتعرّف على المزيد من الإيماءات من خلال التدريب مصنِّف الإيماءات المخصص الخاص بك. يمكنك الاطّلاع على مزيد من التفاصيل في ما يلي: قسم النماذج المخصّصة.
أداة التعرّف على الإيماءة في كلّ من مصنِّف الإيماءات الجاهز ومصنِّف الإيماءات المخصَّص يفضل الإيماءة المخصصة إذا تعرف كلا المصنفين على الإيماءة نفسها في فئاتها. إذا تعرّف مصنف إيماءة واحد فقط على الإيماءة، تُخرج "أداة التعرّف على الإيماءة" الإيماءة التي يتم التعرّف عليها مباشرةً.
مقاييس أداء المهام
إليك معايير المهام لمسار العملية بالكامل بناءً على ما سبق نماذج مدرّبة مسبقًا. نتيجة وقت الاستجابة هي متوسط وقت الاستجابة على هاتف Pixel 6 باستخدام وحدة المعالجة المركزية (CPU) / وحدة معالجة الرسومات (GPU)
اسم النموذج | وقت استجابة وحدة المعالجة المركزية (CPU) | وقت استجابة وحدة معالجة الرسومات |
---|---|---|
GestureRecognizer | 16.76 ملي ثانية | 20.87 ملي ثانية |
النماذج المخصّصة
إذا كنت ترغب في تحسين أو تغيير إمكانات النماذج المقدمة في هذا
يمكنك استخدام مصمم النماذج لتعديل النماذج الحالية. النماذج المخصّصة المستخدمة
مع MediaPipe يجب أن يكون بتنسيق .task
، وهو ملف حزمة نموذج. إِنْتَ
استخدام مصمم النماذج لتعديل النماذج المتوفرة لهذه المهمة
قبل إنشاء إعلانك الخاص.
لمزيد من المعلومات عن تخصيص نموذج لهذه المهمة، يُرجى الاطّلاع على تخصيص النماذج لميزة "التعرّف على الإيماءة"