基于文件名在python中读取多个图像

基于文件名在python中读取多个图像,python,python-3.x,Python,Python 3.x,我有一个包含100幅人眼图像的文件夹。我有50个名为retina的文件和50个名为mask的文件。我需要读取所有名为retina1,retina2…retina50的图像,并将它们存储在对象视网膜中。对于遮罩图像也是如此 我可以根据下面的代码读取文件夹中的所有文件。但不确定如何根据文件名读取它们,即分别读取视网膜和面罩的所有图像。因为我以后需要实现图像分割和cnn分类器 for i in os.listdir(): f = open(i,"r") f.read() f.clos

我有一个包含100幅人眼图像的文件夹。我有50个名为retina的文件和50个名为mask的文件。我需要读取所有名为retina1,retina2…retina50的图像,并将它们存储在对象视网膜中。对于遮罩图像也是如此

我可以根据下面的代码读取文件夹中的所有文件。但不确定如何根据文件名读取它们,即分别读取视网膜和面罩的所有图像。因为我以后需要实现图像分割和cnn分类器

for i in os.listdir():
   f = open(i,"r")
   f.read()
   f.close()

通过将循环与生成器表达式组合,可以限制循环与某些文件名匹配

for i in (j for j in os.listdir() if 'retina' in j):
   f = open(i,"r")
   f.read()
   f.close()

通过将循环与生成器表达式组合,可以限制循环与某些文件名匹配

for i in (j for j in os.listdir() if 'retina' in j):
   f = open(i,"r")
   f.read()
   f.close()

我将使用glob模块获取正确文件名的路径。 参考文献

现在,您可以使用路径列表读取正确的文件

在我的情况下,我的图像位于: C:\Users\Fabian\Desktop\stack\images\您可以使用*作为通配符

编辑:


根据搜索模式生成dict可能会有所帮助。

我将使用glob模块获取正确文件名的路径。 参考文献

现在,您可以使用路径列表读取正确的文件

在我的情况下,我的图像位于: C:\Users\Fabian\Desktop\stack\images\您可以使用*作为通配符

编辑:


根据您的搜索模式生成dict可能会有所帮助。

如果有相同数量的视网膜和遮罩图像,您可以将它们放在一起。如果有相同数量的视网膜和遮罩图像,您可以将它们放在一起。
import glob

images = {}
patterns = ["retina", "mask"]
for pattern in patterns:
    images[pattern] = glob.glob(r"C:\Users\fabia\Desktop\stack\images\*{}*".format(pattern)) 
print(images)