Функция image.resize
Функция image.resize изменяет размер изображения
до указанных высоты и ширины. Первым параметром
функция принимает тензор изображения, вторым -
новый размер в формате [height, width].
Третьим параметром можно передать метод
интерполяции, например bilinear или nearest.
Синтаксис
tf.image.resize(images, size, [method])
Пример
Давайте изменим размер изображения
с формой 2 на 2 до формы
4 на 4:
import tensorflow as tf
t = tf.constant([
[[1], [2]],
[[3], [4]]
], dtype=tf.float32)
res = tf.image.resize(t, [4, 4])
print(res.shape)
Результат выполнения кода:
(4, 4, 1)
Пример
Давайте изменим размер трехканального
изображения с формой 2 на 2
до формы 1 на 1:
import tensorflow as tf
t = tf.constant([
[[1, 2, 3], [4, 5, 6]],
[[7, 8, 9], [10, 11, 12]]
], dtype=tf.float32)
res = tf.image.resize(t, [1, 1])
print(res.numpy())
Результат выполнения кода:
[[[5.5 6.5 7.5]]]
Пример
Давайте изменим размер изображения
с методом интерполяции nearest:
import tensorflow as tf
t = tf.constant([
[[1], [2]],
[[3], [4]]
], dtype=tf.float32)
res = tf.image.resize(t, [4, 4], method='nearest')
print(res.numpy().shape)
Результат выполнения кода:
(4, 4, 1)
Смотрите также
-
функцию
resize_with_crop_or_pad,
которая изменяет размер с обрезкой или дополнением -
функцию
resize_with_pad,
которая изменяет размер с сохранением пропорций -
функцию
central_crop,
которая обрезает центральную часть изображения -
слой
Resizing,
который изменяет размер изображения на лету