深度学习-运用transforms方法 对图片增强

transforms方法在图像增强中起到了至关重要的作用,特别是在深度学习的数据预处理阶段。以下是关于transforms方法如何对图片进行增强的详细解释:

  1. 数据增强的目的
    数据增强是一种常用的数据预处理技术,通过对训练集进行各种变换和扩增操作,增加训练数据的多样性和丰富性,从而提高模型的泛化能力。其目的是模拟真实世界中的各种场景和变化,帮助模型学习到更多不同的特征和模式,提高模型对于不同样本的适应能力,减少过拟合的风险。

  2. 常见的transforms方法
    几何变换:
    transforms.CenterCrop(size):从图像中心裁剪图片到指定尺寸。
    transforms.RandomCrop(size, padding=None, pad_if_needed=False, fill=0, padding_mode=‘constant’):从图像中随机裁剪图片到指定尺寸。
    transforms.RandomResizedCrop(size, scale=(0.08, 1.0), ratio=(0.75, 1.3333333333333333), interpolation=2):随机大小和长宽比的裁剪,然后缩放到指定大小。
    transforms.RandomHorizontalFlip(p=0.5):以一定的概率水平翻转图像。
    transforms.RandomVerticalFlip(p=0.5):以一定的概率垂直翻转图像。
    transforms.RandomRotation(degrees, resample=False, expand=False, center=None):随机旋转图像。
    transforms.RandomAffine(degrees, translate=None, scale=None, shear=None, resample=False, fillcolor=0):对图像进行随机仿射变换。
    色彩空间变换:
    transforms.Grayscale(num_output_channels=1):将图像转换为灰度图。
    transforms.ColorJitter(brightness=0, contrast=0, saturation=0, hue=0):随机改变图像的亮度、对比度、饱和度和色调。
    其他变换:
    transforms.Resize(size, interpolation=2):调整图像大小。
    transforms.ToTensor():将PIL Image或numpy.ndarray转换为tensor,并归一化到[0.0, 1.0]范围内。
    transforms.Normalize(mean, std):用均值和标准差对tensor图像进行标准化。

  3. 使用transforms进行数据增强
    通常,我们会使用transforms.Compose来组合多个变换操作,形成一个变换序列,然后应用于图像数据。例如:

    **from torchvision import transforms
    from PIL import Image

img = Image.open(‘00000.jpg’) #需要处理图片地址

transform = transforms.Compose([
transforms.Resize(256),
transforms.RandomCrop(224),
transforms.RandomHorizontalFlip(p=0.5),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]),
])

对打开图片transform增强

transformed_image = transform( img)

  1. 数据增强的类别
    有监督的数据增强:针对单个样本或多样本进行增强,包括几何变换和像素变换。
    无监督的数据增强:利用模型以及已有数据生成新的数据来增大数据量,如GAN、扩散模型等。
    综上所述,transforms方法提供了丰富的图像增强操作,通过组合这些操作,我们可以有效地增加训练数据的多样性和丰富性,提高模型的性能。
  • 17
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值