Datawhale AI夏令营CV方向之数据增强

1 常见的数据增强方法

torchvision是一个流行的开源Python包,它提供了许多用于深度学习计算机视觉任务的工具和预训练模型。在torchvision中,数据增强方法主要位于torchvision.transformstorchvision.transforms.v2模块中。这些增强方法可以用于图像分类、目标检测、图像分割和视频分类等各种任务。

1.1 集合变换

  • 调整大小: Resize可以将图像调整到指定的大小。

  • 随机裁剪: RandomCropRandomResizedCrop可以随机裁剪图像。

  • 中心裁剪: CenterCrop从图像的中心裁剪出指定大小。

  • 五裁剪和十裁剪: FiveCropTenCrop分别裁剪出图像的四个角和中心区域。

  • 翻转: RandomHorizontalFlipRandomVerticalFlip可以水平或垂直翻转图像。

  • 旋转: RandomRotation可以随机旋转图像。

  • 仿射变换: RandomAffine可以进行随机的仿射变换。

  • 透视变换: RandomPerspective可以进行随机的透视变换

1.2 颜色变换

  • 颜色抖动: ColorJitter可以随机改变图像的亮度、对比度、饱和度和色调。

  • 灰度化: GrayscaleRandomGrayscale可以将图像转换为灰度图。

  • 高斯模糊: GaussianBlur可以对图像进行高斯模糊。

  • 颜色反转: RandomInvert可以随机反转图像的颜色。

  • 颜色 posterize: RandomPosterize可以减少图像中每个颜色通道的位数。

  • 颜色 solarize: RandomSolarize可以反转图像中所有高于阈值的像素值。

1.3 自动增强

  • 自动增强: AutoAugment可以根据数据集自动学习数据增强策略。

  • 随机增强: RandAugment可以随机应用一系列数据增强操作。

  • TrivialAugmentWide:提供与数据集无关的数据增强。

  • AugMix:通过混合多个增强操作进行数据增强。

2 进阶数据增强方法

2.1 Mixup

MixUp是一种数据增强技术,其原理是通过将两个不同的图像及其标签按照一定的比例混合,从而创建一个新的训练样本。这种方法可以增加训练数据的多样性,提高模型的泛化能力,并减少过拟合的风险。MixUp方法中混合比例是一个超参数,通常称为alphaalpha是一个在0到1之间的值,表示混合的比例。例如,alpha=0.5意味着两个图像各占新图像的一半。

MixUp的混合过程包括以下步骤:

  1. 从训练集中随机选择两个图像和它们的标签。

  2. 将这两个图像按照alpha的比例混合,得到一个新的图像。

  3. 将这两个标签按照相同的alpha比例混合,得到一个新的标签。

2.2 Cutmix

CutMix是一种数据增强技术,它通过将一个图像的一部分剪切并粘贴到另一个图像上来创建新的训练样本。同时,它也会根据剪切区域的大小来调整两个图像的标签。

CutMix方法中,剪切和粘贴操作是关键步骤。具体来说,剪切和粘贴过程包括以下步骤:

  1. 从训练集中随机选择两个图像和它们的标签。

  2. 随机选择一个剪切区域的大小和位置。

  3. 将第一个图像的剪切区域粘贴到第二个图像上,得到一个新的图像。

  4. 根据剪切区域的大小,计算两个图像的标签的加权平均值,得到一个新的标签。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值