tf.image.convert_image_dtype(image,dtype = tf.uint8)之后的图像混乱

时间:2018-12-09 07:25:26

标签: image tensorflow

我已经阅读了一张灰度图像,看起来很正常,但是在通过tf.image.convert_image_dtype()转换数据类型后,该图像看起来很奇怪。我不知道发生了什么,谢谢您的帮助。

... ...
uint_inputs = tf.image.convert_image_dtype(inputs, dtype=tf.uint8, saturate=False)
... ...
with sv.managed_session() as sess:
    inputs, uint_inputs = sess.run([inputs, uint_inputs])
    f ,axis = plt.subplots(1, 2, figsize=(4, 2))
    axis[0].imshow(np.squeeze(inputs), cmap='gray')
    axis[1].imshow(np.squeeze(uint_inputs), cmap='gray')
    plt.show()

运行如下结果, enter image description here

1 个答案:

答案 0 :(得分:0)

经过长时间的努力,我发现如果输入是tf.image.convert_image_dtype(inputs, dtype=tf.uint8, saturate=False)中的浮点型,则输入必须在[0,1)中。因此,我只需要按inputs = inputs/255缩放输入,然后将它们输入tf.image.convert_image_dtype基准线。