视觉slam
文章平均质量分 83
Son_of_the_Bronx
这个作者很懒,什么都没留下…
展开
-
orbslam2代码解读(4):loopclosing回环检测线程
完结撒花!!!这一系列的记录文章,主要是把orbslam2中一些主要的函数实现过程弄清楚,并且明白整个orbslam2的运行流程。所以不会对函数中具体的代码做详细的讲解(这部分完全可以去看代码注释),而我们要做的是明白orbslam2的流程和处理思路。在学习orbslam2的时候真的学习到了很多,之前看完视觉slam14讲,里面的内容确实很多很详细可以作为一个教科书,但是更多的还是得学优秀的开源项目,这样才能对slam整个框架有更深的理解。原创 2024-06-11 19:20:35 · 867 阅读 · 0 评论 -
orbslam2代码解读(3):localmapping局部建图线程
这个localmapping局部建图线程还是比较简单的,就是处理关键帧,处理完毕就执行一个局部BA的优化。最后给回环线程留了一个队列,用于检测是否有回环。原创 2024-06-11 10:40:57 · 895 阅读 · 0 评论 -
orbslam2代码解读(2):tracking跟踪线程
单目初始化双目或rgbd初始化参考关键帧的跟踪匀速模型跟踪重定位(与回环有点像,主要是跟丢后重新找到在地图中的定位)局部地图跟踪(提高定位信息在局部的准确性)判断产生关键帧的时机其实整个函数很大,逻辑也很多,但是本质上通过一系列逻辑将上述函数组合,而实现跟踪的效果。我们学习的目的应该是聚焦在函数实现上,过度关注这些逻辑有点浪费时间,因为我认为这些逻辑可能每个人的思考都不同,在需要的时候参考参考即可。原创 2024-06-10 19:47:19 · 1082 阅读 · 0 评论 -
orbslam2代码解读(1):数据预处理过程
至此,就已经讲完了数据预处理的过程,主要的处理代码都是在Frame的构造函数当中,根据一帧图像,构建了一个Frame对象,里面存储着很多关键信息:每个金字塔图层的特征点及其对应旋转不变性的Rotated BRIEF,还对特征点进行去畸变。原创 2024-06-06 21:09:46 · 717 阅读 · 0 评论 -
slam14讲(第9,10讲 后端)
这个边缘化的概念是从概率论的角度来看的。实际上这个求解步骤就是固定ΔxpΔxp,然后求解ΔxcΔxc,最后再算出ΔxpΔxp。PxcxpPxc∣xpPxpPxcxpPxc∣xpPxp最终是求得了xcxc的条件概率分布,和xpxp的边缘分布,所以称边缘化。在消元的时候实际上是将特征点的部分信息融入了求解xcxc的过程,所以xcxc。原创 2024-05-23 20:02:14 · 1036 阅读 · 0 评论 -
slam14讲(第8讲、前端里程计)LK光流、直接法
因为第7讲大部分都是讲特征点法,通过提取orb特征点和点的描述子,来构建两帧图像之间的特征点对应关系。计算耗时。原创 2024-05-23 12:26:44 · 744 阅读 · 0 评论 -
slambook2,ch8编译问题
ubuntu18,opencv就是默认和ros一起安装的版本,opencv3.2,sophus模板类和非模板类都安装了。转载 2024-05-20 16:48:56 · 43 阅读 · 0 评论 -
slambook2,ch7编译问题
ubuntu18,opencv就是默认和ros一起安装的版本,opencv3.2,sophus模板类和非模板类都安装了。原创 2024-05-11 11:23:52 · 376 阅读 · 0 评论 -
slam14讲(第7讲、前端里程计)计算相机运动
计算相机运动计算相机运动的前提是有了匹配好的点对,这个可以通过slam14讲前面所介绍的,提取orb特征点和描述子,做特征匹配来得到(比较耗时),也可以通过后面介绍的光流法来得到匹配好的点对。计算相机运动的方法主要如下:2D-2D的求解,通常是用对极几何来求解,用于单目的场合中。3D-3D的求解,这时候就可以像点云一样去做icp求解,用于深度相机、双目的场合3D-2D的求解,就是已知一组3D点和一组2D点,通过pnp求解,用于深度相机,双目或者激光雷达相机融合的场合。2D-2D,对极几何这原创 2024-04-23 21:25:39 · 667 阅读 · 0 评论 -
slambook2,ch4编译问题
把fmt链接上就可以通过并且执行。正常cmake编译会编译报错。cmakelist修改。原创 2024-03-14 21:40:53 · 388 阅读 · 1 评论