ImageFolder¶
- class torchvision.datasets.ImageFolder(root: ~typing.Union[str, ~pathlib.Path], transform: ~typing.Optional[~typing.Callable] = None, target_transform: ~typing.Optional[~typing.Callable] = None, loader: ~typing.Callable[[str], ~typing.Any] = <function default_loader>, is_valid_file: ~typing.Optional[~typing.Callable[[str], bool]] = None, allow_empty: bool = False)[源代码]¶
一个通用数据加载器,默认情况下按以下方式组织图像
root/dog/xxx.png root/dog/xxy.png root/dog/[...]/xxz.png root/cat/123.png root/cat/nsdf3.png root/cat/[...]/asd932_.png
此类继承自
DatasetFolder
,因此可以通过重写相同的方法来自定义数据集。- 参数:
root (str 或
pathlib.Path
) – 根目录路径。transform (可调用对象, 可选) – 一个函数/转换,它接收 PIL 图像或 torch.Tensor(取决于给定的加载器),并返回转换后的版本。例如,
transforms.RandomCrop
target_transform (可调用对象, 可选) – 一个函数/转换,它接收目标并对其进行转换。
loader (可调用对象, 可选) – 一个根据图像路径加载图像的函数。
is_valid_file (可调用对象, 可选) – 一个函数,它接收图像文件的路径并检查文件是否有效(用于检查损坏的文件)
allow_empty – 如果为 True,则空文件夹被视为有效类别。如果为 False(默认值),则空文件夹会引发错误。