数据增强又称为数据增广,数据扩增,是对数据集进行变换,从而让模型更具泛化能力。
功能:从图像中心处裁剪图片
size: 所需裁剪图片的尺寸
若裁剪尺寸大于图片尺寸,则多余部分会用黑色填充。
功能:从图片中随机位置裁剪出size大小的图片
size:所需裁剪的图片尺寸
padding:设置填充大小
当为a时,上下左右均填充a个像素
当为(a,b)时,上下填充b个像素,左右填充a个像素
当为(a,b,c,d)时,左上右下分别填充a,b,c,d个像素
pad_if_needed: 若图像小于设定的size,则填充
有四种padding_mode:
‘constant’:像素值由fill设定
‘edge’:像素值由图像边缘设定
‘reflect’:镜像填充,最后一个像素不镜像,eg:[1,2,3,4]–[3,2,1,2,3,4,3,2]
‘symmetric’:镜像填充,最后一个像素镜像,eg:[1,2,3,4]–[2,1,1,2,3,4,4,3]
fill:constant时图像的像素值
transforms.RandomCrop(size,
padding=None,
pad_if_needed=False,
fill=0,
padding_mode='constant')
功能:随机大小,长宽比裁剪图片
size:所需裁剪的图片尺寸
scale:随机裁剪的面积比例,默认(0.08,1)
ratio:随机长宽比,默认(3/4,4/3)
interpolation:插值方法(PIL.Image.NEAREST, PIL.Image.BILINEAR, PIL.Image.BICUBIC )
功能:在图片的上下左右和中间剪裁出大小为size的五张图片,TenCrop是指对这五张图片进行水平或垂直的镜像翻转得到十张图片。
size:所需剪裁图片尺寸
vertical_flip:是否垂直翻转
功能:依据概率水平(左右)或垂直(上下)翻转图片
参数p:翻转概率
RandomRotation
功能:随机旋转图片
degrees:旋转角度
当为a时,在(-a,a)角度之间旋转
当为(a,b)时,在(a,b)角度之间旋转
resample:重采样方法
expand:是否扩大图片,以保持原图信息
RandomRotation(
degrees,
resample=False,
expand=False,
center=None)
功能对图像边缘进行填充
padding:设置填充大小
当为a时,上下左右均填充a个像素
当为(a,b)时,上下填充b个像素,左右填充a个像素
当为(a,b,c,d)时,左上右下分别填充a,b,c,d个像素
pad_if_needed: 若图像小于设定的size,则填充
有四种padding_mode:
‘constant’:像素值由fill设定
‘edge’:像素值由图像边缘设定
‘reflect’:镜像填充,最后一个像素不镜像,eg:[1,2,3,4]–[3,2,1,2,3,4,3,2]
‘symmetric’:镜像填充,最后一个像素镜像,eg:[1,2,3,4]–[2,1,1,2,3,4,4,3]
transforms.Pad(
padding,
fill=0,
padding_mode='constant')
功能:调整亮度,对比度,饱和度和色相
brightness:亮度调整因子,设置为a时,会从[max(0,1-a),1+a]之间选择一个因子。若设置为(a,b)时,会从[a,b]中选择。
contrast:对比度参数,同brightness。
saturation:饱和度参数,同brightness
hue:色相参数,当为a时,从[-a,a]中选择参数(a在[0,0.5]之间)。
为(a,b)时,注意取值范围如上。
GrayScale和RandomGrayScale
功能:依概率将图片转换为深度图
num_output_channels:输出的通道数,只能设置为1或者3。
p:概率值,图像被转换为灰度图的概率
GrayScale是概率为1的RandomGrayScale
功能:对图像进行仿射变换,仿射变换是二维的线性变换,由五种基本的线性变换构成,旋转,平移,缩放,错切和翻转。
degrees:旋转角度设置
translate:平移区间设置,如(a,b)。a设置宽(-图像宽a,图像宽a),b设置高。
scale:缩放比例
fill_color:填充颜色设置
shear:错切角度,有水平和垂直两种。若设置为a,只在x轴错切,在(-a,a)之间随机选一个角度进行错切。若设置为(a,b),则a设置x轴,b设置y轴。若为(a,b,c,d)则a,b设置x轴,c,d设置y轴。
resample:重采样方式,由NEAREST,BILINEAR和BICUBIC三种。
RandomAffine(degrees,
translate=None,
scale=None,
shear=None,
resample=False,
fillcolor=0)
功能:对图片进行随机的遮挡
p:遮挡的概率值
scale:遮挡区域的面积
ratio:遮挡区域的长宽比
value:设置遮挡区域的像素值,(R,G,B)or (Gray)
此函数对张量进行操作,其他的都是对PIL.Image
RandomErasing(P=0.5,
scale=(0.02,0.33),
ratio=(0.3,0.33),
value=0,
inplace=False)
功能:lambda的匿名函数