ImageNet#

class ImageNet(root=None, train=True, **kwargs)[源代码]#

从原始文件或文件夹中加载ImageNet,期望的文件夹形如:

${root}/
|       [REQUIRED TAR FILES]
|-  ILSVRC2012_img_train.tar
|-  ILSVRC2012_img_val.tar
|-  ILSVRC2012_devkit_t12.tar.gz
|       [OPTIONAL IMAGE FOLDERS]
|-  train/cls/xxx.${img_ext}
|-  val/cls/xxx.${img_ext}
|-  ILSVRC2012_devkit_t12/data/meta.mat
|-  ILSVRC2012_devkit_t12/data/ILSVRC2012_validation_ground_truth.txt

如果期望的图片文件夹不存在,则需要原始tar文件来进行抽取和处理。

  • 如果 root 包含 self.target_foldertrain 为真:

    • 用target_folder初始化ImageFolder。

  • 否则:

    • 如果 root 目录包含所有原始文件:

      • 从原始文件中解出 self.target_folder

      • self.target_folder 初始化ImageFolder。

    • 否则:

      • 抛异常错误。

参数:
  • root (Optional[str]) – imagenet 数据的根目录,如果根目录参数为 None,使用默认的数据集目录。

  • train (bool) – 如果为 True,加载训练切片,否则加载验证切片。