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: Двумерный тензор с плавающей запятой формы [num_boxes, 4] .
  • scores: Одномерный тензор с плавающей запятой формы [num_boxes] представляющий собой отдельный балл, соответствующий каждому ящику (каждому ряду ящиков).
  • max_output_size: Скалярный целочисленный тензор, представляющий максимальное количество ячеек, которые могут быть выбраны с помощью подавления немаксимальных значений.
  • iou_threshold: 0-мерный тензор с плавающей запятой, представляющий пороговое значение для определения того, перекрываются ли прямоугольники слишком сильно относительно IOU.
  • score_threshold: 0-мерный тензор типа float, представляющий пороговое значение для принятия решения о том, когда следует удалять рамки на основе оценки.
  • soft_nms_sigma: 0-мерный тензор с плавающей запятой, представляющий параметр сигма для 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.

Возвращает:

  • Output данные selected_indices: одномерный целочисленный тензор формы [M] представляющий выбранные индексы из тензора boxes, где M <= max_output_size .
  • Output данные selected_scores: одномерный тензор с плавающей запятой формы [M] , представляющий соответствующие оценки для каждого выбранного прямоугольника, где M <= max_output_size . Оценки отличаются от соответствующих входных оценок только при использовании Soft NMS (т.е. когда soft_nms_sigma>0 ).
  • Output параметр valid_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

выбранные_индексы

::tensorflow::Output selected_indices

выбранные_баллы

::tensorflow::Output selected_scores

валидные_выходы

::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
)