يختار بجشع مجموعة فرعية من المربعات المحيطة بترتيب تنازلي للنتيجة،
تنفذ هذه العملية قمعًا غير أقصى على المدخلات لكل دفعة، عبر جميع الفئات. يزيل المربعات التي تحتوي على تقاطع عالي فوق الاتحاد (IOU) يتداخل مع المربعات المحددة مسبقًا. يتم توفير المربعات المحيطة بالشكل [y1، x1، y2، x2]، حيث (y1، x1) و (y2، x2) هي إحداثيات أي زوج قطري من زوايا الصندوق ويمكن تقديم الإحداثيات بشكل طبيعي (على سبيل المثال، الكذب في الفاصل الزمني [0، 1]) أو المطلق. لاحظ أن هذه الخوارزمية لا تعرف مكان الأصل في نظام الإحداثيات. لاحظ أيضًا أن هذه الخوارزمية ثابتة بالنسبة للتحويلات والترجمات المتعامدة لنظام الإحداثيات؛ وبالتالي فإن ترجمة أو انعكاسات نظام الإحداثيات تؤدي إلى تحديد نفس المربعات بواسطة الخوارزمية. مخرجات هذه العملية هي المربعات النهائية والدرجات وموتر الفئات التي تم إرجاعها بعد إجراء Non_max_suppression.
فئات متداخلة
فصل | CombinedNonMaxSuppression.Options | السمات الاختيارية لـ CombinedNonMaxSuppression |
الأساليب العامة
ثابت CombinedNonMaxSuppression.Options | clipBoxes (clipBoxes منطقية) |
ثابت CombinedNonMaxSuppression | إنشاء (نطاق النطاق ، مربعات المعامل <Float>، نتائج المعامل <Integer> maxOutputSizePerClass، المعامل <Integer> maxTotalSize، المعامل <Float> iouThreshold، المعامل <Float> ScoreThreshold ، خيارات ... ) طريقة المصنع لإنشاء فئة تغلف عملية CombinedNonMaxSuppression جديدة. |
الإخراج <تعويم> | nmsedBoxes () A [batch_size, max_detections, 4] موتر float32 يحتوي على الصناديق المكبوتة غير القصوى. |
الإخراج <تعويم> | nmsedClasses () موتر [batch_size, max_detections] float32 يحتوي على فئات الصناديق. |
الإخراج <تعويم> | nmsedScores () موتر [batch_size, max_detections] float32 يحتوي على نتائج الصناديق. |
ثابت CombinedNonMaxSuppression.Options | PadPerClass (منطقي PadPerClass) |
الإخراج <عدد صحيح> | اكتشافات صالحة () موتر int32 [batch_size] يشير إلى عدد الاكتشافات الصالحة لكل عنصر دفعة. |
الطرق الموروثة
الأساليب العامة
ثابت عام CombinedNonMaxSuppression.Options clipBoxes (clipBoxes منطقية)
حدود
clipBoxes | إذا كان صحيحًا، فافترض أن إحداثيات الصندوق تقع بين [0، 1] وقم بقص مربعات الإخراج إذا كانت تقع بعد [0، 1]. إذا كان خطأ، فلا تقم بالقص وإخراج إحداثيات الصندوق كما هي. |
---|
إنشاء CombinedNonMaxSuppression العام الثابت ( نطاق النطاق ، مربعات المعامل <Float>، درجات المعامل <Float>، المعامل <Integer> maxOutputSizePerClass، المعامل <Integer> maxTotalSize، المعامل <Float> iouThreshold، المعامل <Float> ScoreThreshold، خيارات ... )
طريقة المصنع لإنشاء فئة تغلف عملية CombinedNonMaxSuppression جديدة.
حدود
نِطَاق | النطاق الحالي |
---|---|
مربعات | موتر عائم رباعي الأبعاد بالشكل `[batch_size, num_boxes, q, 4]`. إذا كانت `q` تساوي 1، فسيتم استخدام نفس المربعات لجميع الفئات، وإلا، إذا كانت `q` تساوي عدد الفئات، فسيتم استخدام المربعات الخاصة بالفئات. |
درجات | موتر عائم ثلاثي الأبعاد على شكل `[batch_size, num_boxes, num_classes]` يمثل درجة واحدة تتوافق مع كل مربع (كل صف من المربعات). |
maxOutputSizePerClass | موتر عددي صحيح يمثل الحد الأقصى لعدد المربعات التي سيتم تحديدها عن طريق القمع غير الأقصى لكل فئة |
maxTotalSize | عدد int32 يمثل الحد الأقصى لعدد المربعات المحتجزة في جميع الفئات. لاحظ أن تعيين هذه القيمة على عدد كبير قد يؤدي إلى خطأ OOM اعتمادًا على حجم عمل النظام. |
ioThreshold | موتر عائم ذو 0-D يمثل العتبة لتحديد ما إذا كانت الصناديق تتداخل أكثر من اللازم فيما يتعلق بوحدة IOU. |
ScoreThreshold | موتر عائم ذو 0-D يمثل الحد الأدنى لتحديد وقت إزالة المربعات بناءً على النتيجة. |
خيارات | يحمل قيم السمات الاختيارية |
عائدات
- مثيل جديد من CombinedNonMaxSuppression
الإخراج العام <Float> nmsedBoxes ()
A [batch_size, max_detections, 4] موتر float32 يحتوي على الصناديق المكبوتة غير القصوى.
الإخراج العام <Float> nmsedClasses ()
موتر [batch_size, max_detections] float32 يحتوي على فئات الصناديق.
الإخراج العام <Float> nmsedScores ()
موتر [batch_size, max_detections] float32 يحتوي على نتائج الصناديق.
ثابت عام CombinedNonMaxSuppression.Options PadPerClass (منطقي PadPerClass)
حدود
PadPerClass | إذا كان خطأ، فسيتم إخفاء/قص مربعات الإخراج والدرجات والفئات إلى `max_total_size`. إذا كان صحيحًا، فسيتم تعبئة مربعات الإخراج والدرجات والفئات لتكون ذات طول `max_size_per_class`*`num_classes`، ما لم تتجاوز `max_total_size` وفي هذه الحالة يتم قصها إلى `max_total_size`. الافتراضيات كاذبة. |
---|
الإخراج العام <عدد صحيح> اكتشافات صالحة ()
موتر int32 [batch_size] يشير إلى عدد الاكتشافات الصالحة لكل عنصر دفعة. فقط أفضل إدخالات num_detections[i] في nms_boxes[i] وnms_scores[i] وnms_class[i] صالحة. بقية الإدخالات هي صفر الحشوات.