MediaPipe Face Landmarker टास्क की मदद से, इमेज और वीडियो में चेहरे के लैंडमार्क और हाव-भाव का पता लगाया जा सकता है. इस टास्क का इस्तेमाल, इंसानों के चेहरे के भावों की पहचान करने, चेहरे पर फ़िल्टर और इफ़ेक्ट लगाने, और वर्चुअल अवतार बनाने के लिए किया जा सकता है. इस टास्क के लिए, मशीन लर्निंग (एमएल) मॉडल का इस्तेमाल किया जाता है. ये मॉडल, एक इमेज या लगातार स्ट्रीम की जा रही इमेज के साथ काम कर सकते हैं. यह टास्क, चेहरे के लैंडमार्क को 3D में दिखाता है. साथ ही, ब्लेंडशेप स्कोर (चेहरे के भाव दिखाने वाले कोएफ़िशिएंट) दिखाता है, ताकि रीयल-टाइम में चेहरे की बारीकी से जानकारी मिल सके. इसके अलावा, यह ट्रांसफ़ॉर्मेशन मैट्रिक्स भी दिखाता है, ताकि इफ़ेक्ट रेंडर करने के लिए ज़रूरी ट्रांसफ़ॉर्मेशन किए जा सकें.
शुरू करें
इस टास्क का इस्तेमाल शुरू करने के लिए, टारगेट प्लैटफ़ॉर्म के लिए लागू करने से जुड़ी कोई एक गाइड पढ़ें. प्लैटफ़ॉर्म के हिसाब से बनी इन गाइड में, इस टास्क को लागू करने का बुनियादी तरीका बताया गया है. इसमें सुझाया गया मॉडल और कॉन्फ़िगरेशन के सुझाए गए विकल्पों के साथ कोड का उदाहरण भी शामिल है:
- Android - कोड का उदाहरण - गाइड
- Python - कोड का उदाहरण - गाइड
- वेब - कोड का उदाहरण - गाइड
टास्क की जानकारी
इस सेक्शन में, इस टास्क की क्षमताओं, इनपुट, आउटपुट, और कॉन्फ़िगरेशन के विकल्पों के बारे में बताया गया है.
सुविधाएं
- इनपुट इमेज प्रोसेसिंग - प्रोसेसिंग में इमेज को घुमाना, उसका साइज़ बदलना, सामान्य करना, और कलर स्पेस बदलना शामिल है.
- स्कोर थ्रेशोल्ड - अनुमानित स्कोर के आधार पर नतीजों को फ़िल्टर करें.
| टास्क के इनपुट | टास्क के आउटपुट |
|---|---|
Face Landmarker, इनमें से किसी एक डेटा टाइप का इनपुट स्वीकार करता है:
|
फ़ेस लैंडमार्कर, ये नतीजे दिखाता है:
|
कॉन्फ़िगरेशन के विकल्प
इस टास्क के लिए, ये कॉन्फ़िगरेशन विकल्प उपलब्ध हैं:
| विकल्प का नाम | ब्यौरा | वैल्यू की सीमा | डिफ़ॉल्ट मान |
|---|---|---|---|
running_mode |
यह कुकी, टास्क के रनिंग मोड को सेट करती है. इसके तीन मोड होते हैं: IMAGE: यह मोड, एक इमेज वाले इनपुट के लिए होता है. VIDEO: यह वीडियो के डिकोड किए गए फ़्रेम का मोड है. LIVE_STREAM: यह इनपुट डेटा की लाइव स्ट्रीम करने का मोड है. जैसे, कैमरे से लाइव स्ट्रीम करना. इस मोड में, एसिंक्रोनस तरीके से नतीजे पाने के लिए, resultListener को कॉल करना ज़रूरी है, ताकि नतीजे पाने के लिए लिसनर सेट अप किया जा सके. |
{IMAGE, VIDEO, LIVE_STREAM} |
IMAGE |
num_faces |
FaceLandmarker की मदद से, ज़्यादा से ज़्यादा चेहरों का पता लगाया जा सकता है. स्मूदिंग की सुविधा सिर्फ़ तब लागू होती है, जब num_faces को 1 पर सेट किया जाता है.
|
Integer > 0 |
1 |
min_face_detection_confidence |
चेहरे का पता लगाने की प्रोसेस को सफल मानने के लिए, कम से कम कॉन्फ़िडेंस स्कोर. | Float [0.0,1.0] |
0.5 |
min_face_presence_confidence |
चेहरे की पहचान करने की सुविधा में, चेहरे की मौजूदगी के स्कोर की कम से कम निजता सीमा. | Float [0.0,1.0] |
0.5 |
min_tracking_confidence |
चेहरे को ट्रैक करने की सुविधा के लिए, कम से कम कॉन्फ़िडेंस स्कोर. इससे यह तय होता है कि चेहरे को ट्रैक करने की सुविधा सही तरीके से काम कर रही है या नहीं. | Float [0.0,1.0] |
0.5 |
output_face_blendshapes |
इससे पता चलता है कि फ़ेस लैंडमार्कर, फ़ेस ब्लेंडशेप आउटपुट करता है या नहीं. चेहरे के 3D मॉडल को रेंडर करने के लिए, चेहरे के ब्लेंडशेप का इस्तेमाल किया जाता है. | Boolean |
False |
output_facial_transformation_matrixes |
FaceLandmarker, चेहरे के ट्रांसफ़ॉर्मेशन मैट्रिक्स को आउटपुट करता है या नहीं. FaceLandmarker, मैट्रिक्स का इस्तेमाल करके चेहरे के लैंडमार्क को कैननिकल फ़ेस मॉडल से पहचाने गए चेहरे में बदलता है. इससे उपयोगकर्ता, पहचाने गए लैंडमार्क पर इफ़ेक्ट लागू कर पाते हैं. | Boolean |
False |
result_callback |
यह फ़ंक्शन, नतीजे सुनने वाले को सेट करता है, ताकि जब FaceLandmarker लाइव स्ट्रीम मोड में हो, तब उसे लैंडमार्क के नतीजे एसिंक्रोनस तरीके से मिल सकें.
इस सेटिंग का इस्तेमाल सिर्फ़ तब किया जा सकता है, जब रनिंग मोड को LIVE_STREAM पर सेट किया गया हो |
ResultListener |
N/A |
मॉडल
चेहरे की पहचान करने वाला लैंडमार्कर, चेहरे के लैंडमार्क का अनुमान लगाने के लिए कई मॉडल का इस्तेमाल करता है. पहला मॉडल, चेहरों का पता लगाता है. दूसरा मॉडल, पता लगाए गए चेहरों पर लैंडमार्क का पता लगाता है. तीसरा मॉडल, उन लैंडमार्क का इस्तेमाल करके चेहरे की विशेषताओं और एक्सप्रेशन की पहचान करता है.
इन मॉडल को एक साथ पैकेज किया जाता है, ताकि इन्हें डाउनलोड किया जा सके:
- चेहरे का पता लगाने वाला मॉडल: यह चेहरे की कुछ खास विशेषताओं के आधार पर, चेहरे की मौजूदगी का पता लगाता है.
- चेहरे के मेश का मॉडल: इससे चेहरे की पूरी मैपिंग की जाती है. मॉडल, चेहरे के 478 थ्री-डाइमेंशनल लैंडमार्क का अनुमान लगाता है.
- ब्लेंडशेप अनुमान मॉडल: यह मॉडल, फ़ेस मेश मॉडल से आउटपुट लेता है. यह 52 ब्लेंडशेप स्कोर का अनुमान लगाता है. ये स्कोर, चेहरे के अलग-अलग एक्सप्रेशन को दिखाने वाले कोएफ़िशिएंट होते हैं.
चेहरे का पता लगाने वाला मॉडल, BlazeFace शॉर्ट-रेंज मॉडल है. यह एक हल्का और सटीक फ़ेस डिटेक्टर है. इसे मोबाइल जीपीयू इन्फ़रेंस के लिए ऑप्टिमाइज़ किया गया है. ज़्यादा जानकारी के लिए, चेहरा पहचानने वाले सिस्टम का टास्क देखें.
नीचे दी गई इमेज में, मॉडल बंडल के आउटपुट से चेहरे की सभी खास जगहों की मैपिंग दिखाई गई है.
चेहरे के लैंडमार्क की ज़्यादा जानकारी के लिए, पूरी इमेज देखें.
| मॉडल बंडल | इनपुट का आकार | डेटा टाइप | मॉडल कार्ड | वर्शन |
|---|---|---|---|---|
| FaceLandmarker | FaceDetector: 192 x 192 FaceMesh-V2: 256 x 256 Blendshape: 1 x 146 x 2 |
फ़्लोट 16 |
FaceDetector FaceMesh-V2 Blendshape |
सबसे नया |