pnp算法

pnp算法是解决什么问题的?

PnP(Perspective-n-Point)是求解 3D 到 2D 点对运动的方法。它描述了当我们知道
n 个 3D 空间点以及它们的投影位置时,如何估计相机所在的位姿。2D-2D点对,就用对极几何方法求解相机姿态;3D-3D 就是ICP。当orb重定位时候,就是pnp算姿态,用的是EPNP方法。

pnp算法都有哪些方法,各有什么优劣?

pnp最少需要3对点就可以计算出结果。

例如用三对点估计位姿的 P3P[45],直接线性变换(DLT),EPnP(Efficient PnP) [46], UPnP[47] 等等)。此外,还能用非线性优化的方式,构建最
小二乘问题并迭代求解,也就是万金油式的 Bundle Adjustment。

1. DLT 算法

什么是DLT直接线性变换?意思是,忽略了带求解矩阵的内在性质,单纯的看成是一个向量来求解 。例如,求解 本质矩阵以及单应矩阵。

已知一个3D-2D匹配点对,根据针孔模型,可以得到 Ax=0 A 是 2*12,x 是 [R, t] 中的 12 个元素。所以,一对点提供两个方程,一共是12个未知数,所以最少6对点。

当大于6对点时候,就变成超定方程,SVD 最小二乘解。

以上,参考 slam14。

如果内参未知,那么我们也能用 PnP 去估计 K; R; t 三个量。然而由于未知量的增多,效果会差一些。如下连接:

https://zhuanlan.zhihu.com/p/76047709

2. Epnp

单独写一篇

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值