tensorflow:: عملیات:: سرکوب ترکیبی غیرحداکثری

#include <image_ops.h>

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

خلاصه

این عملیات، non_max_suppression را روی ورودی‌ها در هر دسته، در تمام کلاس‌ها، انجام می‌دهد. جعبه‌هایی را که همپوشانی تقاطع-روی-اجتماع (IOU) بالایی با جعبه‌های انتخاب شده قبلی دارند، حذف می‌کند. جعبه‌های مرزی به صورت [y1، x1، y2، x2] ارائه می‌شوند، که در آن (y1، x1) و (y2، x2) مختصات هر جفت قطری از گوشه‌های جعبه هستند و مختصات می‌توانند به صورت نرمال شده (یعنی قرار گرفتن در بازه [0، 1]) یا مطلق ارائه شوند. توجه داشته باشید که این الگوریتم نسبت به محل مبدا در سیستم مختصات، مستقل است. همچنین توجه داشته باشید که این الگوریتم نسبت به تبدیلات متعامد و انتقال سیستم مختصات ثابت است. بنابراین انتقال یا بازتاب سیستم مختصات منجر به انتخاب جعبه‌های یکسان توسط الگوریتم می‌شود. خروجی این عملیات، جعبه‌ها، نمرات و تانسور کلاس‌های نهایی است که پس از انجام non_max_suppression بازگردانده می‌شوند.

استدلال‌ها:

  • دامنه: یک شیء دامنه
  • جعبه‌ها: یک تانسور اعشاری چهاربعدی به شکل [batch_size, num_boxes, q, 4] . اگر q برابر با ۱ باشد، از جعبه‌های یکسان برای همه کلاس‌ها استفاده می‌شود، در غیر این صورت، اگر q برابر با تعداد کلاس‌ها باشد، از جعبه‌های مختص به کلاس استفاده می‌شود.
  • نمرات: یک تانسور شناور سه‌بعدی به شکل [batch_size, num_boxes, num_classes] که نشان‌دهنده یک امتیاز واحد مربوط به هر جعبه (هر ردیف از جعبه‌ها) است.
  • max_output_size_per_class: یک تانسور عدد صحیح اسکالر که نشان دهنده حداکثر تعداد جعبه‌هایی است که باید با حذف غیر حداکثری به ازای هر کلاس انتخاب شوند.
  • max_total_size: یک اسکالر که حداکثر تعداد جعبه‌های نگهداری شده در تمام کلاس‌ها را نشان می‌دهد.
  • iou_threshold: یک تانسور اعشاری صفر بعدی که نشان‌دهنده آستانه‌ای برای تصمیم‌گیری در مورد همپوشانی بیش از حد جعبه‌ها نسبت به IOU است.
  • score_threshold: یک تانسور اعشاری صفر بعدی که نشان‌دهنده آستانه تصمیم‌گیری برای حذف جعبه‌ها بر اساس امتیاز است.

ویژگی‌های اختیاری (به Attrs مراجعه کنید):

  • pad_per_class: اگر false باشد، کادرها، نمرات و کلاس‌های nmsed خروجی به max_total_size پر/برش داده می‌شوند. اگر true باشد، کادرها، نمرات و کلاس‌های nmsed خروجی به طول max_size_per_class * num_classes پر می‌شوند، مگر اینکه از max_total_size بیشتر شود که در این صورت به max_total_size برش داده می‌شود. پیش‌فرض false است.
  • clip_boxes: اگر درست باشد، فرض کن مختصات جعبه بین [0، 1] است و اگر جعبه‌های خروجی فراتر از [0، 1] قرار بگیرند، آنها را برش بده. اگر نادرست باشد، برش انجام نده و مختصات جعبه را همانطور که هست خروجی بده.

بازده:

  • Output nmsed_boxes: یک تانسور float32 [batch_size, max_detections, 4] حاوی جعبه‌های غیرمکس شده.
  • Output nmsed_scores: یک تانسور float32 [batch_size, max_detections] حاوی امتیازهای مربوط به جعبه‌ها.
  • Output nmsed_classes: یک تانسور float32 [batch_size, max_detections] شامل کلاس‌های مربوط به جعبه‌ها.
  • Output valid_detections: یک تانسور int32 [batch_size] که تعداد تشخیص‌های معتبر به ازای هر آیتم دسته‌ای را نشان می‌دهد. فقط ورودی‌های برتر num_detections[i] در nms_boxes[i]، nms_scores[i] و nms_class[i] معتبر هستند. بقیه ورودی‌ها zero padding هستند.

سازنده‌ها و مخرب‌ها

CombinedNonMaxSuppression (const :: tensorflow::Scope & scope, :: tensorflow::Input boxes, :: tensorflow::Input scores, :: tensorflow::Input max_output_size_per_class, :: tensorflow::Input max_total_size, :: tensorflow::Input iou_threshold, :: tensorflow::Input score_threshold)
CombinedNonMaxSuppression (const :: tensorflow::Scope & scope, :: tensorflow::Input boxes, :: tensorflow::Input scores, :: tensorflow::Input max_output_size_per_class, :: tensorflow::Input max_total_size, :: tensorflow::Input iou_threshold, :: tensorflow::Input score_threshold, const CombinedNonMaxSuppression::Attrs & attrs)

ویژگی‌های عمومی

nmsed_boxes
nmsed_classes
nmsed_scores
operation
valid_detections

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

ClipBoxes (bool x)
PadPerClass (bool x)

ساختارها

tensorflow:: عملیات:: سرکوب ترکیبی غیرمکس:: جذابیت‌ها

تنظیم‌کننده‌های ویژگی اختیاری برای CombinedNonMaxSuppression .

ویژگی‌های عمومی

nmsed_boxes

::tensorflow::Output nmsed_boxes

کلاس‌های nmsed

::tensorflow::Output nmsed_classes

امتیازات nmsed

::tensorflow::Output nmsed_scores

عملیات

Operation operation

تشخیص‌های معتبر

::tensorflow::Output valid_detections

کارکردهای عمومی

سرکوب ترکیبی غیرحداکثری

 CombinedNonMaxSuppression(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input boxes,
  ::tensorflow::Input scores,
  ::tensorflow::Input max_output_size_per_class,
  ::tensorflow::Input max_total_size,
  ::tensorflow::Input iou_threshold,
  ::tensorflow::Input score_threshold
)

سرکوب ترکیبی غیرحداکثری

 CombinedNonMaxSuppression(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input boxes,
  ::tensorflow::Input scores,
  ::tensorflow::Input max_output_size_per_class,
  ::tensorflow::Input max_total_size,
  ::tensorflow::Input iou_threshold,
  ::tensorflow::Input score_threshold,
  const CombinedNonMaxSuppression::Attrs & attrs
)

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

کلیپ باکس ها

Attrs ClipBoxes(
  bool x
)

پدپرکلاس

Attrs PadPerClass(
  bool x
)