चेहरे की पहचान गाइड

तीन लोगों की इमेज, जिनके चेहरे बॉउंडिंग बॉक्स से हाइलाइट किए गए हैं

MediaPipe के चेहरे की पहचान करने वाले टूल की मदद से, किसी इमेज या वीडियो में चेहरों की पहचान की जा सकती है. इस टास्क का इस्तेमाल करके, फ़्रेम में चेहरों और चेहरे की विशेषताओं का पता लगाया जा सकता है. यह टास्क, मशीन लर्निंग (एमएल) मॉडल का इस्तेमाल करता है. यह मॉडल, एक या लगातार कई इमेज के साथ काम करता है. यह टास्क, चेहरे की जगहों के साथ-साथ, चेहरे के इन मुख्य पॉइंट का पता लगाता है: बाईं आंख, दाईं आंख, नाक की नोक, मुंह, बाईं आंख का ट्रैगियन, और दाईं आंख का ट्रैगियन.

इसे आज़माएं!

शुरू करें

अपने टारगेट प्लैटफ़ॉर्म के लिए, लागू करने से जुड़ी इनमें से किसी एक गाइड का पालन करके, इस टास्क का इस्तेमाल शुरू करें. प्लैटफ़ॉर्म के हिसाब से बनी इन गाइड में, इस टास्क को लागू करने का बुनियादी तरीका बताया गया है. इनमें सुझाया गया मॉडल और सुझाए गए कॉन्फ़िगरेशन विकल्पों के साथ कोड का उदाहरण भी शामिल है:

टास्क की जानकारी

इस सेक्शन में, इस टास्क की सुविधाओं, इनपुट, आउटपुट, और कॉन्फ़िगरेशन के विकल्पों के बारे में बताया गया है.

सुविधाएं

  • इनपुट इमेज प्रोसेसिंग - प्रोसेसिंग में इमेज को घुमाना, उसका साइज़ बदलना, सामान्य करना, और कलर स्पेस बदलना शामिल है.
  • स्कोर थ्रेशोल्ड - अनुमान के स्कोर के आधार पर नतीजे फ़िल्टर करें.
टास्क के इनपुट टास्क के आउटपुट
चेहरे की पहचान करने वाला टूल, इनमें से किसी एक तरह के डेटा का इनपुट स्वीकार करता है:
  • स्टिल इमेज
  • डिकोड किए गए वीडियो फ़्रेम
  • लाइव वीडियो फ़ीड
चेहरे की पहचान करने वाली सुविधा ये नतीजे दिखाती है:
  • इमेज फ़्रेम में, पहचाने गए चेहरों के लिए बाउंडिंग बॉक्स.
  • पहचाने गए हर चेहरे के लिए, छह लैंडमार्क के निर्देशांक.

कॉन्फ़िगरेशन के विकल्प

इस टास्क के लिए, कॉन्फ़िगरेशन के ये विकल्प उपलब्ध हैं:

विकल्प का नाम ब्यौरा वैल्यू की रेंज डिफ़ॉल्ट मान
running_mode टास्क के लिए रनिंग मोड सेट करता है. इसके तीन मोड हैं:

IMAGE: एक इमेज इनपुट के लिए मोड.

वीडियो: किसी वीडियो के डिकोड किए गए फ़्रेम के लिए मोड.

LIVE_STREAM: कैमरे से मिले इनपुट डेटा की लाइव स्ट्रीम के लिए मोड. इस मोड में, नतीजे असींक्रोनस तरीके से पाने के लिए, एक listener सेट अप करने के लिए, 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 के वैरिएंट हैं. यह एक हल्का और सटीक चेहरे का डिटेक्टर है, जिसे मोबाइल जीपीयू इंफ़रेंस के लिए ऑप्टिमाइज़ किया गया है. BlazeFace मॉडल, 3D चेहरे के मुख्य पॉइंट का अनुमान लगाने, चेहरे के भावों को अलग-अलग कैटगरी में बांटने, और चेहरे के हिस्सों को अलग-अलग सेगमेंट में बांटने जैसे ऐप्लिकेशन के लिए सही हैं. BlazeFace, MobileNetV1/V2 जैसे हल्के फ़ीचर एक्सट्रैक्शन नेटवर्क का इस्तेमाल करता है.

BlazeFace (कम दूरी के लिए)

स्मार्टफ़ोन कैमरे या वेबकैम से ली गई सेल्फ़ी जैसी इमेज में, एक या उससे ज़्यादा चेहरों का पता लगाने के लिए, एक छोटा मॉडल. यह मॉडल, कम दूरी पर फ़ोन के सामने वाले कैमरे से ली गई फ़ोटो के लिए ऑप्टिमाइज़ किया गया है. मॉडल के आर्किटेक्चर में, कस्टम एन्कोडर के साथ सिंगल शॉट डिटेक्टर (एसएसडी) कॉन्वोल्यूशनल नेटवर्क तकनीक का इस्तेमाल किया जाता है. ज़्यादा जानकारी के लिए, सिंगल शॉट मल्टीबॉक्स डिटेक्टर पर आधारित रिसर्च पेपर देखें.

मॉडल का नाम इनपुट का आकार क्वांटाइज़ेशन का टाइप मॉडल कार्ड वर्शन
BlazeFace (कम दूरी के लिए) 128 x 128 फ़्लोट 16 info हाल ही के अपडेट

BlazeFace (पूरी रेंज)

स्मार्टफ़ोन कैमरे या वेबकैम से ली गई इमेज में, एक या उससे ज़्यादा चेहरों का पता लगाने के लिए, अपेक्षाकृत हल्का मॉडल. यह मॉडल, फ़ुल-रेंज वाली इमेज के लिए ऑप्टिमाइज़ किया गया है. जैसे, फ़ोन के पीछे वाले कैमरे से ली गई इमेज. मॉडल के आर्किटेक्चर में, CenterNet कन्वोल्यूशनल नेटवर्क जैसी तकनीक का इस्तेमाल किया जाता है. इसमें कस्टम एन्कोडर भी होता है.

मॉडल का नाम इनपुट का आकार क्वांटाइज़ेशन का टाइप मॉडल कार्ड वर्शन
BlazeFace (पूरी रेंज) 128 x 128 फ़्लोट 16 जानकारी यह सुविधा जल्द ही उपलब्ध होगी

BlazeFace Sparse (पूरी रेंज)

यह सामान्य फ़ुल-रेंज BlazeFace मॉडल का छोटा वर्शन है. इसका साइज़, सामान्य वर्शन के मुकाबले करीब 60% कम है. यह मॉडल, फ़ुल-रेंज इमेज के लिए ऑप्टिमाइज़ किया गया है. जैसे, फ़ोन के पीछे वाले कैमरे से ली गई इमेज. मॉडल के आर्किटेक्चर में, CenterNet कन्वोल्यूशनल नेटवर्क जैसी तकनीक का इस्तेमाल किया जाता है. इसमें कस्टम एन्कोडर भी होता है.

मॉडल का नाम इनपुट का आकार क्वांटाइज़ेशन का टाइप मॉडल कार्ड वर्शन
BlazeFace Sparse (पूरी रेंज) 128 x 128 फ़्लोट 16 जानकारी यह सुविधा जल्द ही उपलब्ध होगी

टास्क के मानदंड

यहां पूरी पाइपलाइन के लिए टास्क के मानदंड दिए गए हैं. ये मानदंड, ऊपर दिए गए पहले से ट्रेन किए गए मॉडल पर आधारित हैं. इंतज़ार का समय, सीपीयू / जीपीयू का इस्तेमाल करके Pixel 6 पर औसत इंतज़ार का समय होता है.

मॉडल का नाम सीपीयू के इंतज़ार का समय जीपीयू में इंतज़ार का समय
BlazeFace (कम दूरी के लिए) 2.94 मिलीसेकंड 7.41 मिलीसेकंड