тензорный поток:: опс:: КомбинированныйNonMaxSuppression

#include <image_ops.h>

Жадно выбирает подмножество ограничивающих рамок в порядке убывания количества очков.

Краткое содержание

Эта операция выполняет non_max_suppression для входных данных каждого пакета во всех классах. Удаляет блоки с высоким уровнем пересечения-объединения (IOU), перекрывающиеся с ранее выбранными блоками. Ограничительные рамки предоставляются в виде [y1, x1, y2, x2], где (y1, x1) и (y2, x2) — координаты любой диагональной пары углов прямоугольника, а координаты могут быть предоставлены как нормализованные (т. е. лежащие в интервал [0, 1]) или абсолютный. Обратите внимание, что этот алгоритм не зависит от того, где находится начало координат в системе координат. Также обратите внимание, что этот алгоритм инвариантен к ортогональным преобразованиям и переводам системы координат; таким образом, перевод или отражение системы координат приводит к тому, что алгоритм выбирает одни и те же поля. Результатом этой операции является окончательный тензор блоков, оценок и классов, возвращаемый после выполнения non_max_suppression.

Аргументы:

  • область: объект области.
  • box: 4-D плавающий тензор формы [batch_size, num_boxes, q, 4] . Если q равно 1, то для всех классов используются одни и те же поля. В противном случае, если q равно количеству классов, используются поля, специфичные для класса.
  • оценки: трехмерный тензор с плавающей запятой формы [batch_size, num_boxes, num_classes] представляющий одну оценку, соответствующую каждому блоку (каждой строке блоков).
  • max_output_size_per_class: скалярный целочисленный тензор, представляющий максимальное количество блоков, которые будут выбраны с помощью немаксимального подавления для каждого класса.
  • max_total_size: скаляр, представляющий максимальное количество блоков, сохраняемых во всех классах.
  • iou_threshold: тензор с плавающей запятой 0-D, представляющий порог для принятия решения о том, не слишком ли сильно перекрываются блоки по отношению к IOU.
  • Score_threshold: тензор с плавающей запятой 0-D, представляющий порог для принятия решения об удалении полей на основе оценки.

Необязательные атрибуты (см. Attrs ):

  • pad_per_class: если false, выходные поля, оценки и классы nmsed дополняются/обрезаются до max_total_size . Если это правда, выходные поля, оценки и классы nmsed дополняются до длины max_size_per_class * num_classes , если только она не превышает max_total_size и в этом случае она обрезается до max_total_size . По умолчанию ложь.
  • clip_boxes: если это правда, предположим, что координаты блока находятся между [0, 1] и обрежут выходные поля, если они выходят за пределы [0, 1]. Если false, не выполнять обрезку и выводить координаты поля как есть.

Возврат:

  • Output nmsed_boxes: тензор [batch_size, max_detections, 4] float32, содержащий немаксимальные подавленные поля.
  • Output nmsed_scores: тензор [batch_size, max_detections] float32, содержащий оценки для ящиков.
  • Output nmsed_classes: тензор [batch_size, max_detections] float32, содержащий классы для блоков.
  • Output valid_detections: тензор [batch_size] int32, указывающий количество действительных обнаружений на элемент пакета. Действительны только верхние записи 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

Дополнительные установщики атрибутов для JointNonMaxSuppression .

Публичные атрибуты

nmsed_boxes

::tensorflow::Output nmsed_boxes

nmsed_classes

::tensorflow::Output nmsed_classes

nmsed_scores

::tensorflow::Output nmsed_scores

операция

Operation operation

действительные_обнаружения

::tensorflow::Output valid_detections

Общественные функции

КомбинированныйNonMaxSuppression

 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
)

КомбинированныйNonMaxSuppression

 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
)

PadPerClass

Attrs PadPerClass(
  bool x
)