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 и др., https://arxiv.org/abs/1704.04503), где прямоугольники уменьшают оценку других перекрывающихся прямоугольников вместо непосредственного удаления их. Чтобы включить этот режим Soft-NMS, установите параметр soft_nms_sigma больше нуля.
Аргументы:
- scope: Объект Scope
- boxes: 2-мерный тензор с плавающей точкой типа float, формы
[num_boxes, 4]. - scores: 1-мерный тензор с плавающей точкой типа float, формы
[num_boxes]представляющий одну оценку, соответствующую каждому прямоугольнику (каждая строка boxes). - max_output_size: Скалярный целочисленный тензор, представляющий максимальное количество прямоугольников, которые будут выбраны подавлением без максимума.
- iou_threshold: 0-мерный тензор с плавающей точкой, представляющий порог для определения того, слишком ли много прямоугольники перекрываются относительно IOU.
- score_threshold: 0-мерный тензор с плавающей точкой, представляющий порог для определения того, когда удалять прямоугольники на основе оценки.
- soft_nms_sigma: 0-мерный тензор с плавающей точкой, представляющий параметр сигма для 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. По умолчанию ложно.
Возвращает:
-
Outputselected_indices: 1-мерный целочисленный тензор формы[M], представляющий выбранные индексы из тензора boxes, гдеM <= max_output_size. -
Outputselected_scores: 1-мерный тензор с плавающей точкой типа float формы[M], представляющий соответствующие оценки для каждого выбранного прямоугольника, гдеM <= max_output_size. Оценки отличаются от соответствующих входных оценок только при использовании Soft NMS (т. е. приsoft_nms_sigma>0) -
Outputvalid_outputs: 0-мерный целочисленный тензор, представляющий количество допустимых элементов в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 )
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/cc/class/tensorflow/ops/non-max-suppression-v5