《opencv 图像几何变换》

《opencv 图像几何变换》

  • 图片融合
  • 图片裁剪、放大、缩小

图片融合

首先读入三张彩色图片,进行展示
《opencv 图像几何变换》_第1张图片
接着对M图像进行0-1缩放,并取出B的目标和A的背景。
《opencv 图像几何变换》_第2张图片
然后将AS和Bs进行融合,为了融合的时候,目标的边缘比较自然,可以添加权重。
《opencv 图像几何变换》_第3张图片
最后,保存下图片。
《opencv 图像几何变换》_第4张图片

图片裁剪、放大、缩小

图片裁剪就是对多维数字进行操作,
《opencv 图像几何变换》_第5张图片
图片放大,这里需要注意的是opencv里面是先水平后垂直,而numpy里面是先垂直(行),再水平(列)。使用cv.resize()进行放大,第一个参数是img,第二个参数是放大的shape,第三个参数是放大的线性插值(cv.INTER_LINEAR)。
《opencv 图像几何变换》_第6张图片
缩小的线性插值(cv.INTER_AREA)
《opencv 图像几何变换》_第7张图片
《opencv 图像几何变换》_第8张图片
图像平移变换
先水平平移100个像素点,再垂直平移50个像素点,并把类型转换为np.float32,然后调用cv.warpAffine()函数实现平移,第一个参数是图片本身,第二个参数是平移矩阵,第三个参数是平移后图片的大小。

《opencv 图像几何变换》_第9张图片
水平错切变换
《opencv 图像几何变换》_第10张图片
垂直错切变换
《opencv 图像几何变换》_第11张图片
水平翻转
《opencv 图像几何变换》_第12张图片
垂直翻转
《opencv 图像几何变换》_第13张图片
cv.flip(img,0) 代表垂直翻转,cv.flip(img,1)代表水平翻转,cv.flip(img,-1)代表水平垂直同时翻转。
《opencv 图像几何变换》_第14张图片
cv.rotate(img,cv.ROTATE_90_CLOCKWISE)可以顺时针旋转90度
《opencv 图像几何变换》_第15张图片
透视变换:使用cv.getPerspectiveTransform(src,dst)得到透视矩阵,其中src是一个二维矩阵,dst也是一个二维矩阵,然后把得到的透视矩阵应用于cv.warpPerspective(img,M,dsize)上,其中dsize是图片的大小,这里先得到H,W,c=img.shape,然后dsize可以写成(W,H)。
《opencv 图像几何变换》_第16张图片
《opencv 图像几何变换》_第17张图片
《opencv 图像几何变换》_第18张图片

你可能感兴趣的:(深度学习,python,python)