- 核心技术
- 以原创技术体系为根基,SenseCore商汤AI大装置为核心基座,布局多领域、多方向前沿研究,
快速打通AI在各个垂直场景中的应用,向行业赋能。
CVPR 2023 Award Candidate | 自动驾驶通用算法框架UniAD
亮点速览
自动驾驶是一项高度复杂的技术,需要多个学科领域的知识和技能,包括传感器技术、机器学习、路径规划等方面。自动驾驶还需要适应不同的道路规则和交通文化,与其他车辆和行人进行良好的交互,以实现高度可靠和安全的自动驾驶系统。
面对这种复杂的场景,大部分自动驾驶相关的工作都聚焦在具体的某个模块,关于框架性的研讨则相对匮乏。自动驾驶通用算法框架——Unified Autonomous Driving(UniAD)首次将检测、跟踪、建图、轨迹预测,占据栅格预测以及规划整合到一个基于 Transformer 的端到端网络框架下, 完美契合了 “多任务”和“高性能”的特点,可称为自动驾驶中的技术突破。
通过上海人工智能实验室青年研究员李弘扬、陈立的分析(上图),相信大家有所了解,接下来给大家详细阐述为什么UniAD会诞生。这必然会回到一个问题:为什么之前的模型没有同时做到这么多的任务呢?这还要从自动驾驶的框架讲起。
上图所示为自动驾驶UniAD框架对比(a)模块化(b)多任务模块(c)端到端自动驾驶模块。现有自动驾驶系统可大致归为三类:
1. 模块化
每个模型负责单独的子任务,优势在于易于调试迭代,但是解耦就会丢失最优性,各个模块的优化目标并不是以驾驶为最终目标,并且每个模块的误差会传递到之后的模块。
2. 多任务模块
多任务范式利用一个共享的特征提取器来完成多个子任务,好处是节省计算成本,缺点在于不同任务之间可能会存在负面影响。
3. 端到端(End-to-end,E2E)模块
端到端范式以最终的驾驶性能为目标,具体又可以细分为两种范式:隐式的端到端和显式的端到端。其中隐式端到端是以传感器数据作为输入,直接输出规划或者控制指令。这种范式的好处是较为简洁,缺点是缺乏可解释性,难以调式及迭代。显式端到端则是将多个模块囊括在端到端模型之中,每个模块有各自的输出,并且会将提取到的特征传递到下游任务。
我们对目前显式端到端自动驾驶工作进行了比较:
可以发现,大多数工作都关注了感知、决策和规划三部分,但具体任务存在差异,且没有框架融合所有的任务。那为什么会出现这种情况呢?一方面受限于对自动驾驶的认识,研究者们没有对任务之间的关联和构建方式研究清楚;另一方面受限于模型的最终效果,或许有人曾经尝试过把全部任务融合,但是效果不佳。
为了探讨这一问题,UniAD首次将所有检测、跟踪、建图、轨迹预测、占据栅格预测与规划都包含进来,从实现方面解决了这一难点。另一方面,通过严格的消融实验发现,在正确的融合方式下,所有的任务对最终的驾驶性能都有收益。至此,本自动驾驶项目为了解决实际问题而来。
核心技术
那为什么我们的模型可以解决不同任务的融合难的问题,从而实现多任务和高性能呢?让我们开始揭晓我们自动驾驶技术的真身:
整体而言,UniAD利用多组query实现了全栈Transformer的端到端模型。如图所示,UniAD由2个感知模块,2个预测模块以及一个规划模块组成。其中感知和预测模块是通过Transformer架构进行预测,每个模块输出的特征会传递到之后的模块来辅助下游任务。
技术效果展示
UniAD在nuScenes数据集中的所有任务都达到了SOTA,尤其是预测和规划部分,以下是部分技术效果:
晴天直行
UniAD可以感知左前方等待的黑色车辆,预测其未来轨迹(即将左转驶入自车的车道),并立即减速以进行避让,待黑色驶离后再恢复正常速度直行。
晴天转弯
得益于UniAD的地图分割模块,其可以沿着分割得到的道路结构适时地转弯。
雨天直行
在视野干扰较大的雨天环境中,UniAD也能感知到周围车辆进行正常行驶。
雨天转弯
在视野干扰较大且场景复杂的十字路口,UniAD能通过分割模块生成十字路口的整体道路结构(如右侧BEV图中的绿色分割结果所示),并完成大幅度的左转。
夜晚直行
在夜晚视野变暗的情况下,UniAD仍然能感知到前方以及右侧的车辆(双车道场景),确保自车行驶。
夜晚转弯
在夜晚视野变暗的情况下,UniAD能感知到前车并完成先静止,后左转的规划。
未来展望
希望UniAD能充分利用现在海量数据驱动的优势,在未来实现高阶的自动驾驶人工智能。