自动驾驶感知算法面经(20+)

原文链接: https://zhuanlan.zhihu.com/p/656952371

本人2022年4月和2023年7月两次跳槽找工作,面经总结在这里,希望可以帮到需要的朋友。

项目相关的问题主要和经历有关,参考性不大。

2023年7月

1. 文远知行

  • 自动标注算法岗位

  • 项目经历问的不深

  • coding两道题。

  • leetcode 55 跳跃游戏

  • NMS python

2. 易控智驾

面试体验较差,不说了。

3. 斑马

  • coding:买卖股票基础版

  • 工作时间早十点,晚上八九点

4. 蔚来

第一轮:

  • 项目问的比较细

  • 几个公开数据集的lidar区别,对点云、模型检测的影响

  • domain adaption相关的方法,如何缩放点云

  • radar检测的具体优化。pointnetpointnet++的区别

  • pnp calibration

  • 栏杆检测为什么不用网络学习?

  • BN的mean和std的dimension,有哪些可学习的参数train和test的时候怎么用

  • coding:python 计算两批shape不一样的box的IoU。不用for循环。

  • numpy的broadcast

  • 自认为有技术领先性

第二轮:

  • 问的都是些比较抽象的问题

  • 对视觉3d检测算法的了解。

  • 举例工作中遇到的困难,(技术/项目),如何解决的

  • 对之前公司的感知算法的问题,看法认识

  • 对未来自动驾驶算法的看法

  • coding:未知形式的函数f(x),零点在[-1,1], 求零点,精度要求1e-4

5. 有个机器人

  • 纯纯八股文

  • c++语言特性,构造函数,析构函数

  • batch norm是什么,原理

  • MLP是什么, 欠拟合过拟合

  • 是否了解量化剪枝

  • 目前是lidar为主,未来会加camera。

  • 主要是做小型物流机器人。

  • 在做安防机器人。

  • 感知团队5-6个人,包括深度学习,slam。

  • 上班时间10-7 。

  • 大小周 周六上班。

6. 井松智能

没问什么技术问题,主要介绍下项目

要去合肥出差

工作时间:九点半到六点半

7. 商汤

  • 智慧城市

  • 没问项目就开始coding

  • coding两道题:NMS,用pytorch手写一个transformer或者conv+bn+fc

8. 禾赛科技

第一轮:

  • 项目问的很细

  • 卡尔曼滤波Q和R怎么调

  • c++ 解释态,在哪些场景应用过

  • vector和list的差别,底层实现,各种操作复杂度

  • template是否算一种多态?如果不在.h里面定义他的函数,在.cpp里面定义会有什么问题?

  • 公司的优势:软硬件一体,易于沟通解决问题

  • 客户的不同硬件平台,不同的功能需求。

第二轮:

  • 又问了些项目相关的问题。

  • 一堆点,找最大凸包。无序的话 用什么排序?极点排序,最慢O(n^2)

第三轮:

  • 现场面试

  • 介绍下最有成就感的一个项目

  • coding:快排,时间复杂度为什么是O(NlogN)

  • c++ segment fault如何debug

  • vector 和list底层实现,基础操作复杂度

  • 问了些性格相关的问题

9. 字节aml

没有问八股,问了些大模型的较新的技术进展

llama,MAE,flamingo

transformer的encoder和decoder,position encoding,rope。

10. oppo研究院

第一轮:

  • 问了项目中涉及到检测跟踪的算法

  • 十几个人 四个方向。检测跟踪2个人,做手机相册相关算法

  • c++ vector底层实现,基本操作复杂度

  • 虚函数,设计模式有哪些,用过哪些设计模式

第二轮:

  • 介绍下某项目中对模型做了哪些优化

yolov5,v6,v7

  • clip有什么问题。为什么,适合什么场景

  • segement anything:prompt如何输入进网络

  • 认为自己擅长算法的哪些方面

  • 有些算法是外包的,准备转为自研

  • 泊车感知算法

  • 传感器:超声波传感器和鱼眼相机

  • L2行车泊车。今年年中/年末交付

  • 自动驾驶在内部相对独立。

  • 图像感知在北京。

  • 超声波传感器换了新版。输出的信息更多了,需要招人来。

  • 国资背景

  • 众包地图

  • 上半年刚进行改革。压力比较小。

  • 八小时弹性。无事不加班。

12. 商汤自动驾驶

第一轮:

  • 了解哪些目标检测算法,各自的优缺点anchor,anchor free,transformer

  • 传感器标定是怎么做的

  • domain adaption怎么做的

  • 描述两次代码重构的过程和思想

  • 描述卡尔曼滤波的过程,具体如何解决问题的

  • 后融合怎么做的,速度的gt如何得到

  • coding:dbscan

第二轮:

  • 是否了解learning的tracking

  • 是否了解sota的bev感知算法

  • 是否能接受加班

13. 理想第一轮。

  • 早九晚六/七

-- c++写的很多

  • coding;岛屿数量,延伸:如何统计不同形状的岛屿,如何对不同形状建模表示

  • 描述下dbscan过程

  • c++ 为什么要用引用传参

  • 目前lidar和融合一共20人

14. 地平线(合资)

第一轮:

  • 加班没有特别频繁。上海会新开office在虹桥/张江。

  • coding:快排

第二轮:

  • 问的c++问题相对较难:

  • 内存分配,内存池

  • 野指针,一般是什么情况下会产生,如何避免

- 智能指针,如何实现一个shared_ptr类,各个成员函数什么时候调用,成员变量什么时候更新。

  • new一个新对象时候发生了什么,如何能只创建对象不分配空间?

  • 调用一个派生类的构造函数时发生了什么?

15. 英伟达

  • 自动驾驶support岗位,每周去车上测试一次

  • 描述图像resize的过程并实现

  • c++编译出现undefined reference如何debug

  • 迁移软件时,出现找不到的binary怎么解决

  • c++多态,虚函数,构造函数可以是虚函数吗,为什么

  • 内存泄漏如何避免

  • c++模板,应用场景

  • 智能指针,shared_ptr, unique_ptr

  • 指针和引用

  • external

  • 感受野怎么算,如果有branch

  • 描述NMS过程

  • yolo和ssd的box后处理的具体过程

  • transformer的self-attention过程

  • softmax为了让输出更稳定做了什么

2022年4月

ps:以下记录的公司相关的信息已经不太可信

1. 滴滴

·第一轮:·

  • pointnet input transform,feature transform·

  • coding 834. Sum of Distances in Tree hard,dp+2dfs

  • C++ set和ordered set底层实现,insert和erase的复杂度

第二轮:

  • 英文自我介绍&几个简单的问题

  • 主要问的tracking,ukf有没有用,具体的R如何根据mean和std调整

  • coding https://www.techiedelight.com/find-triplet-with-given-sum-bst/

  • bst遍历的时间复杂度,3sum用左右指针的时间复杂度:O(N^2)

    • Time complexity of all BST Operations = O(h).
    • Here, h = Height of binary search tree

2. 轻舟智航

第一轮:

  • pointnet input transform,feature transform

  • max-pooling可以用什么替代?怎样可以降低nx1024的参数量?

  • batch norm解决了什么问题?有什么优缺点?需要学习哪些参数?还有其他什么norm?

  • L1和L2 regularization,什么作用,具体怎么实现的,什么区别,和weight decay什么关系

  • 卡尔曼滤波器,P,Q,R怎么决定K和协方差阵的?

  • 状态量在平面坐标系,观测量在极坐标系,效果不好?

  • coding 547. Number of Provinces graph dfs

  • dfs的时间复杂度:O(N^2) 因为每个节点都要去遍历他的children,相当于两层循环

  • c++:

  • vector底层实现,空间是连续的吗?vector变量存在堆上还是栈上?里面的每一个值存在堆上还是栈上?

  • unordered map和map,有序还是无序?底层实现,insert和erase的复杂度

3. ecarx亿咖通

第一轮

  • coding:DBSCAN

  • 主要业务:智能座舱+自动驾驶

  • 芯片:xinqing科技

  • 感知主要是lidar和camera

  • 去年(2021年)获得了hdmap甲级资质

第二轮:

  • radar 后融合 直接用cluster

  • 偏向于lidar和camera

  • 目前还在实现大部分功能

  • 前装,乘用车,

  • 主线:多V,多R,多lidar

  • 高速+城区,逐步release

  • 双休,九点半到八点,不打卡

  • 徐汇滨江西岸

  • 平台,系统更大,自动驾驶,芯片,智能座舱,

  • 港股上市,

  • 和tech lead面试的问题:

  • 团队的组成?二十多个人做NN模型,研究生,平均四五年以上,大感知团队:有博士,

  • zhijia,小鹏,mmt,华为,

  • 自己开发的训练模型的平台,pytorch。

  • 平时有发paper或者刷榜的计划安排吗? 会和平时的工作相结合,互相验证。

  • 比较看重员工的什么能力?技术能力,沟通。创造力。

  • 做到25年的规划。

  • 23年单V落地。

  • 主要客户:泊车,adas,吉利汽车下面的。还有一些联合开发。

4. 纵目

  • 一轮技术面:

  • 更复杂的tracking算法。

  • 传感器raw data。

  • 前融合。

  • freespace 用雷达

  • 视觉->系统供应商->雷达

  • 毫米波雷达感知七八个人,还有信号处理,一共100多人。华为,美团,江淮。

hr面试:

  • 工作时间 九点半,五点半/六点半。双休,没有打卡

  • 毫米波雷达感知七八个人

  • 同一批人做量产/预研

  • 中级/高级差不多各一半。

  • 总监 工作了十几年。比较平衡。

  • 有mentor

  • 张江

5. 采埃孚

  • ukf

  • 除了hm之外的其他匹配算法

  • 观测和预测的相似度计算

  • PQR都是怎么设置的

  • 单例模式和工厂模式的区别

6. 感铠科技

  • L2,L3,adas功能实现,主要在底特律

  • 尝试前融合,目前是用原始radar detection和vision

  • 4d radar 从硬件到软件

  • 初创公司

  • 有期权

  • 乘用车

  • 公司名字可能会改,四月份确定

  • 项目制,

  • 马上要A轮

  • 在新江湾城

7. 文远知行

第一轮:

  • 卡尔曼滤波,怎么用同一个filter同时适配车辆横穿的场景

  • 感受野计算。

  • centernet等基于center的recall不够高,有什么办法来改善

  • 做二分类,有80%的数据是标注正确的,20%是标注失败的,如何训练?

  • anchor-baseanchor-free的优劣;

  • 如果anchor-based的方法,设置很多不同的anchor,对于非正常宽高比的物体以及小目标会有改善吗,除了计算速度以外会有什么其他问题

  • c++11之后的新特性有没有用过

  • 智能指针

c 复制代码
void test (const std::vector<shared_ptr<xxx>>& aaa){

aaa[0].b += 1;

}

编译能不能通过

  • std::vector<int> generate()void generate(std::vector<int>*) 哪个效率高

一般是第二个效率高,因为函数返回值默认会赋值一份空间,除非编译器有做return value optimization

  • 单例模式的实现:static、全局变量、指针判断(默认是空,每次用的时候判断是不是空,空就创建一个)

  • coding:二叉树的直径 543

  • 上海这边一共50人,感知6~7个人

  • 大家同时做几个产品线,通用算法

  • 毫米波雷达和视觉相关都有

第二轮:

  • coding:105. 从前序与中序遍历序列构造二叉树, 7. 整数反转

  • 环卫车项目,要在广州2个月左右,目前是二三十个人,主要是基于已有的融合,tracking框架加入环卫车特有的一些规则

后面稳定下来后可以参与感知算法

8. 极氪科技

  • 面试官是radar负责人

  • 7,8点下班

  • coding:区间合并 56

  • 目前毫米波雷达只有两个人

  • 背靠吉利,在供应商面前占有强势地位,有conti的4d radar在手

  • 目前可以拿到传感器目标级和点云级的输入

  • 毫米波雷达在高速上比较重要,未来会扩展城区场景

  • 主要来自蔚来,华为

第二轮:

  • 面试官是感知负责人

  • 感知包括定位等,一共目标一百六七十,

  • 感知算法,目标检测这边目标八九十。

  • 前融合,feature级别的融合

  • 量产 要求较高

  • 最终目标是城区场景

  • 目前是装的eq5

  • 也会涉及到lidar,融合等算法

  • 九点半之前上班。

9. autox

第一轮:

-coding:number of islands

-unorder_map map区别,unique_ptr

  • int const * const x; const放在*右边,指针的指向不能改,这一行第一个const也可以放到左边,const int也不能改

    int * const y; 指向int的const指针,int值可以改,指针指向的地址不能改

    const int& i = *y; i的值不能改,read only

    int& j =*y; j是别名,可以改,改了的话y指向的变量也会改

  • 毫米波雷达感知只有美国一个人,国内十几个人在做autox自己的雷达。

  • 也会做和camera,lidar的融合

第二轮:

  • 卡尔曼滤波器,要是系统不是线性的会产生什么问题?

  • ekf是怎么解决不是线性的问题的?

-匈牙利匹配是一个全局最优的,有没有试过其他的匹配方法

  • coding:判断一个点是否在一个旋转的box内

10. pony

`第一轮:

第二轮:

  • 是否了解radar如何测角测速

  • `coding:无序数组,选三个连续子数组,每个子数组都是两个元素,求这三个子数组的和的最大值

  • 用前缀和思想+

  • 也会做和lidar,camera的融合,

  • 有不同的项目线,基本上用同样的code base,自己决定做哪个项目

  • 算法迭代需求主要来自于路测问题和evaluation结果

  • evaluation工具比较完善

11. 千挂

  • 主要在北京,一共30, 感知5-6个人,前融合

  • coding:实现shared_ptr

  • 两个bst,各选一个数,加起来等于target

12. 主线科技

第一轮:

  • 重卡,物流运输,

  • 干线物流+港口物流:L4,无安全员。

  • 北京:港口,L4前瞻调研,lidar和vision提供general感知,地图等。300人。

  • 按照博世系统来,

  • 上海:算法十个人,平均工作五年以上

  • 去年(2021年)九月份成立,主要是为了高速干线物流量产,落地,合作商用oem top2,radar后融合with lidar和vision,环境搭建,会来一位大佬,做过前后融合,目前没有人做radar,打算招7~8个人。目前是用目标级输出,未来用点云。50人->100人。算法三十人。

第二轮:

  • 先做后融合,

  • 当前是L2

  • 第三轮:

日- 常的工作的大概内容?

  • 路测数据,主导开发的原则,

  • 比较看重员工的什么能力?

  • 背景,学历,个性。

  • 主要是Apollo系统,

  • 组织架构合理,有凝聚力

  • 毫米波雷达+融合。

  • 嘉定安亭。上海汽车城大厦。九点到六点半。十一点半到一点午休。没有打卡。

13. 云骥科技

  • 第一轮coding: 54. 螺旋矩阵

  • 感知15个人,lidar,camera,radar,

  • 干线物流,城市货运,乘用出行三个场景,从城市场景开始做?

  • 做一个统一的平台,优先做robotaxi。然后做robo bus

  • 园区L4无人小巴,计划六月份在上海公共道路

  • robotaxi已经有公司在做了,和友商比较的核心竞争力是什么?域控,有自己的gpu,不用ipc

  • 团队完整,资金足够,王京傲的影响力。

  • 自驱力,自我成长,团队合作精神。

14. 禾多科技

代客泊车和自动驾驶

第二轮

有多个项目

5R + 1V

5R + 7V

5R + 7V + 3L

一个人会参与多个项目

上海这边感知4/5个人

15. appen澳鹏

第一轮:

澳洲上市的外企

主要工作:数据预处理,后处理,算法开发。

上海有两个分部:local和global。这个岗位负责global业务,准备招4~5个人

流程:本地验证,和annotator合作验证,跑过线上ab test,由engineer部署。

第二轮:

coding:两个排好序的数组,找公有元素。

Product quantization (PQ)

问了概率计算,sample数据实现。

个人的优缺点

主要客户:Google,Apple,

16. 智加

coding:number of islands

量产由其他team负责,这个team负责预研及量产。

17. 商汤

  • 点云和图片的区别

  • pointnet为什么没有用conv?

  • focal loss的参数如何调

  • 有哪些loss

  • anchor free和anchor based的区别

  • anchor-free的target assign是怎么做的,怎么解决多个目标中心点位置比较靠近的问题?

  • centernet网络输出是什么

  • 描述卡尔曼滤波器

  • 如果分类问题中几个类别有overlap怎么办,如何设计网络结构

  • 是否了解mmdetection的hook

  • 如果需要在mmdetection中加一个backbone,需要改哪些代码?

  • coding:二叉树中序遍历,不用递归

18. 禾赛科技

第一轮:

  • 数据,标注,感知,后处理,工程

  • 15个人,点云特征,十点-八点

第二轮:

  • coding:环形链表,每一个node是一个point(x,y),连起来是一个多边形,判断凸凹性

19. 均胜电子

  • 准备单独上市,去年(2021年)刚成立,准备从100人扩张到200人

  • 目前有五家公司在谈合作。

  • 先做国内再做国外

  • 算法:感知10人->20人。

  • 主要做L4 taxi,L2,L2++,芯片

  • 目前主要在高速场景

  • 老板郭济顺

  • 客户稳定,传统tier1,有积累,有资源,70%业务来自于国外

  • 第二轮:面试官以前在上汽,主要做视觉感知,七八年

  • 上海office在莘庄。莘学路。 两栋楼。

  • 有食堂。

  • 九点-五点。

相关推荐
学传打活4 天前
【边打字.边学昆仑正义文化】_进阶篇5 宇宙星系的运转(续3)
微信公众平台·1024程序员节·汉字·昆仑正义文化
学传打活9 天前
【边打字.边学昆仑正义文化】_进阶篇5 宇宙星系的运转(续1)
微信公众平台·1024程序员节·汉字·昆仑正义文化
fangzhanpeng16817 天前
快速掌握C#语言基础知识点(1.基础数据类型)
开发语言·c#·1024程序员节
无己心19 天前
面向多平台 AI 搜索引擎的适配层架构设计
前端·人工智能·搜索引擎·ai·1024程序员节
u01030552725 天前
AI驱动的安卓UI自动生成功能实现
人工智能·1024程序员节
u0103055271 个月前
长株潭智能体赋能腾讯元器链接共享
1024程序员节
云贝贝贝1 个月前
OceanBase认证体系介绍与备考指南
运维·服务器·oceanbase·1024程序员节
u0103055271 个月前
Java图像处理实战指南
人工智能·1024程序员节
u0103055271 个月前
Java AWT鼠标事件全解析
人工智能·1024程序员节
u0103055271 个月前
Java实用类应用精讲
人工智能·1024程序员节