OpenCV透视变换
概念
OpenCV 透视变换是将图像从一个视平面投影到另一个视平面的过程,也叫投影映射 ,属于空间立体三维变换。它基于透视原理,通过 3×3 的变换矩阵作用于图像像素坐标来实现映射转换 ,能模拟人眼或相机镜头观看三维空间物体时的透视效果,改变图像视角和形状。常通过选择原始图像和目标图像上四个非共线对应点,用getPerspectiveTransform
函数计算变换矩阵,再用warpPerspective
函数对原图像进行变换。常用于图像校正(修正视角引起的图像扭曲)、图像合成(将不同图像合成同一视角效果)、虚拟现实与增强现实(模拟真实视角和深度感 )、目标检测与跟踪(调整视角辅助识别跟踪)、三维重建(连接二维图像与三维空间 )等场景。
工作原理
关键代码
Mat homo=findHomography(my_data.points,obj,CV_FM_RANSAC);warpPerspective(img,resImg,homo,resImg.size());