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 | необходимо ли дополнить выходные данные idx до 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.4/api_docs/python/tf/image/non_max_suppression_padded