视觉SLAM十四讲 读书编程笔记 Chapter 1&2

1.有线性方程组Ax=b,若已知A,b,需要求解x,该如何求解?这对A和b有哪些要求?

答:x=A-1b,其中A必须可逆。满足A可逆有很多充要条件,比如(1)A的行列式不等于零;(2)行向量或者列向量线性无关(行满秩矩阵或列满秩矩阵);

2.单目SLAM有哪些特性?

答:单目SLAM估计的轨迹和地图将与真实的轨迹和地图相差一个因子,具有尺度不确定性。

3.双目相机有哪些特性?

答:双目相机由两个单目相机组成,这两个相机之间的距离称为基线是已知的;
类似于人眼的工作原理,通过两个相机的视差获得深度信息;
基线距离越大,能够测量到的就越远;
配置与标定均较为复杂,深度量程和精度受双目的基线与分辨率所限;
视差的计算非常消耗计算资源,需要使用GPU和FPGA加速才能实现实时性。

4.整体视觉SLAM流程图

在这里插入图片描述
传感器数据:在视觉SLAM中主要为相机的图像数据,在机器人中可能还会有码盘、惯性传感器等读取到的数据
前端:实时估算相邻时刻的位姿变化,粗略构建局部地图
后端:接受不同时刻前端测量的位姿,再加上回环检测的信息,对它们综合考虑进行优化,得到全局一致的轨迹和地图
回环检测:判断机器人是否到达过先前的位置
建图:根据估计的轨迹,建立与任务要求对应的地图

5.视觉SLAM流程图的一些理解

(1)只利用前端数据将会产生漂移,导致无法建立全局一致的地图。为了解决漂移问题,引入了后端和回环检测。回环检测负责把“机器人回到原始位置”的事情检测出来,后端优化根据这个信息,校正整个轨迹的形状。
(2)后端优化主要指处理SLAM过程中噪声的问题。
(3)在视觉SLAM中,前端和计算机视觉研究领域更为相关,比如图像的特征提取与匹配等,后端则主要是滤波与非线性优化算法。
(4)SLAM问题的本质:对运动主体自身和周围环境空间不确定性的估计。
(5)视觉回环检测实质上是一种计算图像数据相似性的算法。
(6)建立地图有两种形式:度量地图和拓扑地图。度量地图强调精确地表示地图中物体的位置关系,通常用稀疏和稠密对其分类;拓扑地图强调地图元素之间的关系,拓扑地图是一个Graph,由节点和边组成。

6.SLAM问题的数学表达

将机器人运动过程的时间离散化,离散时刻表示为t=1,…,K
用x表示机器人自身的位置,各个时刻的位置表示为x1,…,xK
假设地图是由多个路标组成,设一共有N个,表示为y1,…,yN

运动方程:xk=f(xk-1,uk,wk)
其中,uk是k时刻的运动传感器读数,wk为噪声,将上一个时刻k-1的机器人位置xk-1和当前时刻k的传感器读数uk(存在噪声wk)输入到函数f()中,就可以计算出当前时刻机器人的位置xk运动方程的本质就是通过上一个时刻的位置和当前时刻的传感器数据计算当前位置。由于运动传感器多种多样,所以这里的f()表示的是一种通用函数。
观测方程:zk,j=h(yj,xk,vk,j)
当机器人在xk位置上看到某个路标点yj,产生一个观测数据zk,j,用一个抽象的函数h()来描述它,其中vk,j为噪声。
这两个方程描述了最基本的SLAM问题:当知道运动测量的读数u,以及传感器的读数z时,如何求解定位问题(估计x)和建图问题(估计y)

7.g++命令怎样填写参数可以更改生成的程序文件名?

答:

g++ cpp文件名 -o 可执行文件名

8.Kdevelop断点调试

在断点处,可以用单步运行(F10),单步跟进(F11),单步跳出(F12)功能控制程序的运行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值