如何在TensorFlow中绘制已调整大小的图像?

时间:2016-03-22 21:03:10

标签: tensorflow

在应用任何变换(例如调整大小)之后,似乎TensorFlow中的图像变换为不同类型的图像坐标系。绘制图像的结果如下:

enter image description here

%matplotlib inline
import tensorflow as tf
from matplotlib import pyplot as plt

with tf.device("/cpu:0"):
    file_contents = tf.read_file('any_image.png')
    image = tf.image.decode_png(file_contents)
    image.set_shape([375, 1242, 3])
    image = tf.image.resize_images(image, 448, 448)

    with tf.Session() as sess:
        sess.run(tf.initialize_all_variables())
        image_val = sess.run([image])
        plt.figure(figsize=(16, 8))
        plt.imshow(image_val[0], interpolation='nearest')
        plt.show()
        plt.close()                                                

如果我删除了调整大小操作,它会绘制常规图像。如何让matplotlib正确绘制调整大小的图像或告诉Tensorflow将其返回RGB?

1 个答案:

答案 0 :(得分:4)

似乎除了无符号整数之外没有图像转换。转换回无符号整数可以解决问题。

plt.imshow(image_val[0].astype(np.uint8), interpolation='nearest')

enter image description here