tensorflow::ops::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( 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 значение больше 0.
Аргументы:
- scope: объект Scope
- boxes: двумерный тензор float формы
[num_boxes, 4]. - scores: одномерный тензор float формы
[num_boxes], содержащий оценку для каждой рамки (каждой строки boxes). - max_output_size: скалярный целочисленный тензор, задающий максимальное количество рамок, выбираемых подавлением немаксимумов.
- iou_threshold: нульмерный тензор float, задающий порог для определения чрезмерного перекрытия рамок по показателю IoU.
- score_threshold: нульмерный тензор float, задающий порог оценки, ниже которого рамки удаляются.
- soft_nms_sigma: нульмерный тензор float, задающий параметр sigma для Soft NMS; см. Bodla et al. (см. https://arxiv.org/abs/1704.04503). Если
soft_nms_sigma=0.0(значение по умолчанию), используется стандартный (жесткий) NMS.
Необязательные атрибуты (см. Attrs):
- pad_to_max_output_size: если значение равно true, выходной
selected_indicesдополняется до длиныmax_output_size. По умолчанию — false.
Возвращает:
-
Outputselected_indices: одномерный целочисленный тензор формы[M], содержащий выбранные индексы из тензора boxes, гдеM <= max_output_size. -
Outputselected_scores: одномерный тензор float формы[M], содержащий соответствующие оценки каждой выбранной рамки, гдеM <= max_output_size. Оценки отличаются от соответствующих входных оценок только при использовании Soft NMS (то есть когдаsoft_nms_sigma>0) -
Outputvalid_outputs: нульмерный целочисленный тензор, задающий количество допустимых элементов в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 operation
selected_indices
::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 )
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/cc/class/tensorflow/ops/non-max-suppression-v5