如何判断单应矩阵是否可接受?
computer-vision
opencv
5
0

使用OpenCV的findHomography函数从不同图像估计两组点之间的单应性时,即使您使用RANSAC或LMEDS,有时也会由于输入点中的离群值而导致不良单应性。

// opencv java example:
Mat H = Calib3d.findHomography( src_points, dst_points, Calib3d.RANSAC, 10 );

您如何判断所得的3x3单应矩阵是否可接受?

我已经在Stackoverflow和Google中寻找了答案,但是找不到。

我找到了这篇文章,但对我来说有点神秘:

“单应性的几何误差”

参考资料:
Stack Overflow
收藏
评论
共 1 个回答
高赞 时间 活跃

判断单应性是否可以接受的最好方法是。

1-拍摄一张图像的点,然后使用计算的单应性对其进行重新投影。

//for one 3D point, this would be the projection
px' = H * px;
py' = H * py;
pz' = H * pz;

2-计算图像中重新投影的点和实际点之间的欧式距离

再投影误差为1点。 p是投影点,q是实点。

在此处输入图片说明

3-建立一个阈值,以决定是否可以接受重投影误差。

例如,对于许多跟踪应用来说,大于一个像素的误差是不可接受的。

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号