对于transforms中带有概率参数的函数,例如:
transforms.RandomHorizontalFlip(p=0.5) 依概率p进行水平翻转
transforms.RandomVerticalFlip(p=0.5) 依概率p进行垂直翻转
transforms.RandomGrayscale(p=0.1) 依概率p转化为灰度图
为了使图像和标签能够同时执行相同操作,需要先将概率p确定为0或1,但这个确定的过程可以是随机的结果:
p = random.randint(0,1) #返回 [0,1] 之间的任意整数
然后基于确定的结果p对图像和标签同时使用transforms函数即可。
每张图像可以重新确定p值。
如:
p = random.randint(0,1)
transform = transforms.Compose([ transforms.RandomHorizontalFlip(p), transforms.RandomVerticalFlip(p)
])
img = transform(image)
label = transform(label)