tensorflow::ops::CombinedNonMaxSuppression
#include <image_ops.h>Жадный алгоритм выбирает подмножество ограничивающих прямоугольников в порядке убывания оценки.
Краткое содержание
Эта операция выполняет подавление немаксимальных значений (non_max_suppression) для входных данных в каждом пакете, по всем классам. Удаляются ограничивающие рамки, имеющие высокое перекрытие по показателю пересечения с ранее выбранными рамками (IOU). Ограничивающие рамки задаются в виде [y1, x1, y2, x2], где (y1, x1) и (y2, x2) — координаты любой пары диагональных углов рамки, и координаты могут быть заданы как нормализованные (т.е. лежащие в интервале [0, 1]) или абсолютные. Обратите внимание, что этот алгоритм не зависит от положения начала координат. Также обратите внимание, что этот алгоритм инвариантен к ортогональным преобразованиям и сдвигам системы координат; таким образом, сдвиг или отражение системы координат приводят к выбору алгоритмом тех же самых рамок. Выходом этой операции является итоговый тензор ограничивающих рамок, оценок и классов, возвращаемый после выполнения подавления немаксимальных значений.
Аргументы:
- scope: Объект Scope
- boxes: Четырехмерный тензор с плавающей запятой формы
[batch_size, num_boxes, q, 4]. Еслиqравно 1, то для всех классов используются одни и те же ячейки; в противном случае, еслиqравно количеству классов, используются ячейки, специфичные для каждого класса. - scores: Трехмерный тензор с плавающей запятой формы
[batch_size, num_boxes, num_classes], представляющий собой отдельный балл, соответствующий каждому блоку (каждому ряду блоков). - max_output_size_per_class: Скалярный целочисленный тензор, представляющий максимальное количество ячеек, которые могут быть выбраны с помощью подавления немаксимальных значений для каждого класса.
- max_total_size: Скалярное значение, представляющее максимальное количество ячеек, сохраняемых для всех классов.
- iou_threshold: 0-мерный тензор с плавающей запятой, представляющий пороговое значение для определения того, перекрываются ли прямоугольники слишком сильно относительно IOU.
- score_threshold: 0-мерный тензор типа float, представляющий пороговое значение для принятия решения о том, когда следует удалять рамки на основе оценки.
Дополнительные атрибуты (см. 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: Если true, предполагается, что координаты прямоугольника находятся в диапазоне [0, 1], и выходные прямоугольники обрезаются, если они выходят за пределы [0, 1]. Если false, обрезка не выполняется, и координаты прямоугольника выводятся как есть.
Возвращает:
-
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], содержащий классы для ограничивающих прямоугольников. -
Outputvalid_detections: тензор типа int32 размером [batch_size], указывающий количество действительных обнаружений на элемент пакета. Действительными являются только верхние значения num_detections[i] в nms_boxes[i], nms_scores[i] и nms_class[i]. Остальные значения представляют собой заполнение нулями.
Конструкторы и Деструкторы | |
|---|---|
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::ops::CombinedNonMaxSuppression::Attrs | Дополнительные параметры установки атрибутов для CombinedNonMaxSuppression . |
Общедоступные атрибуты
nmsed_boxes
::tensorflow::Output nmsed_boxes
nmsed_classes
::tensorflow::Output nmsed_classes
nmsed_scores
::tensorflow::Output nmsed_scores
операция
Operation operation
валидные_обнаружения
::tensorflow::Output valid_detections
Общественные функции
CombinedNonMaxSuppression
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
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 )
Открытые статические функции
ClipBoxes
Attrs ClipBoxes( bool x )
PadPerClass
Attrs PadPerClass( bool x )