Python 图像的串行输出

Serial output of Python images

如何在 Spyder 中顺序渲染图像?目前发现只显示最后一张

from skimage.io import imread, imshow

img_5 = imread('C:/abc1.png')
imshow(img_5)

img_6 = imread('C:/abc2.png')
imshow(img_6)

我没有在spyder中试过,不过你可以看看:

imshow(img_5, block=False)

不要在最后一个情节中使用block=False,否则情节会在脚本完成时关闭。

您可以使用 from IPython.display import display 来执行此操作,如下所示:

from IPython.display import display, Image

for img in ['C:/abc1.png', 'C:/abc2.png']:
    ima = Image(filename=img , width=300,height=200)
    display(ima)

如果您想使用 imshow,您可以像下面这样使用 plt.imshow

import matplotlib.pyplot as plt
from skimage.io import imread, imshow


img_5 = imread('C:/abc1.png')
plt.imshow(img_5)
plt.show()

img_6 = imread('C:/abc2.png')
plt.imshow(img_6)
plt.show()

您可以使用 opencv-python 来完成此操作,如下所示 (如果您没有安装 opencv,请尝试此代码:pip install opencv-python

import cv2
for img in ['C:/abc1.png', 'C:/abc2.png']:
    im = cv2.imread(img)
    im = cv2.cvtColor(im, cv2.COLOR_BGR2RGB)
    plt.imshow(im)
    plt.show()