举个简单例子,在实际机器视觉场景中,由于安装误差,相机的光轴与被测基准平面之间往往不是严格的垂直关系。想靠机械加工去保证很高的垂直度,往往实现起来较为困难。
由于上述的垂直度误差,那么一个标准矩形的物体在图像中可能是一个梯形,甚至不是梯形(对边皆不平行)。
如下图所示:
这时候,为了能正常进行后续的图像处理及像素定位,我们需要做就需要视角矫正。需要求出当前拍摄图像与期望图像之间的变换关系(透视变换矩阵(单应矩阵)).
在OpenCV中提供了 findHomography 与 getPerspectiveTransform两个算子去求透视变换矩阵(单应矩阵)。那么,他们之间的异同点是什么?
联系:
都用于计算单应矩阵,即解一个线性方程组。由于单应矩阵有8个未知数(3*3,其中第9个数为1),所以至少需要4个点(每个点x,y,提供2个约束方程)。
区别<