SLAM
Andy是个男子名
格物致知
展开
-
《一起学习rgbdSLAM》中g2o部分报错的问题
《一起学习rgbdSLAM》中g2o部分报错的问题在高博的《一起学习rgbdSLAM》第六讲中使用到了g2o工具。但是由于版本问题,按照高博的写法来编写代码在编译过程中会报错。所以需要对该部分代码稍作修改。我使用的系统是ubuntu16.04。教程中的源代码 // 选择优化方法 typedef g2o::BlockSolver_6_3 SlamBlockSolver; ...原创 2019-05-09 23:08:27 · 2849 阅读 · 2 评论 -
ORB_SLAM2代码阅读(2)——tracking线程
ORB_SLAM2代码阅读——(2)tracking线程1、Tracking1、Tracking原创 2019-05-09 20:33:36 · 5052 阅读 · 6 评论 -
ORB_SLAM2代码阅读(5)——Bundle Adjustment
https://blog.csdn.net/lingyunxianhe/article/details/79963131原创 2019-06-12 20:29:52 · 2355 阅读 · 0 评论 -
ORB_SLAM2代码阅读(3)——LocalMapping线程
@TOC原创 2019-06-10 15:08:40 · 1855 阅读 · 0 评论 -
ORB_SLAM2代码阅读(4)——LoopClosing线程
ORB_SLAM2代码阅读(4)——LoopClosing线程1.说明2.简介3.检测回环1.说明在前几篇博客介绍完tracking和localmaping线程后,本文接着介绍闭环检测(LoopClosing)线程中的内容。该部分内容中有很多细节部分还没有弄清楚,暂时先将整体思路捋顺,更多细节内容以后再补充。2.简介LoopClosing线程整体思路比较简介清晰,主要分为三大部分:检测回环...原创 2019-06-04 21:40:23 · 3194 阅读 · 1 评论 -
g2o入门——g2o的基本使用方法
g2o全称general graph optimization,是一个用来优化非线性误差函数的c++框架。https://blog.csdn.net/lingyunxianhe/article/details/79963131https://blog.csdn.net/hzwwpgmwy/article/details/79884070https://blog.csdn.net/heyiji...原创 2019-06-22 20:54:12 · 3382 阅读 · 0 评论 -
关于位姿变换的一点体会
关于位姿变换的一点感触1.题外话2.刚体的位姿变换2.1 位姿变换的定义2.2 旋转矩阵的具体形式2.2.1 二维情况2.2.2 三维情况3.旋转方向1.题外话对于刚体的位姿变换问题,以前总觉得很简单,不就是个旋转平移嘛。可是几天手动做了的坐标变换却做了很久才做好。究其原因,还是有些问题没弄清楚。所以,今天在此写篇博客,彻底把这个过程捋一捋。2.刚体的位姿变换2.1 位姿变换的定义确实,...原创 2019-07-09 01:24:17 · 3607 阅读 · 1 评论 -
舒尔补在SLAM中的应用
舒尔补在SLAM中的应用原创 2019-07-29 10:30:32 · 3068 阅读 · 2 评论 -
最小二乘问题总结
最小二乘问题总结1.题外话2.最小二乘基础概念3.最小二乘问题的求解方法1.题外话最近在学习深蓝学院的VIO课程,最小二乘问题的求解作为基础知识,在VIO的优化过程中非常重要。因此在这里对课程内容和查阅的资料做个总结,以便能够加深对最小二乘问题的理解。2.最小二乘基础概念最小二乘法(又称最小平方法)是一种数学优化技术。它的主要思想就是求解未知参数,使得理论值与观测值之差(即误差,或者说残差...原创 2019-07-28 23:21:37 · 10988 阅读 · 1 评论 -
Ceres入门——Ceres的基本使用方法
Ceres入门——Ceres的基本使用方法1.使用流程2.实例分析2.1 构建代价函数(cost function)Ceres solver 是谷歌开发的一款用于非线性优化的库,在谷歌的开源激光雷达slam项目cartographer中被大量使用。Ceres官网上的文档非常详细地介绍了其具体使用方法,相比于另外一个在slam中被广泛使用的图优化库G2O,ceres的文档可谓相当丰富详细。本篇博客...原创 2019-05-02 19:37:22 · 13858 阅读 · 3 评论 -
我所理解的卡尔曼滤波——公式推导与应用
我所理解的卡尔曼滤波——公式推导与应用1.什么是卡尔曼滤波2.卡尔曼滤波的数学推导2.1 状态方程和测量方程2.2 卡尔曼滤波过程3 卡尔曼滤波应用1.什么是卡尔曼滤波先举个例子说一下什么是卡尔曼滤波。假如有一个小机器人可以在草地上自由的运动。为了让它实现导航,机器人需要知道自己所处的位置。那么这个小机器人如何才能知道自己在什么位置呢?有两种方式:根据起始位置及自身的运动进行运动学计算,...原创 2019-04-08 17:17:53 · 1915 阅读 · 1 评论 -
ORB_SLAM2配置过程
ORB_SLAM2配置过程本文记录了ORB_SLAM在Ubuntu16.04中的配置过程,并且包含ROS 环境下ROB_SLAM的配置。1、背景ORB-SLAM是由Raul Mur-Artal,J. M. M. Montiel和Juan D. Tardos于2015年发表在IEEE Transactions on Robotics。ORB-SLAM是一个基于特征点的实时单目SLAM系统,在大...原创 2019-05-24 10:00:35 · 36648 阅读 · 13 评论 -
(一次性搞定)ORB_SLAM2地图保存与加载
(一次性搞定)ORB_SLAM2地图保存与加载本文记录了ORB_SLAM2中地图保存与加载的过程。参考博客:https://blog.csdn.net/qq_34254510/article/details/79969046http://www.cnblogs.com/mafuqiang/p/6972841.htmlhttps://blog.csdn.net/felaim/article...原创 2019-04-04 10:51:17 · 16921 阅读 · 57 评论 -
ORB_SLAM2 定位模式
ORB_SLAM2 定位模式上一篇博客记载了ORB_SLAM2地图保存与加载的过程,本篇博客接着上一篇博客的内容记录在已拥有地图的情况下,ORB_SLAM2定位模式的如何运行。前提为了实现纯定位,需要对上一篇博客的内容进行一点小小的修改。我们需要在Map.h文件中重新定义Load()函数。即:void Load(const string &filename,SystemSettin...原创 2019-05-02 19:39:32 · 6662 阅读 · 20 评论 -
3D-2D:PnP算法原理
PnP算法原理1.问题背景—— 什么是PnP问题 ?2.PnP问题的求解方法2.1 P3P2.1.1 算法的实际理解2.1.2 算法的数学推导2.1.3 算法的缺陷2.2 直接线性变换(DLT)根据高博士的《视觉SLAM十四讲》内容和相关博客的内容,对PnP问题有了一点点新的理解。再次记录一下。参考博客:http://www.cnblogs.com/singlex/p/pose_estima...原创 2019-05-02 19:39:09 · 52949 阅读 · 18 评论 -
2D-2D:对极约束
2D-2D:对极约束1. 对极约束1.1 物理意义1.2 数学推导2 尺度不确定性3 三角测量3.1 什么是三角测量?3.2 三角测量的数学表达上一篇博客记录了3D-2D:PnP算法,本篇博客记录一下2D-2D:对极约束算法,并简单谈一下自己理解。1. 对极约束首先我们要先搞清楚对极约束是用来干什么用的,然后在来搞清楚它的原理。那么,对极约束是用来干什么用的呢?答:在已知 2D 的像素坐...原创 2019-05-02 19:38:54 · 11445 阅读 · 1 评论 -
ORB_SLAM2代码阅读(1)——系统入口
ORB_SLAM2代码阅读——(1)系统简介1、说明2、简介3、stereo_kitti.cc4、SLAM系统文件(System.cc)4.1 构造函数System()4.2 TrackStereo()合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注...原创 2019-04-23 09:12:14 · 4983 阅读 · 0 评论 -
3D-3D:ICP
3D-3D:ICP1. ICP算法2.SVD方法1. ICP算法2D-2D问题是通过已知的2D图像坐标点对来求解图像间的变换关系(即 RRR 和 ttt)。3D-2D问题是通过已知的3D空间点坐标和对应的2D像素坐标来求解图像的位姿。 所以很显然,3D-3D问题是根据已知的3D空间点对来求解图像图像间的变换关系。假设我们有一组配对好的 3D 点现在想要找到一个欧式变换RRR,ttt,使得...原创 2019-05-02 19:39:02 · 1747 阅读 · 0 评论 -
Cartographer 数据集国内地址
Cartographer 数据集国内地址2D 数据链接:https://pan.baidu.com/s/1P0JB7FpcMMR1By_7LYbleQ提取码:rlgr原创 2019-05-02 19:36:55 · 1973 阅读 · 0 评论 -
cartographer 配置过程
cartographer 配置过程1. 安装系统配置:ubuntu16.04 ROS KineticIntel® Core™ i7-9700K CPU @ 3.60GHz × 864位操作系统配置过程:执行以下命令# 安装 wstool and rosdep.sudo apt-get updatesudo apt-get install -y python-wstool ...原创 2019-05-02 19:40:25 · 1266 阅读 · 2 评论 -
ICP算法
激光SLAM中的前端配准算法1.ICP算法(迭代最近点算法)1.ICP算法的求解2.数学证明1.ICP算法(迭代最近点算法)ICP(迭代最近点算法)是一种古老而又经典的点云匹配算法,其思路也很清晰。点云配准就是求解两堆点云之间的变换关系——也就是旋转关系 RRR 和平移关系 ttt。ICP算法的思路就是:找到两组点云集合中距离最近的点对,根据估计的变换关系(RRR 和 ttt)来计算距离最近...原创 2019-08-12 00:56:20 · 14537 阅读 · 2 评论