在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=<InterpolationMode.BILINEAR: 'bilinear'>): 随机裁剪并调整图像大小。transform = transforms.RandomResizedCrop(224) -
Grayscale(num_output_channels=1): 将图像转换为灰度图像。transform = transforms.Grayscale()
这些函数只是torchvision.transforms库中的一部分。您可以根据需要选择适当的图像变换函数,并按照上述示例将它们组合在一起使用,以实现数据增强和预处理。