BoundingBoxUtil

पब्लिक फ़ाइनल क्लास BoundingBoxUtil

बाउंडिंग बॉक्स को रेक्टैंगल में बदलने वाली वैल्यू को बदलने के लिए हेल्पर क्लास.

क्लास अलग-अलग तरह के कॉन्फ़िगरेशन से RectF के तौर पर बाउंडिंग बॉक्स बनाने के लिए, एक स्टैटिक फ़ंक्शन देता है.

आम तौर पर, एक बाउंडिंग बॉक्स को चार फ़्लोट वैल्यू से दिखाया जा सकता है, लेकिन वैल्यू को कई तरीकों से समझा जा सकता है. अब हम तीन BoundingBoxUtil.Type कॉन्फ़िगरेशन का इस्तेमाल कर सकते हैं. साथ ही, हर टाइप में एलिमेंट के क्रम को भी कॉन्फ़िगर किया जा सकता है.

नेस्ट की गई क्लास

enum BoundingBoxUtil.CoordinateType यह दिखाता है कि निर्देशांक असल पिक्सल हैं या मिलते-जुलते अनुपात हैं. 
enum BoundingBoxUtil.Type इससे पता चलता है कि बाउंडिंग बॉक्स को कैसे दिखाया जाता है. 

सार्वजनिक तरीके

स्टैटिक सूची<RectF>
convert(TensorBuffer tensor, int[] valueIndex, int boundingBoxAxis, BoundingBoxUtil.Type type, BoundingBoxUtil.CoordinateType coordinateType, int length, int एजेंसी)
TensorBuffer से बाउंडिंग बॉक्स की सूची बनाता है, जो बाउंडिंग बॉक्स को दिखाता है.

इनहेरिट किए गए तरीके

सार्वजनिक तरीके

TensorBufferBoundingBoxUtil.TypeBoundingBoxUtil.CoordinateType

TensorBuffer से बाउंडिंग बॉक्स की सूची बनाता है, जो बाउंडिंग बॉक्स को दिखाता है.

पैरामीटर
टेन्सर कुछ बॉक्स को दिखाता डेटा रखता है.
valueIndex हर बाउंडिंग बॉक्स टाइप में तय किए गए एलिमेंट का क्रम दिखाता है. खाली इंडेक्स कलेक्शन, हर बाउंडिंग बॉक्स टाइप का डिफ़ॉल्ट क्रम दिखाता है. उदाहरण के लिए, BOUNDARIES के डिफ़ॉल्ट क्रम, {left, top, right, bottom} को दिखाने के लिए, इंडेक्स {0, 1, 2, 3} होना चाहिए. क्रम {left, right, top, bottom} को दिखाने के लिए, क्रम {0, 2, 1, 3} होना चाहिए.

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

boundingBoxAxis बाउंडिंग बॉक्स को दिखाने वाले डाइमेंशन के इंडेक्स को तय करता है. इस डाइमेंशन का साइज़ 4 होना ज़रूरी है. यहाँ का इंडेक्स 0 से शुरू होता है. उदाहरण के लिए, अगर टेन्सर का आकार 4x10 है, तो बाउंडिंग बॉक्स का ऐक्सिस 0 हो सकता है. नेगेटिव ऐक्सिस भी इस्तेमाल किया जा सकता है: -1 आखिरी ऐक्सिस देता है और -2 से दूसरा.
टाइप तय करता है कि वैल्यू को बॉक्स में कैसे बदला जाना चाहिए. BoundingBoxUtil.Type देखें
coordinateType निर्देशांकों के रूप में मानों की व्याख्या कैसे की जाती है. BoundingBoxUtil.CoordinateType देखें
ऊंचाई बॉक्स से संबंधित इमेज की ऊंचाई. यह सिर्फ़ तब लागू होता है, जब coordinateType BoundingBoxUtil.CoordinateType.RATIO पर सेट हो
चौड़ाई बॉक्स से संबंधित इमेज की चौड़ाई. यह सिर्फ़ तब लागू होता है, जब coordinateType BoundingBoxUtil.CoordinateType.RATIO पर सेट हो
लौटाए गए प्रॉडक्ट
  • tensor से जुड़े बाउंडिंग बॉक्स की सूची. boundingBoxAxis को छोड़कर सभी डाइमेंशन को छोटा कर दिया जाएगा. साथ ही, उनका क्रम भी तय किया जाएगा. उदाहरण के लिए, अगर tensor को आकार {1, 4, 10, 2} और boundingBoxAxis = 1 दिया गया है, तो नतीजा देने पर, बाउंडिंग बॉक्स की एक सूची मिलेगी.
थ्रो
IllegalArgumentException अगर बाउंडिंग बॉक्स डाइमेंशन का साइज़ (boundingBoxAxis से सेट किया गया) 4 नहीं है.
IllegalArgumentException अगर boundingBoxAxis, (-(D+1), D) में नहीं है, जहां D, tensor के डाइमेंशन की संख्या है.
IllegalArgumentException अगर tensor में DataType.FLOAT32 के अलावा, अलग-अलग तरह का डेटा है.