自动驾驶-机器人-slam-定位面经和面试知识系列02之高频面试题(01)

SLAM高频面试问题

这个博客系列会分为C++ STL-面经、常考公式推导和SLAM面经面试题等三个系列进行更新,基本涵盖了自己秋招历程被问过的面试内容(除了实习和学校项目相关的具体细节)。在知乎和牛客也会同步更新(牛客上某些文章上会附上内推码),全网同号(lonely-stone或者lonely_stone)。

关于高频面试题和C++ STL面经,每次我会更新10个问题左右,每次更新过多,害怕大家可能看了就只记住其中几个点。(在个人秋招面试过程中,面试到后面,发现除了个人项目和实习经历外,个人所记录的内容基本能涵盖面试官能问到的)

(另外个人才疏学浅,如果所分享知识中出现错误,请大家指出,避免误导其他人)

1. 如何对匹配好的点做进一步的处理,以保证匹配效果:确定匹配的最大距离阈值,如汉明距离要小于最小距离的两倍;(orbslam)

  • 使用KNN-matching算法,令K=2。则每个match点得到两个最接近的descripter,然后计算最接近距离和次接近距离之间的比值,当比值大于既定值时,才为最终match;
  • RANSAC(使用RANSAC找到最佳单应性矩阵。由于这个函数使用的特征点同时包含正确和错误匹配点,因此计算的单应性矩阵依赖于二次投影的准确性)

2. 图像放大两倍,内外参怎么变化?

外参和内参中的畸变参数保持不变,但内参为各自变成2倍。

3. 单应矩阵、基础矩阵、本质矩阵的定义,纯旋转的情况是怎样的

  • 本质矩阵E和基础矩阵都是在对极几何约束(描述两个视图之间的内在投影关系)中引入的,其中E和F的区别在于有无内参,这也就决定了E表达的是两个相机坐标的三维点的关系,F表达的是像素点关系。
  • 而单应矩阵H表述真实世界的一个平面与它对应图像的透视变换,除了相机获取到的图像中的点分布在同一个平面之外。当相机仅有旋转没有平移、物理世界为平面或者物理世界距离离相机足够远的情况下,均不满足E和F,应使用单应矩阵。
  • 纯旋转:在相机只有旋转没有平移的时候,此时t为0,导致无法求解R,这时可以使用单应矩阵H求旋转,但是仅有旋转的话,无法三角化求深度

4. 描述PNP

全称(Perspective-n-points,提供了一种解决方案,它是由3D-2D的位姿求解方式,即需要已知匹配的3D点和图像2D点。目前主要使用场景有两个:一是求解相机相对于某2维图像/3维物体的位姿,二是SLAM算法中估计位姿时通常需要PnP给出初始位姿。

  • 在1中:我们输入的是物体在世界坐标系下的3D点以及这些点在图像上投影的2D点,求得相机坐标系相对于世界坐标系的转换Tcw;
  • 在2中:输入上一帧的3D点,和这些点在当前帧下投影得到的2D点,所以它求的是当前帧相对于上一帧的位姿变换。

5. pnp最少需要几个点?ax=b的求解

pnp最少需要3个点,只有1个点对的自由度是4,2个点对的话,自由度是2。

ax=b求特解,再求通解,加起来

6. (个人补充)PNP(pespective-n-point)算法学习

  • 当PNP中N=1时,即只知道一对3D-2D点对的情况下:无数解
  • 当PNP中N=2时,即只知道两对3D-2D点对的情况下:无数解
  • 当PNP中N=3时,即知道三对3D-2D点对的情况下:四个解,其中一个就是要的那个解
  • 当PNP中N=4时,即知道四对3D-2D点对的情况下:先用3个点计算出4组解获得四个旋转矩阵、平移矩阵,然后将第四个点的世界坐标代入公式,获得其在图像中的四个投影(一个解对应一个投影),取出其中投影误差最小的那个解,就是我们所需要的正解。

P3P只需要3个点,

EPNP解法:

  • 利用已知的3d点,通过PCA选择4个控制点,建立新的局部坐标系,从而将3d坐标用新的控制点表示出来。
  • 然后,利用相机投影模型和2d点,转换到相机坐标系中,再在相机坐标系中建立和世界坐标系同样关系(每个点在相机坐标系和世界坐标系下控制点处的坐标一致)的4个控制点,
  • 求解出相机坐标系下的四个控制点的坐标,进而利用ICP求解pose

7. 如何处理关键帧

  • 跟踪质量/公式特征点
  • 距离关键帧的距离足够远
  • 距离上一关键帧的帧数足够多(时间)

8. 为什么要引入李群李代数

旋转矩阵自身是带有约束的正交且行列式为1,他们作为优化变量时,会引入额外的约束,届时优化变得困难,通过李群李代数的转换关系,把位姿估计变成无约束的优化问题。

9. 什么是极线约束

是指同一个点在两幅图上的映射,已知左图映射点为p1,那么右图上的p2一定在左图的极线上,这样可以减少匹配的点数量。对极约束几何意义是P,O1和O2共面,归一化坐标之间的为F,像素之间的为E本质矩阵。

10. 单目视觉slam中尺寸漂移是怎么产生的

单目相机无法根据一张图片得出物体的实际大小,同理不能得出运动的尺度大小。虽然在优化过程中有三角测量,但是三角测量中极小的误差在不断累积之后也会变得很大。

相关推荐
骑着蜗牛撵大象32715 小时前
微信远程指挥电脑:用Hermes Agent构建本地AI执行引擎实战指南
机器人·自动化·es
硅谷秋水15 小时前
RoboChallenge:具身策略的大规模真实机器人评估
计算机视觉·语言模型·机器人
Axis tech16 小时前
Haption Virtuose,为遥操作机器人提供精准力反馈
科技·机器人
一条溺水的鱼16 小时前
一次讲透 JS 闭包 —— 概念、原理、应用和内存泄漏
javascript·面试
程序员清风16 小时前
聊聊我的AI学习方法与思考!
java·后端·面试
流浪00116 小时前
Linux系统篇36——线程(一) 线程的概念、本质和Linux的实现方式
linux·面试·操作系统·线程
狂师17 小时前
2026互联网大厂秋招AI Coding笔试全攻略!
人工智能·面试·求职
星云API技术支持18 小时前
企业微信二次开发消息收发实战:单聊、群聊与事件消息如何统一处理
机器人·yapi·企业微信
河图洛水18 小时前
Behavior-1k:2026 挑战赛纯仿真 benchmark
人工智能·机器人
一颗小树x1 天前
《VLA 系列》五篇 VLA 轻量化与实时化 | 开源
机器人·实时·轻量化·vla