我使用2种不同的方法渲染图像(作为opencv矩阵):
使用相机内在函数的实现投影函数(焦距,主点;失真被禁用) - 此函数在其他软件包中使用,应该可以正常工作(repository)
2D到2D图像变形(这里,我确定我的相机的角落光线与我的2D图像的交叉点,应该翘曲到我的相机框架中);这个角点的反投影使用与上面相同的相机模型
现在,我覆盖这两个图像,基本上应该发生的是投影笔尖(方法1)应该与在扭曲图像上绘制的线对齐(方法2)。但是,这种情况并没有发生。
根据正在书写的笔的方向,两个方向都有微小的偏移,当我移动相机的主要点时,它会减小。现在我的问题是,因为我没有考虑2D-2D图像变形的主要观点,这可能是导致不匹配的原因吗?或者通常不可能将这两者对齐,因为图像变形是投影过程的简化?
灰点:投影原点(应与白色区域的边缘对齐)
Blue Reticle:应该“写”波尔多色线的笔尖
灰线:笔近似
红色边缘:白色图像部分的“x轴”
绿色边缘:白色图像部分的“y轴”
编辑:
我也用坐标系的原点进行了相同的投影,这里,不匹配增加,原点越远离图像中心。 (所以delta[warp,project]
在图像边框上比中心更大)