我想将一些Numpy转换为Image,所以我在PIL中使用了Image
from PIL import Image
im1 = Image.fromarray(np.uint8(X1)) # X1 dtype uint8, scale 0~255 image
im1.save("img.png")
im2= Image.fromarray(np.uint8(X2*255)) #X2 dtype uint16, sacke 0~1 mask ,so X2*255
im2.save("mask.png")
X1,X2是numpy数组。然后发生了一些困惑。有些图像看起来不错,但有些图像有所不同。
第一个是失真,第二个是正常。
阅读@Mark Setchell评论后编辑:由于PNG不会扭曲值,我猜他们使用JPG压缩。如果你想要你的图像,试试这个:
import cv2
cv2.imwrite("img.png", img)
Here是文档。