लालच से स्कोर के घटते क्रम में बाउंडिंग बॉक्स का एक सबसेट चुनता है,
पहले से चयनित बक्सों के साथ उच्च इंटरसेक्शन-ओवर-यूनियन (आईओयू) ओवरलैप वाले बक्सों को छांटना। `स्कोर_थ्रेसहोल्ड` से कम स्कोर वाले बाउंडिंग बॉक्स हटा दिए जाते हैं। बाउंडिंग बॉक्स को [y1, x1, y2, x2] के रूप में आपूर्ति की जाती है, जहां (y1, x1) और (y2, x2) बॉक्स कोनों की किसी भी विकर्ण जोड़ी के निर्देशांक हैं और निर्देशांक को सामान्यीकृत (यानी, झूठ बोलते हुए) के रूप में प्रदान किया जा सकता है अंतराल [0, 1]) या पूर्ण। ध्यान दें कि यह एल्गोरिदम इस बात से अज्ञेयवादी है कि मूल समन्वय प्रणाली में कहां है और आमतौर पर समन्वय प्रणाली के ऑर्थोगोनल परिवर्तनों और अनुवादों के लिए अपरिवर्तनीय है; इस प्रकार समन्वय प्रणाली के अनुवाद या प्रतिबिंब के परिणामस्वरूप एल्गोरिदम द्वारा समान बक्से का चयन किया जाता है। इस ऑपरेशन का आउटपुट चयनित बॉक्स का प्रतिनिधित्व करने वाले बाउंडिंग बॉक्स के इनपुट संग्रह में अनुक्रमित पूर्णांकों का एक सेट है। चयनित सूचकांकों के अनुरूप बाउंडिंग बॉक्स निर्देशांक `tf.gather ऑपरेशन` का उपयोग करके प्राप्त किया जा सकता है। उदाहरण के लिए: चयनित_सूचकांक = tf.image.non_max_suppression_v2(बक्से, स्कोर, अधिकतम_आउटपुट_आकार, iou_थ्रेशोल्ड, स्कोर_थ्रेशोल्ड) चयनित_बॉक्स = tf.gather(बक्से, चयनित_सूचकांक) यह ऑप सॉफ्ट-एनएमएस (गॉसियन वेटिंग के साथ) मोड का भी समर्थन करता है (सीएफ बोडला एट अल) , https://arxiv.org/abs/1704.04503) जहां बक्से अन्य ओवरलैपिंग बक्सों को सीधे काटने के बजाय उनके स्कोर को कम कर देते हैं। इस सॉफ्ट-एनएमएस मोड को सक्षम करने के लिए, `soft_nms_sigma` पैरामीटर को 0 से बड़ा करने के लिए सेट करें।
नेस्टेड क्लासेस
कक्षा | नॉनमैक्ससप्रेशन.विकल्प | NonMaxSuppression के लिए वैकल्पिक विशेषताएँ |
स्थिरांक
डोरी | OP_NAME | इस ऑप का नाम, जैसा कि TensorFlow कोर इंजन द्वारा जाना जाता है |
सार्वजनिक तरीके
स्थिर <T टीएनंबर बढ़ाता है > नॉनमैक्ससप्रेशन <T> | |
स्थिर नॉनमैक्ससप्रेशन.विकल्प | PadToMaxOutputSize (बूलियन पैडToMaxOutputSize) |
आउटपुट <TInt32> | चयनित सूचकांक () `[M]` आकार का एक 1-डी पूर्णांक टेंसर बॉक्स टेंसर से चयनित सूचकांकों का प्रतिनिधित्व करता है, जहां `M <= max_output_size` है। |
आउटपुट <T> | चयनितस्कोर () `[M]` आकार का एक 1-डी फ्लोट टेंसर प्रत्येक चयनित बॉक्स के लिए संबंधित स्कोर का प्रतिनिधित्व करता है, जहां `M <= max_output_size` है। |
आउटपुट <TInt32> | वैधआउटपुट () एक 0-डी पूर्णांक टेंसर `selected_indices` में वैध तत्वों की संख्या का प्रतिनिधित्व करता है, जिसमें वैध तत्व पहले दिखाई देते हैं। |
विरासत में मिली विधियाँ
स्थिरांक
सार्वजनिक स्थैतिक अंतिम स्ट्रिंग OP_NAME
इस ऑप का नाम, जैसा कि TensorFlow कोर इंजन द्वारा जाना जाता है
सार्वजनिक तरीके
सार्वजनिक स्थैतिक नॉनमैक्ससप्रेशन <T> बनाएं ( स्कोप स्कोप, ऑपरेंड <T> बॉक्स, ऑपरेंड <T> स्कोर, ऑपरेंड < TInt32 > maxOutputSize, ऑपरेंड <T> iouThreshold, ऑपरेंड <T> स्कोरथ्रेशोल्ड, ऑपरेंड <T> SoftNmsSigma, विकल्प.. विकल्प )
एक नए नॉनमैक्ससप्रेशन ऑपरेशन को लपेटकर एक क्लास बनाने की फ़ैक्टरी विधि।
पैरामीटर
दायरा | वर्तमान दायरा |
---|---|
बक्से | `[num_boxes, 4]` आकार का 2-डी फ्लोट टेंसर। |
स्कोर | `[num_boxes]` आकार का एक 1-डी फ्लोट टेंसर प्रत्येक बॉक्स (बक्से की प्रत्येक पंक्ति) के अनुरूप एकल स्कोर का प्रतिनिधित्व करता है। |
अधिकतम आउटपुट आकार | एक अदिश पूर्णांक टेंसर गैर-अधिकतम दमन द्वारा चुने जाने वाले बक्सों की अधिकतम संख्या का प्रतिनिधित्व करता है। |
iouदहलीज | एक 0-डी फ्लोट टेंसर यह तय करने के लिए सीमा का प्रतिनिधित्व करता है कि क्या बॉक्स आईओयू के संबंध में बहुत अधिक ओवरलैप करते हैं। |
स्कोर सीमा | एक 0-डी फ्लोट टेंसर स्कोर के आधार पर बक्से को हटाने का निर्णय लेने के लिए सीमा का प्रतिनिधित्व करता है। |
SoftNmsSigma | सॉफ्ट एनएमएस के लिए सिग्मा पैरामीटर का प्रतिनिधित्व करने वाला 0-डी फ्लोट टेंसर; बोडला एट अल देखें (cf https://arxiv.org/abs/1704.04503)। जब `soft_nms_sigma=0.0` (जो डिफ़ॉल्ट है), हम मानक (हार्ड) एनएमएस पर वापस आ जाते हैं। |
विकल्प | वैकल्पिक गुण मान रखता है |
रिटर्न
- नॉनमैक्ससप्रेशन का एक नया उदाहरण
सार्वजनिक स्थैतिक नॉनमैक्ससप्रेशन.ऑप्शंस पैडटूमैक्सऑउटपुटसाइज (बूलियन पैडटोमैक्सआउटपुटसाइज)
पैरामीटर
PadToMaxOutputSize | यदि सत्य है, तो आउटपुट `selected_indices` की लंबाई `max_output_size` होने के लिए गद्देदार है। डिफ़ॉल्ट से असत्य. |
---|
सार्वजनिक आउटपुट <TInt32> चयनित सूचकांक ()
`[M]` आकार का एक 1-डी पूर्णांक टेंसर बॉक्स टेंसर से चयनित सूचकांकों का प्रतिनिधित्व करता है, जहां `M <= max_output_size` है।
सार्वजनिक आउटपुट <T> चयनित स्कोर ()
`[M]` आकार का एक 1-डी फ्लोट टेंसर प्रत्येक चयनित बॉक्स के लिए संबंधित स्कोर का प्रतिनिधित्व करता है, जहां `M <= max_output_size` है। सॉफ्ट एनएमएस का उपयोग करते समय स्कोर केवल संबंधित इनपुट स्कोर से भिन्न होता है (यानी जब `soft_nms_sigma>0`)