NVIDIA程亚冰:深度解析英伟达完全自动驾驶方案

2017-10-24  |  By Clover  |  In 研讨会

英伟达汽车事业部汽车解决方案架构师程亚冰先生在现场深度分析了英伟达的完全自动驾驶方案。

VehicleTrend车势讯 2017年10月18日,由集邦咨询、VehicleTrend车势主办,北京中汽四方公司协办的2017全球智能与新能源汽车产业发展趋势高峰论坛在中国北京国家会议中心309A报告厅落下帷幕。英伟达汽车事业部汽车解决方案架构师程亚冰先生在现场深度分析了英伟达的完全自动驾驶方案。

深度解析英伟达完全自动驾驶方案

▲英伟达汽车事业部汽车解决方案架构师程亚冰

程亚冰的演讲围绕英伟达自动驾驶解决方案展开,主要分为三部分:

第一,深度学习。此前,英伟达是一家显卡公司,近年来,在其 CEO 黄仁勋的带领下,英伟达已经转型为人工智能公司。

第二,AI技术。深度学习技术如何切入自动驾驶。

第三,英伟达软硬件自动驾驶解决方案。

深度学习:实现人工智能的有效方法

▲现场观众

程亚冰认为,深度学习近几年发展非常快,主要得益于以下方面:

算法领域的改进。在卷积神经网络这种深度学习技术中,算法在四五十年前就已经有了,程亚冰认为近年来驱动深度学习快速发展的原因是大数据和高性能计算平台。

程亚冰解释:“一辆自动驾驶汽车身上有各种传感器,每天产生成百上千GB的数据量。仅靠传统的CPU去运算处理如此大的数据,肯定不行。用传统的计算机视觉或者其他的传统算法解决,也未必可以。而深度学习在计算机视觉、自然语言处理、语音识别领域已经超过了人类的水平。所以说,深度学习技术可应用于自动驾驶的各种模块。”

他补充说:“目前,Facebook、谷歌、百度、腾讯、阿里等互联网巨头,以及自动驾驶OEM、Tier 1厂商,基于英伟达 GPU平台开发自动驾驶。其最底层的是英伟达GPU的硬件平台,在硬件平台之上,我们有cuDNN深度学习的加速库,可使开发者便捷地调用英伟达的函数库,无需重新开发代码。”

据程亚冰介绍,目前全球所有主流的深度学习框架都支持英伟达的GPU,开发者可在英伟达GPU平台上开发各类应用,除了自动驾驶之外,还有语音识别产品、计算机视觉产品、医疗领域、金融领域等等。

人工智能应用于自动驾驶

深度解析英伟达完全自动驾驶方案

▲程亚冰先生演讲PPT部分内容

自动驾驶最底层是汽车本身,车上要装多种多的传染器,包括相机、毫米波雷达、激光雷达、GPS、组合惯性制导等等传感器。

4大自动驾驶模块

人工智能应用于自动驾驶有4个重要的模块,其中包括:

1.高精度地图。在传感器之上,高精度地图是重要的模块之一。程亚冰解释说,高精度地图可视为超视距的传感器。对普通传感器而言,其作用范围很有限,顶多是几百米。而高精度地图可突破传感器作用范围的限制,从宏观上显示静态物体、路标信息等等。据了解,英伟达目前正与TomTom、Here、百度、高德、四维图新等高精图地图厂商进行合作。程亚冰介绍说:“它们在我们的平台上采集数据,利用我们搭建云服务器平台存储这些信息。”

2.高精度定位模块。一些资金充裕的公司,直接采用激光雷达定位,加上非民级的GPS、组合惯性制导,其定位精度非常高,沿着车道线的定位精度甚至可做到厘米级别。但是其成本及其昂贵,短期内无法量产。当前,大部分公司基于民用GPS,加上廉价的IMU,结合相机视觉的算法。该方式能做到沿着车道线横向定位精度±20厘米,纵向在1米范围内。(如果超过1米,自动驾驶汽车在转弯时,可能会跑出去。)

3.感知模块。感知模块也十分重要。相机、计算机视觉都使用深度学习算法做感知,检测前方的车辆、行人、路牌、路标、交通灯等信息。不光是视觉,还有毫米波雷达感知、激光雷达感知……传感器感知物体之后,再做传感器融合,在英伟达软件信息站里面也是这样实现的。

4.驾驶模块。该模块是自动驾驶系统中最核心、最复杂的模块。该模块包括决策、路径规划,车体的动态控制。目前在驾驶模块,大家使用基于传统的规则的算法。比如:状态机if else……不过,当前也有基于人工智能的方式去做决策路径规划。

程亚冰认为,在以上模块中,感知模块做得非常成熟,尤其是视觉方面的感知。国内很多规模较大的自动驾驶公司,在这方面拥有很强的算法能力。

AI应用于自动驾驶的挑战

AI应用于自动驾驶最大的挑战是决策路径规划。现实世界的车道是完全未知的,且全球各地的车道错综复杂,可能存在着无数种可能。基于传统状态机的规则无法全部覆盖所有的路况信息,因此,目前业界开始尝试强化学习去做决策路径规划。

程亚冰解释:“强化学习是一个奖惩机制的人工智能技术。像饲养员训练狮子。狮子听话,饲养员给它一块肉,狮子不听话,饲养员惩罚它。就这样,狮子慢慢被驯服。强化学习在自动驾驶中也一样,自动驾驶汽车通过算法来规范,久而久之,自动驾驶汽车最后学会了一套规则。”

关于强化学习,程亚冰补充说:“自主学习不是基于规则的状态机,而是基于人类编写的代码。但是这种强化学习操作很困难,我们无法在现实世界中让人类司机驾驶汽车去做强化学习,刚开始无法保证安全。因此,大家都在用3D模拟器去做强化学习。但是,模拟器很复杂,不同于3D游戏中渲染层面的逼真,3D仿真器要完全符合物理世界属性,包括汽车的各种传感器、参数、行为,包括车体的空气动力学、现实世界的建筑、行人、路标、路牌等,物理属性和样子都要模拟出来。相当于在虚拟世界中模拟了一个现实世界,挑战非常大,我们也在做这方面的事情。”

即使是软件算法最强的谷歌,其基于AI强化学习的技术应用于自动驾驶也还有一段路要走。

另外,面对的挑战还有高精地图。高精度地图厂商通过汽车上的各类传感器抓取数据到云端。程亚冰举了一个例子,比如:人工打标。打标完了可以训练网络模型,其网络模型一部分可用到自动驾驶车上跑,另外一部分,可放在高精地图收集车上。这样,高精度地图收集车无需收集重复的道路信息,而只针对更新的路况做收集。这其中,涉及到人工智能中迁移学习的技术。

NVIDIA自动驾驶方案

深度解析英伟达完全自动驾驶方案

▲英伟达自动驾驶芯片

L4要做到高度自动驾驶,其算法规模要远远高于L3,也有多的冗余,同一个功能需要好几种算法来实现,以保证某一个算法失败随时有替代的算法去接管。

此外,L4的神经网络需要更深才能达到更高的检测率和感知能力,未来的L4将采用强化学习的路径规划。

针对于L4的挑战,英伟达发布了全球第一款车载高性能芯片 XAVIER。该芯片其实是一个 SoC,它集成了8核的CPU,512核的英伟达全新Volta GPU,这款芯片的汽车安全等级为ASIL D级别(Automotive Safety Integrity Level 汽车安全完整性等级ASIL),同时可达到30 TOPS级别的深度学习计算能力,而功耗只有30瓦。

英伟达的自动驾驶平台叫做DrivePX平台,包括底层的硬件计算平台和整套的自动驾驶软件协议栈。

英伟达硬件计算平台

英伟达的硬件计算平台有多个型号,涵盖了L3到L5各个等级。另外,整套的软件协议站,有神经网络、传感器融合技术和并行计算、路径规划、决策全套的协议。英伟达也在做整套的软件协议栈,其最终目的是提供整套的软硬件解决方案。

计算平台上有丰富的外设接口,不仅支持视觉相机和12路高清相机,还支持毫米波雷达、激光雷达、GPS和IMU等等。此外,英伟达自动驾驶软件协议栈是开放的协议栈,客户可调用英伟达的API做二次开发,同时还可替代其软件协议栈中的某些模块,比如:高精地图模块。

英伟达DrivePX平台涵盖L3-L5。从高速公路上的AutoCruise(L3),到点到点行程的AutoChauffeur(L4),再到针对完全无人驾驶汽车的Pegasus(L5)。

英伟达自动驾驶软件协议栈

基于计算平台之上,英伟达也发展了整套的协议栈。程亚冰介绍道:“英伟达计算平台之上包括了QNX操作系统,该操作系统完全符合车规级别以及ASIL D级别。另外,还有英伟达CUDA编程工具,cuDNN、TensorRT 和基本的并行计算、深度学习的工具。在中间层是我们的Driveworks SDK,可开放给客户API接口,允许客户进行二次开发。这之上就是各种神经网络,加上路径规划、动态控制、高精度定位等等模块。总体可以看到,在DrivePX平台之上,外接了从操作系统到顶层自动驾驶应用全套的软件协议栈。”

英伟达自动驾驶解决方案神经网络

英伟达自动驾驶解决方案里面,神经网络只是其中一部分,虽然英伟达自称为人工智能公司,但是该公司并非完全依靠DNN神经网络,也会使用传统的计算机视觉的算法,还有毫米波雷达、激光雷达等算法。

首先为了安全,英伟达在自动驾驶SDK里放了各种冗余。其一个功能可能用好几种算法实现,随时都有Backup。

英伟达Driveworks里提供的几种神经网络针对Object级别的东西,包括行人、车、自行车、路标、路牌、红绿灯等。其中,有一个DriveNet的神经网络,专门检测车道线的LanenNet,以及检测车量前方可行驾驶区域的网络OpenRoadNet。另外,还有端到端的神经网络PilotNet,传感器过来的数据经过神经网络,数据出来后,发给汽车底层的转向角、加减速这种基本的控制信号,这是业界第一个端到端的神经网络。

文章来源:VehicleTrend车势 作者:程亚冰

 


 

返回VehicleTrend车势首页

本文是VehicleTrend车势根据2017全球智能与新能源汽车产业发展趋势高峰论坛演讲嘉宾发言整理而成。转载需标注来源!