इमेज की कैटगरी तय करता है.
एपीआई को ऐसे TFLite मॉडल की ज़रूरत होती है जिसमें वैकल्पिक हो.हालांकि, हम इसे TFLite मॉडल मेटाडेटा के साथ इस्तेमाल करने का सुझाव देते हैं.
यह एपीआई, एक इमेज इनपुट टेंसर और एक या उससे ज़्यादा आउटपुट टेंसर वाले मॉडल के साथ काम करता है. ज़्यादा सटीक जानकारी के लिए, यहां दी गई ज़रूरी शर्तें देखें.
- इमेज टेंसर (
kTfLiteUInt8
/kTfLiteFloat32
) इनपुट करें[batch x height x width x channels]
साइज़ का इमेज इनपुट.- बैच अनुमान काम नहीं करता (
batch
का 1 होना ज़रूरी है). - सिर्फ़ आरजीबी इनपुट काम करते हैं (
channels
को 3 होना ज़रूरी है). - अगर टाइप kTfLiteFloat32 है, तो इनपुट को नॉर्मलाइज़ेशन के लिए मेटाडेटा में सामान्याइज़ेशन विकल्प को अटैच करना ज़रूरी है.
- कम से कम एक आउटपुट टेंसर (
kTfLiteUInt8
/kTfLiteFloat32
) जिसमें:N
क्लास और दो या चार डाइमेंशन, जैसे कि[1 x N]
या[1 x 1 x 1 x N]
- मैप को वैकल्पिक (लेकिन सुझाए गए) लेबल करें. ये मैप, TENSOR_AXIS_LABEL टाइप की AssociatedFile-s के तौर पर लेबल किए जाते हैं, जिनमें हर लाइन में एक लेबल होता है. नतीजों के
class_name
फ़ील्ड को भरने के लिए, इस तरह की पहली AssociatedFile (अगर कोई है) का इस्तेमाल किया जाता है.display_name
फ़ील्ड को AssociatedFile (अगर कोई हो) से भरा जाता है जिसकी स्थान-भाषा, ऐसेट बनाने के समय इस्तेमाल किए गएImageClassifierOptions
केdisplay_names_locale
फ़ील्ड से मेल खाती हो ("en" डिफ़ॉल्ट रूप से अंग्रेज़ी में होता है). अगर इनमें से कोई भी विकल्प उपलब्ध नहीं है, तो नतीजों का सिर्फ़index
फ़ील्ड भरा जाएगा. - स्कोर कैलिब्रेशन के वैकल्पिक तरीके और TENSOR_AXIS_SCORE_CALIBRATION टाइप वाली AssociatedFile का इस्तेमाल करके, स्कोर कैलिब्रेशन को अटैच किया जा सकता है. ज़्यादा जानकारी के लिए, Metadata_schema.fbs देखें.
ऐसे मॉडल का एक उदाहरण TensorFlow Hub मिल सकता है.
नेस्ट की गई क्लास
क्लास | ImageClassifier.ImageClassifierOptions | ImageClassifier और सेट अप करने के विकल्प. |
सार्वजनिक तरीके
ImageClassifierResult | |
ImageClassifierResult |
classify(MPImage इमेज, ImageProcessingOptions imageprocessingOptions)
दी गई एक इमेज की कैटगरी तय करता है.
|
void |
classifyAsync(MPImage इमेज, ImageProcessingOptions imageprocessingOptions, लंबे टाइमस्टैंप)
यह सुविधा, कैटगरी तय करने के लिए इमेज का लाइव डेटा भेजती है. साथ ही,
ImageClassifier.ImageClassifierOptions में दिए गए
OutputHandler.ResultListener की मदद से नतीजे उपलब्ध होंगे. |
void |
classifyAsync(MPImage इमेज, लंबा टाइमस्टैंप)
यह नीति, डिफ़ॉल्ट इमेज प्रोसेसिंग के विकल्पों के साथ क्लासिफ़िकेशन करने के लिए लाइव इमेज डेटा भेजती है, जैसे कि
|
ImageClassifierResult |
classifyForVideo(MPImage इमेज, लंबा टाइमस्टैंप)
डिफ़ॉल्ट इमेज प्रोसेसिंग के विकल्पों की मदद से, दिए गए वीडियो फ़्रेम की कैटगरी तय करता है, जैसे कि
|
ImageClassifierResult |
classifyForVideo(MPImage इमेज, ImageProcessingOptions imageProcessOptions, लंबे टाइमस्टैंप)
दिए गए वीडियो फ़्रेम की कैटगरी तय करता है.
|
स्टैटिक ImageClassifier |
createFromBuffer(कॉन्टेक्स्ट कॉन्टेक्स्ट, ByteBuffer ModelBuffer)
मॉडल बफ़र और डिफ़ॉल्ट
ImageClassifier.ImageClassifierOptions से ImageClassifier इंस्टेंस बनाता है. |
स्टैटिक ImageClassifier |
createFromFile(कॉन्टेक्स्ट कॉन्टेक्स्ट, स्ट्रिंग ModelPath)
मॉडल फ़ाइल और डिफ़ॉल्ट
ImageClassifier.ImageClassifierOptions से ImageClassifier इंस्टेंस बनाता है. |
स्टैटिक ImageClassifier |
createFromFile(कॉन्टेक्स्ट कॉन्टेक्स्ट, फ़ाइल ModelFile)
मॉडल फ़ाइल और डिफ़ॉल्ट
ImageClassifier.ImageClassifierOptions से ImageClassifier इंस्टेंस बनाता है. |
स्टैटिक ImageClassifier |
createFromOptions(कॉन्टेक्स्ट कॉन्टेक्स्ट, ImageClassifier.ImageClassifierOptions विकल्प)
ImageClassifier.ImageClassifierOptions इंस्टेंस से ImageClassifier इंस्टेंस बनाता है. |
इनहेरिट किए गए तरीके
सार्वजनिक तरीके
सार्वजनिक ImageClassifierResult क्लासिफ़ाइड (MPImage इमेज)
इमेज को प्रोसेस करने के डिफ़ॉल्ट विकल्पों के साथ, दी गई एक इमेज की कैटगरी तय करता है.
जैसे, पूरी इमेज को पसंद के क्षेत्र के तौर पर इस्तेमाल किया जाता है और बिना कोई रोटेशन लागू किए इमेज का इस्तेमाल किया जाता है. इस तरीके का इस्तेमाल सिर्फ़ तब करें, जब ERROR(/RunningMode.IMAGE)
की मदद से ImageClassifier
बनाया गया हो.
ImageClassifier
पर इस तरह के कलर स्पेस इस्तेमाल किए जा सकते हैं:
पैरामीटर
इमेज | प्रोसेसिंग के लिए MediaPipe MPImage ऑब्जेक्ट. |
---|
थ्रो
अगर कोई अंदरूनी गड़बड़ी होती है. |
सार्वजनिक ImageClassifierResult क्लासिफ़ाइड (MPImage इमेज, ImageProcessingOptions imageprocessingOptions)
दी गई एक इमेज की कैटगरी तय करता है. इस तरीके का इस्तेमाल सिर्फ़ तब करें, जब ERROR(/RunningMode.IMAGE)
की मदद से ImageClassifier
बनाया गया हो.
ImageClassifier
पर इस तरह के कलर स्पेस इस्तेमाल किए जा सकते हैं:
पैरामीटर
इमेज | प्रोसेसिंग के लिए MediaPipe MPImage ऑब्जेक्ट. |
---|---|
imageProcessingOptions | ImageProcessingOptions में यह बताया गया है कि अनुमान चलाने से पहले, इनपुट इमेज को कैसे प्रोसेस किया जाए. |
थ्रो
अगर कोई अंदरूनी गड़बड़ी होती है. |
Public अमान्य classifyAsync (MPImage इमेज, ImageProcessingOptions ImageprocessingOptions imageprocessingOptions, लंबे timestampM)
यह सुविधा, कैटगरी तय करने के लिए इमेज का लाइव डेटा भेजती है. साथ ही, ImageClassifier.ImageClassifierOptions
में दिए गए
OutputHandler.ResultListener
की मदद से नतीजे उपलब्ध होंगे. इस तरीके का इस्तेमाल सिर्फ़ तब करें, जब ERROR(/RunningMode.LIVE_STREAM)
की मदद से ImageClassifier
बनाया गया हो.
ऑब्जेक्ट डिटेक्टर को इनपुट इमेज कब भेजी गई है, यह बताने के लिए टाइमस्टैंप (मिलीसेकंड में) देना ज़रूरी है. इनपुट के टाइमस्टैंप एक-दूसरे के हिसाब से बढ़ते होने चाहिए.
ImageClassifier
पर इस तरह के कलर स्पेस इस्तेमाल किए जा सकते हैं:
पैरामीटर
इमेज | प्रोसेसिंग के लिए MediaPipe MPImage ऑब्जेक्ट. |
---|---|
imageProcessingOptions | ImageProcessingOptions में यह बताया गया है कि अनुमान चलाने से पहले, इनपुट इमेज को कैसे प्रोसेस किया जाए. |
timestampMs | इनपुट टाइमस्टैंप (मिलीसेकंड में). |
थ्रो
अगर कोई अंदरूनी गड़बड़ी होती है. |
सार्वजनिक शून्य classifyAsync (MPImage इमेज, लंबा टाइमस्टैंपMs)
यह लाइव इमेज डेटा को इमेज प्रोसेसिंग के डिफ़ॉल्ट विकल्पों के हिसाब से कैटगरी में बांटने के लिए भेजता है.इसका मतलब है कि
पूरी इमेज को पसंद के क्षेत्र के तौर पर इस्तेमाल किया जाता है और कोई रोटेशन लागू नहीं किया जाता. नतीजे
ImageClassifier.ImageClassifierOptions
में दिए गए OutputHandler.ResultListener
के ज़रिए उपलब्ध होंगे. इस तरीके का इस्तेमाल सिर्फ़ तब करें, जब ImageClassifier
को ERROR(/RunningMode.LIVE_STREAM)
की मदद से बनाया गया हो.
ऑब्जेक्ट डिटेक्टर को इनपुट इमेज कब भेजी गई है, यह बताने के लिए टाइमस्टैंप (मिलीसेकंड में) देना ज़रूरी है. इनपुट के टाइमस्टैंप एक-दूसरे के हिसाब से बढ़ते होने चाहिए.
ImageClassifier
पर इस तरह के कलर स्पेस इस्तेमाल किए जा सकते हैं:
पैरामीटर
इमेज | प्रोसेसिंग के लिए MediaPipe MPImage ऑब्जेक्ट. |
---|---|
timestampMs | इनपुट टाइमस्टैंप (मिलीसेकंड में). |
थ्रो
अगर कोई अंदरूनी गड़बड़ी होती है. |
सार्वजनिक ImageClassifierResult classifyForVideo (MPImage इमेज, लंबा टाइमस्टैंपMs)
इमेज को प्रोसेस करने के डिफ़ॉल्ट विकल्पों का इस्तेमाल करके, दिए गए वीडियो फ़्रेम की कैटगरी तय की जाती है.
जैसे, पूरी इमेज को पसंद के क्षेत्र के तौर पर इस्तेमाल किया जाता है और बिना कोई रोटेशन लागू किया जाता है. इस तरीके का इस्तेमाल सिर्फ़ तब करें, जब ERROR(/RunningMode.VIDEO)
की मदद से ImageClassifier
बनाया गया हो.
वीडियो फ़्रेम के टाइमस्टैंप की जानकारी, मिलीसेकंड में देना ज़रूरी है. इनपुट के टाइमस्टैंप एक-दूसरे के हिसाब से बढ़ते रहने चाहिए.
ImageClassifier
पर इस तरह के कलर स्पेस इस्तेमाल किए जा सकते हैं:
पैरामीटर
इमेज | प्रोसेसिंग के लिए MediaPipe MPImage ऑब्जेक्ट. |
---|---|
timestampMs | इनपुट टाइमस्टैंप (मिलीसेकंड में). |
थ्रो
अगर कोई अंदरूनी गड़बड़ी होती है. |
ImageClassifierResult classifyForVideoMPImageImageProcessingOptions
दिए गए वीडियो फ़्रेम की कैटगरी तय करता है. इस तरीके का इस्तेमाल सिर्फ़ तब करें, जब ERROR(/RunningMode.VIDEO)
की मदद से ImageClassifier
बनाया गया हो.
वीडियो फ़्रेम के टाइमस्टैंप की जानकारी, मिलीसेकंड में देना ज़रूरी है. इनपुट के टाइमस्टैंप एक-दूसरे के हिसाब से बढ़ते रहने चाहिए.
ImageClassifier
पर इस तरह के कलर स्पेस इस्तेमाल किए जा सकते हैं:
पैरामीटर
इमेज | प्रोसेसिंग के लिए MediaPipe MPImage ऑब्जेक्ट. |
---|---|
imageProcessingOptions | ImageProcessingOptions में यह बताया गया है कि अनुमान चलाने से पहले, इनपुट इमेज को कैसे प्रोसेस किया जाए. |
timestampMs | इनपुट टाइमस्टैंप (मिलीसेकंड में). |
थ्रो
अगर कोई अंदरूनी गड़बड़ी होती है. |
सार्वजनिक स्टैटिक ImageClassifier createFromBuffer (कॉन्टेक्स्ट कॉन्टेक्स्ट, ByteBuffer ModelBuffer)
मॉडल बफ़र और डिफ़ॉल्ट ImageClassifier.ImageClassifierOptions
से ImageClassifier
इंस्टेंस बनाता है.
पैरामीटर
संदर्भ | Android ERROR(/Context) . |
---|---|
modelBuffer | डेटा की कैटगरी तय करने वाले मॉडल का
ByteBuffer या ERROR(/MappedByteBuffer) . |
थ्रो
अगर ImageClassifier बनाते समय कोई गड़बड़ी होती है.
|
सार्वजनिक स्टैटिक ImageClassifier createFromFile (कॉन्टेक्स्ट कॉन्टेक्स्ट, स्ट्रिंग ModelPath)
मॉडल फ़ाइल और डिफ़ॉल्ट ImageClassifier.ImageClassifierOptions
से ImageClassifier
इंस्टेंस बनाता है.
पैरामीटर
संदर्भ | Android ERROR(/Context) . |
---|---|
modelPath | पाथ में दी गई शर्तें पूरी करेगा. |
थ्रो
अगर ImageClassifier बनाते समय कोई गड़बड़ी होती है.
|
सार्वजनिक स्टैटिक ImageClassifier createFromFile (कॉन्टेक्स्ट कॉन्टेक्स्ट, फ़ाइल मॉडलफ़ाइल)
मॉडल फ़ाइल और डिफ़ॉल्ट ImageClassifier.ImageClassifierOptions
से ImageClassifier
इंस्टेंस बनाता है.
पैरामीटर
संदर्भ | Android ERROR(/Context) . |
---|---|
modelFile | क्लासिफ़िकेशन मॉडल File इंस्टेंस. |
थ्रो
IOException | अगर tflite मॉडल फ़ाइल को खोलते समय कोई I/O गड़बड़ी होती है. |
---|---|
अगर ImageClassifier बनाते समय कोई गड़बड़ी होती है.
|
सार्वजनिक स्टैटिक ImageClassifier createFromOptions (कॉन्टेक्स्ट कॉन्टेक्स्ट, ImageClassifier.ImageClassifierOptions विकल्प)
ImageClassifier.ImageClassifierOptions
इंस्टेंस से ImageClassifier
इंस्टेंस बनाता है.
पैरामीटर
संदर्भ | Android ERROR(/Context) . |
---|---|
विकल्प | ImageClassifier.ImageClassifierOptions इंस्टेंस. |
थ्रो
अगर ImageClassifier बनाते समय कोई गड़बड़ी होती है.
|