دليل تصنيف الصوت

شكل موجي لصوت عصفور معروض فوق صورة لل🕊عصفور الذي يتطابق شكل موجي صوته مع الشكل المعروض

تتيح لك مهمة "تصنيف المحتوى الصوتي" من MediaPipe تصنيف المقاطع الصوتية إلى مجموعة من الفئات المحدّدة، مثل موسيقى الغيتار أو صافرة القطار أو أغنية الطيور. يتم تحديد الفئات أثناء تدريب النموذج. تعمل هذه المهمة على البيانات الصوتية باستخدام نموذج تعلُّم آلي (ML) كمقطع صوتي مستقل أو مجرى بث باستمرار، وتُخرج قائمة بالفئات المحتمَلة مرتّبة حسب نتيجة الاحتمالية التنازلية.

ننصحك بتجربة الميزة.

البدء

ابدأ استخدام هذه المهمة باتّباع أحد أدلة التنفيذ هذه ل منصّتك المستهدفة. ترشدك هذه الأدلة الخاصة بالنظام الأساسي إلى تنفيذ أساسي لهذه المهمة، بما في ذلك نموذج مقترَح ومثال على الرمز المبرمَج مع خيارات الإعداد المقترَحة:

ترشدك هذه الأدلة الخاصة بالنظام الأساسي إلى تنفيذ أساسي لهذه ال tâche، بما في ذلك نموذج مقترَح ومثال على الرمز البرمجي مع خيارات الإعداد المقترَحة.

تفاصيل المهمة

يصف هذا القسم ميزات هذه المهمة ومدخلاتها ومخرجاتها وخيارات الضبط.

الميزات

  • معالجة الصوت المُدخل: تشمل المعالجة إعادة تحليل الصوت والتخزين المؤقت والإطارات وتحويل فورييه.
  • لغة خريطة التصنيف: يمكنك ضبط اللغة المستخدَمة للأسماء المعروضة.
  • الحدّ الأدنى للنتيجة: فلترة النتائج استنادًا إلى نتائج التوقّعات
  • اكتشاف أهم k رقم: فلترة نتائج رصد الأرقام
  • تصنيف القائمة المسموح بها وقائمة الحظر: حدِّد الفئات التي تم رصدها.
مدخلات المهام نتائج المهام
يمكن أن يكون الإدخال أحد أنواع البيانات التالية:
  • مقاطع صوتية
  • البث الصوتي
تُصدِر ميزة "تصنيف المحتوى الصوتي" قائمة بالفئات التي تتضمّن ما يلي:
  • فهرس الفئة: فهرس الفئة في نواتج النموذج
  • النتيجة: نتيجة الثقة لهذه الفئة، وعادةً ما تكون احتمالية ضمن النطاق [0,1]
  • اسم الفئة (اختياري): اسم الفئة كما هو محدّد في البيانات الوصفية لنموذج TFLite، إن توفّرت
  • الاسم المعروض للفئة (اختياري): اسم معروض للفئة كما هو محدّد في البيانات الوصفية لطراز TFLite، باللغة المحدّدة من خلال خيارات لغات الأسماء المعروضة، إن توفّرت

خيارات الإعدادات

تتضمّن هذه المهمة خيارات الضبط التالية:

اسم الخيار الوصف نطاق القيمة القيمة التلقائية
running_mode لضبط وضع التشغيل للمهمة يتضمّن "تصنيف الصوت" وضعَين:

AUDIO_CLIPS: وضع تشغيل مهمة الصوت على مقاطع صوتية مستقلة.

AUDIO_STREAM: وضع تشغيل مهمة الصوت على بث صوتي، مثل الصوت من الميكروفون في هذا الوضع، يجب استدعاء resultListener لإعداد مستمع لتلقّي نتائج التصنيف بشكل غير متزامن.
{AUDIO_CLIPS, AUDIO_STREAM} AUDIO_CLIPS
display_names_locale لضبط لغة التصنيفات لاستخدامها في الأسماء المعروضة المقدَّمة في البيانات الوصفية لنموذج المهمة، في حال توفّرها. القيمة التلقائية هي en لعبارة English. يمكنك إضافة تصنيفات مترجَمة إلى البيانات الوصفية لنموذج مخصّص باستخدام واجهة برمجة التطبيقات TensorFlow Lite Metadata Writer API. رمز اللغة en
max_results تُستخدَم لتحديد الحد الأقصى الاختياري لعدد نتائج التصنيف التي ستعرضها. إذا كان < 0، سيتم عرض جميع النتائج المتاحة. أي أرقام موجبة -1
score_threshold تُستخدَم لضبط الحدّ الأدنى لنتيجة التوقّع الذي يتجاوز الحدّ الأدنى المقدَّم في البيانات الوصفية للنموذج (إن توفّرت). ويتم رفض النتائج التي تقلّ عن هذه القيمة. [0.0, 1.0] لم يتم الضبط
category_allowlist لضبط القائمة الاختيارية لأسماء الفئات المسموح بها. إذا لم تكن فارغة، سيتم استبعاد نتائج التصنيف التي لا يتضمّن اسم فئتها هذه المجموعة. ويتم تجاهل أسماء الفئات المكرّرة أو غير المعروفة. هذا الخيار غير متوافق مع الخيار category_denylist، ويؤدي استخدام كلا الخيارَين إلى حدوث خطأ. أي سلاسل لم يتم الضبط
category_denylist لضبط القائمة الاختيارية لأسماء الفئات غير المسموح بها. إذا كانت هذه المجموعة ليست فارغة، سيتم فلترة نتائج التصنيف التي يكون اسم فئتها في هذه المجموعة. ويتم تجاهل أسماء الفئات المكرّرة أو غير المعروفة. هذا الخيار متناقض مع الخيار category_allowlist، ويؤدي استخدام كليهما إلى حدوث خطأ. أي سلاسل لم يتم الضبط
result_callback يضبط مستمع النتائج لتلقّي نتائج التصنيف بشكل غير متزامن عندما يكون "المُصنِّف الصوتي" في وضع تدفق الصوت. لا يمكن استخدامها إلا عند ضبط وضع التشغيل على AUDIO_STREAM لا ينطبق لم يتم الضبط

النماذج

يتطلّب "مُصنِّف الصوت" تنزيل نموذج تصنيف صوتي ونقله إلى دليل مشروعك. ابدأ باستخدام النموذج المُقترَح والمُعدّ بشكلٍ تلقائي للمنصة المستهدَفة عند بدء التطوير باستخدام هذه المهمة. توازن النماذج الأخرى المتاحة عادةً بين الأداء والدقة ودرجة الدقة ومتطلبات الموارد، وفي بعض الحالات، تتضمن ميزات إضافية.

نموذج Yamnet هو مصنّف للأحداث الصوتية تم تدريبه على مجموعة بيانات AudioSet لتوقّع أحداث المحتوى الصوتي المحدّدة في بيانات AudioSet. للحصول على معلومات عن أحداث الصوت التي يتعرّف عليها هذا النموذج، اطّلِع على قائمة تصنيفات النموذج.

اسم الطراز شكل الإدخال نوع التقريب الإصدارات
YamNet 1 x ‏15600 لا شيء (float32) الأحدث

مقاييس أداء المهام

في ما يلي مقاييس أداء المهام لعملية المعالجة بأكملها استنادًا إلى نماذج pretrained المدرَّبة مسبقًا أعلاه. نتيجة وقت الاستجابة هي متوسط وقت الاستجابة على هاتف Pixel 6 باستخدام وحدة المعالجة المركزية / وحدة معالجة الرسومات.

اسم النموذج وقت استجابة وحدة المعالجة المركزية وقت استجابة وحدة معالجة الرسومات
YamNet 12.29 ملي ثانية -