【问题标题】:how to use is_valid_file of torchvision.datasets.ImageFolder如何使用 torchvision.datasets.ImageFolder 的 is_valid_file
【发布时间】:2022-08-13 01:21:12
【问题描述】:

我正在尝试加载一些图像来训练一个小模型。但是,我无法使用is_valid_file 来区分我的训练图像和测试图像。例如我的文件是这样的:

蔬菜/番茄/gallery.jpg

对于火车组和

蔬菜/番茄/probe.jpg

用于测试集。基本上每个文件(如番茄和其他选定的蔬菜)都有 2 张测试图像和训练图像。

问题:如何使用is_valid_file 来区分它们。我检查了文档,但我不明白。

这是我的代码

trainset = torchvision.datasets.ImageFolder(
      root = \"vegetables\",
      transform=imagenet_transform
    )

testset = torchvision.datasets.ImageFolder(
  root = \"vegetables\",
  transform=imagenet_transform
)

    标签: pytorch torchvision


    【解决方案1】:

    我也有问题!!!不仅是蔬菜问题,而是鲶鱼问题。您可以在此页面 (https://www.kaggle.com/datasets/zuraiz/fish-vs-cats-imagenet-subdataset) 上找到数据集。下载的数据集必须保存在您保存 .ipynb 文件的同一文件夹中。 我使用 Google Colab(让事情变得更容易),这意味着我有一个 .ipynb 文件。

    import torchvision
    from PIL import Image, ImageFile
    from torchvision import transforms
    from torchvision.datasets import ImageFolder 
    
    from google.colab import drive
    drive.mount('/content/drive')
    
    ImageFile.LOAD_TRUNCATED_IMAGES = False
    
    def check_Image(path):
      try:
        im = Image.open(path)
        return True
      except:
        return False
    # train_data_path = "/.train/"
    
        
    

    为了得到你的路径,你必须走(在我的情况下) - drive -> MyDrive -> Pytorch Projects -> 02 Chapter -> Fish-vs-Cats -> train -> 右边的 3 个点 -> 复制路径

    train_data_path = "/content/drive/MyDrive/Pytorch Projects/02 Chapter/Fish-vs-Cats/train"
    
    
    
    img_transform = transforms.Compose([
        transforms.Resize((64,64)),
        transforms.ToTensor(),
        transforms.Normalize(mean=[0.485, 0.456, 0.406],
                             std=[0.229, 0.224, 0.225])
    ])
       
    train_data = ImageFolder(root=train_data_path, 
                             transform=img_transform, 
                             is_valid_file=check_Image)
    

    【讨论】:

      猜你喜欢
      • 2019-05-12
      • 2018-08-10
      • 2019-12-06
      • 1970-01-01
      • 2021-09-14
      • 1970-01-01
      • 2010-12-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多