Advertisement

OpenCV图像仿射与透视变换的全面解析

阅读量:

1、图像仿射变换

仿射变换是对图像进行旋转、平移以及缩放等操作的总称,其本质可以被分解为线性变换与平移变换的组合。

在OpenCv4中,并未设置专门用于图像旋转的函数,而是借助仿射变换来完成图像旋转的操作。具体步骤包括:首先明确旋转的角度及旋转中心点,随后计算出相应的旋转矩阵,最后通过仿射变换实现图像的旋转过程。其中,getRotationMatrix2D()函数用于生成旋转矩阵,而warpAffine()函数则被用来执行图像的仿射变换操作。

getRotationMatrix2D()函数原型

复制代码
    Mat cv::getRotationMatrix2D( Point2f center, double angle, double scale )
    

其中,center : 表示图像旋转操作的中心坐标点

angle : 指定图像旋转的角度数值,单位为度,正数代表逆时针方向的旋转

scale :用于定义图像在两个轴向上的比例系数,该参数可控制旋转过程中的缩放效果,若保持原尺寸则设定为1

此函数用于生成图像旋转所需的矩阵,其返回结果的数据类型为Mat类,属于一个2×3的矩阵结构(具体细节在此不作展开说明)。

在获取到旋转矩阵之后,借助warpAffine() 函数执行仿射变换操作,即可完成图像的旋转处理。

全部评论 (0)

还没有任何评论哟~