我希望得到同一幅图像的2副不同的随机增强变换,结果得到的总是相同的结果。
我的代码参考如下,运行出来diff的值一直是0,请问有什么问题吗,我应该如何修改代码
self.tranforms = [
# vision.RandomCrop(32, padding=4),
vision.RandomResizedCrop(32, scale=(0.5, 1.0)),
vision.RandomHorizontalFlip(0.5),
vision.RandomColorAdjust(0.4, 0.4, 0.2, 0.1),
# vision.RandomSolarize(),
vision.RandomEqualize(0.5),
vision.ToTensor(),
vision.Normalize(
mean=[0.4914, 0.4822, 0.4465],
std=[0.2471, 0.2435, 0.2616],
is_hwc=False)
]
du = de.GeneratorDataset(
train_unlabeled_dataset,
shuffle=True,
num_parallel_workers=self.args.num_workers,
# python_multiprocessing=True,
column_names=[
"unlabel0",
"target",
"index",
"uncr"])
du = du.map(operations=transforms.Duplicate(), input_columns=["unlabel0"], output_columns=["unlabel0", "unlabel1"], column_order=["unlabel0", "unlabel1", "target",
"index", "uncr"])
du = du.map(operations=self.tranforms, input_columns=["unlabel0"], num_parallel_workers=self.args.num_workers)
du = du.map(operations=self.transforms, input_columns=["unlabel1"], num_parallel_workers=self.args.num_workers)
du = du.batch(
args.batchsize,
num_parallel_workers=args.num_workers,
# python_multiprocessing=True,
drop_remainder=True)
unlabel_iterable = du.create_tuple_iterator(
num_epochs=-1, do_copy=False)
unlabel_iterator = iter(unlabel_iterable)
inputs_u, inputs_u2, _, _, temp_u = unlabel_iterator.__next__()
diff = ops.abs(inputs_u - inputs_u2).sum()
我希望得到同一幅图像的2副不同的随机增强变换,结果得到的总是相同的结果。
我的代码参考如下,运行出来diff的值一直是0,请问有什么问题吗,我应该如何修改代码
self.tranforms = [ # vision.RandomCrop(32, padding=4), vision.RandomResizedCrop(32, scale=(0.5, 1.0)), vision.RandomHorizontalFlip(0.5), vision.RandomColorAdjust(0.4, 0.4, 0.2, 0.1), # vision.RandomSolarize(), vision.RandomEqualize(0.5), vision.ToTensor(), vision.Normalize( mean=[0.4914, 0.4822, 0.4465], std=[0.2471, 0.2435, 0.2616], is_hwc=False) ] du = de.GeneratorDataset( train_unlabeled_dataset, shuffle=True, num_parallel_workers=self.args.num_workers, # python_multiprocessing=True, column_names=[ "unlabel0", "target", "index", "uncr"]) du = du.map(operations=transforms.Duplicate(), input_columns=["unlabel0"], output_columns=["unlabel0", "unlabel1"], column_order=["unlabel0", "unlabel1", "target", "index", "uncr"]) du = du.map(operations=self.tranforms, input_columns=["unlabel0"], num_parallel_workers=self.args.num_workers) du = du.map(operations=self.transforms, input_columns=["unlabel1"], num_parallel_workers=self.args.num_workers) du = du.batch( args.batchsize, num_parallel_workers=args.num_workers, # python_multiprocessing=True, drop_remainder=True) unlabel_iterable = du.create_tuple_iterator( num_epochs=-1, do_copy=False) unlabel_iterator = iter(unlabel_iterable) inputs_u, inputs_u2, _, _, temp_u = unlabel_iterator.__next__() diff = ops.abs(inputs_u - inputs_u2).sum()