仿射变换(3):一般的仿射变换
一、介绍一般的仿射变换是下面五种变换的组合:旋转,平移,缩放,错切,翻转。 仿射变换能够保持图像的平直性和平行性。平直性是指:图像经过仿射变换后,直线仍然是直线。平行性是指:图像经过仿射变换后,平行线仍然是平行线。
二、实现opencv提供了cv2.getAffineTransform()来生成仿射变换所使用的矩阵M。
步骤一:通过cv2.getAffineTransform()来生成仿射变换所使用的矩阵M。
M = cv2.getAffineTransform(src, dst)
src为输入图像中的三个点,分别是图像的左上角、右上角、左下角。 dst分别为生成的图像对应的三个点的位置。
步骤二:通过cv2.warpAffine()函数进行仿射变换。
三、代码
例:
(0,0)点 转换后变到位置(0, height*0.5) ,即左上角的点变到左边中间的地方。 (width-1, 0) 变到位置(width*0.85, height*0.1) , 即右上角的点变到考里一点。
结果:
|