قم ببناء تطبيق ويب يتعرف على وضعيات اليوجا باستخدام نموذج من نموذج تبادل الأصول المستضاف على منصة تبادل التعلم الآلي

عقدة المصدر: 1573049

نبذة عامة

يوضح نمط كود IBM Developer كيفية اكتشاف الأوضاع البشرية في صورة معينة باستخدام نموذج Human Pose Estimator من نموذج Asset eXchange الذي يتم استضافته على تبادل التعلم الآلي. باستخدام الإحداثيات ، يتم تجميع خطوط الوضع التي تم إنشاؤها بواسطة النموذج في وضعيات الجسم الكامل لكل من البشر الذين تم اكتشافهم في الصورة.

الوصف

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

تشكل خط مثال

يتم تمثيل كل خط تشكل بقائمة [x1، y1، x2، y2] ، حيث يكون أول زوج من الإحداثيات (x1، y1) هو البداية
نقطة الخط لجزء واحد من الجسم ، بينما الزوج الثاني من الإحداثيات (x2 ، y2) هو نقطة نهاية الخط
جزء آخر من الجسم المرتبط. يتم تجميع خطوط الوضع في وضعيات الجسم الكامل لكل من البشر المكتشفة في
صورة.

ويستند هذا النموذج على تنفيذ TF لل نموذج OpenPose. تنشر التعليمات البرمجية الموجودة في هذا المستودع النموذج كخدمة ويب في حاوية Docker.

يستخدم Yogait ، مساعد اليوغا الذي يستخدم نموذج MAX Pose Estimator MAX لتخمين وضع اليوغا الذي يقوم به المستخدم ، SVM مدرب مسبقًا لتصنيف الأوضاع. بدلاً من استخدام الخطوط الديكارتية التي يرجعها نموذج MAX ، يستخدم Yogait تمثيلًا قطبيًا لإجراء التصنيف. تم ذلك لتسهيل تصنيف الوضعيات. بدلاً من تدريب SVM على نظام إحداثيات xy ، والذي يتطلب الترجمة والتدوير عند زيادة البيانات ، يعتمد التمثيل القطبي فقط على موقع المفاصل بالنسبة لمركز النموذج المقدر.

يتم تحويل الإحداثيات [x، y] إلى [phi، rho] لكل وصلة.

تشكل التحويل

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

عندما تكمل نمط الكود ، ستفهم كيفية:

  • قم ببناء صورة Docker لنموذج MAX Pose Estimator
  • نشر نموذج التعلم العميق مع نقطة نهاية REST
  • إنشاء تقدير وضع لشخص في إطار فيديو باستخدام واجهة برمجة التطبيقات REST API الخاصة بـ MAX Model
  • قم بتشغيل تطبيق ويب يستخدم REST API للنموذج

التدفق

هندسة تدفق Yogait

  1. يرسل الخادم الفيديو الملتقط بإطار من الكاميرا إلى واجهة برمجة التطبيقات النموذجية.
  2. تطلب واجهة المستخدم على الويب خطوط الوضع المقدرة للإطار من الخادم.
  3. يتلقى الخادم البيانات من نموذج واجهة برمجة التطبيقات ويحدّث النتيجة لواجهة مستخدم الويب.

تعليمات

العثور على الخطوات التفصيلية لهذا النمط في README. توضح لك هذه الخطوات كيفية:

  1. قم بإعداد نموذج MAX.
  2. ابدأ تشغيل تطبيق الويب.
  3. تشغيل محليًا باستخدام نص Python.
  4. استخدم دفتر ملاحظات جوبيتر.

المصدر: https://developer.ibm.com/patterns/build-a-web-application-that-recognizes-yoga-pose-using-a-model-from-the-model-asset-exchange/

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

اكثر من IBM Developer