tf.image.resize_images (изображения, размер, метод = ResizeMethod.BILINEAR, align_corners = False) - PullRequest
1 голос
/ 27 января 2020

Если размер аргумента совпадает с размерами исходного изображения, что происходит?

img = Image.open(data_dir[it]) 
filename_queue = tf.train.string_input_producer([data_dir[it]]) 
reader = tf.WholeFileReader()
key, value = reader.read(filename_queue)
my_img = tf.image.decode_jpeg(value, channels = 3) 
print(my_img.shape)
my_img = tf.image.resize_images(my_img,  (img.size[0], img.size[1]), method=1, align_corners = False)
my_img = tf.expand_dims(my_img, 0)

1 Ответ

0 голосов
/ 14 апреля 2020

Имитация вашего желаемого сценария в Tensorflow 2.1.0 , как и ожидалось, он по-прежнему возвращает то же изображение, что и оригинал.

Вот код, используемый для моделирования в Google Colab Environment :

%tensorflow_version 2.x
import tensorflow as tf
from PIL import Image
import imageio
from matplotlib import pyplot as plt

folder_dir = '/content/sample_data/birds/'
data_dir = [folder_dir+'bird1.jpg', folder_dir+'bird2.jpg', folder_dir+'bird3.jpg']

images = []
for it in range(len(data_dir)):
  print("Image Number {}".format(it))
  img = imageio.imread(data_dir[it]) 
  img = img / 255
  print("Original Image Size : {}".format(img.shape))
  my_img = tf.image.resize(img,  (img.shape[0], img.shape[1]), method= 'bilinear')
  print("After Image Resize : {}\n".format(my_img.shape))
  # plt.imshow(my_img)
  # plt.show()

После выполнения этого кода ниже выводится .

Image Number 0
Original Image Size : (396, 640, 3)
After Image Resize : (396, 640, 3)

Image Number 1
Original Image Size : (1200, 800, 3)
After Image Resize : (1200, 800, 3)

Image Number 2
Original Image Size : (480, 800, 3)
After Image Resize : (480, 800, 3)

Примечание: Графики подавляются для сокращения ответа.

Подробнее о функции TensorFlow Image Resize можно узнать из этой ссылки .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...