MediaPipe इंटरैक्टिव इमेज सेगमेंटर टास्क की मदद से, किसी इमेज को दो हिस्सों में बांटा जा सकता है: चुना गया ऑब्जेक्ट और बाकी हिस्सा. यह टास्क, किसी इमेज में किसी जगह को चुनता है और उस जगह पर मौजूद ऑब्जेक्ट की सीमाओं का अनुमान लगाता है. साथ ही, ऑब्जेक्ट के एरिया की जानकारी देने वाली इमेज का डेटा दिखाता है. इस टास्क का इस्तेमाल करके, किसी इमेज में किसी ऑब्जेक्ट को इंटरैक्टिव तरीके से चुना जा सकता है. साथ ही, इमेज पर इफ़ेक्ट लागू करने के लिए, आउटपुट का इस्तेमाल किया जा सकता है. जैसे, ऑब्जेक्ट को हाइलाइट करने वाले कलर ओवरले या उसके आस-पास के बैकग्राउंड को धुंधला करना. यह टास्क, मशीन लर्निंग (एमएल) मॉडल की मदद से इमेज डेटा पर काम करता है. इसका इस्तेमाल, एक इमेज, वीडियो फ़ाइल या लगातार चलने वाली वीडियो स्ट्रीम पर किया जा सकता है.
शुरू करें
अपने टारगेट प्लैटफ़ॉर्म के लिए, लागू करने से जुड़ी इनमें से किसी एक गाइड का पालन करके, इस टास्क का इस्तेमाल शुरू करें. प्लैटफ़ॉर्म के हिसाब से बनी इन गाइड में, इस टास्क को लागू करने का बुनियादी तरीका बताया गया है. इनमें सुझाया गया मॉडल और सुझाए गए कॉन्फ़िगरेशन विकल्पों के साथ कोड का उदाहरण भी शामिल है:
- Android - कोड का उदाहरण - गाइड
- Python - कोड का उदाहरण - गाइड
- वेब - कोड का उदाहरण - गाइड
टास्क की जानकारी
इस सेक्शन में, इस टास्क की सुविधाओं, इनपुट, आउटपुट, और कॉन्फ़िगरेशन के विकल्पों के बारे में बताया गया है.
सुविधाएं
- इनपुट इमेज प्रोसेसिंग - प्रोसेसिंग में इमेज को घुमाना, उसका साइज़ बदलना, सामान्य करना, और कलर स्पेस कन्वर्ज़न शामिल है.
टास्क के इनपुट | टास्क के आउटपुट |
---|---|
|
इंटरैक्टिव इमेज सेगमेंटर, सेगमेंट की गई इमेज का डेटा दिखाता है. इसमें, सेट किए गए कॉन्फ़िगरेशन के विकल्पों के आधार पर, इनमें से एक या दोनों शामिल हो सकते हैं:
|
कॉन्फ़िगरेशन के विकल्प
इस टास्क के लिए, कॉन्फ़िगरेशन के ये विकल्प उपलब्ध हैं:
विकल्प का नाम | ब्यौरा | वैल्यू की रेंज | डिफ़ॉल्ट मान |
---|---|---|---|
output_category_mask |
अगर इसे True पर सेट किया जाता है, तो आउटपुट में uint8 इमेज के तौर पर सेगमेंटेशन मास्क शामिल होता है. इसमें हर पिक्सल की वैल्यू से पता चलता है कि पिक्सल, दिलचस्पी के क्षेत्र में मौजूद ऑब्जेक्ट का हिस्सा है या नहीं. |
{True, False } |
False |
output_confidence_masks |
अगर True पर सेट किया जाता है, तो आउटपुट में फ़्लोट वैल्यू वाली इमेज के तौर पर सेगमेंटेशन मास्क शामिल होता है. इसमें हर फ़्लोट वैल्यू, इस बात की संभावना दिखाती है कि पिक्सल, दिलचस्पी के इलाके में मौजूद ऑब्जेक्ट का हिस्सा है. |
{True, False } |
True |
display_names_locale |
टास्क के मॉडल के मेटाडेटा में दिए गए डिसप्ले नेम के लिए, लेबल की भाषा सेट करता है. हालांकि, ऐसा तब ही किया जाता है, जब वह भाषा उपलब्ध हो. अंग्रेज़ी के लिए, डिफ़ॉल्ट तौर पर en होता है. TensorFlow Lite मेटाडेटा राइटर एपीआई का इस्तेमाल करके, कस्टम मॉडल के मेटाडेटा में स्थानीय भाषा के लेबल जोड़े जा सकते हैं
| स्थानीय भाषा का कोड | en |
मॉडल
इंटरैक्टिव इमेज सेगमेंटर का इस्तेमाल, एक से ज़्यादा एमएल मॉडल के साथ किया जा सकता है. इस टास्क के साथ डेवलपमेंट शुरू करते समय, अपने टारगेट प्लैटफ़ॉर्म के लिए डिफ़ॉल्ट और सुझाए गए मॉडल का इस्तेमाल करें. आम तौर पर, उपलब्ध अन्य मॉडल में परफ़ॉर्मेंस, सटीक जानकारी, रिज़ॉल्यूशन, और संसाधनों की ज़रूरतों के बीच समझौता किया जाता है. साथ ही, कुछ मामलों में इनमें अतिरिक्त सुविधाएं भी शामिल होती हैं.
MagicTouch मॉडल (सुझाया गया)
यह मॉडल, किसी खास इलाके के लिए इमेज के निर्देशांकों के आधार पर सेगमेंट की पहचान करता है. यह मॉडल, कस्टमाइज़ किए गए डिकोडर के साथ, MobileNetV3 आर्किटेक्चर की तरह ही कॉन्वोल्यूशनल न्यूरल नेटवर्क का इस्तेमाल करता है.
मॉडल का नाम | इनपुट का आकार | क्वांटाइज़ेशन का टाइप | मॉडल कार्ड | वर्शन |
---|---|---|---|---|
MagicTouch | 512 x 512 x 4 | कोई नहीं (float32) | info | हाल ही के अपडेट |
टास्क के मानदंड
यहां पूरी पाइपलाइन के लिए टास्क के मानदंड दिए गए हैं. ये मानदंड, ऊपर दिए गए पहले से ट्रेन किए गए मॉडल पर आधारित हैं. इंतज़ार का समय, सीपीयू / जीपीयू का इस्तेमाल करके Pixel 6 पर औसत इंतज़ार का समय होता है.
मॉडल का नाम | सीपीयू के इंतज़ार का समय | जीपीयू में इंतज़ार का समय |
---|---|---|
MagicTouch | 130.11 मिलीसेकंड | 67.25 मिलीसेकंड |