您当前的位置: 首页 >  面试

SLAM算法实习生面试总结

发布时间:2020-06-12 07:00:00 ,浏览量:0

点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

作者:无能狂怒SLAM崔

https://zhuanlan.zhihu.com/p/76280626

本文仅做学术分享,如有侵权,请联系删除。

本人普通211研一在读(9月份开学研二),2019年1月开始接触SLAM,到昨天拿到某公司实习offer。闲话不说,大家更关心的是:

一  面试机会如何得到?

二  面试的流程?每一轮面试问题都是什么?

三  提供一些面试的经验?最好具体到每一轮?

一  面试机会如何得到?

一切的一切还要从一本书和一门课和一个论坛说起。

高翔博士的《视觉SLAM十四讲》应该是耳熟能详的SLAM入门教材了。2019年3月份,在师兄的推荐下,我开始阅读这本书,两个月左右,啃完了这本书。但这之后我并不知道应该做些什么,甚至如果不能用到实践中,我根本不知道自己学完这本书之后,到底得到了什么。

机缘巧合,我的一个同学在朋友圈发了一门课程,叫做《从零开始手写VIO》,哪里的课程我也不说,免得有做广告的嫌疑,不过用了都说好,谁学谁知道。我报了第一期,就这样开始了进阶的学习之旅。学习之旅很艰难,工程实践经验的缺少,和数学公式的推导让我非常头痛。在这段期间,我遇到过很多问题,也几度因为代码调试不出来而感到挫败,但这毕竟是学习的一部分,也是我跨过SLAM入门这个门槛的一部分。期间,我认识了几个小伙伴能够共同学习,互相讨论,鼓励彼此,一点点把作业完成,积累自己的代码和公式推导经验。

就在课程进行了一个月左右的时候,我从一个人的朋友圈里又了解到,七月份,第二届SLAM论坛会在清华举行。

报名论坛之前,我有些忐忑,因为我知道这上面讲的东西不是只有几个月基础的我能听懂的,但我来这个论坛的目的有三:第一,了解巨佬们的开发经验以及项目过程中解决问题的方法,或许在以后的研究中会受益无穷;第二,想知道自己认真学了这几个月之后,到底达到了什么程度,和大佬们还有多少差距;第三,希望能够看到和认识更多优秀的人,跟他们多交流,给自己不断向前的动力。

课程进行到一个半月,已经接近尾声,这时候距离SLAM论坛也不久了,我马上也要放暑假了。这时候我非常慌张,我迫切地感觉到自己需要一份实习,把所学转化为所用,或者说在所用中延续所学。所以我就开始了第一轮的投简历之旅。

只要用心制作一份简历,上面如实填写项目和相关学习经历,那么得到面试机会不太难。切忌写SLAM无关内容,以及胡编,以及夸大其辞,如实写就好,做了什么,会什么即可。我简历上面只写了跟SLAM相关的两部分内容,一个是跟着师兄接触过的orb_slam相关项目,另一个就是自己的课程。在课程中学到多少东西,能踏踏实实拿出一些来,说出自己的理解并能够进行公式推导以及细化,就已经很优秀了。虽然略显单薄,但并不影响面试。因为单薄归单薄,但如果这里写的每一条都能展开很多,证明了解深入。

多投递,我在实习僧,BOSS直聘上都有制作简历并投递,可以看到HR查看简历的进度,以及作出的回应。一般如果觉得还行的话,HR会在看到之后三五个工作日内邮件或者打电话过来。不过也有特殊情况,我这个就是过了十八天才联系的,因为技术那边的人出差才回来。而且正好因为我人在北京,能直接面对面交流,所以比也算比较幸运。

拿到面试机会部分结束。

二  面试的流程?每一轮都问什么?

中国人喜欢欲扬先抑,我反着来吧,先说说通过的这家,然后再说没通过的。

我这次的面试很集中,从第一天下午四点接到电话,HR跟我确认大致意向,然后问了一些技术和项目方面的基础问题,就跟我约好了晚上七点进行第二轮技术面试。大概晚上九点左右知道第二轮通过之后,就让我扫码做了一个公司的性格测评,然后通知我第三轮在第二天早上十点开始,我就坐大概一个小时的地铁去公司,到了之后就填访问表,面试表,基本信息表(预留20分钟以上时间),然后就是上楼第三轮技术面试。面试谈妥了之后,第四轮HR面,大概谈一下薪资福利,工作时长及时间,同时也确认一下我简历上的信息都没问题,剩下就是聊聊天,测试一下性格是否开朗,与人打交道是否熟练,等等一些面试常见又难回答出新意的问题,如果我觉得我的回答不错,我就把答案写在下面,其他平平常常的回答我就略去。每一轮的问题整理如下。

第一轮:HR大致确认意向(只贴比较难回答的问题)。

1.你有了解过我们公司吗?说说公司的产品,它的亮点在哪里?(还好提前了解过)

2.逆自我介绍中提到跟着师兄做了orb-slam的项目,能说说你在项目中遇到的最大困难吗?(注意这里HR只问了困难,但他根本不关心困难,而关心你如何解决的,如果你只说了困难,他还会追问如何解决,最好能说说解决的流程和方法,是面试加分项)

第二轮:技术面试(电话面试)

1.你在ORB-SLAM项目中承担的角色以及做的贡献?

2.解释一下卡尔曼滤波?(没回答太好,但回答了基于滤波和基于优化的区别以及基于优化如何做)

3.相机和陀螺仪之间的外参如何标定?

4.ORB用什么方法提取角点和描述子?

5.提取特征点的方法有几种?分别说说

6.ORB中改进的FAST角点提取策略?(这里不是问FAST9的策略,他觉得这很基础)

7.你提到了四叉树原理,讲一下大概的步骤?

8.ORB提取不到特征点的地方怎么办?

9.解释一下VINS-Mono的初始化部分以及大致框架。(这个问题我回答得很乱,因为确实没有形成体系,所以我直说了我不太懂,这也为我后面进入第三轮埋下了伏笔)

10.我没问题了,你还有什么问题吗?(我认为这个问题非常重要,重要性完全不次于技术问题,后面面经会说)

第三轮:技术面(一对一,大眼瞪小眼面试)

1."其实昨天聊了很多,你面试完回去有了解VINS-Mono的初始化流程以及框架吗?"

2."嗯,是下了点功夫,说一下VINS预积分分的推导过程吧,可以去那边写下来"

3."Marginalization的时候,信息矩阵如何维护?"(基本也是推导过程...我太难了)

4."我没什么问题了,你还有什么问题吗?"(重复问题,但还是很重要...)

第四轮:HR面试(一对一,性格测评+表达能力+是否能把复杂的问题用简单形象的语言表达出来)

1.你是做单目的哈,单目和双目有什么区别?(回答:跟我一起做个实验吧,咱们都伸出左手食指,然后闭上左眼,你坐过来我旁边,看我们能不能把食指对上。结果是真的对不上,再解释一下单目和双目的原理或者计算量区别即可)

2.说说大学的社团经历?有女朋友吗?

3.你是什么星座?(工作狂摩羯)

4.说说你人生目前为止遇到最大的一次挫折?(高考,此条回答对学霸不适用...)

5.为什么想来我们公司?你觉得最吸引你的地方是什么?(愿景,酷炫的产品等等,这个我提前查了他们家不少产品手册)

然后说说没通过的,不想看的可以直接跳到下一部分,面经。

我在之前投递简历的过程中,面试的结果都并不理想,我归结为以下几点原因:

1.没有针对自己简历中提到的算法和框架进行详细的阅读和整理,也就是准备不充分。

2.一些基础概念(如PnP/FAST角点的提取/ORB采用的算法/卡尔曼滤波/IMU和陀螺仪的参数标定,等等)只是大致明白,但不理解。

3.不够认真,对面试官的问题只听懂了浅层意思,而他真正想了解的是你对算法的深入理解程度以及你是否有宏观和微观的不同角度理解。

4.面试官问到一些问题的时候,不会就是不会,他可能只是为了测试你更偏向前端还是后端,并不是非要刁难,所以不必紧张,谁都有不会的东西。

来北京之前接到过两家电话面试。

第一家:盈迪曼德INDEMIND

问题:

1.PnP的原理是什么?它是从几D到几D的?

2.ORB-SLAM中的B是什么?如何得到的?

3.代码能力怎么样,自己写过工程吗?(工程实践能力确实很重要...可惜我也不多)

4.说说激光和视觉的区别?

5.IMU和陀螺仪的方差都怎么标定?

6.对IMU噪声有没有更好的处理办法?

7.你对滑动窗口的理解?

8.边缘化之后的矩阵变稀疏了吗?

9.你还有什么问题吗?能实习多久?

第二家:四维图新(点云方向)

问题:

1.自己实现过什么SLAM算法?说说实现的原理

2.SfM的原理和算法

3.BA的流程?

4.了解激光点云吗?激光和视觉的区别

然后给了我一套C++的笔试题,全都是链表的操作。虽然网上能查到一些,但现学确实不太来得及。不过我还是硬着头皮做完了,跑出来结果也是对的,但发给他邮件之后再问就没有消息了。

就这两家。

贴出我面试这三家的时候,查阅过的一些连接。

https://www.zhihu.com/people/xiao-ma-kai/posts
https://zhuanlan.zhihu.com/p/67790046
https://www.cnblogs.com/buxiaoyi/p/8660854.html
https://www.cnblogs.com/gaoxiang12/p/5304272.html
https://blog.csdn.net/heyijia0327/article/details/52822104
https://zhuanlan.zhihu.com/p/28489469
https://blog.csdn.net/heyijia0327/article/details/17487467
https://zhuanlan.zhihu.com/p/66540565
https://zhuanlan.zhihu.com/p/67818202

推荐阅读:

  • 专辑|相机标定

  • 专辑|3D点云

  • 专辑|SLAM

  • 专辑|深度学习与自动驾驶

  • 专辑|结构光

  • 专辑|事件相机

  • 专辑|OpenCV学习

  • 专辑|学习资源汇总

  • 专辑|招聘与项目对接

  • 专辑|读书笔记

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉、CV&深度学习、SLAM、三维重建、点云后处理、自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流等微信群,请扫描下面微信号加群,备注:”研究方向+学校/公司+昵称“,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进去相关微信群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近1000+星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

 圈里有高质量教程资料、可答疑解惑、助你高效解决问题

关注
打赏
1688896170
查看更多评论

暂无认证

  • 0浏览

    0关注

    105695博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.3958s