首发于公众号:计算机视觉life 旗下知识星球「从零开始学习SLAM」 这可能是最清晰讲解g2o代码框架的文章 理解图优化,一步步带你看懂g2o框架 小白:师兄师兄,最近我在看SLAM的优化算法,有种方法叫"图优化",以前学习算法的时候还有一个优化方法叫"凸优化",这两个不是一个东西吧? 师兄:哈哈,这个问题有意思,虽然它们中文发音一样,但是意思差别大着呢!我们来看看英文表达吧,图优化的英文是 graph optimization 或者 graph-based op…
点"计算机视觉life"关注,置顶更快接收消息! 小白:师兄,g2o框架<从零开始一起学习SLAM | 理解图优化,一步步带你看懂g2o代码>,以及顶点<从零开始一起学习SLAM | 掌握g2o顶点编程套路>我都学完啦,今天给我讲讲g2o中的边吧!是不是也有什么套路? 师兄:嗯,g2o的边比顶点稍微复杂一些,不过前面你也了解了许多g2o的东西,有没有发现g2o的编程基本都是固定的格式(套路)呢? 小白:是的,我现在按照师兄说的g2o框架和顶点设计方法,再去看g2…
点"计算机视觉life"关注,置顶更快接收消息! ## 小白:师兄,上一次将的g2o框架<从零开始一起学习SLAM | 理解图优化,一步步带你看懂g2o代码>真的很清晰,我现在再去看g2o的那些优化的部分,基本都能看懂了呢! 师兄:那太好啦,以后多练习练习,加深理解 小白:嗯,我开始编程时,发现g2o的顶点和边的定义也非常复杂,光看十四讲里面,就有好几种不同的定义,完全懵圈状态...师兄,能否帮我捋捋思路啊 师兄:嗯,你说的没错,入门的时候确实感觉很乱,我最初也是花了些时间…
视觉 Vs. IMU 小白:师兄,好久没见到你了啊,我最近在看IMU(Inertial Measurement Unit,惯性导航单元)相关的东西,正好有问题求助啊 师兄:又遇到啥问题啦? 小白:是这样的,现在VIO(Visual-Inertial Odometry,视觉惯性里程计)很火,我就想试试把IMU测量的信息和图像进行简单的融合,这样利用IMU测量的先验信息,可以给图像一个比较好的初值... 师兄:嗯嗯,这个思路没问题的啊,图像信息和 IMU 确实存在一定互补性,两者各有所长,取长补短.…
自从小白向师兄学习了李群李代数和相机成像模型的基本原理后,感觉书上的内容没那么难了,公式推导也能推得动了,感觉进步神速,不过最近小白在学习对极几何,貌似又遇到了麻烦... 小白:师兄,对极几何这块你觉得重要吗?师兄:当然重要啦,这个是多视角立体视觉的核心啊 小白:那师兄一定得帮帮我讲清楚啊,最近在看书上这部分内容,感觉很难理解呢!师兄:哪里不理解?书上公式推导的挺详细了都 小白:这么说吧,公式推导我也能大概看懂,但总觉得不知道为啥这么推导,这样推导的物理意义是什么?师兄:哦哦,明白啦,就是不能转…
很多刚刚接触SLAM的小伙伴在看到李群和李代数这部分的时候,都有点蒙蒙哒,感觉突然到了另外一个世界,很多都不自觉的跳过了,但是这里必须强调一点,这部分在后续SLAM的学习中其实是非常重要的基础,不信你看看大神们的论文就知道啦. 关于李群李代数,其实高翔的<视觉SLAM十四讲>里推导什么的挺清楚了,本文就在高博的基础上用比较容易理解的语言讲述一下重点. 首先,假装(也可能是真的)自己是个小白,我们假想对面坐了一个大牛师兄,下面我们开启问答模式. 为啥需要李代数? 小白:师兄,我最近在学习SLAM…
SLAM涉及的知识面很广,我简单总结了 “SLAM知识树” 如下所示: (公众号菜单栏回复 “树” 可获得清晰版) 可以看到涉及的知识面还是比较广的.这里放出一张SLAM圈子里喜闻乐见的表达悲喜交加心情的漫画图,大家可以感受一下: 每个学SLAM的小伙伴可以说都是冒着“头顶凉凉”的巨大风险,勇气可嘉.下面结合SLAM知识树展开具体说说. 编程环境首先先说电脑环境和编程. 1.电脑环境:Linux环境,推荐Ubuntu16.04. 有人问Windows行不行?这么说吧,如果你是一位SLAM领域的大…
点击公众号"计算机视觉life"关注,置顶星标更快接收消息! 本文编程练习框架及数据获取方法见文末获取方式 菜单栏点击"知识星球"查看「从零开始学习SLAM」一起学习交流 点云滤波后为什么还需要平滑? 小白:师兄,师兄,上次你说的点云滤波我学会啦,下一步怎么把点云变成网格啊? 师兄:滤波只是第一步,在网格化前我们还需要对滤波后的点云进行平滑(smoothing) 小白:不是已经滤波了吗?怎么还要平滑啊?滤波和平滑不一样吗? 师兄:确实不太一样.我们用RGB-D,激光…
对VSLAM和三维重建感兴趣的在计算机视觉life"公众号菜单栏回复"三维视觉"进交流群. 小白:师兄,上次你讲了点云拼接后,我回去费了不少时间研究,终于得到了和你给的参考结果差不多的点云,不过,这个点云"可远观而不可近看",放大了看就只有一个个稀疏的点了.究竟它能干什么呢? 师兄:这个问题嘛...基本就和SLAM的作用一样,定位和建图 小白:定位好理解,可是师兄说建图,这么稀疏的地图有什么用呢? 师兄:地图分很多种,稀疏的,稠密的,还有半稀疏的等,你输出…
在<零基础小白,如何入门计算机视觉?>中我提到过,计算机视觉的研究目前主要分为两大方向:基于学习的方法和基于几何的方法.其中基于学习的方法最火的就是深度学习,而基于几何方法最火的就是视觉SLAM. SLAM将成为计算机视觉的下一个风口 在前几年计算机视觉的三大顶级会议(CVPR,ICCV,ECCV)上,几乎全是深度学习的研究,而这样的情况在这两年出现了新的变化:在2018年计算机视觉国际顶级会议 CVPR论文录用名单中,其中涉及SLAM/三维视觉 的工作超过 90 篇,占据了全体收录论文的近…