项目背景:这里我是想实现一个VGG网络,以cifar10作为数据集进行训练;在加载数据集时一直报这个错误,首先路径时没有任何问题的;
代码如下:
trainData = torchvision.datasets.ImageFolder('./data/imagenet/train/', transform=transform)
testData = torchvision.datasets.ImageFolder('./data/imagenet/test/', transform=transform)
train 和 test 文件夹下就是各个.jpg 的图片;得到的结果却是无法读取;
报错描述截图:
这里的解决方案是将文件加深一层,但是读取路径不变,即可顺利运行!
其实代码没有改变;结果已经可以运行。
这是因为我使用的数据集已经自觉按照要分配的类型分成了不同的文件夹也就是train和test,且文件夹下面只存放一种类型的图片。
经过一番寻找,参考地址,其中说是:https://stackoverflow.com/questions/54613573/runtimeerror-found-0-files-in-subfolders-of-error-about-subfolder-in-pytor/55551214
使用的 torchvision.datasets.ImageFolder这个类官方说明:https://pytorch.org/docs/0.4.1/torchvision/datasets.html#imagefolder
这里加载时并不需要将文件夹目录细化到dog或cat目录。
ImageFolder需要获取的是一个文件夹类,而不是具体的某个文件;
以上是我的个人理解,如有高见,欢迎指教!