slam特征点深度 svd_(七)ORBSLAM特征点的三角化

本文详细介绍了ORBSLAM2如何使用线性三角化方法创建新地图点,涉及相机模型、三角化原理、线性方程组求解,以及创建新地图点的步骤,包括匹配点筛选、夹角计算和重投影误差验证等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ORBSLAM2特征点三角化简介

插入关键帧以后,我们还需要插入新的地图点。为了确保新插入的地图点是足够鲁棒的,进行严格的检查是必要的。ORBSLAM2在插入地图点的时候也十分仔细,上一讲我们提到了地图的更新策略,唯独三角化没有细讲,倒不是因为它不重要而不提,而是因为三言两语说不清楚,所以才需要单独用一讲来说说这个方法。

接下来,笔者将会从一下两个方面来介绍本讲的内容:

1. 线性三角化方法;

2. 创建新地图点的方法提纲;

线性三角化方法

同之前一样,笔者会介绍创建新地图点所必要的技术细节,然后再讲方法提纲。

在ORBSLAM2源码中,创建新的地图点采用的是线性三角化方法,当然有些点并不是用这个方法创建的,但是这一小节我们不提,留到方法提纲那一节再介绍。

OK,我们就直接进入主题吧。

ORBSLAM2采用的是针孔模型的相机,而不是鱼眼或者事件相机之类的。因此这类相机的投影模型,大家应该都是比较熟悉的。笔者就不赘述了。

假设三维空间点为 $P_{w} = [ X, Y, Z, 1 ]^{T}$,参考帧的相机位姿为 $T_{rw} = [ R_{rw} | t_{rw} ]$,表示从世界坐标系变换到参考帧坐标系,同理,当前帧的相机位姿为 $T_{cw} = [ R_{cw} | t_{cw} ]$。点 $P_{w}$ 在参考帧归一化平面里的位置为 $p_{r} = [ x_{r}/z_{r}, y_{r}/z_{r}, 1 ]^{T}$,深度为 $z_{r}$,在当前帧归一化平面里的位置为 $p_{c} = [ x_{c}/z_{c}, y_{c}/z_{c}, 1 ]^{T}$,深度为 $z_{c}$。根据位置变换关系有:

\begin{equation}

z_{r}p_{r} = T_{rw}P_{w}

\end{equation}

\begin{equation}

z_{c}p_{c} = T_{cw}P_{w}

\end{equation}<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值