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

2024-06-25 07:03:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试数据集DRISHTI-GS上的一个问题。我想使用的图像(从训练)和杯赛格和光盘赛格图像(从软地图),并实现了它的CNN模型。地面真相(GT)子文件夹由52个子文件夹组成,每个子文件夹对应于另一个名为images的文件夹(培训子文件夹)中的52个图像。我已经给出了子文件夹的布局。GT中的子文件夹有3个子文件夹,其中子文件夹softmap有两个图像,我需要加载这些图像。我希望有人能帮助我一些具体的代码或一些有用的资料

基本上希望使用.jpg或.png扩展名列出并筛选主目录及其所有子目录中的所有文件。

enter image description here


Tags: 数据模型图像gt文件夹gs地图cnn
2条回答

您可以使用以下代码从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模式中的**表示所有直接子文件夹,而不管它们的名称如何

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

相关问题 更多 >