2024年SLAMer秋季招聘算法岗位试题总结

总结2024年SLAMer秋季招聘算法岗面试题。

    • 1 实习面试。
      • 禾多科技。
      • 小米。
      • Nreal。
      • 极智嘉。
    • 2 秋招面试。
      • 商汤。
      • 南测(线下)
      • 影石。
      • 零束。
      • 中移研究院(线下)

先说说我的情况,视觉slam研究方向#433;多传感器集成󿀌bg双985,SCI二区,这个项目比较水。
起初,目标瞄准算法岗󿀌结果从实习开始就没有找到󿼌秋招更是惨淡,进入面试的概率是1/10,只有一个算法岗位offer󿼌很遗憾,最后,我决定完全放弃算法。
如果有slamer正在面对春秋招聘,看到这个博客,希望能给你一点帮助。


算法岗要准备的内容包括:

  1. slam14讲基础理论#xff1a;PNP、本质矩阵、基础矩阵、单应性矩阵、Ransac、对极限制,李群李代数等。
  2. 项目细节:算法原理、流程、创新点、设备平台、校准、场景问题等。
  3. C++编程基础:三个特点:指针、引用、数据类型,在个别情况下,会询问开发过程线程、垃圾处理等。
  4. #xff1a;个人观感�大厂笔试,简单中等刷是不够的。
  5. 常用开源算法框架:视觉熟悉VINS、ORB-SLAM、GVINS,初始化、重投影、预积分要非常熟练,像ceres这样的优化库的编程过程也要熟悉。
  6. (可选)非常非常建议你在视觉方向上做一些深度学习,传统的面试方法真的不够。
  7. (可选)开发嵌入式平台。
  8. (可选)opencv图像处理。
  9. (可选)数据库。

1 实习面试。

禾多科技。

项目提问󿀌每个项目都会问,非常重视深度学习的应用。

  • 用什么提取线特征?
  • 如何构建线性特征和消失点的残差?
  • 为什么要做分割和分割的精度?
  • 有没有做过以深度学习为前端。
  • 如何做数据集,如何设计网络输入输出?
  • 测试结果测量指标󿀌如何处理误检测和漏检测?
  • 车辆前向单目,如何实现反向重定位匹配?后视、环视。
  • 如何实现从NetVLAD提取到描述子的过程?
  • 嵌入式平台有没有部署过?

C++部分。

  • const用法(主要是函数传值)
  • 指针与引用的区别(是否需要初始化)
  • vector如何分配指定的内存空间,怎么释放。
  • resize和reverse的区别。

小米。

一面。
先问项目�再写代码。

  • 线特征残差是如何构建的,消失点约束是如何构建的,几何意义。
  • 优化点线特征时,如何给出信息矩阵?
  • 如何推IMU预积分姿态?
  • 陀螺零偏随机游走,加速零偏随机游走在哪里有用?

代码手撕。
Leetcode第一题 两个数之和༈哈希手表#xff09;

二面。

  • 如何构建消失点?
  • 如何解决图像匹配错误的问题。
  • 简单说一下MSCKF的系统架构,它的滤波状态有哪些,如何处理地图点?
  • 优化和滤波的特点是什么?#xff0c;你认为哪种应用程序更好。

基础知识部分。

  • 为什么要用李群和李代数?
  • 边缘化是怎么做的?

C++部分。

  • 常量指针和指针常量。
  • 函数传参 引用࿰什么时候使用?c;指针什么时候用?
  • 虚函数的作用。

Nreal。

非常重视公式原理的考察。

  • 如何建立线特征自由度、表达方法和极限约束?
  • 如何建立消失点的约束?
  • 如何实现LBD描述子?
  • 校准(使用什么相机,校准板尺寸,校准精度重投影误差,如何评估内外校准结果)
  • 两个图像帧各有100个跟踪点 如何区分内点和外点?
  • 过滤器用VIO和GNSS#xfff0c;什么状态量,如何处理高层建筑的遮挡条件。
  • 对极约束公式。
  • BA问题求雅可比维度(6个相机的数量#xff0c;10个地图点3个数量)60*48。

编写代码(打开vs共享屏幕)
nums数组要求第k大元素(扣题,快排)

极智嘉。

这里做激光应用༌并且说不需要视觉方案,因此,视觉SLAM没有深挖。

  • 如何约束车身的前进方向?
  • 最小二乘和卡尔曼滤波器的区别,什么相似之处,优缺点。
  • 卡尔曼滤波器相邻两个时刻,如何关联多个时刻?

编程题。
给二维vector,存储平面特征坐标xy。
拟合平面直线(思路是构建Ax=b方程,#xff09编程实现￰


2 秋招面试。

商汤。

先问项目�slam14讲座,再问C++

  • 如何处理开放场景和隧道场景。
  • 如何解决隧道后轨迹跳转问题?#xff0c;如何顺利处理?
  • 卡尔曼滤波器的基本原理。
  • VINS初始化基本流程。
  • E、F、H矩阵需要几个点。
  • Ransac原理。
  • SVD分解有异性问题吗?
  • 类似于BCH。

C++

  • reverse和resize。
  • vector和list。
  • 自定义类型排序,自定义类型的要求是什么?
  • 赋值结构和复制结构。
  • static关键字修改成员变量和函数。
  • 常量的初始化,可以放在构造函数里吗?,初始化在哪里?
  • week_ptr的用途是什么?#xff0c;引用计数会增加吗?
  • 左引用和右引用。
  • 虚函数表指针在哪里,是父类子类都有还是共用?
  • 静态成员变量可以调用非静态成员函数吗?

南测(线下)

介绍项目�问slam基础󿀌场景方案设计题。

  • VINS、GVINS框架流程。
  • 你有没有学过摄影测量󿀌前方交汇。
  • 场景题:在无人机战场上观察,确定目标位置,如何设计一套方案?
  • 验收视觉方案成果#xff0c;提供哪些指标?
  • 如何看待传统测绘行业和汽车企业互联网?

影石。

项目问题󿀌没有C++和编程考试。

  • 问问项目中使用的设备类型,惯导零偏参数水平。
  • GNSS/INS滤波组合过程。
  • 如何解决抖动问题。

零束。

项目问题󿀌没有C++编程考试󿀌十分钟或二十分钟的过程非常快。

  • 卡尔曼滤波过程,为什么EKF要线性化?
  • 询问项目设备。

中移研究院(线下)

  • 视觉定位的本质是什么?
  • kalibr校准原理。
  • 车载Z轴激励不足怎么办?
  • 如果GNSS的各种方差协方差指标都很好,#xff0c;但是观测质量有问题󿀌怎么剔除。