热搜关键词: cadence新能源汽车电机传感器

pdf

视觉SLAM十四讲从理论到实践 第2版 (高翔,张涛)

  • 1星
  • 2023-01-31
  • 78.87MB
  • 需要1积分
  • 5次下载
  • favicon收藏
  • rep举报
  • free评论
标签: SLAM

SLAM

《视觉SLAM十四讲:从理论到实践(第2版)》系统介绍了视觉  SLAM(同时定位与地图构建)所需的基本知识与核心算法,既包括数学理论基础,如三维空间的刚体运动、非线性优化,又包括计算机视觉的算法实现,例如多视图几何、回环检测等。此外,我们还提供了大量的实例代码供读者学习研究,从而更深入地掌握这些内容。

《视觉SLAM十四讲:从理论到实践(第2版)》可以作为对  SLAM  感兴趣的研究人员的入门自学材料,也可以作为  SLAM  相关的高校本科生或研究生课程教材使用。

第  1  讲  预备知识  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  1

1.1  本书讲什么.......................................................................................................  1

1.2  如何使用本书  ...................................................................................................  3

1.2.1  组织方式................................................................................................  3

1.2.2  代码.......................................................................................................  5

1.2.3  面向的读者.............................................................................................  6

1.3  风格约定..........................................................................................................  6

1.4  致谢和声明.......................................................................................................  8

第  1  部分  数学基础  10

第  2  讲  初识  SLAM.  .  .  .  .  .  .  .  .  .  .  .  .  ..  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  11

2.1  引子:小萝卜的例子  .........................................................................................  13

2.2  经典视觉  SLAM  框架  ........................................................................................  19

2.2.1  视觉里程计.............................................................................................  20

2.2.2  后端优化................................................................................................  21

2.2.3  回环检测................................................................................................  22

2.2.4  建图.......................................................................................................  23

2.3  SLAM  问题的数学表述......................................................................................  24

2.4  实践:编程基础................................................................................................  27

2.4.1  安装  Linux  操作系统................................................................................  27

2.4.2  Hello  SLAM............................................................................................  29

2.4.3  使用  cmake  .............................................................................................  30

2.4.4  使用库  ...................................................................................................  32

2.4.5  使用  IDE  ................................................................................................  35

第  3  讲  三维空间刚体运动  .  .  .  .  .  .  .  ..  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  40

3.1  旋转矩阵..........................................................................................................  42

3.1.1  点、向量和坐标系...................................................................................  42

3.1.2  坐标系间的欧氏变换  ...............................................................................  43

3.1.3  变换矩阵与齐次坐标  ...............................................................................  46

3.2  实践:Eigen......................................................................................................  47

3.3  旋转向量和欧拉角.............................................................................................  53

3.3.1  旋转向量................................................................................................  53

3.3.2  欧拉角  ...................................................................................................  54

3.4  四元数  .............................................................................................................  56

3.4.1  四元数的定义  .........................................................................................  56

3.4.2  四元数的运算  .........................................................................................  57

3.4.3  用四元数表示旋转...................................................................................  59

3.4.4  四元数到其他旋转表示的转换..................................................................  59

3.5  *  相似、仿射、射影变换....................................................................................  61

3.6  实践:Eigen  几何模块  .......................................................................................  62

3.6.1  Eigen  几何模块的数据演示.......................................................................  62

3.6.2  实际的坐标变换例子  ...............................................................................  64

3.7  可视化演示.......................................................................................................  66

3.7.1  显示运动轨迹  .........................................................................................  66

3.7.2  显示相机的位姿......................................................................................  69

第  4  讲  李群与李代数  .  .  .  .  .  .  .  .  .  .  .  ..  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  71

4.1  李群与李代数基础.............................................................................................  73

4.1.1  群..........................................................................................................  73

4.1.2  李代数的引出  .........................................................................................  74

4.1.3  李代数的定义  .........................................................................................  76

4.1.4  李代数  so(3)...........................................................................................  76

4.1.5  李代数  se(3)  ...........................................................................................  77

4.2  指数与对数映射................................................................................................  78

4.2.1  SO(3)  上的指数映射................................................................................  78

4.2.2  SE(3)  上的指数映射  ................................................................................  80

4.3  李代数求导与扰动模型......................................................................................  81

4.3.1  BCH  公式与近似形式  ..............................................................................  81

4.3.2  SO(3)  上的李代数求导.............................................................................  83

4.3.3  李代数求导.............................................................................................  84

4.3.4  扰动模型(左乘)...................................................................................  85

4.3.5  SE(3)  上的李代数求导.............................................................................  85

4.4  实践:Sophus....................................................................................................  86

4.4.1  Sophus  的基本使用方法  ...........................................................................  86

4.4.2  例子:评估轨迹的误差............................................................................  89

4.5  *  相似变换群与李代数  .......................................................................................  92

4.6  小结.................................................................................................................  93

第  5  讲  相机与图像  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  95

5.1  相机模型..........................................................................................................  97

5.1.1  针孔相机模型  .........................................................................................  97

5.1.2  畸变模型................................................................................................  100

5.1.3  双目相机模型  .........................................................................................  103

5.1.4  RGB-D  相机模型.....................................................................................  104

5.2  图像.................................................................................................................  106

5.3  实践:计算机中的图像......................................................................................  107

5.3.1  OpenCV  的基本使用方法  .........................................................................  107

5.3.2  图像去畸变.............................................................................................  112

5.4  实践:3D  视觉..................................................................................................  113

5.4.1  双目视觉................................................................................................  113

5.4.2  RGB-D  视觉  ...........................................................................................  115

第  6  讲  非线性优化  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  ..  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  119

6.1  状态估计问题  ...................................................................................................  121

6.1.1  批量状态估计与最大后验估计..................................................................  121

6.1.2  最小二乘的引出......................................................................................  123

6.1.3  例子:批量状态估计  ...............................................................................  125

6.2  非线性最小二乘................................................................................................  126

6.2.1  一阶和二阶梯度法...................................................................................  127

6.2.2  高斯牛顿法.............................................................................................  128

6.2.3  列文伯格—马夸尔特方法.........................................................................  130

6.3  实践:曲线拟合问题  .........................................................................................  132

6.3.1  手写高斯牛顿法......................................................................................  132

6.3.2  使用  Ceres  进行曲线拟合  .........................................................................  136

6.3.3  使用  g2o  进行曲线拟合............................................................................  141

6.4  小结.................................................................................................................  148

第  2  部分  实践应用  150

第  7  讲  视觉里程计  1.  .  .  .  .  .  .  .  .  .  .  .  ..  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  151

7.1  特征点法..........................................................................................................  153

7.1.1  特征点  ...................................................................................................  153

7.1.2  ORB  特征...............................................................................................  155

7.1.3  特征匹配................................................................................................  158

7.2  实践:特征提取和匹配......................................................................................  159

7.2.1  OpenCV  的  ORB  特征  ..............................................................................  159

7.2.2  手写  ORB  特征  .......................................................................................  162

7.2.3  计算相机运动  .........................................................................................  165

7.3  2D−2D:对极几何.............................................................................................  165

7.3.1  对极约束................................................................................................  165

7.3.2  本质矩阵................................................................................................  168

7.3.3  单应矩阵................................................................................................  170

7.4  实践:对极约束求解相机运动............................................................................  172

7.5  三角测量..........................................................................................................  177

7.6  实践:三角测量................................................................................................  178

7.6.1  三角测量代码  .........................................................................................  178

7.6.2  讨论.......................................................................................................  179

7.7  3D−2D:PnP.....................................................................................................  180

7.7.1  直接线性变换  .........................................................................................  180

7.7.2  P3P  ...............................................................................  182

7.7.3  最小化重投影误差求解  PnP......................................................................  184

7.8  实践:求解  PnP  ................................................................................................  188

7.8.1  使用  EPnP  求解位姿  ................................................................................  188

7.8.2  手写位姿估计  .........................................................................................  189

7.8.3  使用  g2o  进行  BA  优化  ............................................................................  191

7.9  3D−3D:ICP.....................................................................................................  196

7.9.1  SVD  方法  ...............................................................................................  196

7.9.2  非线性优化方法......................................................................................  198

7.10  实践:求解  ICP.................................................................................................  199

7.10.1  实践:SVD  方法  .....................................................................................  199

7.10.2  实践:非线性优化方法............................................................................  201

7.11  小结.................................................................................................................  203

第  8  讲  视觉里程计  2.  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  205

8.1  直接法的引出  ...................................................................................................  207

8.2  2D  光流............................................................................................................  208

8.3  实践:LK  光流  .................................................................................................  210

8.3.1  使用  LK  光流..........................................................................................  210

8.3.2  用高斯牛顿法实现光流............................................................................  211

8.3.3  光流实践小结  .........................................................................................  218

8.4  直接法  .............................................................................................................  218

8.4.1  直接法的推导  .........................................................................................  218

8.4.2  直接法的讨论  .........................................................................................  221

8.5  实践:直接法  ...................................................................................................  221

8.5.1  单层直接法.............................................................................................  221

8.5.2  多层直接法.............................................................................................  226

8.5.3  结果讨论................................................................................................  227

8.5.4  直接法优缺点总结...................................................................................  230

第  9  讲  后端  1.  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  232

9.1  概述.................................................................................................................  234

9.1.1  状态估计的概率解释  ...............................................................................  234

9.1.2  线性系统和  KF........................................................................................  236

9.1.3  非线性系统和  EKF  ..................................................................................  239

9.1.4  EKF  的讨论  ............................................................................................  241

9.2  BA  与图优化.....................................................................................................  242

9.2.1  投影模型和  BA  代价函数.........................................................................  242

9.2.2  BA  的求解..............................................................................................  243

9.2.3  稀疏性和边缘化......................................................................................  245

9.2.4  鲁棒核函数.............................................................................................  251

9.3  实践:Ceres  BA  ................................................................................................  253

9.3.1  BAL  数据集............................................................................................  253

9.3.2  Ceres  BA  的书写  .....................................................................................  253

9.4  实践:g2o  求解  BA  ...........................................................................................  257

9.5  小结.................................................................................................................  263

第  10  讲  后端  2.  .  .  .  .  ..  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  265

10.1  滑动窗口滤波和优化  .........................................................................................  266

10.1.1  实际环境下的  BA  结构  ............................................................................  266

10.1.2  滑动窗口法.............................................................................................  267

10.2  位姿图  .............................................................................................................  270

10.2.1  位姿图的意义  .........................................................................................  270

10.2.2  位姿图的优化  .........................................................................................  270

10.3  实践:位姿图优化.............................................................................................  272

10.3.1  g2o  原生位姿图.......................................................................................  272

10.3.2  李代数上的位姿图优化............................................................................  277

10.3.3  小结.......................................................................................................  282

第  11  讲  回环检测  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  283

11.1  概述.................................................................................................................  285

11.1.1  回环检测的意义......................................................................................  285

11.1.2  回环检测的方法......................................................................................  286

11.1.3  准确率和召回率......................................................................................  287

11.2  词袋模型..........................................................................................................  289

11.3  字典.................................................................................................................  291

11.3.1  字典的结构.............................................................................................  291

11.3.2  实践:创建字典......................................................................................  292

11.4  相似度计算.......................................................................................................  295

11.4.1  理论部分................................................................................................  295

11.4.2  实践:相似度的计算  ...............................................................................  296

11.5  实验分析与评述................................................................................................  300

11.5.1  增加字典规模  .........................................................................................  300

11.5.2  相似性评分的处理...................................................................................  302

11.5.3  关键帧的处理  .........................................................................................  302

11.5.4  检测之后的验证......................................................................................  303

11.5.5  与机器学习的关系...................................................................................  303

第  12  讲  建图  .  .  .  .  .  .  .  ..  .  .  .  .  .  .  .  ..  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  305

12.1  概述.................................................................................................................  306

12.2  单目稠密重建  ...................................................................................................  308

12.2.1  立体视觉................................................................................................  308

12.2.2  极线搜索与块匹配...................................................................................  309

12.2.3  高斯分布的深度滤波器............................................................................  311

12.3  实践:单目稠密重建  .........................................................................................  314

12.3.1  实验分析与讨论......................................................................................  323

12.3.2  像素梯度的问题......................................................................................  324

12.3.3  逆深度  ...................................................................................................  325

12.3.4  图像间的变换  .........................................................................................  326

12.3.5  并行化:效率的问题  ...............................................................................  327

12.3.6  其他的改进.............................................................................................  327

12.4  RGB-D  稠密建图...............................................................................................  328

12.4.1  实践:点云地图......................................................................................  328

12.4.2  从点云重建网格......................................................................................  333

12.4.3  八叉树地图.............................................................................................  336

12.4.4  实践:八叉树地图...................................................................................  338

12.5  *  TSDF  地图和  Fusion  系列.................................................................................  340

12.6  小结.................................................................................................................  343

第  13  讲  实践:设计  SLAM  系统  .  .  .  .  .  .  ..  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  345

13.1  为什么要单独列工程章节...................................................................................  346

13.2  工程框架..........................................................................................................  347

13.3  实现.................................................................................................................  349

13.3.1  实现基本数据结构...................................................................................  349

13.3.2  前端.......................................................................................................  354

13.3.3  后端.......................................................................................................  357

13.4  实验效果..........................................................................................................  361

第  14  讲  SLAM:现在与未来  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  363

14.1  当前的开源方案................................................................................................  364

14.1.1  MonoSLAM  .....................................................................................  364

14.1.2  PTAM  ....................................................................................................  365

14.1.3  ORB-SLAM  ..................................................................................  366

14.1.4  LSD-SLAM.............................................................................................  369

14.1.5  SVO.......................................................................................................  370

14.1.6  RTAB-MAP.............................................................................................  371

14.1.7  其他.......................................................................................................  372

14.2  未来的  SLAM  话题............................................................................................  372

14.2.1  视觉  +  惯性导航  SLAM............................................................................  373

14.2.2  语义  SLAM.............................................................................................  374

14.2.3  SLAM  的未来  .........................................................................................  375

附录  A  高斯分布的性质  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  377

附录  B  矩阵求导  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  380

附录  C  ROS  入门  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  382

参考文献  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  385

推荐帖子 最新更新时间:2023-03-23 18:48

微软 AI 编程工具 Copilot 转付费引争议,开源组织号召退出 GitHub
微软 GitHub AI 编程工具 Copilot 在经过了近一年的免费测试后正式上线,定价每月 10 美元或每年 100 美元,这一做法引发了不小的争议,软件自由保护协会 (SFC) 表示,它已停止使用微软的 GitHub 进行项目托管,并敦促其他软件开发商也这样做。   下面是 SFC 的声明(原文网址:https://sfconservancy.org/blog/2022/jun
dcexpert DIY/开源硬件专区
请帮忙看一下附图中 51单片机 P0口 读锁存器的工作原理
请帮忙看一下下图中 51单片机 P0口 读锁存器的工作原理,我的理解是  锁在器从内部产品线  1 线 提供 信号 经锁存器 引脚D 输入到锁存器,而后经锁存器  引脚 Q 输出  而 后到 输入 缓冲器 引脚 3 处  后由引脚 5 输出后 再回到 内部总线,  这个过程,不知道  对不对,如果是这个过程的 话,那  真是有睦诡异。   请大家帮忙  讲解一下,这个过程  
深圳小花 单片机
【学习LPC1768】之PM2.5/PM10显示
PM2.5/PM10传感器是串口接口,接口简单,通信协议处理也相对简单。协议处理如下图所示,传感器0.8~1.2s之间会主动发送7个字节数据,数据格式为:0xAA(头),PM2.5H,PM2.5L,PM10H,PM10L,checkdata,oxff(尾)。不需要主机去获取,传感器有个使能接口,高电平使能,低电平关闭。 void HLPM025K3_Init(void){
加勒比海盗 NXP MCU
收到MSP430FR2433,用Energia 1.6.10E18点灯
本帖最后由 damiaa 于 2018-1-7 12:14 编辑 Energia 1.6.10E18 是TI搞得跟Arduino一模一样的玩意。 上手极快,那就玩一下? 1,先下载:网站:http://energia.nu/,很慢,用迅雷下快点。 2,安装,后面 要在开发板--》开发板 管理器里升级一下,这样就可以看到MSP430FR2433了。 3,搞个LED灯点一下。还是拷贝例子吧
damiaa TI技术论坛
一个遇到的新问题---负离子
   前几天,公司为国内一家大公司提供负离子发生器;要求负离子发生器模块指标为;输入电压DC12V  输出大于3.5KV  浓度为;不小于800万(10CM);隔离型,按要求;公司提供的模块为;输出3.8KV  浓度为1.2K万  按说,指标优于要求;现在的问题是,模块单测是达标的,没有任何问题;但现在的问题是,用户装机后,出现了异常;“每台产品装四个模块,装前测正常,装机后,有的产品正常,有的不
czl618 电源技术
boot from H0 和 boot from flash 实际有什么区别?
本帖最后由 linnakoko 于 2015-3-16 15:25 编辑 boot from H0 和 boot from flash 实际有什么区别? 在TI的官网文档SPRA958L中《Running an Application from Internal Flash Memory on the TMS320F28xxx DSP》如下一段: 从Flash中执行程序(SPRC097)大
linnakoko DSP 与 ARM 处理器
【STM32 Necleo】STM32F091 Necleo Coremark 测试
本帖最后由 academic 于 2015-8-30 22:35 编辑 Coremark 现在经常被用来作为微控制器或者处理器性能的评判标准,代码完全用的是 C 语言,通过运算列举,矩阵,状态机以及 CRC 等来获得完成这些运算所需要的时间,最后得到一个分数。 看到网上有表示 STM32F0 的 Coremark 在 68 分,一直想亲自测试一下,看看数据是否接近,通过从 Coremark
academic stm32/stm8
msp430 br指令使用
asm("br #0x8066");               是指跳转到0x8066的地址去执行 asm("br &0x8066");等同于 m("br 0x8066");              是指跳转到以0x8066存储空间中的数据为地址去执行 在内存中(RAM)想保存运行指令就要给其赋相应的指令值,如果一个地址一个地址的赋值会使命令不正确,其实是内存不边续的问题,要想让空间边续,
Jacktang 微控制器 MCU

评论

G986
谢谢楼主的分享!
2023-02-02 13:06:09
登录/注册

意见反馈

求资源

回顶部
查找数据手册?

EEWorld Datasheet 技术支持

热门活动

相关视频

可能感兴趣器件

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2023 EEWORLD.com.cn, Inc. All rights reserved
×