图像缩放
图像缩放,顾名思义,就是对图像进行整体放大或缩小的操作。图像缩放在数据预处理时经常会用作规范图像的大小(宽高),从而便于后面神经网络的处理。OpenCV中是利用cv2.resize(src,dsize,dst=None,fx=None,fy=None,interpolation=None)方法来对图像进行缩放操作,该方法可以按照指定的宽度,高度缩放图片,也可以按照比例缩放图片。其中参数src、dsize、dst、fx、fy、interpolation分别为原图片、输出图像尺寸、目标图像、沿水平轴的比例因子、沿垂直轴的比例因子、插值方法。
图像反转
图像翻转,即沿着某条线对图像进行翻转操作。图像翻转在数据集偏少的时候经常用来扩充数据集,从而增加拟合性。OpenCV中使用cv2.flip(src, flipCode, dst=None)方法实现图像的翻转,其中参数src为要翻转的图片,参数flipCode的值为0则垂直翻转(沿x轴);大于>0则水平翻转(沿y轴);小于0则代表水平垂直翻转,参数dst为目标图片。
图像平移和旋转
图像平移,即让图片沿着x轴和y轴方向进行平移操作。首先需要具体了解一下图片中x轴和y轴是怎么确定的。整个坐标系是以图像的左上角为原点,向右为x轴,向下为y轴。
OpenCV中利用cv2.warpAffine(src, M, dsize[, flags[, borderMode[, borderValue]]]) 方法来实现图像平移。首先需要定义平移矩阵M,矩阵M中是一个2行3列的放射变换矩阵,定义了x轴和y轴的平移量。参数src、dsize、flags、borderMode、borderValue分别为输入图像、输出图像的大小、插值法INTE_LINEAR(默认)、填充模式(当borderMode=BORDER_CONSTANT时为值填充)。