近年来智能驾驶成为汽车行业的焦点,随着软硬件性能的提高,厂商们也开始了向更高级别的自动驾驶迈进的研发之路。
从简单的控制汽车横纵向移动到点对点自动驾驶功能的完美实现是众多汽车厂家及供应商钻研的方向。
在一定程度普及ADAS功能后,依靠高精地图导实现自动驾驶的领航辅助驾驶(NOA)开始慢慢的出现在大众视野里。
在此赛道上不乏一直走在智能领域前端的科技公司,如何更好的满足主机厂的需求,实现产品的快速落地可能是科技公司首先需要思考的。他们又是如何应对此挑战的呢?
雷峰网新智驾邀请了商汤科技绝影量产智能驾驶总监蒋沁宏来进行业内分享。以下为蒋沁宏的演讲内容,雷峰网(公众号:雷峰网)新智驾进行了不改变原意的整理:
大家晚上好,我是来自商汤绝影的研发总监蒋沁宏,负责量产行车和感知算法的研发工作。
今天的分享主题:智能驾驶算法平台化加速NOA的量产落地。主要介绍下当前绝影的产品方案,以及在产品和项目迭代过程中的一些研发思考和部分算法。
内容主要会分三部分:
1.SenseAuto Pilot产品方案
2.绝影的技术思考
3.部分算法概览
SenseAuto Pilot产品方案
商汤绝影目前有低中高三套产品方案,对应不同的传感器配置以及域控平台。低配方案是1R6V加12个超声波雷达,支持到L2智能辅助驾驶以及记忆泊车,可部署在8 TOPS - 24 TOPS的芯片平台。中配的方案,是目前市面上比较常见的5R11V外加12个超声波雷达方案,支持到高速领航驾驶以及记忆泊车,可部署在32 TOPS - 100 TOPS+的芯片平台。高阶方案相比于中配方案额外增加3颗激光雷达,对应的平台算力也比较强,在驾驶功能上可以拓展到城市领航辅助驾驶。
以上方案均已兼容国内外的主流芯片平台。
·低配方案
低配方案主打性价比,可以支持 L2 智能辅助驾驶,驾驶员指令变道和记忆泊车。传感器方案上,在前向采用120度 8M 相机,后向采用60度 2M 相机,4颗鱼眼相机模组,1颗前向毫米波雷达,以及标准的12颗超声波雷达。最大程度复用传感器感知:在行车时,侧向鱼眼会同时提供目标、障碍物以及车道线的感知;但因为鱼眼相机的畸变大,感知距离有限,所以不推荐基于该方案实现高速的主动变道功能;在泊车场景下,这套方案也会完全复用各个传感器。
·中配方案
中配方案是当前比较常见的5R11V方案,前向相机切换为30度窄角和120度宽角。30度相机的加入可以实现更远距离的前向感知,并支持如TSR等的小目标感知,车辆、障碍物的感知距离也会增加。其次为了增强侧向感知能力,方案配置了4颗侧向的摄像头以及4颗角雷达,这样可以使侧向的感知距离以及对障碍物的位置、速度估计精度有大幅的提升。
此配置可以支持高速领航驾驶(高速NOA)。此外,和低配方案一致,也是复用传感器的行泊一体方案。
·高配方案
高配方案中,前向摄像头均为8M相机模组,前向感知距离进一步提升,同时引入了三颗激光雷达,一颗正前向,两颗补盲,增强障碍物位置精度的同时,提供更多通用未知障碍物感知功能。在城市场景当中能够支持窄路通行等功能。在泊车场景下,激光雷达还能够使建图及定位的精度会获得较大提升。
绝影的技术思考
商汤绝影的研发模式为基于数据驱动的平台型研发。数据驱动可以使不同平台的数据共享,从而帮助算法性能的提升,通过平台型研发赋能不同的产品和项目。在此研发范式下,有三个比较关键的因素:
首先是驾驶场景数据,即如何拿到入口,能够有更丰富的业务场景数据来源。
其次是数据获取效率,即如何较快地去获取这些数据。两个维度:一方面是如何基于新计算平台快速地使能车辆跑起来,实现闭环迭代;另一方面是如何快速实现数据回流。
最后,最关键的是数据利用效率,也即场景数据到手后,进一步探索如何高效地利用数据。
从技术思考来看,我们希望通过海量的数据和平台化的技术研发助力算法提升,进而在不同的项目、平台和产品上获得产品性能的提升。
·驾驶场景数据
到目前为止,商汤绝影与30多家车企建立了共荣共生的合作关系,2022年我们与一汽、广汽签署了战略合作协议,和多家车企广泛开展量产合作,帮助我们有效获取驾驶场景数据迭代算法。
·数据获取效率
面对不同的硬件平台和底软,如何快速实现闭环迭代以及经验共享是关键。我们开发了一套全平台一体化工具链。
首先对于域控系统的中间件开发,商汤绝影拥有自研中间件的开发能力,也支持基于集成供应商提供的第三方中间件进行开发。针对不同中间件,做了统一适配层(RSCL)封装,屏蔽不同的中间件和底软的差异,为上层SenseAuto Pilot应用软件提供统一化接口,同时包括录制回放、性能分析、数据的切分、可视化等工具链都基于统一适配层实现。这样可以保证在不同的项目中,应用层代码、开发的工具链以及数据完全共享。这里提到的数据不仅仅是点云、图像层级的原始数据,也包括中间结果数据。
针对模型部署推理,不同的芯片平台有不同的深度学习库和不同的推理方式。商汤有专业的工具链团队,负责开发统一平台部署系统,屏蔽不同的推理后端和模型格式。举例来说,A芯片平台当前不支持Transformer算法相关算子,但支持类似矩阵乘法、并行加速等基本开放接口,我们的PPL团队会基于这些接口,开发对应的高性能算子,并和平台原生算子一起整合到部署系统中。部署系统会自动地进行网络图的切分、格式转换、无缝支持该平台不支持的算子。对于研究员来说,不管后端究竟是什么模式,也能够使用相对标准化模型推理的接口。
有了这些,我们在面对一个新的平台和底层软件系统,完成从0到1完整的搭建,只需要一到两个月的时间。这也是绝影可以支持众多芯片平台的底气。
·数据利用效率
在拥有完整的研发体系后,如何较快、较好的利用这些数据,商汤做了两件核心的工作:建立人工智能数据中心,和建立遍布全球的人工智能超算集群,目前总计拥有大概4.91exa FLOPs算力。基于AIDC基础装置,我们在2021年底发布了名为书生(Intern)的超大模型,是视觉模型领域业界最大的模型。同时,借助书生超大模型和超算中心,我们搭建了自研的数据闭环自动化体系。
获取数据后,如何高效利用数据,涉及数据的自动化生产。
针对驾驶业务场景,我们开发了视觉的超大模型(通才模型)以及基于驾驶业务场景数据的训练得到的模型(专才模型)。基于这两个模型,对从车端导出的无标签原始数据进行推理,并基于规则对推理结果进行质量检查。低质量、判断不达标的数据送给质检员,质检员会做进一步检查以及精修(Refine),最后生成高质量的数据标签。
通过这套体系,不管是标注的速度、成本,还是模型迭代的速度都有了较大的提升。就检测任务来说,目前基本不需要人工标注2D数据,标注速度对比之前有约 600 倍的提升,成本也有着百倍量级的下降,迭代速度约为之前的18倍。
针对自动驾驶海量的数据,需要建立对应的标签体系。绝影的标签体系分为四个细分的领域:交通参与者、交通设施、动物以及路上的其他障碍物。标签层级目前有6层级,总的标签数量3000多个。同时我们建立了一套自研的数据筛选引擎,针对不同条件进行数据筛选及过滤,可以使数据的获取成本降低约94%。
算法的概览
·长尾模型研发
语义层级的细化可以带来驾驶风格的提升,从而让用户体验更加智能的系统。因此感知语义层级的细化能够带来智能驾驶功能的升级。这些语义标签都符合长尾分布。
长尾问题的解决关键,一方面是长尾模型的研发,另一方面是数据体系建立。
数据上,会基于超大模型做数据挖掘。首先是基于Clip的冷启动,在现有的数据库里做对应的图像搜索。有了这部分数据后,进行特定检测模型的孵化,保障它能有较高的recall。然后会把该模型部署在车端,自动地在开集的世界里打标收集数据,并回流到云端,进入大模型的打标过程,生产对应的标签。
针对模型的研发,我们通常采取的方式是:首先针对某一款芯片平台进行模型结构搜索,搜索得到对应的模型库也就是对应的候选检测模型List。通过自动的数据标签,以及知识蒸馏等进行算法的训练,得到最终的end model。
我们完成一个长尾模型的研发,通常不会超过1周时间。
·BEV3D感知
商汤绝影在目前所有的项目包括量产平台上所涉及的平台,都实现了BEV 3D感知的落地。
BEV 3D感知的核心优势在于提供了一个适合自动驾驶的特征表达形式,对遮挡目标的检测,稳定性效果更好,对车道线远距离感知以及大弧度弯道等检测更加完善等等。近来大家讨论火热的轻地图方案,也是以BEV表达为基础的。
BEV3D感知关键不在于模型算法,而在于数据生产。为此我们构建了一套全自动化的真值系统。基于Camera与LiDAR大模型,以及LiDAR SLAM和离线MOT,我们搭建了一套支持动静态目标,道路结构3D高保真还原的真值系统。针对实车传感器容易出现的问题,我们建立了时空对齐的自动化检验,能够实现原始数据的半自动化清洗。同时借助于我们AIDC大模型上的一些体系技术,实现了多机多卡的处理,能够支持 1000 多张卡的自动化并行处理流程。另外我们还构建了自动化生产平台,操作节点之间构成一个DAG,自动化执行真值系统算法生产,平台每天定时查询车辆新增数据,自动触发真值的生成并更新数据库。
当算法部署在多个量产车型时,相机安装位置、型号不尽相同,会引入Depth Shift和FOV GAP等跨域泛化问题。针对此问题,商汤绝影基于数据增强,知识迁移等方案,将无标签数据逼近有标签结果,可以有效解决不同产品项目的数据共享,以及新项目的算法冷启动问题。
这两年商汤绝影在端到端的自动驾驶、BEV的算法方案预训练、知识迁移与泛化性等相关学术领域,发表了多篇顶会和期刊论文。商汤在2022年环视感知算法BEVFormer++获得了Waymo挑战赛冠军,2023年与上海人工智能实验室合作端到端自动驾驶UniAD,拿到CVPR 2023 Award Candidate,并会竞争今年CVPR Best Paper。如果有感兴趣的小伙伴,不管是实习还是全职,也欢迎加入我们。
以上就是我今天的分享内容,谢谢大家。
Q&A环节
1.激光雷达在城市NOA中是否必须?激光雷达解决哪些场景?
从目前迭代来看,激光雷达在城市场景中还是非常必要的。一个是城市场景里交通参与者有非常强的不确定性,比如说行人、骑电动车的乱穿马路等,需要激光雷达去提升这部分感知物体的精度。另外在城市场景下会更多奇形怪状的障碍物,激光雷达能够更好地识别这种非结构化或者非标准化的障碍物,更好地应对城市场景。
2.数据驱动这一块儿从哪方面入手?帮助算法或者开发做功能开发的替代HIL?
应该是两个事, HIL更多指的是对整个系统进行的离线硬件在环测试。数据驱动则是指我们在算法研发的时候,从顶层设计来讲,就希望算法是通过数据驱动来实现的,而不是通过规则实现的。
举一个简单的例子,比如BEV 3D感知。
目标感知传统的做法是每个相机单独进行障碍物的感知,然后再把多个相机的结果进行融合。这就是一套基于规则或者说基于传统的贝叶斯滤波来实现的。
我们希望尽可能的把这些过程放到模型或者数据里面,对应的做法就是BEV 3D感知,直接在模型里就能够输出多相机的感知结果,这是我们说的数据驱动的思路。
3.请问部署的BEV方案用的是BEV Former 吗?
看平台,和部署效率相关。BEVFormer 或者目前业界比较常见的基于LSS的方案,它对应的BEV Feature是非常稠密的,一些低算力平台不太能够吃得消。因此我们在一些低算力平台,也会用一些稀疏的方案,不会去构建BEV完整的Feature,而是针对query去拿相对稀疏的信息。但其它任务,比如我们想要进行Occupancy预测,或者进行全场景的感知任务,则需要稠密 BEV Feature,这个目前在用的是BEVFormer。但目前在量产上,BEV特征方案其实不是最关键的,更关键的是比如图像输入大小,后面的任务是基于Transformer,还是基于一个传统的Detection Head等,怎么建模该任务等,这些事情相对而言会更关键一点。
4.毫米波雷达的路沿使用效果如何?为何没有用作路沿监测?
其实是有用的,我们在不带激光雷达方案下的目标融合模块,会用毫米波做一些高速路沿相关的任务,主要是辅助我们做一些FP滤除工作。
5.BEV只能通过Camera的光流信息捕捉实现吗?LiDAR和RADAR是否在其中有价值?
BEV不只是对相机。之前大家做算法任务时,思考都是以传感器视角的Front View 形式。而BEV提供了一个更适合自动驾驶的全新研究范式,它的来源最早应该是在激光雷达领域,空间特征的表达不再是以Front View形式,而是以自车为中心,通过鸟瞰图的形式把它拍平来做特征建模。这种特征建模对于激光雷达还是毫米波雷达都是有天然优势的,它们可以非常方便的加入进来。
6.商汤的BEV算法相比同行有哪些领先之处?
其实前面的分享有陆续提到。首先在学术研究上,我们肯定是站在最前沿的,不管是国际挑战赛,还是学术论文。同时我们会更多地做量产上的思考,强大的部署团队使得我们在低算力平台也能够实现BEV算法;自动化的真值系统;对算法冷启动泛化性地考虑等。
7.Clip 冷启动是通过预先搜索收集包含潜在标签的数据集吗?
是的。
比如说清障车,首先会在历史的数据集搜索,生产一个小模型或者车端的模型。这时更多的是保证它的Recall,如果历史数据不够多,我们会把Recall比较高的小模型部署到车端,把车端数据拿回来,再通过大模型打标以及生产形成闭环。
8.贵司的 AIDC 实际使用效率如何?有新项目导入,算力资源充沛吗?
商汤SenseCore AI大装置持续扩建,完成2.7万块GPU的部署并实现了5.0 exaFLOPS的算力输出能力,以AI-as-a Service (AIaaS)的模式面向行业伙伴提供服务。目前可最多支持20个千亿参数量大模型(以千卡并行)同时训练,最高可支持万亿参数超大模型的训练。
除自用外,SenseCore目前服务8家客户进行大模型训练,总共提供7,000多张GPU卡;对外提供的AIaaS具体包括了计算基础设施服务(IaaS)、深度学习平台服务(PaaS)、模型部署及推理服务(MaaS)三大部分的能力。
9.TDA4上部署BEV后还能再部署其他模型的空间吗?还是说一个BEV可以实现多任务模型?
我们现在在TDA4上是可以同时部署其他模型的。基于BEV多任务实现目标 + 车道线的感知;然后还有一套2D检测的融合模型,比如交通灯、标志牌、光斑检测等内容,是一个额外的模型。
10.友商都在强调自己BEV落地速度的领先,您认为BEV方案的质量该如何评价?
评价质量,我认为有两个方面,一是每个任务都有自己的评价指标,例如感知目标结果跟激光雷达、高精地图相比的绝对误差,稳定性等。另外一个评价偏结合后的应用,举个例子对车道线还有目标的预测结果,在BEV空间下的对齐效果,这就更多的是结合实车或者结合规控的角度来看这个问题。
11.传关于行人和车辆的轨迹预测用什么传感器算法?对于人流量大的十字路口的场景好用吗?
我们现在在车端部署的是基于结构化数据的预测,当前展示的端到端的还没有部署到我们的车上。基于结构化数据,不太关心数据是来自于什么传感器,而是重点基于目标的3D位置、速度信息进行预测。
路口的预测确实比较难,特别是对于人的预测一直是个难点,这也是我们目前在解决的一个问题。它的难点在于本身真值就有多样性,比如怎么预测人下一秒究竟是要往前走还是突然掉头,是一个非常难的问题。
我们认为,预测不单纯是感知的问题,还是规控的问题,需要把预测跟规划放到一起做考量,类似于博弈或者相互之间Social的建模。
12. 车道线是 BEV 分割给的吗?
车道线现在是BEV给的,但商汤不是用的分割方案,而是基于矢量化方案。
我们今天的直播就先到这,非常感谢大家,感谢主办方。