小编典典

如何在 ipython 笔记本中显示 PIL 图像

all

这是我的代码

from PIL import Image
pil_im = Image.open('data/empire.jpg')

我想对其进行一些图像处理,然后将其显示在屏幕上。
我在 python 笔记本中显示 PIL 图像时遇到问题。

我努力了:

print pil_im

而只是

pil_im

但两者都只给我:

<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=569x800 at 0x10ECA0710>

阅读 71

收藏
2022-08-24

共1个答案

小编典典

2021/11/17 更新

使用 PIL/Pillow 时,Jupyter Notebooks 现在有一个display内置功能,可以直接显示图像,无需额外的麻烦。

display(pil_im)

如果它只是单元格中的最后一行,Jupyter
也会显示图像(这自原始帖子以来已更改)。

其他方法

从文件

您还可以使用 IPython
display模块来加载图像。您可以从文档中阅读更多内容。

from IPython.display import Image 
pil_img = Image(filename='data/empire.jpg')
display(pil_img)

来自 PIL.Image 对象

由于OP的要求是使用PIL,如果你想显示内联图像,你也可以这样matplotlib.pyplot.imshow使用numpy.asarray

from matplotlib.pyplot import imshow
import numpy as np
from PIL import Image

%matplotlib inline
pil_im = Image.open('data/empire.jpg', 'r')
imshow(np.asarray(pil_im))

如果您只需要预览而不是内联,则可以show这样使用:

pil_im = Image.open('data/empire.jpg', 'r')
pil_im.show()
2022-08-24