1.概念和原理
简单来说,仿射变换,就是允许图形任意倾斜,而且允许图像在两个方向上任意伸缩的变换。
仿射变换,可以保持原来的线共点、点共线的关系不变,保持原来相互平行的线仍然平行,保持原来的中点仍然是中点,保持原来一直在直线上几段线段之间的比例关系不变。
但是,仿射变换不能保持原来的线段长度不变,也不能保持原来的夹角角度不变。
![](https://img2018.cnblogs.com/blog/1509380/201903/1509380-20190304154451260-1702929750.png)
![](https://img2018.cnblogs.com/blog/1509380/201903/1509380-20190304155128003-1924328233.png)
2.OpenCV函数调用
void warpAffine(InputArray src, OutputArray dst, InputArray M, Size dsize, int flags=INTER_LINEAR, int borderMode=BORDER_CONSTANT, const Scalar& borderValue=Scalar())
//仿射变换
void warpPerspective(InputArray src, OutputArray dst, InputArray M, Size dsize, int flags=INTER_LINEAR, int borderMode=BORDER_CONSTANT, const Scalar& borderValue=Scalar())
//透视变换