【ORB-SLAM 论文总结】A Versatile and Accurate Monocular SLAM System

本文为原创博客,转载请注明出处:https://blog.youkuaiyun.com/q_z_r_s/article/details/101036346

机器感知
一个专注于SLAM、三维重建、机器视觉等相关技术文章分享的公众号

Abstract

ORB-SLAM是一个基于特征点法的单目SLAM

1. Introduction

BA在给定好的初始值时可以对相机进行高精度定位估计,想要实现计算复杂度不严重的实时SLAM,必须满足如下要求:

a. 场景特征的对应观测分布在所有帧的子集中,即关键帧中
b. 由于复杂度随着关键帧的数量而增加,所以必须避免不必要的冗余
c. 要有足够的视差和充足的闭环匹配
d. 对关键帧位姿和3D点初始估值进行非线性优化
e. 使用局部地图优化实现可扩展性
f. 能够快速的执行实时的全局闭环优化,即位姿图优化

ORB-SLAM主要有以下贡献
a. 统一使用ORB特征进行跟踪、建图、重定位及闭环检测
b. 通过使用共视图,将跟踪、建图在局部共视区域中完成,独立于全局地图
c. 基于位姿图优化的闭环检测,即所谓的 Essential Graph,来自于 spanning tree,即共视图中强连接的边和闭环
d. 实时相机重定位功能
e. 自动的初始化模型选择
f. 自适应的关键帧选择,自动剔除冗余帧

2. Related Wrok

2.1 Place Recognition

在大场景中,基于 appearance 的 place recognition 比基于 map-to-map 或者 image-to-image 的效果更好。词袋模型就是属于基于 appearance 的方法,比如概率方法 FAB-MAP,还有使用从BRIEF获得的二进制单词的DBoW2。为了改善 place recognizer,使用共视图进行约束闭环候选帧,而不只是单纯的选取最佳匹配帧。

2.2 Map Initialization

从两幅图中初始化的方法要么使用单应矩阵(适用于平面场景),要么使用本质矩阵(适用于非平面场景,可以使用5点法恢复,但低视差时并不适合),另外,视差充足时,也可以通过8点法恢复基础矩阵,相机位姿也可以无模糊的恢复。而作者使用的是同时计算基础矩阵和单应矩阵,根据阈值自动选择较好的模型来初始化系统。

2.3 Monocular Simultaneous Localization and Mapping

连续帧之间含有的有用信息很少,由此看来需要适当的选择frame,PTAM就是一个基于关键帧的SLAM系统,并首次将跟踪、建图分离思想引入到SLAM中。同时,为了矫正系统尺度漂移,使用 sim3 进行7自由度位姿图优化。

3. System Overview

3.1 Feature Choice

作者选择特征的出发点是统一系统建图、跟踪及场景识别所用的特征,这里使用ORB。

3.2 Three Threads: Tracking, Local Mapping, and Loop Closing

系统总共三个并行线程:跟踪、局部建图、闭环检测
在这里插入图片描述
Tracking 线程负责估计每帧相机位姿,并决定是否需要插入新的关键帧。

Local Mapping 线程处理新的关键帧,并执行 Local BA 优化,然后对新的关键帧与其共视关键帧间再找一些新的匹配点。

Loop Closing 线程检查每个关键帧是否产生了闭环,如果确定了闭环检测,然后就计算 sim3 变换,然后再进行 sim3 位姿优化来保证全局一致性。

3.3 Map Points, Keyframes, and Their Selection

地图点和关键帧的创建很普通,但是会在后续的流程中执行剔除机制,即检测冗余关键帧和误匹配点、无法跟踪的地图点,这遏制了地图的扩张,同时提高了 tracking 的鲁棒性。

3.4 Covisibility Graph and Essential Graph

该系统从初始的关键帧开始建立增量 spanning tree,由此形成 Covisibility Graph and Essential Graph。

3.5 Bags of Words Place Recognition

闭环检测

4. Automatic Map Initialization

同时计算单应矩阵和基础矩阵,使用DLT八点法,模型选择使用评分比值决定:
在这里插入图片描述
选择好模型之后,单应矩阵会分解出8个可能的结果,基础矩阵会分解出4个可能的结果,最终会得到一对 [R | t],由此可对场景点进行重建,重建之后执行全局BA优化初始化这两帧的位姿、3D点。

5. Tracking

特征提取–>帧间位姿估计(tracking失败时进行重定位)–>跟踪局部地图–添加新的关键帧,其中关键帧选择标准如下:
在这里插入图片描述

6. Local Mapping

插入新的关键帧,更新关键帧共视图、spanning tree,地图点剔除,创建新的地图点,Local BA,关键帧剔除

7. Loop Closing

闭环候选帧检测–>计算闭环帧 sim3 变换–>使用闭环 sim3 矫正当前关键帧位姿,并传播到当前帧的共视帧–>Essential Graph sim3 优化

<think>嗯,用户问的是AD软件中换层的快捷键。首先,我需要确定AD指的是哪个软件。通常,AD可能指Altium Designer,这是一款常用的电子设计自动化软件,用于电路板设计。所以用户可能是在使用Altium Designer时想要快速切换层,提高工作效率。 接下来,我需要回忆或查找Altium Designer中关于层切换的快捷键。根据之前的知识,Altium Designer中确实有一些快捷键用于切换不同的层。比如,小键盘的数字键可能对应不同的层,例如1是Top Layer,2是Mid Layer 1,依此类推。不过,不同版本可能会有些差异,所以需要确认这一点是否正确。 另外,用户可能还不太清楚如何自定义这些快捷键,或者是否有其他方式快速换层。比如,使用快捷键L调出层设置面板,或者通过Preferences设置自定义快捷键。这可能是用户潜在的需求,想要更灵活地调整快捷键以适应自己的习惯。 还要考虑用户可能的操作环境,比如是否在使用英文版软件,或者是否有安装不同版本的Altium Designer,因为不同版本快捷键可能不同。此外,用户可能对层的概念不太熟悉,比如信号层、电源层、丝印层等,是否需要简要解释这些层的用途,以帮助用户更好地理解换层的意义。 另外,是否有其他相关功能,比如切换层的同时切换走线层,或者如何在多层板中快速跳转,这些也可能是用户需要的信息。比如在布线时按数字键切换层并自动添加过孔,这样的操作是否可行,需要确认正确性。 总结一下,回答需要包括: 1. 常用默认快捷键,如小键盘数字键对应各层。 2. 如何通过快捷键L打开层设置面板。 3. 自定义快捷键的方法。 4. 可能需要注意的版本差异或操作细节。 5. 简要说明层的类型和用途,帮助用户理解为何需要换层。 需要确保信息准确,避免错误,比如Altium Designer是否真的使用小键盘数字键作为默认切换层的快捷键。可能需要查阅官方文档或可靠来源确认。此外,提醒用户如果快捷键不起作用,可能需要检查键盘设置或软件版本,确保兼容性。 最后,组织回答时要结构清晰,分点说明,便于用户理解。如果有不确定的地方,建议用户参考软件帮助文档或官方资源,以确保信息的正确性。</think>在 Altium Designer(AD)中,**换层快捷键**是提高 PCB 设计效率的重要工具。以下是常用操作说明: --- ### 一、默认快捷键 1. **小键盘数字键** - 按下数字键 **1~6** 可快速切换至对应信号层(例如:1=Top Layer,2=Mid Layer 1,依此类推)。 - **+/- 键**:切换至下一层/上一层(需开启小键盘的 Num Lock)。 2. **信号层与平面层切换** - **Shift+Ctrl+鼠标滚轮**:按住后滚动滚轮可快速切换层(需按住快捷键)。 3. **特殊层快捷键** - **L**:打开层设置面板(快速启用/禁用层显示)。 - **Ctrl+Shift+G**:切换到丝印层(Top Overlay)。 - **Ctrl+Shift+M**:切换到阻焊层(Top Solder Mask)。 --- ### 二、自定义快捷键 1. 通过 **Preferences > PCB Editor > Shortcuts** 修改快捷键。 2. 搜索功能关键词(如 `Layer Next`、`Layer Previous`)绑定自定义按键。 --- ### 三、实用技巧 1. **布线时自动换层**: 布线过程中按下对应层数字键,软件会自动添加过孔并切换至目标层。 2. **层高亮显示**: 按 **Shift+S** 进入单层模式,按层数字键可快速高亮特定层。 --- ### 四、注意事项 - 不同版本快捷键可能略有差异,建议通过 **Help > Shortcuts** 确认当前版本设置。 - 若快捷键失效,检查键盘输入法或软件冲突。 如果需要更详细的层管理(如创建/删除层),可通过 **Design > Layer Stack Manager** 操作。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值