使用 Python 显示图像

我尝试用下面的代码使用 IPython.display:

from IPython.display import display, Image
display(Image(filename='MyImage.png'))

我还尝试用 matplotlib 编写以下代码:

import matplotlib.pyplot as plt
import matplotlib.image as mpimg
plt.imshow(mpimg.imread('MyImage.png'))

在这两种情况下,都不显示任何内容,甚至不显示错误消息。

759439 次浏览

如果使用 matplotlib,则需要使用 plt.show()显示图像,除非不处于交互模式。 例如:

plt.figure()
plt.imshow(sample_image)
plt.show()  # display it

以一种更简单的方式,您可以使用

from PIL import Image


image = Image.open('image.jpg')
image.show()

如果你正在使用 matplotlib,并且想要在你的交互式笔记本中显示图像,请尝试以下方法:

%pylab inline
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
img = mpimg.imread('your_image.png')
imgplot = plt.imshow(img)
plt.show()

使用 opencv-python 可以更快地对图像进行更多操作:

import cv2
import matplotlib.pyplot as plt


im = cv2.imread('image.jpg')
im_resized = cv2.resize(im, (224, 224), interpolation=cv2.INTER_LINEAR)


plt.imshow(cv2.cvtColor(im_resized, cv2.COLOR_BGR2RGB))
plt.show()

很简单 使用以下伪代码

from pylab import imread,subplot,imshow,show


import matplotlib.pyplot as plt


image = imread('...')  // choose image location


plt.imshow(image)

这将在控制台上显示图像。

你的第一个建议对我有用

from IPython.display import display, Image
display(Image(filename='path/to/image.jpg'))

你的代码:

import matplotlib.pyplot as plt
import matplotlib.image as mpimg

它应该是什么:

plt.imshow(mpimg.imread('MyImage.png'))
File_name = mpimg.imread('FilePath')
plt.imshow(FileName)
plt.show()

除非你在 Jupyter 的笔记本上,否则你会错过一个 plt.show()。其他 IDE 不会自动显示图形,所以每次你想要显示一个图形或者在后续代码中对现有的图形进行修改时,你都必须使用 plt.show()

import IPython.display as display
from PIL import Image
image_path = 'my_image.jpg'
display.display(Image.open(image_path))

使用 Jupiter Notebook,代码可以像下面这样简单。

%matplotlib inline
from IPython.display import Image
Image('your_image.png')

有时您可能希望在 for 循环中显示一系列图像,在这种情况下,您可能希望结合使用 displayImage来使其工作。

%matplotlib inline
from IPython.display import display, Image
for your_image in your_images:
display(Image('your_image'))

木星笔记本电脑 PIL 图像可视化的解决方案与任意数量的图像:

def show(*imgs, **kwargs):
'''Show in Jupyter notebook one or sequence of PIL images in a row. figsize - optional parameter, controlling size of the image.
Examples:
show(img)
show(img1,img2,img3)
show(img1,img2,figsize=[8,8])
'''
    

if 'figsize' not in kwargs:
figsize = [9,9]
else:
figsize = kwargs['figsize']
    

fig, ax = plt.subplots(1,len(imgs),figsize=figsize)
if len(imgs)==1:
ax=[ax]
    

for num,img in enumerate(imgs):
ax[num].imshow(img)
ax[num].axis('off')
        

tight_layout()

要在 python 中显示图像,可以使用我制作的一个工具。

  1. 安装 python3:

    • Apt 安装 python3
  2. 克隆回购:

  3. 安装所需的 python 库:

    • 终端打印图像
    • Pip3安装数字
    • 安装枕头

用法: Python3 print _ image. py [ path to image ]

例子: Python3 print _ image. py sinchan.jpg