在pyhon中以打开的ID号作为文件名的迭代打开图像

时间:2018-10-29 19:30:25

标签: python

我有一个图像数据库,其中包含一组名为[frame01.png,frame02.png,...,frameN.png]的图像。 我的目录路径是./img,而且我想一遍又一遍地读取,进行一些图像处理,直到到达最后一个。由于我不熟悉python中的字符串连接,最简单的方法是什么?

1 个答案:

答案 0 :(得分:1)

file_names = os.listdir('path_to_folder/')

应为您提供所有文件的列表。 要阅读它们,您可以:

for file_name in file_names:
   read_and_process_image('path_to_folder/' + file_name)

然后在read_and_process_image内:

import matplotlib.image

def read_and_process_image(path):
   read_img = matplotlib.image.imread(path) # or whatever you use to read the image
   # process read_img

或者,您可以:

import glob

for image_path in glob.glob("path_to_your_image*.png"):
    image = matplotlib.image.imread(image_path) # or whatever you use to read the image
    # process your image

如果您只是在寻找使用此特定名称创建列表的快速方法:

[ 'frame' + "%02d" % (i,) + '.png'  for i in range(1, MAX_NUM)]

如果最后一张图片是20,则将MAX_NUM替换为20 + 1,适用于x,x + 1的任何其他数字。 读取文件的方式/方式取决于您。您可以在示例中使用matplotlib.image或任何适合您的方法。