透视变换详解

有一种与仿射变换经常混淆的变换为透视变换,透视变换需要四组点对才能确定变换矩阵,由于仿射变换保持“平直性”与“平行性”,因此只需要三组点对,而透视变换没有这种约束,故需要四组点对
warpPerspective函数主要作用:对图像进行透视变换,就是变形

void warpPerspective(InputArray src, OutputArray dst, InputArray M, Size dsize, 
int flags=INTER_LINEAR, int borderMode=BORDER_CONSTANT,
 const Scalar& borderValue=Scalar())
InputArray src:输入的图像

OutputArray dst:输出的图像

InputArray M:透视变换的矩阵

Size dsize:输出图像的大小

int flags=INTER_LINEAR:输出图像的插值方法,

int borderMode=BORDER_CONSTANT:图像边界的处理方式

const Scalar& borderValue=Scalar():边界的颜色设置,一般默认是0

getPerspectiveTransform函数

函数作用:根据输入和输出点获得图像透视变换的矩阵

Mat getPerspectiveTransform(InputArray src, InputArray dst)

InputArray src, InputArray dst:分别为变换的输入和输出点,四个点

猜你喜欢

转载自blog.csdn.net/weixin_43491924/article/details/88322062