【LDSO学习记录】

您所在的位置:网站首页 ldso 【LDSO学习记录】

【LDSO学习记录】

2024-07-12 18:28:27| 来源: 网络整理| 查看: 265

首先,论文核心部分:

在DSO的基础上,加入了回环检测和位姿图优化,即DSO+BoW+g2o。 主要了解论文第三节 III. LOOP CLOSING IN DSO

介绍DSO

DSO是一种基于关键帧的滑动窗口方法,其中维护5-7个关键帧,并且它们在当前窗口中的参数被联合优化。 W = {T1, . . . , Tm, p1, . . . , pn} 为 滑动窗口中m个关键帧的SE(3)(旋转和位移),n个point(逆深度参数化)。 图像Ti和Tj之间的最小化光度误差为: 在这里插入图片描述 其中,Npk是pk的邻域模式,a、b为仿射光照变换参数,t为曝光时间,I表示图像,wp为启发式加权因子。p’是由p在Ij上计算的重投影像素。 在这里插入图片描述 其中Π:R3→Ω为投影,Π−1:Ω×R→R3为反投影函数。R和t为由Ti和Tj计算得到的两个帧之间的相对刚体运动,d为点pk的逆深度。 当新的一帧图像到来时,DSO把滑动串口内所有活跃点投影到这一帧进行图像对齐,估计新来的帧的初始姿态(相对于某个参考帧),把新来的帧加入到滑动窗口优化,同时边缘化旧帧。

给DSO加入回环检测模块

如果给DSO添加一个全局优化。理想情况下,应该使用基于光度误差的全局束调整,这可以很好地匹配DSO的原始公式。但是这样的话所有图像都需要保存,因为光度误差是在图像上计算的。此外,目前对于DSO选择的点的数量来说,执行全局光度束调整仍然是不切实际的(效率低下)。于是作者转向位姿图优化。 几个挑战: (1)如何将全局位姿图优化结果与窗口优化结果结合起来?如何利用滑动窗口的信息进行位姿图优化? note:位姿图优化的是关键帧之间的Sim(3)几何误差,而在滑动窗口中是最小化光度误差。 (2)如何提出闭环候选?尽管主流的回环检测是基于图像特征描述符,是否应该简单地为这些特征相关的计算添加另一个线程? (3)一旦提出了闭环候选,我们需要计算它们的相对Sim(3)变换。在直接图像对齐方法中,我们需要对相对位姿设置一个初始估计,以开始高斯-牛顿或列文伯格-马夸尔特迭代,在这种情况下是具有挑战性的,因为相对运动可能会不准。 在这里插入图片描述 这是作者设计的回环检测模块。在DSO窗口旁边,添加了一个全局位姿图来维护关键帧之间的连接。DSO的滑动窗口自然形成了一个共视图,我们可以将关键帧之间的相对3D位姿变换作为成对位姿测量。对于回环检测和验证,我们依靠BoW并提出了将ORB特征与DSO的原始采样点相结合的新方法。这样,如果一个回环候选者被选出并验证,其相对于当前关键帧的Sim(3)约束就会被计算出来并添加到全局位姿图中,然后对这个图进行优化以获得更准确的长期相机位姿估计。

LDSO改变了DSO的选点策略

因为,DSO选取的像素重复性很低!不好去做回环检测。LDSO改变了DSO的选点策略。LDSO仍然选取一定数量的像素(在DSO中默认值为2000),其中一部分是角点(用Shi-Tomasi检测),而其余的则仍使用为DSO提出的方法进行选择。由于保持角点数量较少,我们计算它们的ORB描述符并将它们打包到BoW中。VO前端对相机跟踪同时使用了角点和非角点,因此将回环检测线程的特征提取的额外开销保持在了最低水平。 在这里插入图片描述 上面这幅图,想表达DSO和LDSO的像素选择的不同。左半部分(红色点)是由DSO选取的像素,右半部分(绿色点)显示了LDSO的角点(为使图像清晰,不显示非角点)。顶部是一幅纹理丰富的环境,底部是一幅纹理弱化后的环境。需要注意的是,如果角点的数量小于阈值,我们也会像DSO一样选取额外的像素(满足总点数量),从而使系统在无特征的情况下变得鲁棒。蓝色方框中的点显示了点的重复性的差异。

回环候选者的提出与验证

在我们为每个关键帧计算ORB描述符时,使用DBoW3构建了一个BoW数据库。对于当前关键帧,通过查询该数据库提出了回环候选者,并且我们只选择了那些在当前窗口之外的关键帧(即边缘化关键帧)(距离远)。对于每个候选者,我们试图将其ORB特征与当前关键帧的特征进行匹配,然后执行RANSAC PnP以计算SE(3)变换的初始位姿估计。之后,我们通过最小化3D和2D几何约束,使用Gauss-Newton方法优化Sim(3)变换。【大概意思就是,每个关键帧都提取ORB描述符,加入到词袋模型中,对于当前关键帧,去词袋模型中查询出最相似的候选帧,把候选帧的ORB特征与当前关键帧的特征进行匹配,计算这两帧之间的相对位姿】 设P = {pi}为候选者中重建的特征及其逆深度,Q = {qi}为当前关键帧中匹配的特征,D为当前关键帧的稀疏逆深度图,通过将当前窗口中活跃的地图点投影到当前关键帧上计算得出。对于Q中的某些特征,我们可以找到它们在D中的深度,对于其他特征,我们只有它们的2D像素位置。设Q1 ⊆ Q​为那些没有深度的特征和 Q2 = Q\Q1​为那些具有深度的特征,则通过最小化以下代价函数可以估计从环路候选者(参考)到当前关键帧Scr的Sim(3)变换:【没太看懂,反正就还是优化候选帧到当前帧的相对位姿】 在这里插入图片描述 其中Π(·)和Π-1(·)是之前定义的投影和反投影函数,w1和w2是权重。在实践中,尺度只能通过3D部分进行估计,但没有2D重投影误差,如果估计的深度值噪声很大,则旋转和平移估计将是不准确的。

滑动窗口和Sim(3)位姿图

这部分是融合滑动窗口和全局位姿图的估计。设x=[x_kp,x_d],其中x_kp是当前窗口中的关键帧位姿,x_d是使用逆深度d参数化的点。那么,使用Levenberg-Marquardt(L-M)迭代的窗口优化问题如下所示【Hessian矩阵H关于某个变量的梯度(即Hδx)等于-b】: 在这里插入图片描述

其中H被近似为J>WJ+λI的Hessian矩阵(Hessian矩阵用来表示函数关于其自变量的二阶偏导数),δx是最优增量(),W是权重矩阵,b=J>Wr(其中Jacobian为J,残差为r)(Jacobian矩阵是函数对于各个变量的偏导数组成的矩阵)【使用Jacobian矩阵和加权Jacobian矩阵来近似Hessian矩阵】。也可以用块矩阵形式表示: 在这里插入图片描述 H具有箭状稀疏模式(在DSO的公式中,Hdd为对角矩阵),我们可以利用右下角的稀疏性来进行稀疏束调整。DSO中的边缘化策略保持了Hdd的稀疏模式,并保持了以x为变量的二次运动先验。这个先验也可以看作是位姿图中约束所有关键帧的超边。然而,传统的位姿图优化仅考虑两个关键帧之间的成对观测,如Tij并计算测量误差:

箭状稀疏:Hessian矩阵表示的是函数对于各个变量的二阶偏导数之间的关系,因此其中的元素只在变量之间相互影响的方向上非零,而在其他方向上为零或接近零。

在这里插入图片描述 其中(ˆ·)表示某个变量的估计值。由于我们的回环方法计算的是回环候选帧和当前帧之间的相对姿态约束,因此我们还将边缘化窗口内的约束近似为成对相对姿态观测值(这是什么意思??)。具体地说,我们从前端当前的全局位姿估计中计算这些观测值。值得注意的是,我们不想干扰局部窗口优化(它包含了绝对位姿信息),因此在位姿图优化中我们将固定当前帧的位姿估计。因此,位姿图优化将倾向于修改轨迹中旧的全局位姿。此外,当前窗口中的关键帧的全局位姿在位姿图优化之后不再更新,以确保局部窗口束调整不会受到全局优化的影响。我们的实现基于g2o。

才发现!LDSO没有imu!!!没有尺度估计!!!不能用 看一下VI-DSO吧

Direct Sparse Visual-Inertial Odometry using Dynamic Marginalization

要不就是VI-DSO加回环检测,要不就是LDSO+imu,为什么不用DM-VIO呢 因为虽然他精度高但是两个因子图,开销太大。 euroc数据集下载 http://robotics.ethz.ch/~asl-datasets/ijrr_euroc_mav_dataset/machine_hall/MH_01_easy/



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭