Spec-Zone.ru › TensorFlow

tf.raw_ops.SampleDistortedBoundingBoxV2

Генерирует случайный искажённый прямоугольник для изображения.

Псевдонимы

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

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

tf.compat.v1.raw_ops.SampleDistortedBoundingBoxV2

tf.raw_ops.SampleDistortedBoundingBoxV2(
    image_size,
    bounding_boxes,
    min_object_covered,
    seed=0,
    seed2=0,
    aspect_ratio_range=[0.75, 1.33],
    area_range=[0.05, 1],
    max_attempts=100,
    use_image_if_no_bounding_boxes=False,
    name=None
)

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

Выходной результат этого оператора — один прямоугольник, который может быть использован для обрезки исходного изображения. Вывод возвращается как 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)

# 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.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 Tensor. Должен быть одним из следующих типов: uint8, int8, int16, int32, int64. 1-мерный, содержащий [height, width, channels].
bounding_boxes Tensor типа float32. 3-мерный с формой [batch, N, 4], описывающий N прямоугольников, связанных с изображением.
min_object_covered Tensor типа float32. Область обрезки изображения должна содержать по крайней мере эту долю любого предоставленного прямоугольника. Значение этого параметра должно быть неотрицательным. В случае 0, область обрезки не обязана перекрывать ни один из предоставленных прямоугольников.
seed Необязательное int. По умолчанию 0. Если seed или seed2 установлены в неноль, генератор случайных чисел инициализируется заданным seed. В противном случае он инициализируется случайным значением.
seed2 Необязательное int. По умолчанию 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 Tensor. Имеет тот же тип, что и image_size.
size Tensor. Имеет тот же тип, что и image_size.
bboxes Tensor типа float32.

© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/raw_ops/SampleDistortedBoundingBoxV2

Spec-Zone.ru

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