【发布时间】:2019-10-24 01:41:45
【问题描述】:
我正在尝试训练 GAN 来为图像着色。为此,我使用torchvision 的ImageFolder 来加载灰度图像,但我还需要原始数据以及转换后的数据。
由于数据量很大,我希望以最快的方式进行。我想让ImageFolder 同时加载两者以降低时间复杂度。
def load_data_bw(opt):
datapath = '/content/gdrive/My Drive/faces/2003'
dataset = torchvision.datasets.ImageFolder(datapath,
transform=transforms.Compose([
transforms.Grayscale(num_output_channels=3), #load images as grayscale with three channels
transforms.RandomChoice(
[transforms.Resize(opt['loadSize'], interpolation=1),
transforms.Resize(opt['loadSize'], interpolation=2),
transforms.Resize(opt['loadSize'], interpolation=3),
transforms.Resize((opt['loadSize'], opt['loadSize']),
interpolation=1),
transforms.Resize((opt['loadSize'], opt['loadSize']),
interpolation=2),
transforms.Resize((opt['loadSize'], opt['loadSize']),
interpolation=3)]
),
transforms.RandomChoice(
[transforms.RandomResizedCrop(opt['fineSize'], interpolation=1),
transforms.RandomResizedCrop(opt['fineSize'], interpolation=2),
transforms.RandomResizedCrop(opt['fineSize'], interpolation=3)]
),
transforms.ColorJitter(brightness=0.1, contrast=0.1),
transforms.RandomHorizontalFlip(),
transforms.ToTensor()
]))
return dataset
我希望得到:
for iteration, orig_data, gray_data in enumerate(training_data_loader, 1):
# code..
【问题讨论】:
-
你不需要 collate_fn() 吗?我正在尝试像你一样做类似的数据集,但我可以将原始数据集和主要数据集配对,我在 pytorch 论坛中搜索并启动了一些主题,但我无法解决问题。
标签: python deep-learning pytorch