前言

本文为楼主在学习SLAM过程中相关知识点总结,包含多视图几何、常见SLAM系统源码解析、相关数学知识、图像处理问题、机器视觉知识点、《十四讲》精品总结、基本库安装等系列。这些知识点帮助我在2020年秋招面试自动驾驶岗位过程中有了系统认知。2020年新冠疫情影响滞留在家,把之前学习的知识点做了系统总结,所有问题都有解答,并附有链接,希望可以帮助到之后寻找相关岗位的同学。

目录
一、多视图几何求解
二、常见SLAM系统源码解析
1、SVO
2、ORB-SLAM2
3、VINS-Mono论文以及代码详细解读
三、数学知识
四、图像处理问题
五、机器视觉知识点
六、《视觉SLAM十四讲》 精品总结
七、基本教程及库安装

————————————————

一、多视图几何求解

相似、仿射、射影变换区别
基本矩阵F、本质矩阵E、单应矩阵H
处理关键帧、李群李代数、特征点法与直接法

手推BA
RANSAC在图像匹配上应用
PnP(3D-2D)、ICP(3D-3D)
直接法与光流法

二、常见SLAM系统源码解析

1、SVO
VO:简单的视觉里程计代码注释
SVO(稀疏直接视觉里程计)论文解析
SVO中深度滤波器原理
————————————————
2、ORB-SLAM2
ROS下运行ORB-SLAM实例教程
ORB-SLAM2源码解读(1):系统入口System
(2.1):Tracking
(2.2):单目初始化、匀速运动模型跟踪、跟踪参考关键帧、跟踪局部地图
(3):LocalMapping
(4):LocalClosing

————————————————
3、VINS-Mono论文以及代码详细解读
VINS-mono 论文解读(IMU预积分+Marg边缘化)
VINS-Mono 代码详细解读——视觉跟踪 feature_tracker
VINS-Mono 代码详细解读——vins_estimator/Estimator_node.cpp
VINS-Mono 代码详细解读——基础储备:IMU预积分的残差、Jacobian和协方差 processIMU()+intergrationBase类+imu_factor.h
VINS-Mono 代码详细解读——基础储备:vins_estimator/feature_manager.cpp
VINS-Mono 代码详细解读——基础储备:外参标定 InitialEXRotation类
VINS-Mono 代码详细解读——初始化1:视觉SFM详解vins_estimator/estimator.cpp/processImage()+initialStructure()
VINS-Mono 代码详细解读——初始化2:视觉惯性松耦合初始化 vins_estimator/estimator.cpp/visualIntialAlign()
VINS-Mono 代码详细解读——基于滑动窗口的紧耦合后端非线性优化 optimization()
VINS-Mono 代码详细解读——回环检测与重定位
VINS-Mono 代码详细解读——四自由度位姿图优化
实操:用imu_utils标定IMU,之后用于kalibr中相机和IMU的联合标定
————————————————

三、数学知识

凸集、凸函数、凸优化
特征向量、特征值分解SVD
矩阵分析:求解Ax=b
卡尔曼滤波+贝叶斯滤波+粒子滤波
最大后验估计、最大似然估计、贝叶斯估计关系
最小二乘、梯度下降、牛顿与高斯-牛顿与LM关系总结

四、图像处理问题

边缘检测算子Sobel、Laplace、Canny
《OpenCV学习笔记》3.3 SIFT、SURF、ORB特征点检测与匹配
理解SIFT
理解SURF

五、机器视觉知识点

Tips
相机定标
相似、仿射、射影变换区别
读入批量图像+切割视频为规定格式的帧图像
图像去畸变矫正及双线性内插法
画SLAM的轨迹方式
文件读取Config类
Segmentation fault (core dumped)
通过solvePnP求解相机位置
用imu_utils标定IMU

六、《视觉SLAM十四讲》 精品总结

1:使用CMake和库文件
2:Eigen和Sophus
3:OpenCV 与点云图
[4:非线性优化g2o(BA基础)]
5:VO——ORB特征提取和匹配
6.1:VO—— 2D-2D对极约束求位姿R、t
6.2:VO—— 2D-2D三角化求(XYZ)
7:VO—— 3D-2D:PnP+BA
8:VO—— 3D-3D:ICP+SVD+BA
9:直接法和光流法
10.1:设计前端0.1
10.2: 基本的VO,特征提取和匹配
10 测试
10.3: 添加g2o优化位姿T
10.4: 添加局部地图
12 回环检测创建字典

七、基本教程及库安装

SLAM中常用库的CMakeList.txt写法(如何添加各种依赖库)
CMakeList.txt在大型文件应用(以前端为例)
《视觉SLAM十四讲》之开源库的安装
《视觉SLAM十四讲精品总结》KDevelop教程
g2o理解及实践代码报错解决方法
Viz教程
使用 Mathpix Snipping 和 MathType 快速输入公式

————————————————

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐