通过 torch DataLoader 加载微型 imagenet 的问题

Problem with Loading tiny imagenet via torch DataLoader

我正在使用 tiny-imagenet-200,我不确定是否可以使用 torch.utils.data.DataLoader 加载它们。 我从 Stanford 站点下载了 tiny-imagenet-200,但验证集的格式设置在名称为 val_0 到 val_9999 的目录中,它们的标签在 .txt 中。 如何通过 torch.utils.data.DataLoader 加载此目录? 我试过了:

datasets.ImageFolder(args.val_dir, transforms.Compose([
            OpencvResize(256),
            transforms.CenterCrop(224),
            ToBGRTensor(),
        ]) 

但是没用。

您不能直接使用 ImageFolder 来做到这一点。不过还有其他选择:

  • 您可以阅读注释文件并重新构建目录以启用 ImageFolder 的用法,如 here;
  • 您可以实施自定义 Dataset。幸运的是,由于 Tiny ImageNet 是一个流行的数据集,您可以在网上找到许多实现。例如,this one.