GoodWin/Deep-Multi-scale
0
1import os.path2from data.base_dataset import BaseDataset, get_transform3from data.image_folder import make_dataset4from PIL import Image5 6 7class SingleDataset(BaseDataset):8 @staticmethod9 def modify_commandline_options(parser, is_train):10 return parser11 12 def initialize(self, opt):13 self.opt = opt14 self.root = opt.dataroot15 self.dir_A = os.path.join(opt.dataroot)16 17 self.A_paths = make_dataset(self.dir_A)18 19 self.A_paths = sorted(self.A_paths)20 21 self.transform = get_transform(opt)22 23 def __getitem__(self, index):24 A_path = self.A_paths[index]25 A_img = Image.open(A_path).convert('RGB')26 A = self.transform(A_img)27 if self.opt.which_direction == 'BtoA':28 input_nc = self.opt.output_nc29 else:30 input_nc = self.opt.input_nc31 32 if input_nc == 1: # RGB to gray33 tmp = A[0, ...] * 0.299 + A[1, ...] * 0.587 + A[2, ...] * 0.11434 A = tmp.unsqueeze(0)35 36 return {'A': A, 'A_paths': A_path}37 38 def __len__(self):39 return len(self.A_paths)40 41 def name(self):42 return 'SingleImageDataset'43 