内联显示多个图像

Displaying multiple images inline

我在显示这 4 张图片时遇到问题,因为以下代码的结果非常混乱:

import cv2
import matplotlib.pyplot as plt

def main():

    path = r"data/dogscats1/pupper"
    path1 = r"data/dogscats1/test1"
    path2 = r"data/dogscats1/peeps"
    path3 = r"data/dogscats1/pupper"

    imgpath1 =  path + "cat.jpg"
    imgpath2 =  path1 + "01.jpg"
    imgpath3 =  path2 + "001.jpg"
    imgpath4 =  path3 + "dog.jpg"

    img1 = cv2.imread(imgpath1, 1)
    img2 = cv2.imread(imgpath2, 1)
    img3 = cv2.imread(imgpath3, 1)
    img4 = cv2.imread(imgpath4, 1)





    titles = ['Kitty', 'Original','Jumble', 'Pupper']
    images = [img1, img2, img3, img4]

    for i in range(4):
        plt.subplot(4,4,i+1)
        plt.imshow(img[i])
        plt.title(titles[i])
        plt.xticks([])
        plt.yticks([])

    plt.show()  

if __name__ == "__main__":
    main()

任何有关正确显示图像的帮助都将不胜感激,谢谢

plt.imshow(img[i]) 行正在搜索名为 imglist 尚未定义,图像当前存储在名为 images 的列表中,因此您只需要将此行更改为;

plt.imshow(images[i])

它会 return 您需要的!