前言
自1939年通用汽车公司面向全球展示世界上第一辆自动驾驶念车。
此后的八十多年里,全球各大科技公司和车企陆续将传感器、摄像头、计算芯片、存储芯片等塞进车子里,并不断在轨道、沙漠等特定场景下去尝试自动驾驶。
时至今日,厂商已经在一点点让自动驾驶渗透到家用车市场,并致力于在这个领域实现更高级别的自动驾驶。
然而,我们也能看到,在技术和方案推进的过程中,自动驾驶的实现方式出来了明显的“派系之争”。

一派认为应该走视觉与雷达的融合路线;另一派则认为纯视觉实现就足够了。
派系之争的根源是当前每个厂商对自动驾驶都有自己的理解,且都取得了一定的效果。
当然,我们也发现了两个派系之间的一些共同点,比如灵活设计和性能冗余等。
那么,接下来就让我们展开聊一聊。


一、
纯视觉 VS 多传感器融合
对于自动驾驶,还有很多其他的叫法,比如无人驾驶、电脑驾驶汽车或者轮式机器人等等。
这些名称的核心要义是通过计算机与人工智能技术的融合,代替人类驾驶员,让车子自行完成完整、安全、有效的驾驶行为。
无疑,这种智能化的驾乘体验将会成为新时代汽车一个重要的卖点,吸引全球科技巨头和车企纷纷投资布局。
根据市场调研机构IHS Markit的数据,2022年全球自动驾驶汽车市场规模达到1,629亿美元,同比增长14%左右。
预计2030年全球自动驾驶汽车市场规模将达到32,197亿美元,年复合增长率高达45.21%。

图:全球自动驾驶汽车市场规模(数据源自:IHS Markit)
在自动驾驶的设想下,当选定目的地后,汽车会利用导航系统规划最佳路线,到达目的地,期间人类驾乘人员不需要为此分心,可以尽情享受科技带来的便捷和舒适。
然而,当人类驾驶汽车时,我们都会用“眼观六路耳听八方”来描述驾驶员的状态,因此自动驾驶汽车需要具备比这更强的感知性能。
环境感知与精准定位、路径规划、线控执行一起并称自动驾驶四大核心技术。
当汽车被置于社会应用场景下时,安全可靠的感知是不可或缺的。
在环境感知上,纯视觉方案仅依靠摄像头搜集环境信息,然后将图片传输到计算芯片进行分析,比较像人类驾驶车辆,通过眼睛来捕捉周围的信息,然后传输给大脑做决策。
当然,纯视觉+AI的方案比人眼的视角更广,通过大量的图片信息让汽车内部的计算系统拥有以车子为中心的“上帝视角”。
纯视觉方案的优点主要是,实现成本相对更低,更接近人类驾驶,通过高分辨率、高帧率的成像技术获取的环境信息更加丰富;
缺点主要是,摄像头捕捉环境信息容易受到环境光的干扰,且纯视觉方案对于图像的处理更依赖训练,难免出现环境认知的“死角”。
目前,采用纯视觉方案实现自动驾驶的企业主要有特斯拉、百度和极氪等。
“多传感器融合”方案则是通过摄像头、毫米波雷达、激光雷达等设备一起收集车辆的周边信息。
激光雷达的加入能够获取更深度的空间信息,对于物体的位置、距离和大小感知更准确,且由于激光雷达是自发光并不受环境光影响。
不过,“多传感器融合”方案也有自己的局限性,激光雷达容易受到雨雪雾天气的影响。
由于激光雷达本身数千美元的硬成本,加上“多传感器融合”往往对计算芯片有更高的算力要求,因此成本没有优势。
目前,采用“多传感器融合”方案实现自动驾驶的企业主要有华为、小鹏、蔚来等。
两大派系在技术实现上,都是基于硬件来帮助汽车构架自身周围的3D信息,然后让计算芯片提取关键信息来做出驾驶决定。
未来,“纯视觉”要解决的是光致盲和认知错误等问题,“多传感器融合”本身的融合就是一大技术挑战,且算法本身还得优化,也需要更低成本的激光雷达产品。
目前来看,两大技术路线都还有很多潜能值得挖掘。
当然,高级别自动驾驶尚未打开家用这个大市场,路线之争不仅是环境感知层面,还有单车智能和路车协同之间的争议。
先看看特斯拉和华为的全栈自研模式如下图:



二、
通过Tesla AI Day不可谓不频繁的技术分享可以发现,Tesla的感知技术每隔一段时间都会对自己已有的技术栈进行一次重大革新。
Tesla感知技术方案,我把这个技术不断迭代更新的过程分成三个重要阶段:
以HydraNet为代表的第一次革新;
【2018~2019年特斯拉把神经网络结构改为HydraNet】
以2021年BEV .Transformer 模块为代表的第二次革新;
【在 2020 年特斯拉 AI 日上,特斯拉AI总监安德烈·卡巴斯基(Andrej Karpathy )介绍了鸟瞰网络(Bird Eye View)】
以及以时空序列Feature queue处理模块为代表第三次革新。
【2021年插入时空特征序列模块(Feature queue),特征序列模块中分别插入了一个基于时间(time-based)和基于空间(space-based)的序列。】
当然了,这里我们是如此的轻描淡写,事实上 安德烈Andrej 特别强调,这是很Easy-to-say, 但 Hard-to-do 的。
特斯拉在 Transformer 工程化的过程中趟过了大量的坑。
FSD发布BEV .Transformer 模块之前的Autopilot,以及其他目前主流的自动驾驶感知神经网络结构,基本上都采用了类似“九头蛇”HydraNet的共享主干多头结构。
但是他们的问题在于,整个感知都是在图像所在的二维像素结构的Image Space(即图像空间)下进行的。
相机图像所在的Image Space是一个2D像素世界。
然而所有自动驾驶的决策和路径规划都是在车辆所在的3D世界下进行的。
这样的维度不匹配,就使得基于感知结果直接进行自动驾驶变得异常困难。
打个比方,开车的新手大多有体会,刚学倒车的时候,利用后视镜观察到的场景,很难直观的构建车子与周围环境的空间联系。
因此新手靠倒车镜很容易发生误操作造成剐蹭,这其实就是缺乏从倒视镜图像平面到自车坐标系空间转换的空间理解能力造成的。
因此一个只能在相机图像平面进行感知的自动驾驶AI就好比缺乏空间理解力的驾驶新手,很难完成把车开好的难题。
这时候很多公司就选择使用毫米波雷达,激光雷达这类具有深度测量能力的传感器。
通过他们与相机结合,来帮助相机把图像平面感知结果转换到自车所在的3D世界。
这个3D世界用专业的术语叫做自车坐标系,如果忽略高程信息,那么很多人也管拍扁后的自车坐标系叫做BEV坐标系(即鸟瞰俯视图坐标系)。
BEV .Transformer 模块的引入,把FSD的预测能力取得了巨大的改进。
即可以把相机图像的2D像素世界转换为3D像素世界!
这时,Autopilot 最大的问题是「缺乏记忆」能力,相比于人类驾驶员。
于是,特斯拉又加入了特征序列模块(Feature queue),特征序列模块中分别插入了一个基于时间(time-based)和基于空间(space-based)的序列。
于是我们再来看FSD的软硬件解耦和神经网络结构进化:

图:硬件集成、神经网络、算法、最小化延迟、最大化帧率

图:神经网络编译器、框架模型、编译器、神经网络程序包

图:HydraNet多任务神经网络结构

图:引入BEV. Transformer三维向量空间转化层

图:引入时空序列特征提取层Feature queue以实现短时记忆能力

图:特斯拉视觉网络最终结构
原始图像在底部输入,并经过校正层以校正相机将所有内容放入通用虚拟相机中;
通过 RegNets 残差网络将它们处理成多个不同尺度的特征;
并将多尺度信息与 BiFBN 融合;
通过一个transformer模块将其重新表示到向量空间;
加入时间或空间的特征队列,由视频模块(如 Spatial RNN)处理;
最后进入 HydraNet 的多头预测结构。
在当前的神经网络中,时间和空间的融合是相当晚的。他们计划对空间或时间进行更早的融合,例如在底部使用cost volumes or optical flow或光流网络。
当前神经网络的输出是密集的栅格,在车内进行后处理实际上是相当昂贵的,而且存在系统的延迟。

图:特斯拉FSD 感知-规划-控制整体架构
通过以上七张图,可以清晰的理解马斯克的技术路线规划!

图:特斯拉视觉神经网络技术栈
从上图中的Tesla AI模型来看,Tesla使用的模型是一些常见的物体检测领域的模型:
如RNN、LSTM、Transformer、ResNet、RegNet、BiFPN、YOLO,但Tesla AI 团队对物体检测模型的理解更深,应用之广,对国内车企的算法有启迪意义。

他们融合多个模型并深入挖掘模型潜力的执着,对业界工程师是一个榜样。
行文至此,想起了当年研究3D游戏。
后来摸索明白了,原来3D游戏就是矩阵计算,也明白了原来显卡的作用就是矩阵计算。
矩阵计算有个好处是,可以批量并行计算。
现在的AI计算框架里的张量计算Tensor,本质上也是矩阵。神经网络就是多层矩阵。还有软件Matlab。
最近研究视觉神经网络,才明白英伟达为啥从一家最初做GPU的小公司,到如今成为AI计算、数据中心巨头的原因!原来英伟达在矩阵计算领域积淀深厚,已然形成很深的护城河了!怪不得任正非屡次强调数学的重要性!
根据我自己个人的认知,矩阵和微积分是搞好通信与半导体的基石!好了,下面开聊华为的多传感器融合方案。
三、
以下我们再来看华为的多传感器融合方案。
在高清摄像头处理方面华为跟随即可,其实华为已经自研COMS其纯视觉感知能力应该不弱于特斯拉!
华为在自研CMOS图像传感器;
而且还是全流程,涉及从晶圆到芯片,而且在部分工艺上有所创新。
另外还有一点需要注意,提到CMOS,大家可能会想到手机、数码相机,其实随着万物互联时代的到来,CMOS的市场空间极大,例如新能源汽车、工业自动化、智能家电等众多的领域,都需要用到CMOS,所以国产CMOS的发展空间还是非常大的。
而且CMOS传感器还有一个特点,那就是它的生产制造无需高端工艺,22nm就可以满足当下最先进的CMOS了,也就说CMOS可以做到自主可控。
那么以华为的技术实力,开发出一个世界顶级的CMOS传感器,我想完全是可以做到的,并且任何人都没有办法再对其进行限制。
所以,接下来,该轮到国外厂商颤抖了。
在4D毫米波雷达方面,华为也是自研的!
4D成像毫米波雷达在继承传统毫米波雷达极佳测距测速能力,不受光线和雨雪天气影响,以及非视距被遮挡目标的独特探测能力优势的同时,大幅提升分辨率、目标检测的置信度和目标检测范围,同时进化出像激光雷达一样的4D高密度点云,可带来丰富的感知增强应用。
比如环境刻画,3D构图,标注定位等,也可通过多雷达的点云级融合,更好实现车周的360°检测,从而满足全目标、全覆盖、多工况、全天候的感知要求。
华为表示,4D成像毫米波雷达将成为下一个必备武器,和高线数激光雷达、高清摄像头一起,赋能高阶自动驾驶。
华为有自主研发的毫米波雷达,就可以获得雷达最原始的点云数据,同时进行相机图像数据与雷达点云数据的前融合,这意味着融合置信度,可以得到大幅提升。



而目前的行业现状是,博世、大陆等公司提供的传统毫米波雷达基本上是“软、硬集成”的解决方案,对于大部分主机厂和Tier1(采用第三方雷达产品)来说,通常无法解绑底层算法。
这些“软硬集成”的解决方案只是一个黑盒子,即毫米波雷达只提供感知结果(也就是通常所说的目标级融合)。至于算法是如何编写的,算法的底层逻辑是什么,主机厂完全不清楚。
这一点,也体现在激光雷达这种全新的传感器上。
不管是Luminar、Innoviz、一径科技,还是速腾聚创等等拿到前装量产订单的激光雷达公司,在对外合作上,大多数都是直接与主机厂进行技术细节的谈判。
尽管在实际的系统集成阶段,Tier1的参与可能是不可或缺,但考虑到激光雷达是一项尚未达到成熟阶段的新技术。每个产品在细节上都有很多不同,在安装调试、算法等细节上也存在一些差异,主机厂比以往主导权更强(相对于其他传感器)。
其实,抛开激光雷达,安装一圈4D成像毫米波雷达也够用于L3级别的自动驾驶方案了!
华为的SoC以及集成嵌入式软件耦合开发的重要性已经被强调过很多遍了。
有些系统很简单却很关键,比如飞机的起落架,一个非常简单的系统但需要非常安全;也有一些复杂的系统不需要非常安全,比如智能手机。自动驾驶将两者结合在了一起。
任何试图分解或从零开始组合的尝试,都会招致很多风险,包括安全、效率和经济性。
所以硬件和软件之间的紧密耦合和深度集成是关键,并不是随便一个衡量指标就能说明SoC更强。
在这种情况下,判断一套解决方案是否成功,远不止算力TOPS这样的衡量标准。
基于华为目前的工程技术落地能力,完全可以做到两套感知方案的融合。
一套纯视觉方案,一套多传感器方案,互为备份,以确保安全。
高清摄像头视觉感知是自动驾驶的主干;
而4D雷达+激光雷达子系统则增加了安全冗余,并显著提高平均故障间隔时间(MTBF,也就是系统的可靠性指标)。
而背后的原因,或许恰恰是华为对软硬件自主掌控的自信考量!
未来,“纯视觉”要解决的是光致盲和认知错误等问题,“多传感器融合”方案,本身的融合就是一大技术挑战,且算法本身还得优化,也需要更低成本的激光雷达产品。
而华为在神经网络结构方面,有笛卡尔架构和达芬奇架构的加持!
笛卡尔架构乘达芬奇架构的神经网络结构肯定超越特斯拉的HydraNet+BEV Transformer+ Feature queue!
关于笛卡尔架构和达芬奇架构,参阅我之前的文章《【异构计算】达芬奇架构好在哪里?》
在计算平台硬件方面,需要异构、高性能、超小型、高算力的SoC器件是打造下一代ADAS应用的理想器件。
由GPGPU+ASIC+FPGA组成异构计算系统成为在大模型计算日益复杂的今天,车载算力和云端算力最佳供给方案!下图就是Zynq UltraScale+ MPSoC器件,来自AMD Xilinx。


Zynq UltraScale+ MPSoC器件可以提供可编程逻辑服务,对于多摄像头的感知数据,可以进行融合计算,这种计算平台也是提升算力与效率的一种逻辑,相信华为海思也有所谋划!
再介绍一种华为的新技术多模态融合技术TransFusion。
对于多模态融合,这里主要是只指Lidar(激光雷达)和Camer(高清摄像头)的融合。雷达属于点云计算,属于稀疏性计算,而摄像头图像计算属于稠密性计算,如何缝合,估计华为2025年就会有明确答案。
TransFusion是一种在感知层“核弹”级的技术,一旦突破,将对自动驾驶是革命性的!
2025将是个重要的技术节点,对于整机车企和自动驾驶玩家来说。
在车端计算平台,英伟达将推出2000Tops算力的Drive Thor。
华为目前MDC810是400Tops算力;
英伟达Drive Orin是200Tops算力;
特斯拉最新的FSD-HW4.0是500Tops算力,所以目前华为MDC810的算力已经够用!
主要得为2025年的迭代做好准备和架构设计工作。
华为打造的生态,在自主的同时,还需要兼容。
而要达到这个目标,则需要具备“2+3+3+2”共十个能力。
其中,第一个“2”是指两大核心软件:BIOS (Basic Input/Output System,基本输入输出系统)、操作系统内核(含驱动和虚拟化);
第二个“3”则是三大编译器,GCC、LLVM、GOLANG;
第三个“3”则是三大虚拟机:Java、JavaScript、.NET;
第四个“2”则是两大二进制翻译系统:X86、ARM。
目前,华为基本具有这十个能力,完全可以赋能到自动驾驶领域。
依照木桶理论,从“长板”、“短板”两方面,在企业的天生基因上,华为完胜特斯拉的概率极大!

图:未来就看余承东如何PK马斯克了?!

评论·0