def init_data_processing(): kvs = GlobalKVS() train_augs = init_train_augs() dataset = OAProgressionDataset(dataset=kvs['args'].dataset_root, split=kvs['metadata'], trf=train_augs) mean_vector, std_vector = init_mean_std(snapshots_dir=kvs['args'].snapshots, dataset=dataset, batch_size=kvs['args'].bs, n_threads=kvs['args'].n_threads) print(colored('====> ', 'red') + 'Mean:', mean_vector) print(colored('====> ', 'red') + 'Std:', std_vector) norm_trf = tv_transforms.Normalize(mean_vector.tolist(), std_vector.tolist()) train_trf = tv_transforms.Compose([ train_augs, partial(apply_by_index, transform=norm_trf, idx=0) ]) val_trf = tv_transforms.Compose([ img_labels2solt, slc.Stream([ slt.ResizeTransform((310, 310)), slt.CropTransform(crop_size=(300, 300), crop_mode='c'), slt.ImageColorTransform(mode='gs2rgb'), ], interpolation='bicubic'), unpack_solt_data, partial(apply_by_index, transform=tv_transforms.ToTensor(), idx=0), partial(apply_by_index, transform=norm_trf, idx=0) ]) kvs.update('train_trf', train_trf) kvs.update('val_trf', val_trf) kvs.save_pkl(os.path.join(kvs['args'].snapshots, kvs['snapshot_name'], 'session.pkl'))
def init_loader(metadata, args, snapshots_root): mean_vector, std_vector = session.init_mean_std(snapshots_root, None, None, None) norm_trf = tv_transforms.Normalize(mean_vector.tolist(), std_vector.tolist()) tta_trf = tv_transforms.Compose([ img_labels2solt, slc.Stream([ slt.PadTransform(pad_to=(700, 700), padding='z'), slt.CropTransform(crop_size=(700, 700), crop_mode='c'), slt.ResizeTransform(resize_to=(310, 310), interpolation='bicubic'), slt.ImageColorTransform(mode='gs2rgb'), ], interpolation='bicubic'), unpack_solt_data, partial(apply_by_index, transform=tv_transforms.ToTensor(), idx=0), partial(apply_by_index, transform=norm_trf, idx=0), partial(apply_by_index, transform=partial(five_crop, size=300), idx=0), ]) dataset = OAProgressionDataset(dataset=args.dataset_root, split=metadata, trf=tta_trf) loader = DataLoader(dataset, batch_size=args.bs, sampler=SequentialSampler(dataset), num_workers=args.n_threads) return loader
def init_train_augs(): trf = transforms.Compose([ img_labels2solt, slc.Stream([ slt.PadTransform(pad_to=(700, 700)), slt.CropTransform(crop_size=(700, 700), crop_mode='c'), slt.ResizeTransform((310, 310)), slt.ImageAdditiveGaussianNoise(p=0.5, gain_range=0.3), slt.RandomRotate(p=1, rotation_range=(-10, 10)), slt.CropTransform(crop_size=(300, 300), crop_mode='r'), slt.ImageGammaCorrection(p=0.5, gamma_range=(0.5, 1.5)), slt.ImageColorTransform(mode='gs2rgb') ], interpolation='bicubic', padding='z'), unpack_solt_data, partial(apply_by_index, transform=transforms.ToTensor(), idx=0), ]) return trf
def test_image_color_conversion_raises_error(mode, mask_3x4): trf = slt.ImageColorTransform(mode=mode) dc = sld.DataContainer(mask_3x4.squeeze(), 'I') with pytest.raises(ValueError): trf(dc)
def test_hsv_returns_expected_results(mode, img, expected): trf = slt.ImageColorTransform(mode=mode) dc = sld.DataContainer(img, 'I') dc_res = trf(dc) np.testing.assert_array_equal(expected, dc_res.data[0])
def __init__(self): self.augmentor_op = Operations.Greyscale(probability=1) self.imgaug_transform = iaa.Grayscale(alpha=1.0) self.solt_stream = slc.Stream([slt.ImageColorTransform(mode="rgb2gs")])