Tesla FSD beta v10推送及若干关键点表现评价

来源:公众号“燃云汽车”
2021-09-18
1673

Tesla FSD beta v10推送有快一周了,内网外网基本上是一片寂静。作为技术上属于上了台阶的大版本,AutopilotFSD v10发布却没怎么引发外界关注也确实挺令人意外的,除了那一小帮子拥趸还在针对性测试和发布路测视频结果。所以小编也不打算长篇累牍了,也许大家对于迟迟不过关(过那个期望中的Level-5Full Autonomous Driving System)的现象不耐烦了吧?我们今天就只简单说说FSDbeta v10在几个关键点上实际表现。

=====================

 

FSD beta v10正式的版本序号为2021.24.15,主要功能在随车版本推介中只有三条,首先是FSD本身的进阶(没有描述具体的进步细节意味着这个版本的自动驾驶能力提升不是聚焦在某一两个Feature上的提升,而是底层能力的提升,或者是重新设计、调整);其次是Driving Visualization可视化UI的提升,如下图所示,黄色箭头所指示的“灰色车道线”显示确实是同之前的版本有了重大差异,车道线线形边缘锐利,色深均匀,似乎不再使用之前颜色深度和模糊度来区别显示线条标识预测结果的置信度了(对于这个推理,小编不能证实也不能证伪),而且可以提供行驶区域内可见车道线的各种线形的显示(包括在交通驾驶环境下具有重大语义的双黄线和虚线);最后是Cabin camera,在这个版本上,座舱相机默认状态下提供对于座舱驾驶员的形态和驾驶注意力监控,并在认为具备危险时通过声音提醒驾驶员。当然,除非驾驶员许可(开启data sharing),否则座舱相机的工作闭环仅限于本车内部。

 

图片

图一【Tesla AI Day-23.png】来自Youtube账号Frenchie的FSD beta v10视频截图,URL https://www.youtube.com/watch?v=Fmj5MkyUD08&t=7s;

 

以下我们先看看可视化方面的差异,现有资料支撑这些差异的证据相对较多。

 

图片

图二【Tesla AI Day-24.png】来自Youtube账号Frenchie的FSD beta v10视频截图,URL https://www.youtube.com/watch?v=Fmj5MkyUD08&t=7s;

 

上图显示,绿色箭头所指之处,FSD beta v10可以显示具体的道路线形——双黄线,这意味着对于道路中心线的最严格的区隔线形,FSD有了明确认知。这是之前版本的FSD所不具备的。黄色箭头所指,为白色隔离桩。按照之前的处理,都是统一处理成红白相间的反光三角锥,但现在针对美国道路普遍存在的白色隔离桩(杆状结构,市区常见用于隔离自行车道和位于道路一侧的临时停车地带)有了新的分类。越来越多的道路标识和交通标识物的识别结果(分类结果)逐步走向细分化,间接说明随着Tesla Fleet上报的数据越来越多、Dojo的投入使用等因素作用下,FSD的训练数据闭环正在发挥作用。其中的关键点无非就是类似目标标注所消耗的人力资源,是否真如Tesla所强调的那样,不随着自动驾驶的Feature增长而线性消耗增长。

 

图片

图三【Tesla AI Day-25.png】来自Youtube账号Frenchie的FSD beta v10视频截图,URL https://www.youtube.com/watch?v=Fmj5MkyUD08&t=7s;

 

上图显示,路口结构内的人行横道现在有了新的可视化方法,黄色箭头所指,采用双向停车线勾勒出人行横道的外轮廓。

 

图片

图四【Tesla AI Day-26.png】来自Youtube账号Frenchie的FSD beta v10视频截图,URL https://www.youtube.com/watch?v=Fmj5MkyUD08&t=7s;

 

上图显示,红色箭头所指依然是人行横道的外廓线;绿色箭头所指为路口区域内,特地为自行车穿越路口所指示的穿越区域。仔细看可以看到感知和可视化结果为单条线,而非实际的双线车道。造成这种识别差异的原因可能是识别结果的置信度问题,在之前AI DAY上我们看到了完整的识别模块工作逻辑,类似上图这种误识别、识别遗漏和抖动的问题,原因应该是很多的。下面的场景我们可以看到更加明显的类似现象:

 

图片

图五【Tesla AI Day-27.png】来自Youtube账号Frenchie的FSD beta v10视频截图,URL https://www.youtube.com/watch?v=Fmj5MkyUD08&t=7s;

 

上图所示为一个尺度上较大的六岔路口(三条主干道交汇),跨度非常较大且不均匀。读者如果仔细观察实际上可以看到,三条交汇路,实际上两条路的自行车道是有自行车穿越路口的指示虚线的,而另一条交汇路因为跨度不大,而没有指示虚线(即途中绿色区域所指示的穿越路口的自行车道,在路口内部是没有指示虚线的)。客观讲,美国的公路系统还是比较尊重非机动车的,因为一个是数量少,另一个是确实是弱势群体,所以照顾的比较好。在国内的路口区域,如果足够面积的前提下,基本是只给出机动车左转的指示虚线,以避免机动车在路口的过分机动线路。这倒没有好坏之分。

 

但类似自行车道虚线在路口区域的过度繁琐,客观上造成路口区域地面标识繁杂,且完全没有规律可言(尤其对于神经网络来说)。上图中的黄色箭头所示,可视化UI上的道路线已经乱作一团,而且随着车辆移动在剧烈跳动,严重情况下甚至干扰车辆的路径规划,这是非常严重的识别问题。上图中的绿色箭头所示,可视化UI上的FSD规划系统输出,此刻车辆的规划路径原则还是指向导航所指向路口的右侧位置(实体车辆标识前方的点线即为规划结果),这是正常的规划输出,但是随着车辆在路口区域的深入,和不断处于“跳变”状态的地面标识线,主车车辆最终选择了完全错误的路径,如下图:

 

图片

图六【Tesla AI Day-28.png】来自Youtube账号Frenchie的FSD beta v10视频截图,URL https://www.youtube.com/watch?v=Fmj5MkyUD08&t=7s;

 

上图中黄色箭头所示,可视化显示对于路口区域的道路线识别已经进入“一踏了个糊涂”的境界,错综复杂但实际又不存在的车道线所构成的所谓的“可行驶区域”最终直接驱动主车进入错误的逆行状态,最终导致人类驾驶员的干预。这个实际表现发生在FSD beta v10阶段,而且是在Karpathy刚刚完整且自信地表述过FSD的识别功能堆栈之后,确实有点不合时宜。


视频七【Tesla AI Day-29.mp4】来自Youtube账号Frenchie的FSD beta v10视频节选片段,URL https://www.youtube.com/watch?v=Fmj5MkyUD08&t=7s;

 

视频中可以非常清晰地看到,当FSD识别模块输出的BEV视图发生剧烈变化之后,车辆的轨迹规划输出也随之剧变,最终导致进入危险的逆向行驶状态。这个异常现象至少可以证明两点:

第一,BEV视图中,最关键的内容输出还是可行驶区域的确立,如果可行驶区域的识别发生错误,将导致严重后果;

第二,Tesla在Autopilot系统内部确实不依赖HD map或者Navigation map(以及必要的高精度定位系统)等地图结构来做实时路径规划,而几乎是完全依赖实时感知系统的输出来进行路径规划的,其它所有预先制备的数据输入都是辅助。

 

图片

图八【Tesla AI Day-30.png】来自Youtube账号Tesla的AI Day视频截图,URL https://www.youtube.com/watch?v=j0z4FweCy4M&t=3678s;

 

在刚过去的AI Day活动中,一个比较受技术界关注的技术环节是Tesla在感知系统中对于Transformer神经网络结构的使用,其主旨就是提升对于自动驾驶感知模块输出即路径规划模块的输入质量。鸟瞰图 (BEV) 是一种强大且广泛采用的道路场景表示,可捕捉周围物体及其空间位置以及场景中的整体背景,实时且准确地构建BEV,对于任何一个自动驾驶系统来说都是不可或缺的必要环节。根据以往Karpathy的公开技术资料和本次AI Day的技术披露,基本可以确定Autopilot这是第一次在构造BEV构图中,使用了Transformer技术,这是一个渐变的过程。从对于道路范围内的静态和动态目标物的识别(并将其转换视角置于BEV状态之下),到关键的“可行驶区域”和道路标识线识别再将其转换与BEV状态之下,Tesla也是经历过很多技术筛选和测试之后,才走到了使用Transformer的这一步。从Karpathy在去年夏天的twitter中我们也可以看到这个艰难的选择历程,

 

图片

图九【Tesla AI Day-11.png】来自Karpathy的个人推特,URL:https://twitter.com/karpathy/status/1305302243449516032;

 

在CNN在计算机视觉领域称霸这么久之后,完全不同的Transformer Net也开始崭露头角,而且特别体现出对于一般信息(不论是视觉信息还是语言类信息)构成通吃的能力,显示出巨大的类人智能潜力。在本篇文章中小编不打算展开讲述Transformer在视觉处理中的具体工作方式,但可以提示读者的是,将车身摄像头所拍摄的2D画面,拼接、转换到带有深度信息的BEV-Birds Eye View俯视图画面(本质也是2D,忽略了高度信息),这个过程本质也是“翻译”,这和Transformer在NLP领域最拿手的语言翻译能力如出一辙。

 

即从车身摄像头所获取的单目视觉数据,翻译到融合的BEV全局数据的翻译过程,框架如下:

 

图片

图十【Tesla AI Day-21.png】来自知乎用户@潘小小的博文,URL:https://zhuanlan.zhihu.com/p/104393915;

 

上图忽略了一些在transformer标准结构中的辅助网络结构,保留了最关键的Encoder和Decoder两部分,读者可以这么理解:

1 以NLP功能将英文翻译为中文为例,如果要一个完美的(中文)翻译结果,其本质就是先彻底理解英文(即获取英文原句所代表的语义),将目标英文语句的语义用合格的key、value来表示(关于K,V的具体含义就不展开了),然后再进入以中文Query为单位和节奏的查询过程,从而最终翻译出完善准确的中文语句。这个过程和人类的跨语言思考过程是基本一致的,如果没理解原句英文的真正含义,不光是每个词的含义(做到没有生词),还包括每个词之间的关系(语法和语言约定俗成的各种规矩和惯例就是解决了这个问题),就不可能真正翻译出准确的中文语句;

2 完全可以类比的是,如果将透视视角获取的车身摄像头数据2D(模拟数据格式),转换为BEV2D数据,同样也必须要有一个彻底理解车身摄像头数据所代表的语义问题,然后将这些语义级别的数据在另外一个俯视视角,用另外一种vector矢量数据格式为主的“语言”来表达出来。这完全是在计算机视觉领域的另外一种翻译行为。

 

神经网络相对于传统程序代码构建的优势在于,只要有足够的训练数据,在某种程度上我们可以不用那么了解网络内部在训练过程中到底发生了什么样的变化,而只需要确保在足够的概率上,网络可以提供足够质量和置信度的输出即可。这也是code2.0的笃信者所信奉的:在拥有足够高质量的数据的前提下,人类可以通过训练,得到比自己直接编写更优秀的函数逻辑。

 

当然,理想丰满和现实骨干同时存在,至少在FSD beta v10的实地测试当中,我们发现Transformer所支撑的BEV视图构建能力也并没有那么强大,尤其是对于杂乱无章的场景,识别效果并不理想。以上图所举的那个跨越大尺度路口的案例来看,当道路线数据没什么规律可言时,或者说FSD尚未掌握这种规律时,BEV的输出质量糟糕,且十分糟糕。如果做个对比,在某种程度上讲,人类司机哪怕是第一次经过类似路口,也会在进入路口的时候立刻明白地面这些杂乱无章的地面虚线的实际含义。因为人类司机具备“世界知识体系”,人类司机只需要瞥一眼就不会再关注道路标识所勾勒出来的“可行驶区域”了,而转向注意路口范围内的各种移动目标(威胁目标)以及要脱离路口进入目标道路的道路结构了,这才是穿越路口的最重要的部分。

 

但神经网络,哪怕是Transformer并不具备这种累计的“世界知识体系”的能力,把虚线从地面识别出来,并明白其具体的走势和所代表的交通意义,需要大量的数据训练过程,还未见得在这个细分任务上能达到人类水准。这是个问题…..也是自动驾驶的核心问题,超越人类的第一步应该首先是拟人,而不是等待网络算力规模的升级,和数据的增加过程中突然出现的“奇点”。

 

图片

图十一【Tesla AI Day-31.png】来自Elon Musk的个人推特,URL:https://twitter.com/elonmusk/status/1437324607292428290;

 

上图显示出另外一个测试case的状态,之前的文章我们也关注过,有兴趣的读者可以往回翻关于西雅图单轨支撑对于FSD beta干扰的测试文章。

 

图片

图十二【Tesla FSD beta v9-32.png】来自Youtube博主@Hyperchange博主的视频截图,https://www.youtube.com/watch?v=7NW6mICjUvM&t=1039s;

 

在FSD beta v9的状态下,对于路面当中没有实体隔离,只有地面划线区隔的场景下,FSD在执行换道操作时,似乎不考虑轻轨支撑柱的存在,从而引发碰撞风险。这个问题的核心本质还是视觉识别的问题,如果训练中类似物体的分类不存在(因为这是罕见的case,虽然西雅图单轨交通支撑柱不算罕见,但对于刚刚进入测试阶段的FSD系统来说,算是corner case),那么似乎FSD就会忽略它的存在。

 

但在FSD beta v10阶段,似乎这个问题得到了解决,视频显示确实可以跨越地面实线而不碰撞支撑柱,但过程不算流畅,而且我们也不知道视频是否有过剪辑,成功率如何。但Elon Musk关于这个视频给出的评语是,“FSD beta可以做到直接对视频像素进行高度识别,识别并非一定需要对于被识别物体先进行分类操作,但仍然需要调整识别的敏感度。”小编理解这就是对于unknown目标的尺寸识别。

 

这几乎就是在上一期我们曾经讨论过:基于纯视觉信息的深度预测算法depth prediction,特别是对于开放道路上大量存在的、未分类的、运动状态中的目标的深度信息预测方法,严格说是不属于deep learning算法范畴的(虽然我们习惯像NN那样把它称作预测算法/prediction algorithm)。它本质上应该属于一种先进的视觉信号处理手段。而不论是真正基于deep learning的预测方法,还是基于测量的信号处理手段,他们应该联合起来共同构成自动驾驶车辆的感知体系的解决方法才合理,而不是厚此薄彼,甚至互相攻击。小编在这里特别需要指出的是,2019年夏天Elon Musk在Tesla AD开放日上说的那句“Anyone relying on Lidar is doomed…”确实有点过分了。在道路行驶环境下,对于自动驾驶车辆所必须遵循的基础运动学原理,应该得到首要的尊重和关注。例如:第一类问题:其他道路目标是否在朝向我在运动?它的运动速度如何?体积有多大?等等….. 其次才是去试图弄清楚这个道路目标是什么(第二类问题),而搞清楚“目标是什么”的问题会反哺对于这个道路目标做运动趋势判断的准确性。从这点上看,激光雷达Lidar的测量能力,是符合这个优先级顺序,可以精准地、不受标注数据训练的数量和质量约束,去判断目标的第一类问题属性,判读结果往往具备高置信度和超低时延等优秀素质,目前从传感器的种类和性质看,还无出其右者,这当然是个值得尊重的技术。而更现代化的技术手段,位于后台的deep learning网络可以帮助自动驾驶系统更好地解决上述第二类问题:即目标是什么?而价格低廉、安装便利且目标信息捕获素质丰富的视觉传感器,就当仁不让地扮演了为deep learning提供素材的角色了。在光学焦段合适、可见光反射度合适的范围内,视觉传感器可以提供类似人眼的信息丰富度,如果搭配经过充分训练的后台NN网络(类似人类大脑),在很大的程度上camera+NN的组合就可以解决道路环境下的物体类别的识别问题。当然这个所谓的“物体识别”问题没有那么简单,它至少应该是一个包含图像分类对象检测分割的系列问题。

 

Elon Musk这里所指的对于直接识别video pixel的技术(识别高度),应该就是属于我们所说的第一种技术,对于像素直接操刀执行预测,而无关分类结果。具体的细节有待于更多观察结果,而且AI Day上所展示的识别堆栈中也不涉及这一部分。

 

关于FSD beta v10,目前值得关注的内容并不多,读者如有疑问,可以后台留言进一步讨论。


收藏
点赞
2000