File size: 1,477 Bytes
019d164 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
from .AFHQ_dataset import get_afhq_dataset
from .CelebA_HQ_dataset import get_celeba_dataset
from .LSUN_dataset import get_lsun_dataset
from torch.utils.data import DataLoader
from .IMAGENET_dataset import get_imagenet_dataset
def get_dataset(dataset_type, dataset_paths, config, target_class_num=None, gender=None):
if dataset_type == 'AFHQ':
train_dataset, test_dataset = get_afhq_dataset(dataset_paths['AFHQ'], config)
elif dataset_type == "LSUN":
train_dataset, test_dataset = get_lsun_dataset(dataset_paths['LSUN'], config)
elif dataset_type == "CelebA_HQ":
train_dataset, test_dataset = get_celeba_dataset(dataset_paths['CelebA_HQ'], config)
elif dataset_type == "IMAGENET":
train_dataset, test_dataset = get_imagenet_dataset(dataset_paths['IMAGENET'], config, class_num=target_class_num)
else:
raise ValueError
return train_dataset, test_dataset
def get_dataloader(train_dataset, test_dataset, bs_train=1, num_workers=0):
train_loader = DataLoader(
train_dataset,
batch_size=bs_train,
drop_last=True,
shuffle=True,
sampler=None,
num_workers=num_workers,
pin_memory=True,
)
test_loader = DataLoader(
test_dataset,
batch_size=1,
drop_last=True,
sampler=None,
shuffle=True,
num_workers=num_workers,
pin_memory=True,
)
return {'train': train_loader, 'test': test_loader}
|