解决raise FileNotFoundError(f“Couldn’t find any class folder in {directory}.“) FileNotFoundError: Coul

在用pycharm运行深度神经网络加载数据时,发现报错
Traceback (most recent call last):
File “D:/PyCharmWorkPlace/graduate_project/lsgan/main.py”, line 16, in
class LSGAN:
File “D:/PyCharmWorkPlace/graduate_project/lsgan/main.py”, line 125, in LSGAN
dataset = dset.ImageFolder(root=dataroot,
File “D:\welcomeminiconda\envs\tensorflow\lib\site-packages\torchvision\datasets\folder.py”, line 310, in init
super().init(
File “D:\welcomeminiconda\envs\tensorflow\lib\site-packages\torchvision\datasets\folder.py”, line 145, in init
classes, class_to_idx = self.find_classes(self.root)
File “D:\welcomeminiconda\envs\tensorflow\lib\site-packages\torchvision\datasets\folder.py”, line 219, in find_classes
return find_classes(directory)
File “D:\welcomeminiconda\envs\tensorflow\lib\site-packages\torchvision\datasets\folder.py”, line 43, in find_classes
raise FileNotFoundError(f"Couldn’t find any class folder in {directory}.")
FileNotFoundError: Couldn’t find any class folder in D:/PyCharmWorkPlace/graduate_project/data/graydata/.
在这里插入图片描述
这里的原因是ImageFolder调用的是一个数据包
我的png文件路径是D:/PyCharmWorkPlace/graduate_project/data/graydata/.
在这里插入图片描述
此时应该把路径写为图片的上一级目录,所以添加一个文件夹,将路径改为
D:/PyCharmWorkPlace/graduate_project/data/gray/
在这里插入图片描述

问题解决!

### 解决Python图像处理时找不到类文件夹问题 在进行Python图像处理过程中遇到无法找到类文件夹的问题,通常是因为工作目录设置不正确或者路径指定有误。为了确保能够成功访问所需的类文件夹,在代码执行前应确认当前的工作目录指向项目根目录[^2]。 对于VSCode环境中的开发而言,如果是在某个特定文件夹下运行脚本,则应当调整工作目录至包含目标文件夹的位置。可以通过`os.chdir()`函数来改变当前工作目录: ```python import os os.chdir('/path/to/project/root') ``` 另外一种常见情况是使用相对路径读取文件或文件夹失败。此时可以采用绝对路径代替相对路径,以减少因路径解析错误而导致的问题发生概率。也可以通过获取当前脚本所在位置作为基础构建其他资源的路径: ```python import os current_dir = os.path.dirname(os.path.abspath(__file__)) data_folder_path = os.path.join(current_dir, 'relative/path/from/script/location') ``` 针对从CSV文件加载图片分类标签的任务,假设CSV文件中存储着每张图片对应的类别信息以及它们各自的保存地址。那么在遍历这些记录并将相应图片移动到对应类别文件夹之前,应该先创建好所有可能存在的类别文件夹结构。这一步骤可以在读取CSV之后立即完成,利用pandas库简化操作流程如下所示: ```python import pandas as pd import shutil from pathlib import Path df = pd.read_csv('annotations.csv') # 假设这是含有图片路径和其所属类别的CSV文件名 classes = df['class'].unique() # 获取唯一类别列表 for cls in classes: class_directory = f'dataset/{cls}' if not os.path.exists(class_directory): os.makedirs(class_directory) # 接下来可以根据DataFrame里的数据复制或剪切原始图片到相应的类别文件夹里... ``` 上述措施有助于预防由于缺少必要的输出文件夹而引发的各种异常状况。同时建议定期检查日志输出,以便及时发现潜在问题并采取适当行动加以修正。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值