tensorflow:: ops:: NonMaxSuppressionV5

#include <image_ops.h>

يختار بشكل جشع مجموعة فرعية من المربعات المحيطة بترتيب تنازلي حسب النتيجة.

ملخص

تُزيل هذه الخوارزمية المربعات التي تتداخل بشكل كبير مع المربعات المختارة سابقًا، وذلك عن طريق حذف المربعات التي تقل قيمة تقاطعها عن score_threshold المحدد. تُحدد المربعات المُحيطة على شكل [y1, x1, y2, x2]، حيث يُمثل (y1, x1) و(y2, x2) إحداثيات أي زوج قطري من زوايا المربع، ويمكن تحديد هذه الإحداثيات إما كقيم مُعَيَّرة (أي تقع ضمن الفترة [0, 1]) أو كقيم مطلقة. تجدر الإشارة إلى أن هذه الخوارزمية لا تتأثر بموقع نقطة الأصل في نظام الإحداثيات، وهي ثابتة بشكل عام عند إجراء تحويلات أو انعكاسات متعامدة على نظام الإحداثيات؛ وبالتالي، فإن انعكاسات نظام الإحداثيات أو نقلها لا تؤثر على اختيار المربعات نفسها. ينتج عن هذه العملية مجموعة من الأعداد الصحيحة التي تُشير إلى مجموعة المربعات المُحيطة المُدخلة، والتي تُمثل المربعات المختارة. بعد ذلك، يُمكن الحصول على إحداثيات المربعات المُحيطة المُقابلة للفهارس المُختارة باستخدام tf.gather operation . على سبيل المثال: `selected_indices = tf.image.non_max_suppression_v2(boxes, scores, max_output_size, iou_threshold, score_threshold)` و `selected_boxes = tf.gather(boxes, selected_indices)`. يدعم هذا الإجراء أيضًا وضع Soft-NMS (مع ترجيح غاوسي) (انظر Bodla et al، https://arxiv.org/abs/1704.04503 )، حيث تُخفّض المربعات درجة المربعات المتداخلة الأخرى بدلًا من حذفها مباشرةً. لتفعيل وضع Soft-NMS، اضبط قيمة المعامل soft_nms_sigma لتكون أكبر من صفر.

الحجج:

  • النطاق: كائن النطاق
  • المربعات: موتر ثنائي الأبعاد من نوع float ذو شكل [num_boxes, 4] .
  • النتائج: موتر أحادي البعد من نوع float ذو شكل [num_boxes] يمثل نتيجة واحدة تتوافق مع كل مربع (كل صف من المربعات).
  • max_output_size: موتر عددي صحيح يمثل الحد الأقصى لعدد المربعات التي سيتم تحديدها بواسطة قمع غير الحد الأقصى.
  • iou_threshold: موتر عائم ذو 0-D يمثل العتبة لتحديد ما إذا كانت المربعات تتداخل كثيرًا فيما يتعلق بـ IOU.
  • score_threshold: موتر ذو بُعد صفري يمثل العتبة لتحديد متى يتم إزالة المربعات بناءً على النتيجة.
  • soft_nms_sigma: موتر ذو بُعد صفري يُمثل مُعامل سيجما لـ Soft NMS؛ انظر Bodla et al (cf https://arxiv.org/abs/1704.04503 ). عندما تكون soft_nms_sigma=0.0 (وهي القيمة الافتراضية)، نعود إلى NMS القياسي (الصلب).

السمات الاختيارية (انظر Attrs ):

  • pad_to_max_output_size: إذا كانت القيمة صحيحة، فسيتم إضافة حشو إلى المصفوفة selected_indices الناتجة لتصبح بطول max_output_size . القيمة الافتراضية هي خطأ.

المرتجعات:

  • Output selected_indices: A 1-D integer tensor of shape [M] represent the selected indexs from the boxes tensor, where M <= max_output_size .
  • Output selected_scores: عبارة عن موتر أحادي البعد من نوع float، شكله [M] يمثل الدرجات المقابلة لكل مربع محدد، حيث M <= max_output_size . تختلف الدرجات عن درجات الإدخال المقابلة فقط عند استخدام Soft NMS (أي عندما soft_nms_sigma>0 ).
  • Output valid_outputs: موتر عدد صحيح 0-D يمثل عدد العناصر الصالحة في selected_indices ، مع ظهور العناصر الصالحة أولاً.

البناة والمدمرون

NonMaxSuppressionV5 (const :: tensorflow::Scope & scope, :: tensorflow::Input boxes, :: tensorflow::Input scores, :: tensorflow::Input max_output_size, :: tensorflow::Input iou_threshold, :: tensorflow::Input score_threshold, :: tensorflow::Input soft_nms_sigma)
NonMaxSuppressionV5 (const :: tensorflow::Scope & scope, :: tensorflow::Input boxes, :: tensorflow::Input scores, :: tensorflow::Input max_output_size, :: tensorflow::Input iou_threshold, :: tensorflow::Input score_threshold, :: tensorflow::Input soft_nms_sigma, const NonMaxSuppressionV5::Attrs & attrs)

السمات العامة

operation
selected_indices
selected_scores
valid_outputs

الدوال الثابتة العامة

PadToMaxOutputSize (bool x)

الهياكل

tensorflow:: ops:: NonMaxSuppressionV5:: Attrs

أدوات تعيين السمات الاختيارية لـ NonMaxSuppressionV5 .

السمات العامة

عملية

Operation operation

المؤشرات_المختارة

::tensorflow::Output selected_indices

الدرجات_المختارة

::tensorflow::Output selected_scores

مخرجات صالحة

::tensorflow::Output valid_outputs

الوظائف العامة

NonMaxSuppressionV5

 NonMaxSuppressionV5(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input boxes,
  ::tensorflow::Input scores,
  ::tensorflow::Input max_output_size,
  ::tensorflow::Input iou_threshold,
  ::tensorflow::Input score_threshold,
  ::tensorflow::Input soft_nms_sigma
)

NonMaxSuppressionV5

 NonMaxSuppressionV5(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input boxes,
  ::tensorflow::Input scores,
  ::tensorflow::Input max_output_size,
  ::tensorflow::Input iou_threshold,
  ::tensorflow::Input score_threshold,
  ::tensorflow::Input soft_nms_sigma,
  const NonMaxSuppressionV5::Attrs & attrs
)

الدوال الثابتة العامة

حجم الإخراج الأقصى للوسادة

Attrs PadToMaxOutputSize(
  bool x
)