transforms.Compose() 是 PyTorch 提供的一个简单实用的工具。它允许将多个图像变换操作组成一个序列,从而简化图像预处理流水线。
transforms.Compose() 接受一个变换列表,并返回一个新的、组合后的变换。 这特别适合在处理图像时,需要链式应用多个变换操作的场景。
应用展示
from torchvision import transforms
from PIL import Imagetransform_pipeline = transforms.Compose([
transforms.Resize((128, 128)),
transforms.RandomCrop(114),
transforms.RandomHorizontalFlip(),
transforms.RandomRotation(10),
transforms.ColorJitter(brightness=0.2, contrast=0.2, saturation=0.2, hue=0.1),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
])img = Image.open("path/to/your/image.jpg")
transformed_img = transform_pipeline(img)
在这个例子中,创建了一个由不同图像变换操作组成的更复杂的变换流水线。该流水线包括调整大小、随机裁剪、随机水平翻转、随机旋转、色彩变化、转换为 Tensor 和归一化。应用这些变换后,图像将变得更加适合用于训练深度学习模型。