我想通过裁剪和下采样对银河动物园的图像应用较短的管道。为了查看结果,我编写了一个具有以下功能的脚本
import numpy as np
import tensorflow as tf
import matplotlib.pyplot as plt
from PIL import Image
from tensorflow.keras.preprocessing.image import ImageDataGenerator, array_to_img, img_to_array, load_img
def test_plot():
img = load_img('path/to/imgfile')
pic1 = (img_to_array(img)/255.).reshape((424, 424, 3))
img = img.crop(box=( (424-212)//2, (424-212)//2, (424-212)//2 + 212, (424-212)//2 + 212) )
img.thumbnail((72, 72))
pic2 = (img_to_array(img)/255.).reshape((72, 72, 3))
fig, (ax1, ax2) = plt.subplots(nrows=1, ncols=2, sharey=False, figsize=(12,7))
ax1.imshow(pic1)
ax2.imshow(pic2)
fig.show()
原始图像如下
代码的结果如下所示
似乎正在分割通道并将它们相邻绘制。应该注意的是,当我使用使用相同包装和相同环境的jupyter笔记本时,情况并非如此。笔记本的输出看起来像这样