(opt, params=None, grayscale=False, method=Image.BICUBIC, convert=True)
| 79 | |
| 80 | |
| 81 | def get_transform(opt, params=None, grayscale=False, method=Image.BICUBIC, convert=True): |
| 82 | transform_list = [] |
| 83 | if grayscale: |
| 84 | transform_list.append(transforms.Grayscale(1)) |
| 85 | if 'resize' in opt.preprocess: |
| 86 | osize = [opt.load_size, opt.load_size] |
| 87 | transform_list.append(transforms.Resize(osize, method)) |
| 88 | elif 'scale_width' in opt.preprocess: |
| 89 | transform_list.append(transforms.Lambda(lambda img: __scale_width(img, opt.load_size, method))) |
| 90 | if 'crop' in opt.preprocess: |
| 91 | if params is None: |
| 92 | transform_list.append(transforms.RandomCrop(opt.crop_size)) |
| 93 | else: |
| 94 | transform_list.append(transforms.Lambda(lambda img: __crop(img, params['crop_pos'], opt.crop_size))) |
| 95 | if opt.preprocess == 'none': |
| 96 | transform_list.append(transforms.Lambda(lambda img: __make_power_2(img, base=4, method=method))) |
| 97 | |
| 98 | if convert: |
| 99 | transform_list += [transforms.ToTensor()] |
| 100 | if grayscale: |
| 101 | transform_list += [transforms.Normalize((0.5,), (0.5,))] |
| 102 | else: |
| 103 | transform_list += [transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))] |
| 104 | return transforms.Compose(transform_list) |
| 105 | |
| 106 | |
| 107 | def __make_power_2(img, base, method=Image.BICUBIC): |
no test coverage detected