tf.image.combined_non_max_suppression
| Просмотреть исходный код на GitHub |
Жадно выбирает подмножество прямоугольников в порядке убывания оценки.
tf.image.combined_non_max_suppression(
boxes, scores, max_output_size_per_class, max_total_size, iou_threshold=0.5,
score_threshold=float('-inf'), pad_per_class=False, clip_boxes=True, name=None
)
Эта операция выполняет не максимальное подавление для входов по партиям, по всем классам. Обрезает прямоугольники, которые имеют высокое перекрытие по отношению к площади объединения (IOU) с ранее выбранными прямоугольниками. Границы прямоугольников задаются как [y1, x1, y2, x2], где (y1, x1) и (y2, x2) — координаты любой диагональной пары углов прямоугольника, и координаты могут быть нормализованными (т. е. лежать в интервале [0, 1]) или абсолютными. Обратите внимание, что этот алгоритм не зависит от того, где находится начало координат в системе координат. Также обратите внимание, что этот алгоритм инвариантен к ортогональным преобразованиям и сдвигам системы координат; таким образом, сдвиги или отражения системы координат приводят к тому, что алгоритм выбирает те же прямоугольники. Результатом этой операции является тензор конечных прямоугольников, оценок и классов, полученный после выполнения не максимального подавления.
| Аргументы | |
|---|---|
boxes | Матрица float 4-го порядка Tensor формы [batch_size, num_boxes, q, 4]. Если q равно 1, то для всех классов используются одинаковые прямоугольники, иначе, если q равно числу классов, используются прямоугольники, специфичные для класса. |
scores | Матрица float 3-го порядка Tensor формы [batch_size, num_boxes, num_classes] представляющая собой единственную оценку, соответствующую каждому прямоугольнику (каждая строка прямоугольников). |
max_output_size_per_class | Скалярное целое число Tensor представляющее максимальное количество прямоугольников, которые должны быть выбраны подавлением не максимальных значений для каждого класса. |
max_total_size | Скаляр представляющий максимальное количество прямоугольников, сохраняемых по всем классам. |
iou_threshold | Вещественное число, представляющее порог для определения того, слишком ли сильно перекрываются прямоугольники по отношению к IOU. |
score_threshold | Вещественное число, представляющее порог для определения того, когда нужно удалить прямоугольники на основе оценки. |
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, координаты выходных прямоугольников nmsed будут обрезаны до [0, 1]. Если false, выводит координаты прямоугольников как есть. По умолчанию true. |
name | Имя операции (необязательно). |
| Возвращаемые значения | |
|---|---|
| 'nmsed_boxes': Тензор float32 [batch_size, max_detections, 4], содержащий прямоугольники, подавленные не максимальными значениями. 'nmsed_scores': Тензор float32 [batch_size, max_detections], содержащий оценки для прямоугольников. 'nmsed_classes': Тензор float32 [batch_size, max_detections], содержащий класс для прямоугольников. 'valid_detections': Тензор int32 [batch_size], указывающий количество действительных детектирований на элемент партии. Только верхние valid_detections[i] элементов в nms_boxes[i], nms_scores[i] и nms_class[i] действительны. Остальные элементы являются нулевыми заполнениями. |
© 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/python/tf/image/combined_non_max_suppression