imgaug 图像增强方法

一、Imgaug简介

imgaug 是一个比torchvision更强大的数据增强工具包,这不仅体现在数据增强类别上,也包括数据增强方法的使用。比如,imgaug不仅提供了一些常见的shape增强方法和color增强方法,例如旋转、对比度等,也提供了加雨、加雾这些增强方法。此外,imgaug也可以设置keypoint等,对比数据增强前后关键点未知的变化。

我在调研该工具包的时候实现了相关的代码,在对某一算法进行增强的时候,只需配置算法的增强方式,即可使用,同时支持图像分类和目标检测,增强效果相当,区别是对目标检测增强的时候产生的增强图会同时生成label标签文件。


二、Imgaug实践

2.1、原始图像

import imgaug.augmenters as iaa
import imgaug as ia

在这里插入图片描述

2.2、仿射变换

iaa.Affine(scale={"x": (0.6, 1.4), "y": (0.6, 1.4)},translate_percent={"x": (-0.2, 0.2), "y": (-0.2, 0.2)},rotate=(-20, 20),shear=(-16, 16),order=[0, 1],cval=(0, 255),mode="edge"
)

在这里插入图片描述

2.3、高斯模糊

iaa.GaussianBlur((2, 11)),

在这里插入图片描述

2.4、均值模糊

iaa.AverageBlur(k=(2, 11)),

在这里插入图片描述

2.5、中值模糊

iaa.MedianBlur(k=(11, 11)),

在这里插入图片描述

2.6、锐化

iaa.Sharpen(alpha=(0, 1.0), lightness=(0.75, 1.5)),

在这里插入图片描述

2.7、丢弃像素

 iaa.Dropout((0.1, 0.5), per_channel=False),

在这里插入图片描述

2.8、丢弃像素2

iaa.CoarseDropout((0.02,0.10), size_percent=(0.15, 0.55),per_channel=False),

在这里插入图片描述

2.9、改变亮度

iaa.AddToBrightness((-100, 100)),

在这里插入图片描述

2.10、改变亮度2

iaa.Multiply((0.6,1.4),per_channel=0.2),

在这里插入图片描述

2.11、生成遮挡

iaa.Cutout(nb_iterations=(1, 11), size=0.1, squared=False, fill_mode="constant", cval=0),

在这里插入图片描述

2.12、调整对比度

iaa.contrast.LinearContrast((0.5, 3.0), per_channel=False),

在这里插入图片描述

2.13、左右翻转

iaa.Fliplr(0.5),

在这里插入图片描述

2.14、上下翻转

iaa.Flipud(0.5),

在这里插入图片描述

2.15、大小缩放

iaa.Resize({"height": 100, "width": 100}),

在这里插入图片描述

2.16、HSV对比度变换

iaa.WithColorspace(	to_colorspace="HSV",from_colorspace="RGB",children=iaa.WithChannels(0, iaa.Add((30, 100)))),

在这里插入图片描述

2.17、色相调整

iaa.AddToHue((-50, 50)),

在这里插入图片描述

2.18、饱和度及色相调整

iaa.AddToHueAndSaturation((-100, 100), per_channel=True),

在这里插入图片描述

2.19、饱和度调整

iaa.AddToSaturation((-100, 100)),

在这里插入图片描述

2.20、剪切

iaa.Crop(px=(0,150)),

在这里插入图片描述

2.21、剪切和填充

iaa.CropAndPad(px=None,percent=None,pad_mode='constant',pad_cval=0,keep_size=True,sample_independently=True,name=None,deterministic=False,random_state=None),

在这里插入图片描述

2.22、添加高斯噪声

iaa.AdditiveGaussianNoise(loc=0,scale=(0.0,0.05*255),per_channel=False),

在这里插入图片描述

2.23、伽马变换

iaa.GammaContrast(gamma=2*random2+1),

在这里插入图片描述

2.24、sigmoid变换

iaa.SigmoidContrast(gain= random2+0.5),

在这里插入图片描述

2.25、log变换

iaa.LogContrast(gain=2*random2+1),

在这里插入图片描述

2.26、CLAHE

iaa.CLAHE(clip_limit=(1, random3*10)),

在这里插入图片描述

2.27、散焦模糊

iaa.imgcorruptlike.DefocusBlur(severity=1),

在这里插入图片描述

2.28、运动模糊

iaa.MotionBlur(k=16),

在这里插入图片描述

2.29、添加马赛克

iaa.CoarseSaltAndPepper(0.06, size_percent=(0.01, 0.1)),

在这里插入图片描述

2.30、浮雕效果锐化

iaa.Emboss(alpha=(0, 1.0), strength=(0, 2.0)),

在这里插入图片描述

2.31、像素移动

iaa.ElasticTransformation(alpha=(0.5, 3.5), sigma=0.25),

在这里插入图片描述

2.32、超像素

iaa.Superpixels(p_replace=(0, 1.0),n_segments=(20, 200)
)

在这里插入图片描述

2.33、翻转像素

iaa.Invert(0.15, per_channel=True),

在这里插入图片描述

2.34、转换为一定比例的灰度图

Grayscale(alpha=(0.0, 1.0)),

在这里插入图片描述

2.35、边缘叠加

iaa.EdgeDetect(alpha=(0.2, 0.9)),

在这里插入图片描述

2.36、图形扭曲

iaa.PiecewiseAffine(scale=(0.01, 0.05)),

在这里插入图片描述

2.37、下雨

iaa.Rain(drop_size=(0.025, 0.05), speed=(0.25, 0.05)),  # 雨
iaa.imgcorruptlike.Spatter(severity=1),  # 溅 123水滴、45泥
iaa.MotionBlur(k=3),  # 运动模糊

在这里插入图片描述

2.38、下雪

iaa.imgcorruptlike.Snow(severity=2),

在这里插入图片描述

2.39、起雾

iaa.Clouds(),

在这里插入图片描述

2.40、卡通

iaa.Cartoon(blur_ksize=3, segmentation_size=1.0, saturation=2.0, edge_prevalence=1.0),

在这里插入图片描述

2.41、多种效果叠加

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值