tf.image.non_max_suppression_padded
| Просмотреть исходный код на GitHub |
Жадно выбирает подмножество прямоугольников, упорядоченных по убыванию оценки.
tf.image.non_max_suppression_padded(
boxes, scores, max_output_size, iou_threshold=0.5,
score_threshold=float('-inf'), pad_to_max_output_size=False, name=None,
sorted_input=False, canonicalized_coordinates=False, tile_size=512
)
Выполняет алгоритмически эквивалентную операцию tf.image.non_max_suppression, с добавлением необязательного параметра, который дополняет выходные данные нулями до размера max_output_size. Результатом этой операции является кортеж, содержащий набор целых чисел, индексирующих входную коллекцию прямоугольников, представляющих выбранные прямоугольники, и количество допустимых индексов в наборе индексов. Координаты прямоугольников, соответствующие выбранным индексам, можно получить с помощью операций tf.slice и tf.gather. Например: ```python selected_indices_padded, num_valid = tf.image.non_max_suppression_padded( boxes, scores, max_output_size, iou_threshold, score_threshold, pad_to_max_output_size=True) selected_indices = tf.slice( selected_indices_padded, tf.constant([0]), num_valid) selected_boxes = tf.gather(boxes, selected_indices)
| Аргументы | |
|---|---|
boxes | тензор ранга 2 или выше с формой [..., num_boxes, 4]. Размеры, кроме двух последних, — это размерности пакета. |
scores | тензор ранга 1 или выше с формой [..., num_boxes]. |
max_output_size | целочисленный скаляр Tensor, представляющий максимальное количество прямоугольников, которые должны быть выбраны с помощью подавления не максимальных значений. |
iou_threshold | число с плавающей точкой, представляющее порог для определения того, перекрываются ли прямоугольники слишком сильно по IoU (пересечению над объединением). |
score_threshold | число с плавающей точкой, представляющее порог для оценок прямоугольников. Прямоугольники с оценкой, которая не больше этого порога, будут подавлены. |
pad_to_max_output_size | необходимо ли дополнить выходной индекс до max_output_size. Должно быть установлено в True, когда вход является пакетом изображений. |
name | имя операции. |
sorted_input | булево значение, указывающее, отсортированы ли входные прямоугольники и оценки по убыванию оценки. |
canonicalized_coordinates | если координаты прямоугольников заданы как [y_min, x_min, y_max, x_max], установка в True исключает избыточные вычисления для канонизации координат прямоугольников. |
tile_size | целое число, представляющее количество прямоугольников в тайле, т. е. максимальное количество прямоугольников на изображение, которые могут быть использованы для подавления других прямоугольников параллельно; больший tile_size означает большую параллельность и потенциально больше избыточных вычислений. |
| Возвращаемые значения | |
|---|---|
| idx: тензор с формой [..., num_boxes], представляющий индексы, выбранные с помощью подавления не максимальных значений. Ведущие размеры — это размерности пакета входных прямоугольников. Все числа находятся в пределах [0, num_boxes). Для каждого изображения (т. е. idx[i]) только первые num_valid[i] индексы (т. е. idx[i][:num_valid[i]]) являются допустимыми. num_valid: тензор ранга 0 или выше с формой [...], представляющий количество допустимых индексов в idx. Его размерности — это размерности пакета входных прямоугольников. | |
Raises | ValueError: Когда установлено pad_to_max_output_size в False для входных данных пакета. |
© 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/image/non_max_suppression_padded