tf.raw_ops.NonMaxSuppressionV4
Жадно выбирает подмножество прямоугольников с границами в порядке убывания оценки,
tf.raw_ops.NonMaxSuppressionV4(
boxes, scores, max_output_size, iou_threshold, score_threshold,
pad_to_max_output_size=False, name=None
)
удаляя прямоугольники с высоким пересечением/объединением (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)
| Аргументы | |
|---|---|
boxes | A Tensor. Должен быть одного из следующих типов: half, float32. Двумерный плавающий тензор формы [num_boxes, 4]. |
scores | A Tensor. Должен иметь тот же тип, что и boxes. Одномерный плавающий тензор формы [num_boxes] представляющий отдельную оценку, соответствующую каждому прямоугольнику (каждая строка прямоугольников). |
max_output_size | A Tensor типа int32. Скалярный целочисленный тензор, представляющий максимальное количество прямоугольников, которые должны быть выбраны с помощью подавления не максимального значения. |
iou_threshold | A Tensor. Должен быть одного из следующих типов: half, float32. 0-мерный плавающий тензор, представляющий порог для определения того, перекрываются ли прямоугольники слишком сильно с точки зрения IOU. |
score_threshold | A Tensor. Должен иметь тот же тип, что и iou_threshold. 0-мерный плавающий тензор, представляющий порог для определения того, когда нужно удалять прямоугольники на основе оценки. |
pad_to_max_output_size | Необязательный bool. По умолчанию False. Если True, выход selected_indices заполняется длиной max_output_size. По умолчанию false. |
name | Имя операции (необязательно). |
| Возвращаемое значение | |
|---|---|
Кортеж из Tensor объектов (selected_indices, valid_outputs). | |
selected_indices | A Tensor типа int32. |
valid_outputs | A Tensor типа int32. |
© 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/r2.3/api_docs/python/tf/raw_ops/NonMaxSuppressionV4