我想知道如何通过keras.preprocessing.image.img_to_array正确绘制转换为数组的图像。
这是我天真的做法。为了给你最小的例子,我从网上下载了一张鸭子图片:
import urllib.request
f = open('duck.jpg','wb')
f.write(requests.get('http://i.imgur.com/Ph4Xw.jpg').content)
f.close()
当我在将img转换为numpy数组之前尝试绘制它时,它可以工作:
from keras.preprocessing.image import load_img ,img_to_array
import matplotlib.pyplot as plt
img = load_img('duck.jpg')
plt.imshow(img)
plt.show()
然而,在我通过keras.preprocessing.image.img_to_array通过numpy数组将图像转换为数组后,绘制数组对象看起来不正确:
arr_img = img_to_array(img)
plt.imshow(arr_img)
plt.savefig("duck2.jpg")
答案 0 :(得分:2)
我发现我所要做的就是将arr_img划分为255。
arr_img = img_to_array(img)
plt.imshow(arr_img/255)
plt.savefig("duck2.jpg")