我有一个包含 100 张人眼图像的文件夹。我在该文件夹中有 50 个名为 retina 的文件和 50 个名为 mask 的文件。我需要读取所有名为 retina1、retina2.....retina 50 的图像并将它们存储在对象 retina 中。掩码图像也类似。
我可以根据下面的代码读取文件夹中的所有文件。但不确定如何根据文件名读取它们。即分别读取视网膜和面具的所有图像。因为我需要稍后实现图像分割和 cnn 分类器。
for i in os.listdir():
f = open(i,"r")
f.read()
f.close()
最佳答案
我会使用 glob 模块来获取正确文件名的路径。 引用 glob
import glob
retina_images = glob.glob(r"C:\Users\Fabian\Desktop\stack\images\*retina*")
mask_images = glob.glob(r"C:\Users\Fabian\Desktop\stack\images\*mask*")
print(retina_images)
print(mask_images)
现在您可以使用路径列表读取正确的文件。
在我的例子中,我的图像位于:
C:\Users\Fabian\Desktop\stack\images\
您可以使用 *
作为通配符。
编辑:
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)
根据您的搜索模式生成字典可能会有所帮助。
关于python - 根据文件名在 python 中读取多个图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58266941/