锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

Tesla Open AI Day解读

时间:2022-12-21 20:30:00 c7路面状况传感器传感器bfs

一、前言

特斯拉在2021年8月20日Open AI Day介绍了自动驾驶的最新进展。YouTube链接B站链接。三要素:安全、舒适、高效。整个介绍主要分为三部分,第一部分视觉感知,主要通过视觉方法实现检测、识别、分割、速度、方向预测;第二部分规划决策,包括路径规划、转向、停车等场景;第三部分数据标记;第四部分数据模拟;第五部分硬件,加速芯片,DOJO、开发工具、Tesla Bot等。本文主要介绍前四部分。

二、视觉感知

背景介绍首先给出了一张图片,即Tesla智能驾驶摒弃激光雷达,通过全视觉方案完成智能驾驶。全方位视觉感知通过车载八个摄像头映射到三维向量空间。后面又给出了一张图经网络的建模来模拟大脑视觉皮层的视觉感知皮层的视觉感知。这里有两个概念:(1)图像空间:图像拍摄空间;(2)向量空间:在真实的三维场景中,所有的测试结果都需要转换为真实的场景位置坐标。

1.视觉感知基本框架

下图是视觉感知的基本框架:

逐层分析: (1)输入:相机输入为1280×960,12-Bit,36Hz的图像,也就是每秒36帧12位的1280×960高清图像(这里应该是多机位的,也就是每个摄像头一秒36帧图像); (2)RegNet:网络骨干网络是RegNet,来自何凯明大神2020年的论文《Designing Network Design Spaces》; (3)BiFPN:采用BiFPN多尺度特征融合方法可获得4尺160×120×64、80×60×128、40×30×256、20×15×512多尺度特征图,用于感知不同尺度的目标; (4)Detection Head:这里只说这里只说Yolo like框架应该是相似的YOLO单阶段检测算法;最后,通过输出二进制特征图确定每个位置是否有目标和属性。

2、HydraNets

HydraNets,多任务学习的感知框架,多任务共享特征,多任务处理。

如图所示,分析有三个特点: (1)特征共享:通过backbone网络特征提取后,可同时处理多个任务,提高推理效率; (2)解耦:多个任务不相互干扰; (3)Fine-Tuning:在fine-tune时可以将backbone网络固定,只训练检测头的参数,提高效率。

3.多角度信息融合难点

需要从不同的角度整合相机的检测结果,以获得车辆周围的信息感知。但有两个困难: (1)不同角度相机的检测结果难以整合,如果调整参数很麻烦(比如车辆) 不同的相机安装需要重新调整); (2)图像空间的检测结果不同于输出空间。

多相机不同角度检测结果的集成会导致较大的偏差,如图像到向量空间的映射偏差、靠近相机的特征点密集、远离散,导致预测车道线不连续。

对于不同相机拍摄的相同目标,由于位置偏差,无法判断相同目标的局部信息。

4.多相机向量空间预测/校准

由于每个相机预测结果的集成会导致很大的偏差,通过多个相机的图像特征集成,然后进行测试(即集成多个图像特征,最终只预测一个结果),可以很好地解决多相机预测集成的问题。

这个框架图看起来很清晰,多位相机拍摄图像,经过BackBone提取特征,获得多尺度特征,最后送入红框,最后完成检测。(感觉这里用的角度不同。BackBone参数应该不同,相机角度不同,图像也不同,比如前面的平视图像和侧面拍摄的凸面图像不同) 有两个问题:图像转换到向量空间,需要向量空间的数据。 (1)图像预测到向量空间 通过Transformer通过将不同相机的位置信息融入到不同相机的位置信息中,可以实现多位置特征到结果的预测,从而获得准确的空间位置映射。

(2)多机位相机校准 不同相机安装过程中存在一些位置误差,或者不同车型安装相机的位置不同,这样就很难保证所有的相机的图像/特征的位置准确性,图像的上面一行表示一些偏差分布。通过MLP(Multilayer Perceptron)由于每个虚拟相机的位置是固定的,因此将每个相机映射到虚拟相机中,以确保空间向量的准确性。

(3)多相机集成校准结果 后面给出了通过Transformer以及多位校准,可以获得准确、连续的检测结果。左图通过多相机检测结果集成,右图通过特征集成Transformer预测结果。

下图显示了单相机检测结果与多相机特征集成的比较。可以看出,由于角度偏差,单相机检测结果集成(黄色)预测结果不准确;多相机(蓝色)特征集成检测结果更准确(避免多相机检测结果集成的不确定性)。

5.信息感知的时序性

视觉感知缺乏时间信息,如前方信息、信号灯、前方车速等。

(1)时序/视频网络框架 通过队列的数据结构提出视频模块,保留一段时间序特征图(此外,它还集成在这里IMU信息提高了定位和跟踪的准确性)。

(2)特征时序列 保持时间特征图,包括多位特征图、位置编码等自身信息。根据时间或位置进行进队操作,如间隔27ms、行进1m等。

(3)Spatial RNN 现在有了时序数据/特征,需要通过建模来检测时序的特征。这里比较3D Conv、Transformer、RNN这三种框架都有一定的缺点。提出Spatial RNN Video模块,车辆在二维坐标中行驶,Spatial RNN用于检测车辆周围特征信息的一部分(本部分介绍较少,不了解如何处理细节)。

(4)检测结果可视化 车辆行驶过后的检测结果可视化,可以看到很好的将驶过的路径绘制出来。由于video的时间序列,相比单帧的图像而言,可以很好的检测目标(由于帧序列的原因,对于每个目标是唯一的;而单帧图像无法确定是否为同一个目标)。

相比单帧预测的结果而言,因为时序特征序列的作用,可以很好的对前方车辆的速度进行预测(绿色是雷达计算的、蓝色是预测的结果)。

6、视觉感知框架总览

由下向上介绍: (1)多机位相机拍摄到不同角度的图像; (2)经过RegNet网络及BiFPN进行特征提取; (3)经过Transformer进行特征融合及MLP的特征修正; (4)通过队列的方式获得Video的特征; (6)经过Spatial RNN进行特征提取; (7)最终再经过不同的检测头实现车辆、行人、车道线、深度图、速度/方向等检测。

三、规划决策

升级:自动驾驶高速公路->城市、街道的开放型道路 规划决策有两个难点: (1)Non-Convex(非凸难以优化):将离散搜索转化为连续的函数优化,使用梯度下降算法会容易陷入局部最优; (2)高维的参数量(参数空间分布很广):在车辆行驶中有众多的参数,需要在接下来的几秒内做出决策,离散搜索的计算复杂度太高。 提出方法: 向量空间 -> 粗略搜索 -> 凸空间连续性 -> 连续优化 -> 平滑决策解 这里其实我不太理解,感觉是在所有的解空间中,粗略的找到一些可行的包含最优解的空间;然后在此粗略的解空间中再进行优化求解。

1、转弯问题(单个对象)

下图场景中,当前车辆在最右道,需要前进然后在路口进行左转。其中右边上图表示需要在上面一条红线之前完成转弯;下图表示车辆速度。有很多中方式: (1)先减速然后等后面的车辆驶过之后变道(缺点:突然减速,不舒适); (2)先加速超车然后变道(缺点:可能会超过转弯的距离,无法实现转弯)。

在1.5ms内搜索2500中可能方式,最终平衡舒适和安全的前提下找到一个合理的决策,然后在转弯10秒前做好转弯的规划。

2、决策问题(多对象预测--博弈)

在行驶过程中迎面而来一辆汽车,需要判断做出何种让步。这里不同于上面的单个对象,下面针对的是多个对象,因此需要考虑多对象的情况下如何进行决策。

(1)如果对面速度较快,并且对方没有停车让路的空间,可能判断停下的概率较低,而不让步的概率大(于是停车,让对面先走); (2)如果对面速度较慢,或者我们行驶的较快,应该大胆的向前走,使得对面停车(避免自动驾驶的车辆过于胆小,总是让步,降低效率)。

3、最优化求解

与上面两个问题相似,在转弯的过程中,已知以下内容: (1)浅色阴影部分表示可行解区域(决策空间); (2)梯状路径为当前的初始解; (3)五个图表示优化过程中的总花费、时间、风险、转弯加速度、加加速度(加加速度表示加速度快慢的量,可以理解为衡量紧急加速或者减速的情况)等。ps:这里并没有给出具体的优化求解策略。

4、停车问题(基于神经网络的启发式搜索/规划)

当前车辆在蓝色格子,而车位在绿色格子,红点表示椎体。 (1)启发式搜索(A):A star算法可以理解为类似于BFS的一些算法,通过暴力搜索所有可能的路径,直到找到解为止; (2)基于导航的启发式搜索:如果知道了停车场的地图,可以按照导航的路径进行寻找,相比A提高了10倍效率(但是对于存在椎体等未知的目标时,还是会导致在局部多次搜索回退,效率极低);

(3)基于神经网络的蒙特卡洛树搜索:通过神经网络(看图像是RNN)预测各个节点(每一步的)概率/状态,把节点放在蒙特卡洛树中进行搜索,考虑到人为介入、不舒适、不安全等因素,可以提前终止搜索。最终在此停车任务中288次搜索就完成停车求解,相比A star算法提高了千倍级别效率。

5、框架总览

整个框架分为三大块,第一部分是通过相机拍照获得视觉感知,将所有信息映射到向量空间中;第二部分是利用神经网络结合蒙特卡洛树等算法完成高效的决策求解;第三部分将求解结果输出用于控制车辆。

四、数据标注

大意是说之前采用外包的数据标注,但是发现效果不是很好;后来有了一个千人左右的数据标注团队,同时进行数据结构分析(和算法团队在一起研究,才知道想要什么数据,估计这也是养了个千人的标注团队的原因吧)。

1、数据标注从2D到3D、4D

(1)采用2D进行标注时,费事费力(里面说三四年前采用2D标注); (2)现在采用3D、4D标注,直接在向量空间中进行标注(这里感觉主要是因为现在采用的算法考虑到时序深度等)。 下图是一个3D点云的重建图,在此空间中标注时,3D场景中的标签可以和2D场景中的标签相互转换;同时,3D、4D的数据可以通过目标的移动、方向的转换,获得不同角度、视野的2D图像。

2、数据自动标记

自动驾驶需要很多的标记数据,这些数据由工程车、自动驾驶车进行收集。比如下图中: (1)左边是拍摄的视频、IMU信息、GPS信息、测距等; (2)经过线下的神经网络进行预测,获得深度图、目标、坐标等; (3)经过处理,特征重建,获得重建的3D标签以及所有目标的运动趋势。

3、数据重构

图像在进行重构时,将2D图像的所有像素映射到对应的语义信息中,也就是一个2D的像素,对应一个向量空间中的像素语义。下图表示的是,车辆在路面上行驶时,通过神经网络的隐含映射,每个像素都有对应的语义信息。

下图展现的是一个车辆在行驶时对拍摄的路面进行语义重构,可以绘制出整个道路的情况。

4、多目标/角度信息重构

不同的车辆经过相同的位置时,拍摄到的信息不同,通过多个车辆拍摄到的结果进行融合,可以获得最新、准确的路况信息,而未经过的车辆,可以根据别的车辆走过的信息进行预判。 (1)下图展现的是多个车辆经过同一位置时绘制的不同道路语义图。

(2)多目标/车辆结果融合可以获得路况的准确信息,此外可以通过融合的方式,减少数据的误差、噪声等,提高数据的准确性。(这种技术出来可以用来重构路面信息,还可以用来重构3D点云等信息)

5、网络训练中去遮挡数据

由于拍摄的数据通过重构,可以获得3D、4D的语义信息图;在网络训练中,可以在任意时刻、任意位置获得所有目标的所有信息,在去遮挡、目标跟踪、路径、速度预测等任务中;这些高质量的数据,可以用于训练出更加强大的网络。

6、数据融合

将以上所有的技术、数据、处理过程进行融合,可以获得准确的3维信息感知。

7、基于视觉的自动驾驶(去除雷达)

通过这种数据标注的方式,在移除雷达之后,短期内效果不是很好,但是随着时间的推迟以及网络的训练加强,当存在意外情况(比如下图中车辆倾泻垃圾导致相机无法拍摄到目标)时,也能很好的预测前方车辆的速度和位置。

8、数据获取

在通过大量的车队以及投入使用的车辆,用来获取大量的极端情况下的数据,并自动标注。

五、数据仿真

1、车辆仿真

通过仿真车辆在道路上行驶,获得大量与真实场景相似的自动驾驶数据。

2、环境仿真

通过仿真,可以获得极端情况下的数据,比如下图中两个人和一个狗在高速上奔跑(左)、密集行人的运动预测(中)、复杂情况下停车(等)。

3、精确化传感器仿真

由于不同的天气、光照、角度条件下,相机/传感器获得的信息具有一定的噪声,通过对噪声的模拟增强数据的多样性,提升模型的鲁棒性。下图中左边表示的是真实情况下拍摄的结果(夜晚),右边表示仿真的结果(夜晚),考虑传感器噪声、阳光/天空光度校准、光的衍射、回复反射、运动模糊等。

4、视觉真实性传染

比如夜间拍摄时,图像存在锯齿状的伪影等,通过神经网络进行真实性渲染,降低噪声。

5、多场景、车辆、路线的仿真

6、多参数仿真

在进行仿真时,可以通过参数调整目标的数量、速度;道路的转弯角度、道路的宽窄等,用于参数无穷无尽的数据流。

7、场景重构

下图中左边表示真实的相机拍摄结果,中间表示特征信息,右边表示场景重构的结果。通过这样的方式,当车辆遇到故障或者是复杂的情况时,通过场景重现的方式,可以重新对模型进行训练,找到错误的地方。

五、硬件

后面主要就是介绍DOJO的计算集群以及芯片方面的,由于对这些不是很懂不做解读,反而这一部分是短时间内国内最欠缺、最难超越的部分。 在算力、散热、带宽等方面都有很大的突破。这里可以移步知乎大佬的DOJO介绍

我国人工智能、自动驾驶、GPU的发展任重而道远。

参考:

https://www.bilibili.com/video/BV1WA411c7qA?share_source=copy_web

Tesla AI Day最全、最精炼自动驾驶解析(感知篇) - 知乎

Tesla AI Day关键技术解析(决策规划篇) - 知乎

发布于 2021-10-06 15:11

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章