当前位置: 华文星空 > 汽车

BEV算法的发展方向和尚待解决的问题有哪一些潜在的解决方案和论文?

2023-11-06汽车

想用一个关于我们BEV 量产落地的项目经历来回答这个问题,其中BEV 算法他当然也有他的自己不知,但是相比传统的2D 算法,轻感知,重后处理的思路,还是有着巨大的潜力的!

1: 21年的大争论

现在回看21年底组内决定做BEV障碍物的时候,应该来说是一个幸运,或者说有一点运气在里面。最开始面临的当时是大家每个人都熟悉的拍板的事情,到底是按照业界成熟的2D检测方案,或者说单目3D的的检测方案来做。还是说按照21 在自动驾驶届最火的那个Tesla Ai Day 的方案来做。争论,和彷徨应该持续了有一个月左右的时间。很幸运的是,最终我们老大直接拍板了,决定做BEV 障碍物。现在回看为什么说幸运:一个是在21年后学术届有很多优秀的BEV论文出来,一个是行车感知这块一直没有作为一个正式项目立项,给了我们足够的时间去试错,(最开始只有2-3个人来做这件事情)。如果缺少这一些因素,也许最后是做不出来的。这样可能往往一件成功的事情都伴随着一些幸运在里面吧。

2: BEV 如何做方案

在21年10份的时候,能够找到的BEV 障碍物检测的资料还是比较少的,看的最多的就是21 年Tesla AI day 上面的BEV pipeline。 我记得很清楚组内对21年的Tesla AI day 的pipeline 方案(感知部分)进行了拆解分析,最后的难点卡在了2D image Feature 到 BEV Feature 的转换上面。其实那个时候还真不知道如何和Tranformer 结合来做这个。在这里不得不感慨CV 领域的开源文化,有一天看到了 Patrick Langechuan Liu. (在这里很感谢刘兰个川博士 持续关于自动驾驶经典论文的输出Paper notes,不过近期看到 刘兰个川博士 从自动驾驶行业跳去做机器人和大模型去了。 )写的一篇文章,里面有一个图,感觉对2Dto BEV 的转换清楚了很多。如图1

图1 来自

https:// towardsdatascience.com/ monocular-bev-perception-with-transformers-in-autonomous-driving-c41e4a893944

然后我们就开始按图索骥,开始设计我们的网络,后面Detr3D DETR3D: 3D Object Detection from Multi-view Images via 3D-to-2D Queri 开源,结合Detr3D 我们的BEV 障碍物网络在nuscenes 数据集上开始收敛还不错。在验证集上跑出一个视频效果,大家都比较兴奋。那个时候我们只有2张40G的A100, 现在回想哈哈,我们真是无知者无畏。

(关注我,这里有一群奋斗在自动驾驶量产第一线的小伙伴等你加入)

3: 痛苦开始的22年

到22年的时候,我们面临的两个问题一个是自己车型的BEV训练数据如何构建,一个是如何把BEV 网络部署到车上。先说数据,这面临两个问题,一个是采集,一个是标注,还有一个是标定。采集我们搞了一台真值采集车,但是因为没有搞硬同步,导致7v(前视2V,后视1V,周视4V) 摄像头 和lidar 时间同步有问题,然后我们就搞了一套所谓的软同步的方案,只能说凑合着够用。 然后说到标注,其实在22年标注行业里面,或者说我们选到标注供应商他们是没有标注过BEV 障碍物的, 然后我们就从零开始写标注文档( 这个过程是真痛苦 ), 第一版的标注文档,加上供应商提供的标注工具,最后标注出来的数据,一个字是真贵呀, 每标一帧都在滴血。经过1-2个月双方痛苦的磨合和优化过程,最终价格在一个合理的范围内了,不过现在回看,我们在22年标注的数据量还是有点多了。标定,最开始标定我们是求助外力来搞的,但是效果是真不行。最终只能自己动手风衣足食,磕磕绊绊搞了一个lidar 和7v 的联合标注。 经过这一系列的操作,在这里感谢商汤开源的标定工具,https:// github.com/pjlab-adg/se nsorscalibration 。 我们终于搞到了质量还算可以的数据(现在回看,我们应该提早为时序模型的数据进行布局)。然后就是部署了,我记得很清楚上海刚好有疫情,然后我们居家了3个月左右。我们差不多痛苦了1个多月,在部署的时候,有一些算子不支持(也主要是2D-to-3D 的算子),后面是转出来模型性能差,然后优化。然后是Pytroch 的模型和转出来在工程上部署的模型掉点很严重,我们曾一度想搞一个Fcos3D(https:// arxiv.org/abs/2104.1095 6 ) 的网络先搞到板子上。 组内的同学很给力的,我们差不多就3-4个人力左右的情况下,最后我们的模型能跑到10hz, 然后在大家的努力下我们差不多在22年7,8月份的时候,我们的视觉 BEV 障碍物就能跑上车了。看到BEV 障碍物在车上实时跑起来的时候,还是感觉到很兴奋的。( 跨相机的case 是真稳,整个后处理pipeline 是真的很简洁的)。 整个22年对我们来说收获还很大的,BEV 障碍物跑的不错。但22年我们也面临了来自项目的压力我们曾面临着人力资源紧缺,只有一个人力在投入在BEV 上面,还好大家坚持了下。

4: 收获的23年

在前面差不多1年多的积累下,也随着组内的资源越来越多,23年我们做出来BEV 车道线,还有前融合的BEV多任务模型,端到端的红绿灯(一介书生:城市自动驾驶红绿灯方案何去何从?)目前都已经落地,在项目中开始测试,交付中。目前我们在探索时序的BEV,以及大模型相关的(一介书生:2024年自动驾驶标注行业是否会被世界模型所颠覆?) 现在来看在21年投入去积累BEV技术,是一个很恰当的时机,当然抛开技术本身,我们老大也顶下来很大的压力和质疑,因为有人的地方就有江湖的。