جریان تنسور:: عملیات:: NonMaxSuppressionV5

#include <image_ops.h>

حریصانه زیرمجموعه ای از جعبه های محدود کننده را به ترتیب امتیاز نزولی انتخاب می کند.

خلاصه

هرس کردن جعبه هایی که دارای تقاطع بالای اتحاد (IOU) هستند با جعبه های انتخاب شده قبلی همپوشانی دارند. کادرهای محدود کننده با امتیاز کمتر از score_threshold حذف می شوند. جعبه های مرزی به صورت [y1، x1، y2، x2] عرضه می شوند، که در آن (y1، x1) و (y2، x2) مختصات هر جفت مورب گوشه های جعبه هستند و مختصات را می توان به صورت نرمال ارائه کرد (یعنی خوابیده در فاصله [0، 1]) یا مطلق. توجه داشته باشید که این الگوریتم نسبت به جایی که مبدأ در سیستم مختصات است آگنوستیک است و به طور کلی نسبت به تبدیل‌های متعامد و ترجمه‌های سیستم مختصات تغییر نمی‌کند. بنابراین ترجمه یا بازتاب سیستم مختصات منجر به انتخاب کادرهای مشابه توسط الگوریتم می شود. خروجی این عملیات مجموعه ای از اعداد صحیح است که در مجموعه ورودی جعبه های مرزی نمایانگر جعبه های انتخاب شده اند. سپس مختصات جعبه مرزی مربوط به شاخص های انتخاب شده را می توان با استفاده از tf.gather operation به دست آورد. به عنوان مثال: selected_indices = tf.image.non_max_suppression_v2 ( کادرها، امتیازات، حداکثر_اندازه_output_size، iou_threshold، score_threshold) selected_boxes = tf.gather(boxes, selected_indices) این عملیات همچنین از یک Soft-NMS (با حالت Bossianfed) پشتیبانی می کند. ، https://arxiv.org/abs/1704.04503 ) که در آن جعبه ها به جای اینکه مستقیماً باعث هرس شدن آنها شوند، امتیاز سایر جعبه های همپوشانی را کاهش می دهند. برای فعال کردن این حالت Soft-NMS، پارامتر soft_nms_sigma را بزرگتر از 0 تنظیم کنید.

استدلال ها:

  • scope: یک شی Scope
  • جعبه‌ها: یک تانسور شناور دو بعدی با شکل [num_boxes, 4] .
  • امتیازها: یک تانسور شناور یک بعدی با شکل [num_boxes] که نشان دهنده یک امتیاز واحد مربوط به هر جعبه (هر ردیف از جعبه ها) است.
  • max_output_size: یک تانسور عدد صحیح اسکالر که نشان دهنده حداکثر تعداد کادرهایی است که باید با سرکوب غیر حداکثر انتخاب شوند.
  • iou_threshold: یک تانسور شناور 0-D که آستانه ای را برای تصمیم گیری در مورد همپوشانی بیش از حد جعبه ها نسبت به IOU نشان می دهد.
  • score_threshold: یک تانسور شناور 0-D که آستانه تصمیم گیری برای حذف جعبه ها بر اساس امتیاز را نشان می دهد.
  • soft_nms_sigma: یک تانسور شناور 0-D که پارامتر سیگما را برای Soft NMS نشان می دهد. به Bodla و همکاران (رجوع کنید به 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: یک تانسور عدد صحیح یک بعدی از شکل [M] که نمایانگر شاخص های انتخاب شده از تانسور جعبه ها است، جایی که M <= max_output_size .
  • Output Selected_scores: یک تانسور شناور یک بعدی به شکل [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

Selected_scores

::tensorflow::Output selected_scores

valid_outputs

::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
)

توابع استاتیک عمومی

PadToMaxOutputSize

Attrs PadToMaxOutputSize(
  bool x
)