第3章 SLAM基础理论面试题
SLAM基础理论是仿真岗面试的核心考察点,围绕滤波器、图优化、回环检测三大主线展开。你需要掌握每种方法的数学模型、适用场景、优缺点及工程落地权衡。下面先通过一张回答框架图建立全局认知。
一、三大核心问答卡片
Q1:请解释滤波器SLAM(如EKF SLAM)的原理和主要缺点
回答框架:
- 原理:状态预测(运动模型)+ 观测更新(卡尔曼增益)
- 优点:实时性强,适合小场景
- 缺点:线性化误差导致不一致,存储协方差矩阵 O(n²) 大场景不可用
示例回答:“EKF SLAM通过预测-更新循环维护均值和协方差。预测阶段利用运动模型,更新阶段用观测残差和卡尔曼增益修正状态。缺点是强非线性时线性化误差大,且协方差矩阵平方级增长,无法处理大规模环境。”
追问:“如果使用UKF代替EKF,能解决线性化问题吗?为什么?”
避坑:不要只说UKF无公式,要强调无迹变换捕捉高阶矩,但计算量更大;也不要忽略EKF在低非线性时的实用性。
Q2:图优化SLAM相比滤波器有何优势?关键步骤是什么?
回答框架:
- 优势:全局优化,处理大规模场景;利用稀疏性提高效率
- 关键步骤:构建图(节点=位姿/路标,边=约束)→ 迭代求解非线性最小二乘
示例回答:“图优化SLAM将问题建模为图,节点为位姿和路标,边为视觉/IMU约束。通过Levenberg-Marquardt优化所有节点,模型稀疏性允许使用Schur补加速。相比滤波器,它避免历史状态边缘化,可修正过去错误,精度更高。”
追问:“图优化的求解器如何选择?为什么常用g2o或ceres?”
避坑:不要忘记提及SLAM中图优化的稀疏结构,以及ISAM(增量平滑)与批处理优化的区别。
Q3:回环检测如何实现?如何避免误检测?
回答框架:
- 实现:提取图像特征(ORB)→ 词袋模型匹配 → 时间/空间一致性校验
- 防误检:几何校验(如核对基础矩阵)、时序一致性(连续帧验证)
示例回答:“通常采用DBoW2词袋模型,ORB特征描述子量化后快速检索候选帧。再用RANSAC验证几何变换,若内点足够则接受。为防止感知歧义,还会要求回环前后至少连续3帧的匹配一致,且位置漂移不能过大。”
追问:“在仿真环境中,回环检测的假阳性如何影响后续优化?如何处理?”
避坑:不要忽视回环检测算力消耗;避免只说“用几何校验”,要讲具体方法(如PnP或3D点云对齐)。
二、公司侧重点对比
| 公司/团队 | 考察重点 | 常见题型 |
|---|---|---|
| 百度Apollo | 多传感器融合SLAM,图优化与回环检测的工程实现 | 手写LM求解器伪代码;回环检测词袋阈值设定 |
| 华为车BU/自动驾驶 | 算法理论深度,对比滤波器与图优化的计算复杂度和一致性 | 推导EKF线性化过程;图优化中Hessian矩阵稀疏结构 |
| 蔚来/小鹏 | 回环检测在Lidar与视觉中的差异,仿真调试经验 | 回环检测假阳性对地图一致性的影响;仿真中如何模拟感知噪声 |
| 大疆/机器人 | 轻量化SLAM,滤波器实时性与图优化精度权衡 | 内存受限时选择滤波器还是增量优化?为什么 |
三、面试官画像
典型画像:从事SLAM/定位算法3-5年的技术骨干,熟悉ORB-SLAM、VINS-Mono、Cartographer等开源框架。他们希望应聘者不仅知道公式推导,还能讲出各方法在工程中的妥协点(如EKF线性化引起的不一致,图优化中鲁棒核函数的必要性)。
常问细节:
- “请你画一下EKF SLAM的因子图结构”——考察对概率图的理解
- “图优化中为什么用M-estimator代替最小二乘”——考察鲁棒性认知
- “你的闭环检测模块如何评价好坏?在仿真中用什么指标?”——考察仿真测试思维
加分项:能对比不同开源框架的实现差异,或提出自己改进过的消融实验设计。