当前位置:网站首页>SLAM面试总结

SLAM面试总结

2022-07-07 21:52:00 王不偏

作者:小葡萄
链接:https://zhuanlan.zhihu.com/p/68858564
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

关于面试题目我的目标公司是做自动驾驶或者机器人的公司,每个公司的面试不太一样。一种是先让你讲项目,一般在讲的时候会随时问问题,之后再是考一下基础SLAM问题和算法等。另一种是不让自己讲项目,面试官根据你的简历去不断深入发问。下面把我遇到的问题列举一下。

1、SLAM题目什么是闭环检测?常用的方法有哪些?你用的哪种方法?有没有创新?
2.解释一下Gauss-Netwon和LM算法。
3.熟悉Ceres优化库吗?说一下。
4.描述(扩展)卡尔曼滤波与粒子滤波,你自己在用卡尔曼滤波时遇到什么问题没有?
5.除了视觉传感,还用过其他传感吗?比如GPS,激光雷达。。。
6.什么是紧耦合、松耦合?优缺点。
7.你认为室内SLAM与自动驾驶SLAM有什么区别?
8.地图点的构建方法有哪些?
9.如果对于一个3D点,我们在连续帧之间形成了2D特征点之间的匹配,但是这个匹配中可能存在错误的匹配。请问你如何去构建3D点?
10.RANSAC在选择最佳模型的时候用的metric是什么?
11.除了RANSAC之外,还有什么鲁棒估计的方法?有哪几种鲁棒核函数?
12.  3D地图点是怎么存储的?表达方式?
13. 给你m相机n个点的bundle adjustment。
14. 当我们在仿真的时候,在迭代的时候,相机的位姿会很快的接近真值。而地图点却不能很快的收敛这是为什么呢?
15. LM算法里面那个  是如何变化的呢?
16. 说一下3D空间的位姿如何去表达?李群和李代数的关系。
17. 求导  (偏导R1R2/偏导R1)
18. 给你一个H高W宽的图像或者matrix,问如何去访问每一个元素,是先访问行呢?还是先访问列?提示:跟缓存还有关系~
19. 写出单目相机的投影模型,畸变模型。
20. 说一个自己熟悉的SLAM算法,Lidar/Visual slam,说优缺点。
21. 读Maplab,设计室内服务机器人地图更新的方法、流程。
22. 安装2D lidar的平台匀速旋转的时候,去激光数据畸变,写代码给两组已经匹配好的3D点,计算相对位姿变换。已知匹配的ICP问题,写代码。
23. ORB-SLAM初始化的时候为什么要同时计算H矩阵和F矩阵?
24. 说一下Dog-Leg算法什么是边缘化?
25. First Estimate Jacobian?一致性?可观性?
26. 说一下VINS-Mono的优缺点
27. 你做的工作在本质上有什么不同,贡献,创新本质上在哪里?
28. 什么是Essential,Fundamental矩阵?给定几个连续帧的带有位姿的帧,如何去测量车道线相对于世界坐标系的坐标。
29.  在给定一些有噪声的GPS信号的时候如何去精准的定位?
30. 如何标定IMU与相机之间的外参数?给你xx误差的GPS,给你xx误差的惯导你怎么得到一个cm级别的地图。
31. 计算H矩阵和F矩阵的时候有什么技巧呢?实际上在问归一化的操作。
32. 给一组点云,从中提取平面。
33. 给一张图片,知道相机与地面之间的相对关系,计算出图的俯视图。
34. 双线性差值如何去做,写公式。
35. RGB-D的SLAM和RGB的SLAM有什么区别?
36. 机器人从超市门口出发,前往3公里外的小区送货。请你设计一个定位系统,包括传感器的配置、算法的流程,用伪代码写出来。
37. 什么是ORB特征,ORB特征的旋转不变性是如何做的,BRIEF算子是怎么提取的。
38. 如果把一张图像去畸变,写公式,流程。
39. ORB-SLAM中的特征是如何提取的?如何均匀化的?

数据结构部分

40. 算法数据结构&C++ORB-SLAM的共视图是什么结构?内部如何存储的?
41. 写一个四叉树的结构
42. 不用递归遍历二叉树
43. 求最大连通域
44. 多线程的实现
45. 方式std::vector描述一下,如何动态扩展,如何shink内存
46. Eigen是行优先还是列优先
47. unorder容器与ordered容器的区别
48. 说一下Mat是如何析构的
49. 说一下智能指针,shared_ptr与unique_ptr
50. 说一下什么是虚函数
51. 普通指针如何实现一块内存只能有一个指针指向这种功能
52. C++ RTTI 是什么东西?
53. C++是如何实现多态的?
54. vector的iterator什么时候失效?
55. 重建二叉树
56. 写CmakeLists.txt,写gcc指令
57. 一个图,给出两个一对的若干节点对,求两个节点之间的通路。
58. 实现一个稀疏矩阵的数据结构,并实现稀疏矩阵的加法。
59. 棋盘格,每个格子角点上有一个灯,按一下周围四个灯就会取反。开始的时候这个棋盘格上灯状态随机,问如何操作这些按钮可以使得整个棋盘全灭。
60. 编一个二分查找
61. 给你一个数组去排序,说排序算法
62. 给你2D平面的两个线段,判断两个线段是否相交
63. 写快速排序、写反转链表
64. 给两个排序数组,升序的。一个大小为n,一个大小为m。从中找出第k小的数字。

有时间的话最好把基础的SLAM算法自己实现一遍,比如PnP、ICP、BA等;多刷基础的算法题。

原网站

版权声明
本文为[王不偏]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_50508111/article/details/125640728