SLAM
文章平均质量分 83
Unknown To Known
这个作者很懒,什么都没留下…
展开
-
第三讲,实践编程 Eigen
Eigen是一个 C++ 开源线性代数库。它提供了快速的有关矩阵的线性代数运算,还包括解方程等功能。许多上层的软件库也使用 Eigen 进行矩阵运算,包括 g2o、Sophus 等。 相比于其他库,Eigen 特殊之处在于,它是一个纯用头文件搭建起来的库。这意味着你只能找到它的头文件,而没有.so 或.a 那样的二进制文件。我们在使用时,只需引入 Eigen 的头文件即可,不需要链接它的库文件(因为它没有库文件)。原创 2023-08-29 15:08:42 · 137 阅读 · 0 评论 -
第三讲,旋转向量和欧拉角
三维旋转是一个三维流形,想要无奇异性地表达它,用三个量是不够的。我们用复数集 C 表示复平面上的向量,而复数的乘法则 能表示复平面上的旋转:例如,乘上复数 i 相当于逆时针把一个复向量旋转 90 度。类似 的,在表达三维空间旋转时,也有一种类似于复数的代数:四元数(Quaternion)。 欧拉角的一个重大缺点是会碰到著名的万向锁问题:在俯仰角为 ±90◦ 时,第一次旋转与第三次旋转将使用同一个轴,使得系统丢失了一个自由度(由三次 旋转变成了两次旋转)。反之,若它的实部为 0,称之为虚四元数。原创 2023-08-28 16:06:05 · 1753 阅读 · 0 评论 -
第三讲,三维空间刚体运动
这个矩阵由两组基之间的内积组成,刻 画了旋转前后同一个向量的坐标变换关系。只要旋转是一样的,那么这个矩阵也是一样的。可以说,矩阵 R 描述了旋转本身。因此它又称为。原创 2023-08-27 17:05:12 · 264 阅读 · 0 评论 -
Slam十四讲之第一讲和第二讲,实践编程基础
顺便说明一下,这里标的是AMD64,但是也支持EM64T架构,所以无论你的电脑是AMD处理器还是Intel处理器,都可以使用。两种,静态库以 .a 作为后缀名,共享库以 .so 结尾。cmake . 的时候生成许多中间文件,这样把CMakeLIsts.txt和main.cpp和中间文件放在一起,非常影响,最常规的做法是,cmake生成这些的中间文件单独放到一个build文件夹中。最重要的CD的配置,选择新CD/DVD(SATA),在左侧选择“使用ISO镜像文件”,并填入刚才下好的镜像文件路径,原创 2023-07-13 16:23:42 · 194 阅读 · 0 评论 -
Slam十四讲之第一讲和第二讲 初识SLAM
我们知道,每次 估计都带有一定的误差,而由于里程计的工作方式,先前时刻的误差将会传递到下一时刻, 导致经过一段时间之后,估计的轨迹将不再准确。它的实现手段有很多。拓扑地图是一个 图(Graph),由节点和边组成,只考虑节点间的连通性,例如 A,B 点是连通的,而不考 虑如何从 A 点到达 B 点的过程。SLAM 叫它为里程计是因为它和实际的里程计一样,只计算相邻时刻的运动,而和再往前的 过去的信息没有关联,在这一点上,VO 就像一种只有很短时间记忆的物种一样。相对的,稠密地图着重于建模所有看到的东西。原创 2023-06-13 09:25:45 · 1870 阅读 · 0 评论