- 博客(11)
- 收藏
- 关注
原创 ORB-SLAM2从理论到代码实现(十):Bundle Ajustment(下) Jacobian矩阵推导
在上一节内容中,我们讲到使用牛顿法、高斯牛顿法、LM法进行非线性优化,在优化过程中需要计算雅可比矩阵。一、计算雅可比矩阵上面公式中表示第i个相机观测的第j个目标的像素坐标和重投影坐标之间的误差,也即是待优化的目标函数。我们知道求雅可比矩阵是函数对其中的变量进行求导,而在该目标函数中的变量是相机的位姿和目标的位置。其中的维度是2x6 维:这个推导可以由链式法则得到。的维度...
2019-02-20 21:15:09 1832 1
原创 ORB-SLAM2从理论到代码实现(九):Bundle Ajustment(上)重投影、非线性优化
本人邮箱jinbo666888@qq.com,欢迎交流!Bundle Adjustment可以翻译为光束法平差、束调整、捆集调整或者捆绑调整等等。但是我觉得还是英文来得更直观,下文统一简写为BA。它的本质是一个优化模型,其目的是最小化重投影误差。1.重投影相机在拍照时会把空间点投影到图像上,这是第一次投影。我们利用这些图像进行特征匹配,然后对匹配的特征点进行三角化,得到三维空间点位...
2018-09-17 20:01:37 2845
原创 ORB-SLAM2从理论到代码实现(八):Tracking.cc程序详解(下)
本人邮箱jinbo666888@qq.com,欢迎交流!接着讲tracking.cc。 bool Tracking::NeedNewKeyFrame()函数功能 判断是否需要生成新的关键帧,确定关键帧的标准 步骤 1. 在上一次进行重定位之后,过了20帧数据,或关键帧数小于20个,不满足不能生成 2. 在上一个关键帧插入之后,过了20帧,或局部建图是空闲状...
2018-09-16 21:12:02 2421 3
原创 ORB-SLAM2从理论到代码实现(七):Tracking.cc程序详解(中)
本人邮箱jinbo666888@qq.com,欢迎交流!这篇博客接上一篇的内容,继续看tracking线程。 void Tracking::MonocularInitialization()(StereoInitialization()由于类似,不再赘述)步骤 1. 当第一次进入该方法的时候,没有先前的帧数据,将当前帧保存为初始帧和最后一帧,并初始化一个初始化器。 2....
2018-09-14 16:40:07 2561 2
原创 Cmake学习笔记(一):认识gcc、make、cmake
本人邮箱jinbo666888@qq.com,欢迎交流。我们写的程序语言机器并不能理解,机器语言是010101这样的二进制语言,因此我们要将我们的代码编译为机器语言。编译过程分为四步:1.预处理(Preprocessing)(文件格式变化:.c—.i)预处理用于将所有的#include头文件以及宏定义替换成其真正的内容,预处理之后得到的仍然是文本文件,但文件体积会大很多。2. 编译...
2018-09-13 17:40:43 3813
原创 ORB-SLAM2从理论到代码实现(六):Tracking.cc程序详解(上)
终于写到Tracking.cc了,想想还有点小激动呢。本人邮箱jinbo666888@qq.com,欢迎交流。本系列代码注释,是在吴博注释的基础上进一步注释。1.Tracking 框架Tracking线程流程框图: 各流程对应的主要函数(来自吴博@泡泡机器人): Tracking整体流程图( 来自https://blog.csdn.net/chishuide...
2018-09-10 22:18:27 6397 3
原创 ORB-SLAM2从理论到代码实现(五):ORBmatcher.cc程序详解
本人邮箱 jinbo666888@qq.com,欢迎交流!转载请注明地址https://blog.csdn.net/qq_20123207/article/details/82502207在上篇博客中,我主要写了多视图几何中的知识。本篇博客我们一起学习ORBmatcher.CC。1.主要方法介绍SearchByProjection(Frame &F, const vector&...
2018-09-09 22:41:07 5550 2
原创 ORB-SLAM2从理论到代码实现(四):相机成像原理、基本矩阵、本质矩阵、单应矩阵、三角测量详解
本人邮箱jinbo666888@qq.com,欢迎交流。转载请注明地址https://blog.csdn.net/qq_20123207/article/details/82492632本篇我们继续上一篇博客的内容,一起学习ORBmatcher.cc。由于ORBmatcher.cc中有三角化和重投影等内容,所有我先写相机成像等多视图几何内容。1.相机的成像原理假设空间中有一点P,它在世...
2018-09-07 18:54:13 3670 1
原创 ORB-SLAM2从理论到代码实现(三):ORB特征提取和匹配理论和代码详解
欢迎交流,本人邮箱jinbo666888@qq.com我将在写Tracking.cc的博客前,先写一下ORBextractor.cc、ORBmatcher.cc和Frame.cc。三 特征提取和匹配1. 理论知识 特征点由关键点(Key-point)和描述子(Descriptor)两部分组成。ORB特征点(Oriented FAST and Rotated BRIEF)是由O...
2018-09-06 22:50:14 12883 6
原创 ORB-SLAM2从理论到代码实现(二):System.cc程序分析
上一篇博客给大家了一个很模糊的ORB-SLAM轮廓,从这一篇博客开始,我们开始一起学习具体的理论和代码解读。在我的博客里会参考一些前辈的博客内容。我会把参考的链接放到最后。二 System.cc1.代码解读System.cc是ORB-SLAM2的主程序,也是ORB-SLAM2系统的入口。本篇主要讲System.cc程序,以及其中用到的理论。还来上一篇博客中的图。...
2018-09-06 16:56:03 5062 1
原创 ORB-SLAM2从理论到代码实现(一):整体框架
本人邮箱 jinbo66888@qq.com,欢迎交流。一、总述 ORB-SLAM是由Raul Mur-Artal,J. M. M. Montiel和Juan D. Tardos在2015年提出。它是一个基于特征识别的单目slam系统,可以实时运行,适用于各种场合,室内的或者室外的,大场景或小场景。系统具有很强的鲁棒性,可以很好地处理剧烈运动图像、可以有比较大的余地自由处理闭环控...
2018-09-05 21:51:52 9580 3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人