视觉SLAM理论入门——(8)视觉里程计之特征点法—PnP

这篇博客详细介绍了相机位姿估计中的关键算法,包括直接线性变换(DLT)、Perspective-n-Point(PnP)问题的解决方法如P3P,以及非线性最小二乘优化(BA)。DLT通过线性方程组求解,但可能不满足旋转矩阵约束;P3P利用三个点的几何关系,适合于RGB-D或双目场景;BA则通过非线性优化最小化重投影误差,适用于多点匹配的情况。这些方法在视觉里程计和SLAM中起到重要作用,但也面临噪声和误匹配的挑战。

PnP是求解 3D - 2D 点对运动的方法。它描述了当我们知道n 个 3D 空间点以及它们的投影位置时,如何估计相机所在的位姿

2D-2D的对极几何方法需要八个或八个以上的点对(以八点法为例),且存在着初始化、纯旋转和尺度的问题

然而,如果两张图像中,其中一张特征点的 3D 位置已知,那么最少只需三个点对(需要至少一个额外点验证结果)就可以估计相机运动。特征点的 3D 位置可以由三角化,或者由 RGB-D 相机的深度图确定

因此,在双目或 RGB-D 的视觉里程计中,我们可以直接使用 PnP 估计相机运动。而在单目视觉里程计中,必须先进行初始化,然后才能使用 PnP

PnP 问题有很多种求解方法,如:P3P、DLT、EPnP、UPnP等。除此以外还可以使用非线性优化方法,构建最小二乘问题并迭代求解(BA)

1、直接线性变换(DLT)

考虑某个空间点 P,它的齐次坐标为 P = (X,Y,Z,1)^T 。在图像 I_1 中,投影到特征点 x_1 = (u_1 ,v_1 ,1)^T (以归一化平面齐次坐标表示)。此时相机的位姿 R,t 是未知的。定义增广矩阵 T = [R|t] (T不是变换矩阵) 为一个 3 × 4 的矩阵,包含了旋转与平移信息,展开形式如下:

用最后一行把 s 消去,得到两个约束(因为三个约束中只有两个线性无关):

将 T 按行分解为 t_1,t_2,t_3 ,上面两个约束可以化为

假设一共有 N 个特征点,可以列出线性方程组:

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值