РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
585 of 824 menu

Класс RandomZoom

Класс RandomZoom применяется к изображениям и выполняет случайное увеличение или уменьшение масштаба. Первым параметром передаётся коэффициент масштабирования height_factor, вторым - width_factor. Если второй параметр не указан, он принимает значение первого. Третьим параметром можно передать стратегию заполнения fill_mode, а четвёртым - значение fill_value для заполнения освободившихся областей.

Синтаксис

tf.keras.layers.RandomZoom( height_factor, width_factor=None, fill_mode='reflect', fill_value=0.0, interpolation='bilinear', seed=None )

Пример

Давайте применим случайное масштабирование к тензору с изображением:

import tensorflow as tf tf.random.set_seed(0) t = tf.constant([[[1], [2], [3]], [[4], [5], [6]]], dtype=tf.float32) layer = tf.keras.layers.RandomZoom(0.5) res = layer(t, training=True) print(res)

Результат выполнения кода:

tf.Tensor( [[[5.] [5.] [5.]] [[5.] [5.] [5.]]], shape=(2, 3, 1), dtype=float32)

Пример

Давайте зададим разные коэффициенты для высоты и ширины:

import tensorflow as tf tf.random.set_seed(0) t = tf.constant([[[1], [2], [3]], [[4], [5], [6]]], dtype=tf.float32) layer = tf.keras.layers.RandomZoom(0.2, 0.4) res = layer(t, training=True) print(res)

Результат выполнения кода:

tf.Tensor( [[[3.] [3.] [3.]] [[5.] [5.] [5.]]], shape=(2, 3, 1), dtype=float32)

Пример

Давайте используем случайное масштабирование в составе модели:

<+python+> import tensorflow as tf tf.random.set_seed(0) model = tf.keras.Sequential([ tf.keras.layers.RandomZoom(0.3), tf.keras.layers.Conv2D(1, (1, 1)) ]) t = tf.constant([[[[1], [2], [3]], [[4], [5], [6]]]], dtype=tf.float32) res = model(t, training=True) print(res.shape) <-python+>

Результат выполнения кода:

(1, 2, 3, 1)

Смотрите также

  • класс RandomRotation,
    который случайно поворачивает изображения
  • класс RandomTranslation,
    который случайно сдвигает изображения
  • класс RandomCrop,
    который случайно вырезает часть изображения
  • класс Resizing,
    который изменяет размер изображения
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить