Spec-Zone.ru › TensorFlow 1.15

tf.image.sample_distorted_bounding_box

Просмотреть исходный код на GitHub

Генерирует одну случайную искажённую рамку для изображения. (устарело)

Просмотр псевдонимов

Псевдонимы совместимости для миграции

См. Руководство по миграции для получения дополнительной информации.

tf.compat.v1.image.sample_distorted_bounding_box

tf.image.sample_distorted_bounding_box(
    image_size, bounding_boxes, seed=None, seed2=None, min_object_covered=0.1,
    aspect_ratio_range=None, area_range=None, max_attempts=None,
    use_image_if_no_bounding_boxes=None, name=None
)
Предупреждение: ЭТА ФУНКЦИЯ УСТАРЕЛА. Она будет удалена в будущей версии. Инструкции по обновлению: seed2 параметр устарел. Используйте sample_distorted_bounding_box_v2 вместо него.

Аннотации границ часто предоставляются дополнительно к меткам фактических значений в задачах распознавания изображений или локализации объектов. Общий приём для обучения такой системы заключается в случайном искажении изображения при сохранении его содержимого, т. е. усилении данных. Данный Op выводит случайное искажённое расположение объекта, т. е. рамку, по заданному image_size, bounding_boxes и ряду ограничений.

Выходной параметр этого Op — единственная рамка, которая может использоваться для обрезки исходного изображения. Выход возвращается как 3 тензора: begin, size и bboxes. Первые 2 тензора можно напрямую передать в tf.slice для обрезки изображения. Последний можно передать в tf.image.draw_bounding_boxes для визуализации рамки.

Рамки предоставляются и возвращаются как [y_min, x_min, y_max, x_max]. Координаты границ — числа с плавающей точкой в [0.0, 1.0] относительно ширины и высоты исходного изображения.

Например,

# Generate a single distorted bounding box.
begin, size, bbox_for_draw = tf.image.sample_distorted_bounding_box(
    tf.shape(image),
    bounding_boxes=bounding_boxes,
    min_object_covered=0.1)

# Draw the bounding box in an image summary.
image_with_box = tf.image.draw_bounding_boxes(tf.expand_dims(image, 0),
                                              bbox_for_draw)
tf.compat.v1.summary.image('images_with_box', image_with_box)

# Employ the bounding box to distort the image.
distorted_image = tf.slice(image, begin, size)

Обратите внимание, что если информация о рамке недоступна, настройка use_image_if_no_bounding_boxes = True предполагает существование одной неявной рамки, охватывающей всё изображение. Если use_image_if_no_bounding_boxes равно false и рамки не заданы, генерируется ошибка.

Аргументы
image_size A Tensor. Должен быть одним из следующих типов: uint8, int8, int16, int32, int64. 1-D, содержащий [height, width, channels].
bounding_boxes A Tensor типа float32. 3-D с формой [batch, N, 4] описывает N рамок, связанных с изображением.
seed Необязательный int. По умолчанию 0. Если seed или seed2 имеют ненулевое значение, генератор случайных чисел инициализируется заданным seed. В противном случае — случайным.
seed2 Необязательный int. По умолчанию 0. Второй серийный номер для предотвращения коллизий.
min_object_covered Тензор типа float32. По умолчанию 0.1. Область обрезки изображения должна содержать по меньшей мере эту долю любой предоставленной рамки. Значение этого параметра должно быть неотрицательным. В случае 0, область обрезки не должна перекрываться с предоставленными рамками.
aspect_ratio_range Необязательный список floats. По умолчанию [0.75, 1.33]. Отношение сторон обрезанной области изображения = ширина/высота должно находиться в указанном диапазоне.
area_range Необязательный список floats. По умолчанию [0.05, 1]. Область обрезки изображения должна содержать часть предоставленного изображения в указанном диапазоне.
max_attempts Необязательный int. По умолчанию 100. Количество попыток генерации области обрезки изображения с указанными ограничениями. После max_attempts неудачных попыток возвращается всё изображение.
use_image_if_no_bounding_boxes Необязательный bool. По умолчанию False. Управляет поведением, если рамки не заданы. Если true, предполагается неявная рамка, охватывающая весь вход. Если false, генерируется ошибка.
name Имя операции (необязательно).
Возвращаемые значения
Кортеж объектов Tensor (начало, размер, рамки).
begin A Tensor. Тип совпадает с типом image_size. 1-D, содержащий [offset_height, offset_width, 0]. Используется в качестве входного параметра для tf.slice.
size A Tensor. Тип совпадает с типом image_size. 1-D, содержащий [target_height, target_width, -1]. Используется в качестве входного параметра для tf.slice.
bboxes A Tensor типа float32. 3-D с формой [1, 1, 4] содержащей искажённую рамку. Используется в качестве входного параметра для tf.image.draw_bounding_boxes.

© 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/sample_distorted_bounding_box

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API