使用Python和OpenCv顺序显示目录中的所有图像

时间:2015-08-12 02:18:18

标签: python opencv

我尝试使用OpenCV的python绑定来顺序显示目录中的所有图像。

此代码打印我目录中的所有文件,但只显示它打开的第一个图像:

for file in os.listdir(path):
  print(file)

  image = cv2.imread(os.path.join(my_dir, 'attachments',
  file))

  cv2.imshow("Image", image)
  cv2.waitKey(550)

我需要更改什么才能使目录中的每个图像都显示为cv2.imshow?我的打印语句告诉我,我正在循环遍历所有图像,但是我的循环中的第一次迭代除了imshow之外没有重新绘制。

1 个答案:

答案 0 :(得分:0)

编辑:

如果您想在不同的窗口中查看所有图片:

我遇到的另一件事是,您可能希望为每个cv2.imshow()命令提供除" Image"以外的其他名称。使用不同的名称,您可以拥有多个imshow窗口。所以你可以这样做:

for indx, f in enumerate(os.listdir(path), start=1):
    image = cv2.imread(os.path.join(my_dir, 'attachments', f))  
    cv2.imshow("Image-{}".format(indx), image)
    cv2.waitKey(600)

编辑2:

我回过头来仔细检查我的回答并意识到你的代码似乎对我很好......我使用的是opencv' 3.0.0'