
上篇聊完全栈系统工程师面试之后,有读者说"全栈岗啥都考但每个都不深,有没有偏深一点的导航方向?"还真有。大疆的导航算法工程师面试跟前面第4篇聊的自动驾驶规划算法有些重叠,但侧重点不一样——自动驾驶规划偏的是车辆场景下的轨迹生成和决策,导航算法偏的是通用移动机器人场景下的全局导航链路,包括建图、定位、全局路径规划和局部避障。大疆的地面机器人产品(比如RoboMaster S1和即将推出的更多地面平台)需要完整的导航能力,所以这个岗位的面试覆盖面很广。这篇围绕多传感器建图、动态避障和多层建筑导航三个方向展开。多传感器地图构建:不是只有激光SLAM导航的前提是有一张可用的地图。大疆面试里建图相关的问题考得很细。面试官问:"激光SLAM和视觉SLAM各有什么优劣?什么场景下选哪个?"激光SLAM(比如Cartographer、LOAM系列)直接输出三维点云地图或者栅格地图,精度高、不受光照影响,在室内外都能工作。但激光雷达成本高、重量大,在长走廊和开阔地带容易退化(几何特征不够丰富导致匹配失败)。视觉SLAM(比如ORB-SLAM3、VINS-Mono)用摄像头就行,成本低、体积小,还能提供丰富的纹理信息用于场景识别。但视觉SLAM对光照变化敏感,暗光和强光场景下特征提取困难,而且单目视觉SLAM无法恢复绝对尺度。大疆的产品策略是多传感器融合建图——激光雷达做几何骨架,摄像头补纹理和语义,IMU提供运动约束。Cartographer