وظیفه تشخیص چهره MediaPipe به شما امکان می دهد چهره ها را در یک تصویر یا ویدیو تشخیص دهید. می توانید از این کار برای تعیین مکان چهره و ویژگی های صورت در یک قاب استفاده کنید. این کار از یک مدل یادگیری ماشینی (ML) استفاده می کند که با تصاویر منفرد یا یک جریان پیوسته از تصاویر کار می کند. این وظیفه مکانهای صورت را همراه با نکات کلیدی صورت زیر نمایش میدهد: چشم چپ، چشم راست، نوک بینی، دهان، تراژیون چشم چپ و تراژیون چشم راست.
شروع کنید
استفاده از این کار را با دنبال کردن یکی از این راهنماهای پیاده سازی برای پلتفرم هدف خود شروع کنید. این راهنماهای مخصوص پلتفرم شما را از طریق اجرای اساسی این کار، از جمله یک مدل توصیه شده، و نمونه کد با گزینه های پیکربندی توصیه شده، راهنمایی می کنند:
- اندروید - نمونه کد - راهنما
- پایتون - نمونه کد - راهنما
- وب - نمونه کد - راهنما
- iOS - مثال کد - راهنما
جزئیات کار
این بخش قابلیت ها، ورودی ها، خروجی ها و گزینه های پیکربندی این کار را شرح می دهد.
امکانات
- پردازش تصویر ورودی - پردازش شامل چرخش تصویر، تغییر اندازه، عادی سازی و تبدیل فضای رنگی است.
- آستانه امتیاز - نتایج را بر اساس نمرات پیش بینی فیلتر کنید.
ورودی های وظیفه | خروجی های وظیفه |
---|---|
آشکارساز چهره ورودی یکی از انواع داده های زیر را می پذیرد:
| آشکارساز چهره نتایج زیر را خروجی می دهد:
|
گزینه های پیکربندی
این کار دارای گزینه های پیکربندی زیر است:
نام گزینه | شرح | محدوده ارزش | مقدار پیش فرض |
---|---|---|---|
running_mode | حالت اجرا را برای کار تنظیم می کند. سه حالت وجود دارد: IMAGE: حالت برای ورودی های تک تصویر. VIDEO: حالت برای فریم های رمزگشایی شده یک ویدیو. LIVE_STREAM: حالت پخش زنده داده های ورودی، مانند دوربین. در این حالت، resultListener باید فراخوانی شود تا شنونده ای را برای دریافت نتایج به صورت ناهمزمان تنظیم کند. | { IMAGE, VIDEO, LIVE_STREAM } | IMAGE |
min_detection_confidence | حداقل امتیاز اطمینان برای تشخیص چهره موفق در نظر گرفته شود. | Float [0,1] | 0.5 |
min_suppression_threshold | حداقل آستانه غیر حداکثری سرکوب برای تشخیص چهره که باید همپوشانی در نظر گرفته شود. | Float [0,1] | 0.3 |
result_callback | شنونده نتیجه را طوری تنظیم می کند که وقتی آشکارساز چهره در حالت پخش زنده است، نتایج تشخیص را به صورت ناهمزمان دریافت کند. فقط زمانی قابل استفاده است که حالت اجرا روی LIVE_STREAM تنظیم شده باشد. | N/A | Not set |
مدل ها
مدلهای تشخیص چهره میتوانند بسته به موارد استفاده مورد نظرشان، مانند تشخیص دوربرد و دوربرد، متفاوت باشند. همچنین مدلها معمولاً بین عملکرد، دقت، وضوح و نیازهای منابع، معاوضههایی ایجاد میکنند و در برخی موارد، ویژگیهای اضافی را نیز شامل میشوند.
مدلهای فهرستشده در این بخش، انواع BlazeFace هستند، یک آشکارساز چهره سبک و دقیق که برای استنتاج GPU موبایل بهینه شده است. مدلهای BlazeFace برای کاربردهایی مانند برآورد نقاط کلیدی صورت سه بعدی، طبقهبندی بیان و تقسیمبندی ناحیه چهره مناسب هستند. BlazeFace از شبکه استخراج ویژگی های سبکی مشابه MobileNetV1/V2 استفاده می کند.
BlazeFace (کوتاه برد)
یک مدل سبک وزن برای تشخیص یک یا چند چهره در تصاویر سلفی مانند از دوربین گوشی هوشمند یا وب کم. این مدل برای تصاویر دوربین گوشی جلو در فاصله کوتاه بهینه شده است. معماری مدل از یک تکنیک شبکه کانولوشنال SSD (Single Shot Detector) با یک رمزگذار سفارشی استفاده می کند. برای اطلاعات بیشتر، مقاله تحقیقاتی در مورد آشکارساز چند جعبه تک شات را ببینید.
نام مدل | شکل ورودی | نوع کوانتیزاسیون | مدل کارت | نسخه ها |
---|---|---|---|---|
BlazeFace (کوتاه برد) | 128*128 | شناور 16 | اطلاعات | آخرین |
BlazeFace (تمام برد)
یک مدل نسبتا سبک وزن برای تشخیص تک یا چند چهره در تصاویر از دوربین گوشی هوشمند یا وب کم. این مدل برای تصاویر با برد کامل بهینه شده است، مانند تصاویری که با دوربین گوشی پشتی گرفته شده است. معماری مدل از تکنیکی شبیه به یک شبکه کانولوشنال CenterNet با یک رمزگذار سفارشی استفاده می کند.
نام مدل | شکل ورودی | نوع کوانتیزاسیون | مدل کارت | نسخه ها |
---|---|---|---|---|
BlazeFace (تمام برد) | 128*128 | شناور 16 | اطلاعات | به زودی |
BlazeFace Sparse (تمام برد)
یک نسخه سبک تر از مدل معمولی کامل BlazeFace، تقریباً 60٪ در اندازه کوچکتر. این مدل برای تصاویر با برد کامل بهینه شده است، مانند تصاویری که با دوربین گوشی پشتی گرفته شده است. معماری مدل از تکنیکی شبیه به یک شبکه کانولوشنال CenterNet با یک رمزگذار سفارشی استفاده می کند.
نام مدل | شکل ورودی | نوع کوانتیزاسیون | مدل کارت | نسخه ها |
---|---|---|---|---|
BlazeFace Sparse (تمام برد) | 128*128 | شناور 16 | اطلاعات | به زودی |
معیارهای وظیفه
در اینجا معیارهای کار برای کل خط لوله بر اساس مدل های از پیش آموزش دیده بالا آمده است. نتیجه تأخیر، متوسط تأخیر پیکسل 6 با استفاده از CPU / GPU است.
نام مدل | تاخیر CPU | تاخیر GPU |
---|---|---|
BlazeFace (کوتاه برد) | 2.94 میلیثانیه | 7.41 میلیثانیه |