【torchvision.datasets.ImageFolder类的使用】
torchvision.datasets.ImageFolder()
dataset=torchvision.datasets.ImageFolder(
root,
transform=None,
target_transform=None,
loader=<function default_loader>,
is_valid_file=None)
参数解析
root:图片存储的根目录,即各类别文件夹所在目录的上一级目录。
transform: 对图片进行预处理的操作(函数),原始图片作为输入,返回一个转换后的图片。
target_transform: 对图片类别进行预处理的操作,输入为 target,输出对其的转换。如果不传该参数,即对 target 不做任何转换,返回的顺序索引 0,1, 2…
loader: 表示数据集加载方式,通常默认加载方式即可。
is_valid_file: 获取图像文件的路径并检查该文件是否为有效文件的函数(用于检查损坏文件)
返回值dataset
print(dataset.classes) #根据分的文件夹的名字来确定的类别
print(dataset.class_to_idx) #按顺序为这些类别定义索引为0,1…
print(dataset.imgs) #返回从所有文件夹中得到的图片的路径以及其类别
输出:
[‘cat’, ‘dog’]
{‘cat’: 0, ‘dog’: 1}
[(‘./data/train\cat\1.jpg’, 0),
(‘./data/train\cat\2.jpg’, 0),
(‘./data/train\dog\1.jpg’, 1),
(‘./data/train\dog\2.jpg’, 1)]