在PyTorch的torchvision.transforms
库中,有许多常用的图像变换函数可用于数据增强和预处理。下面列举了一些常用的函数及其用法:
Resize(size)
: 调整图像大小为给定的尺寸。
transform = transforms.Resize((256, 256))
RandomCrop(size, padding=None)
: 随机裁剪图像到给定尺寸。
transform = transforms.RandomCrop(224)
CenterCrop(size)
: 从图像中心进行裁剪到给定尺寸。
transform = transforms.CenterCrop(224)
RandomHorizontalFlip(p=0.5)
: 随机水平翻转图像,翻转概率为 p。
transform = transforms.RandomHorizontalFlip()
ToTensor()
: 将图像转换为张量。
transform = transforms.ToTensor()
Normalize(mean, std)
: 标准化图像张量。
transform = transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))
RandomRotation(degrees, resample=False, expand=False, center=None)
: 随机旋转图像给定角度。
transform = transforms.RandomRotation(30)
ColorJitter(brightness=0, contrast=0, saturation=0, hue=0)
: 随机调整亮度、对比度、饱和度和色调。
transform = transforms.ColorJitter(0.2, 0.2, 0.2, 0.2)
RandomGrayscale(p=0.1)
: 随机将图像转换为灰度图像,转换概率为 p。
transform = transforms.RandomGrayscale()
RandomResizedCrop(size, scale=(0.08, 1.0), ratio=(0.75, 1.3333333333333333), interpolation=
: 随机裁剪并调整图像大小。
transform = transforms.RandomResizedCrop(224)
Grayscale(num_output_channels=1)
: 将图像转换为灰度图像。
transform = transforms.Grayscale()
这些函数只是torchvision.transforms
库中的一部分。您可以根据需要选择适当的图像变换函数,并按照上述示例将它们组合在一起使用,以实现数据增强和预处理。