繁体   English   中英

如何从python中的不同文件夹和子文件夹加载数据(图像)

[英]How to load data(images) from different folders and subfolders in python

我正在尝试数据集 DRISHTI-GS 上的问题。 我想使用图像(来自训练)和cup seg 和disc seg 图像(来自softmap)并在其上实现CNN 模型。 Ground Truth(GT) 子文件夹由 52 个子文件夹组成,每个子文件夹对应于另一个名为 Images 的文件夹中的 52 张图像(这是训练的子文件夹)。 我已经给出了子文件夹的布局。 GT 中的子文件夹中有 3 个子文件夹,其中子文件夹 softmap 有两个图像,我需要加载这些图像。 我希望有人可以帮助我提供一些具体的代码或一些有用的材料。

基本上想列出和过滤主目录及其所有子目录中的所有文件,扩展名为 .jpg 或 .png。

在此处输入图片说明

您可以使用stackabuse 中的以下代码查找当前目录中的所有文件。

import os

for root, dirs, files in os.walk("."):
    for filename in files:
        print(filename)

如果你只想找到像jpg文件这样的图像文件,你可以像下面这样过滤它们:

import os

for root, dirs, files in os.walk("."):
    for filename in files:
       if filename.endswith(".jpg"):
           # Process the file

如果我正确理解了您的问题,我认为这就是您正在寻找的东西(尚未对此进行测试,但它应该可以工作)

import glob

paths = glob.glob("DRISHTI_GS/Drishti-GS1_files/Training/GT/**/SoftMap/*.png")
print(paths)

这将产生一个字符串列表,其中每个字符串都是图像的路径。 此相对路径模式假定DRISHTI_GS位于当前工作目录中。 你也可以给它一个绝对路径。

glob-pattern 中的**表示所有直接子文件夹,无论它们的名称如何。

*.png代表任何名称的图像。 在这种情况下,它只会捕获 PNG 图像。 您没有指定图像的格式 - 如果它们不是 PNG,只需将模式更改为*.jpg等。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM