PIL.Image.fromarray 的空信息

Empty info for PIL.Image.fromarray

我的目标是在 IPython 笔记本中内联打印图像。该图像是使用函数 PIL.Image.fromarray 构建的。更具体地说,这是发生了什么。当我运行

import numpy as np
from PIL import *

image = Image.open('image.png')
image_pixels = np.array(image.getdata())
image_rec = Image.fromarray(image_pixels.reshape(image.size[0], image.size[1]))
image_rec

我在笔记本中看到一张黑色图片。但是,当我用 image_rec.show() 替换最后一行时,它会正确地打开一个 window,里面有 image

看了之后,我注意到 image_rec.info 实际上是空的 {}image.info 包含 {'compression': 'raw', 'dpi': (72.0000084, 72.0000084)}。怎么了?我该如何解决?

info是作者加的。使用一些选项保存图像并读回,填充 info 字典:

image_rec.save('image2.png', dpi=(72, 72))
im2 = PIL.Image.open('image2.png')

现在:

>>> im2.info
{'dpi': (72, 72)}