Google I/O הוא עטיפה! התעדכן בהפעלות של TensorFlow. צפה בהפעלות

הערכת תנוחה

הערכת תנוחה היא המשימה של שימוש במודל ML כדי להעריך את הפוזה של אדם מתוך תמונה או סרטון על ידי הערכת המיקומים המרחביים של מפרקי גוף מרכזיים (נקודות מפתח).

להתחיל

אם אתה חדש ב-TensorFlow Lite ועובד עם אנדרואיד או iOS, חקור את היישומים לדוגמה הבאים שיכולים לעזור לך להתחיל.

דוגמה ל-Android iOS

אם אתה מכיר את ממשקי ה-API של TensorFlow Lite , הורד את מודל הערכת התנוחות של MoveNet המתחיל וקבצים תומכים.

הורד את דגם המתחיל

אם אתה רוצה לנסות הערכת פוזות בדפדפן אינטרנט, עיין בהדגמה של TensorFlow JS .

תיאור הדגם

איך זה עובד

הערכת תנוחה מתייחסת לטכניקות ראייה ממוחשבת המזהות דמויות אנושיות בתמונות ובסרטונים, כך שניתן לקבוע, למשל, היכן מופיע המרפק של מישהו בתמונה. חשוב להיות מודעים לעובדה שהערכת פוזות רק מעריכה היכן נמצאים מפרקי הגוף המרכזיים ואינה מזהה מי נמצא בתמונה או בסרטון.

המודלים להערכת התנוחה לוקחים תמונת מצלמה מעובדת כקלט ומוציאים מידע על נקודות מפתח. נקודות המפתח שזוהו מתווספות על ידי מזהה חלק, עם ציון ביטחון בין 0.0 ל-1.0. ציון הביטחון מציין את ההסתברות שקיימת נקודת מפתח בעמדה זו.

אנו מספקים יישום ייחוס של שני מודלים להערכת תנוחות של TensorFlow Lite:

  • MoveNet: מודל הערכת התנוחות המתקדם הזמין בשני טעמים: תאורה ורעם. ראה השוואה בין שני אלה בסעיף שלהלן.
  • PoseNet: מודל הערכת הפוזה מהדור הקודם שיצא ב-2017.

מפרקי הגוף השונים שזוהו על ידי מודל הערכת התנוחה מוצגים להלן:

תְעוּדַת זֶהוּת חֵלֶק
0 אף
1 עין שמאל
2 עין ימין
3 אוזן שמאלית
4 אוזן ימנית
5 כתף שמאלית
6 rightShoulder
7 מרפק שמאל
8 מרפק ימין
9 מפרק יד שמאל
10 יד ימין
11 שמאלייפ
12 ימינה היפ
13 ברך שמאלית
14 ברך ימין
15 קרסול שמאל
16 קרסול ימין

פלט לדוגמה מוצג להלן:

אנימציה המציגה הערכת תנוחה

מדדי ביצועים

MoveNet זמין בשני טעמים:

  • MoveNet.Lightning קטן יותר, מהיר יותר אך פחות מדויק מגרסת Thunder. זה יכול לפעול בזמן אמת בסמארטפונים מודרניים.
  • MoveNet.Thunder היא הגרסה המדויקת יותר אך גם גדולה ואיטית יותר מ-Lightning. זה שימושי עבור מקרי שימוש הדורשים דיוק גבוה יותר.

MoveNet מתעלה על PoseNet במגוון מערכי נתונים, במיוחד בתמונות עם תמונות אקשן של כושר. לכן, אנו ממליצים להשתמש ב-MoveNet על פני PoseNet.

מספרי אמת מידה לביצועים נוצרים עם הכלי המתואר כאן . מספרי דיוק (mAP) נמדדים על תת-קבוצה של מערך הנתונים של COCO שבו אנו מסננים וחותכים כל תמונה כך שתכיל אדם אחד בלבד.

דֶגֶם גודל (MB) מַפָּה חביון (מילישניות)
Pixel 5 - שרשורי CPU 4 Pixel 5 - GPU Raspberry Pi 4 - שרשורי CPU 4
MoveNet.Thunder (FP16 בקומות) 12.6MB 72.0 155 אלפיות השנייה 45 אלפיות השנייה 594ms
MoveNet.Thunder (מומת INT8) 7.1MB 68.9 100 אלפיות השנייה 52ms 251ms
MoveNet.Lightning (FP16 בקומות) 4.8MB 63.0 60 אלפיות השנייה 25 אלפיות השנייה 186ms
MoveNet.Lightning (במדד INT8) 2.9MB 57.4 52ms 28ms 95ms
PoseNet(MobileNetV1 עמוד השדרה, FP32) 13.3MB 45.6 80ms 40ms 338ms

קריאה נוספת ומשאבים

  • עיין בפוסט זה בבלוג כדי ללמוד עוד על הערכת תנוחות באמצעות MoveNet ו- TensorFlow Lite.
  • עיין בפוסט זה בבלוג כדי ללמוד עוד על הערכת פוזות באינטרנט.
  • עיין במדריך זה כדי ללמוד על הפעלת MoveNet ב- Python באמצעות מודל מ- TensorFlow Hub.
  • Coral/EdgeTPU יכול לגרום להערכת הפוזה לפעול הרבה יותר מהר במכשירי קצה. ראה דגמים מותאמים ל-EdgeTPU לפרטים נוספים.
  • קרא את המאמר של PoseNet כאן

כמו כן, בדוק את מקרי השימוש הללו של הערכת תנוחה.