torchvision.transform模块提供了一些常用的图像转换操作,用于对图像进行预处理和增强。以下是一些常见的操作及其示例:
#先读取图像
from PIL import Image
image = Image.open('image.jpg')
- Resize:调整图像大小
from torchvision import transforms
transform = transforms.Resize((256, 256))
image = transform(image)
- CenterCrop:中心裁剪图像
from torchvision import transforms
transform = transforms.CenterCrop(224)
image = transform(image)
- ToTensor:将图像转换为Tensor
from torchvision import transforms
transform = transforms.ToTensor()
image = transform(image)
- Normalize:图像标准化
from torchvision import transforms
mean = [0.485, 0.456, 0.406]
std = [0.229, 0.224, 0.225]
transform = transforms.Normalize(mean, std)
image = transform(image)
- RandomHorizontalFlip:随机水平翻转图像
from torchvision import transforms
transform = transforms.RandomHorizontalFlip(p=0.5)
image = transform(image)
- RandomCrop:随机裁剪图像
from torchvision import transforms
transform = transforms.RandomCrop(224)
image = transform(image)
- ColorJitter:随机调整图像的亮度、对比度和饱和度
from torchvision import transforms
transform = transforms.ColorJitter(brightness=0.4, contrast=0.4, saturation=0.4, hue=0.1)
image = transform(image)
- RandomRotation:随机旋转图像
from torchvision import transforms
transform = transforms.RandomRotation(30)
image = transform(image)