关于自动驾驶的全面解析
扫描二维码
随时随地手机看文章
自动驾驶汽车(Autonomous vehicles;Self-piloting automobile )又称无人驾驶汽车、电脑驾驶汽车、或轮式移动机器人,是一种通过电脑系统实现无人驾驶的智能汽车。自动驾驶汽车技术的研发,在20世纪也已经有数十年的历史,于21世纪初呈现出接近实用化的趋势。预计于2015年至2017年进入市场销售。自动驾驶汽车依靠人工智能、视觉计算、雷达、监控装置和全球定位系统协同合作,让电脑可以在没有任何人类主动的操作下,自动安全地操作机动车辆。
1.自动驾驶的分级
不同组织对自动驾驶的分级标准各有不同:美国国家公路交通安全管理局(NHTSA)把自动驾驶分为五个级别,而国际自动机械工程师学会(SAE)的标准分为L0~L5共六个级别,两者的L0、L1、L2的分类都是相同的,不同之处在于NHTSA的L4被 SAE 细分为L4和L5。国内采用SAE标准较多。
L0:完全人类驾驶。
L1:辅助驾驶,增加了预警提示类的ADAS功能,包括车道偏离预警(LDW),前撞预警(FCW),盲点检测(BSD)等。
L2:部分自动驾驶,具备了干预辅助类的ADAS功能,包括自适应巡航(ACC),紧急自动刹车(AEB),车道保持辅助(LKA)等。
L3:有条件自动驾驶,具备了综合干预辅助类功能,包括自动加速、自动刹车、自动转向等。
从L2到L3发生了本质的变化,L2及以下还是由人来观测驾驶环境,需要驾驶座上有驾驶员,遇到紧急情况下直接进行接管;L3级及以上则由机器来观测驾驶环境,人类驾驶员不需要坐在驾驶座上手握方向盘,只需要在车内或车外留有监控计算机即可,紧急情况下通过计算机操作进行认知判别干预。
L4:高度自动驾驶,没有任何人类驾驶员,可以无方向盘、油门、刹车踏板,但限定区域(如园区、景区内),或限定环境条件(如雨雪天、夜晚不能开)。
L5:完全自动驾驶,是真正的无人驾驶阶段,司机位置无人,也没有人的车内或车外的认知判别干预;无方向盘和油门、刹车踏板;全区域、全功能。
现在有很多公司可以实现在特定园区内的无人驾驶,宣称已经达到了L4级别,那么是不是现阶段的无人驾驶技术水平真的有那么高了呢?这个是有一定迷惑性的。在封闭环境内固定路线L4级别的无人驾驶,和北京城区内L2级别的自动驾驶,哪个技术难度更高呢?想必不言而喻。所以是不是L4就一定比L2、L3先进,一定要具体看自动行驶的区域(封闭、开放;区域大小、复杂程度)、功能,以及环境条件(气候、时间段)。
2.自动驾驶的实现路径
自动驾驶风口来袭,科技公司、初创企业、新兴电动车企、传统车企、一级供应商争相涌入,各显神通。目前主要有两条典型的技术路径:一是以跨界科技企业、初创企业为代表的一步到位型,跨过中间级别,直指L4和L5级无人驾驶,先不考虑成本,等技术方案成熟后成本下降,再大规模商业化。还有一类是以传统车企、Tier1为代表的循序渐进型,它们在可接受的成本内推动辅助驾驶功能的商用化,然后随着ADAS功能的完善和升级,逐渐过渡到无人驾驶。
第一条路径的问题在于科技企业没有量产车的能力,靠测试车收集的数据量自然没有每辆车都安装ADAS系统那么多;而第二条路径的问题在于各项ADAS功能的拼接,是否能组成一个完整的无人驾驶系统。
科技公司的强项在人工智能技术优势,但是在汽车工程上缺乏经验。造车的门槛很高,传统车企保有全产业链优势,产品安全可靠性更高,且消费者对其品牌认可度较高,汽车产业不会被科技公司完全颠覆。传统车企拥有丰富的整车经验和完善的后市场,但随着电动车和自动驾驶大潮的来临,传统车企的危机感很强,生怕沦为代工厂。自动驾驶的研发基本都是基于新能源汽车平台,绕开发动机、变速箱等壁垒,采用电动车的电机、电池、电控核心系统,动摇了传统车企在“动力总成”的竞争优势。两大阵营各有优劣势,互相不可替代,目前越来越多地以合作和投资的形式走向开放联姻。
3.自动驾驶系统概览
自动驾驶系统的三个层级
自动驾驶系统分为三个层级:感知层,决策层,执行层。
感知层
感知层用来完成对车辆周围环境的感知识别。自动驾驶用到了各种各样的传感器,包括:摄像头、毫米波雷达、激光雷达、超声波雷达、红外夜视,以及用于定位和导航的GPS(全球定位系统)和IMU(惯性测量单元)。还有一类技术虽然不是主动式的探测元件,但是属于协同式的全局数据辅助,可以扩展智能车的环境感知能力,在感知层同样扮演着不可或缺的角色,包括高精度地图、V2X车联网技术。每种类型的感知技术都有自己的优势和弊端,它们相互补充融合,最终使智能车达到驾驶场景下非常高的安全性要求。国内企业在这一层做文章的非常多,后续小研会专门写一篇文章解析自动驾驶传感器的技术路线,欲知详情请听下回分解。
决策层
决策层是人工智能真正发挥威力的部分,和人类驾驶员一样,机器在做驾驶决策时需要回答几个问题,我在哪里?周边环境如何?接下来会发生什么?我该做什么?决策层具体来说分为两步,第一步认知理解,根据感知层收集的信息,对车辆自身的精确定位,对车辆周围的环境的准确理解,第二步决策规划,包含对接下来可能发生情况的准确预测,对下一步行动的准确判断和规划,选择合理的路径达到目标。
车辆定位
自动驾驶中车辆精确定位的方法主要有3种:
第一种是通过高精度的差分GPS+惯性导航IMU来完成,GPS定位精度高,但是刷新速度较慢,IMU刷新速度快,但是存在累积误差,两者配合使用刚好可以获得快速且精确的位置信息。
第二种是通过激光雷达+高精度地图来定位,将激光雷达扫描周围环境所获得的点云与高精度地图进行比对和匹配,从而获得位置信息。
第三种是通过摄像头图像数据+视觉地图来定位,将摄像头在行驶过程中拍摄到的图像数据,包括图像静态信息和图像间的移动信息,与视觉地图进行比对和匹配,可以获得位置信息。或者从图像中提取一些关键目标及其精确的几何特征(如车道线、地面标记、交通标牌、红绿灯等),将其和高精度地图中存储的信息进行对应和匹配,完成定位功能。
环境理解
包括物体识别和物体追踪,比如行人识别、车辆识别、车道识别、交通标识识别、行驶中车辆的追踪、行动中行人的追踪等。深度学习在这些应用中展现出了比传统计算机视觉技术更好的性能,从而被广泛应用。
行为预测
人类智能在驾驶中体现在可以根据动态变化的环境实时调整驾驶策略,同样机器也需要对车辆周边的人、车、物的行为进行预测,从而做出安全驾驶决策。
行动规划
根据车身状态数据、局部环境数据做出当下最优的行动选择,包括加速、刹车、变换车道、转弯等。
路径规划
从出行需求出发,在高精度地图的基础之上,根据全局路网数据和宏观交通信息,绘制一条从出发点到目标点的最优行车路径。
实事求是地说,国内真正进入到决策层的企业不多,有做园区、机场摆渡车的驭势科技,做高速公路货运的图森互联,还有做园区无人车和干预辅助类高级ADAS系统的智行者。你们听说过的那些单目、双目、环视视觉ADAS公司实现的大多是预警提示类功能,如碰撞预警、盲点监测等,只是停留在感知层面,没有涉及到决策。相比之下国外在决策层探索的企业就很多了,Drive.ai,Comma.ai,nuTonomy,zoox,Faraday,Cruise,Otto,Navya等等。国内的路况确实比国外复杂得多,再加上中国政府还不允许自动驾驶车辆上路路测,这些都制约着国内企业在决策层发力。
识别算法业内有KITTI(用于评测目标检测、目标跟踪、语义分割等)和Cityscapes(用于评测像素级场景分割和实例标注等)等公开数据集进行评测,但是对决策质量和规划能力的好坏还没有统一评价标准,因而无从判断各家技术能力的强弱,只能从公布的Demo中窥测一二。
执行层
自动驾驶的执行层离不开和车载控制系统的深度集成,可惜车厂和Tier1出于自我保护,不愿意对外开放车辆控制总线,一些创企无法对原车做改动,不得已只能另外附加一套电机装置,通过电机拉动钢丝绳,钢丝绳再拉动油门、制动、转向等装置完成执行动作。这种做好确实非常笨拙,操控性和可靠性很差,根本无法体现自动驾驶的优势。真正的自动驾驶必须要将决策控制信息与车辆底层控制系统深度集成,通过线控技术完成执行机构的电控化,达到电子制动、电子驱动和电子转向。
归根结底,自动驾驶的落脚点在“驾驶”不在“自动”,“大脑”再发达也要靠“双脚”来行走。不把人工智能算法落地到车辆的控制执行,你永远不知道有多少dirty work要做。例如车的转向、制动、加速,你究竟要把方向盘打多大何时回轮、刹车踩多大、驱动给多少,人类司机是凭经验来执行的,但是对自动驾驶系统来说,需要很多汽车动力学的knowhow才能完成。如果你只是单纯地在计算机上跑几个Demo,没有实打实地上车路测过,哪家车厂敢用你的算法?真上路还不得撞得人仰马翻?那些单靠几个博士弄个算法跑个测试集刷刷榜就想出来融资的初创都是耍流氓。业内人打趣说,做自动驾驶只要撞死个人,公司就可以直接倒闭了,融的那点钱还不够赔偿费呢!大家所熟知的国内计算机视觉领域四大独角兽,都未染指自动驾驶(商汤只是声称可以提供算法支持,和真正做自动驾驶还差得远呢),视觉算法在人脸识别、安防监控领域落地相对比较容易,但是在自动驾驶领域要实实在在做车的话还是有很多坑的,这就是为什么国内涉及决策层和控制层的企业这么少的原因。
中国人要想碰执行层确实非常难,国内在线控技术上仍处在研发初始阶段,技术底子薄,积累时间不足。国外车厂和Tier1垄断了自动驾驶控制执行部分,同时它们在感知和决策部分也在不遗余力地投入研发,凭借多年积累的工程能力、产品化能力和汽车经验,已有符合车规的产品成熟量产,对国内企业来说确实是不小的压力。创业企业可以通过和国产车厂、国产供应商合作研发,共同抵制国外厂商,也可以和深谙执行器改装的团队合作,介入执行层,总之未来的竞争不会是单个企业实力的比拼,而是生态联盟间的合纵连横。
自动驾驶的基本技术架构
上图是我画的自动驾驶基本技术架构,由车载系统+云端系统组成。
车载部分
感知层各种类型的传感器采集、接收的数据,通过总线进行集成,再通过数据的融合和智能化处理,输出自动驾驶所需的环境感知信息。车载传感器的优化配置,可以在保证精度和安全性的基础上,降低整体成本。
主控系统由硬件部分高性能车载集成计算平台和软件部分智能车载操作系统组成。计算平台融合了传感器、高精度地图、V2X的感知信息进行认知和决策计算,硬件处理器可以有GPU、FPGA、ASIC等多种选择,它们各自的优缺点可以参见小研以前的分析文章《AI时代,我的中国“芯”》。智能车载操作系统融合了车内人机交互、运营服务商、内容服务商的数据,为乘客提供个性化服务,真正把智能车变成下一个“互联网入口”,目前的主流操作系统包括Android、Linux、Windows、QNX、YunOS(阿里云提供)等。
最后,决策的信息进入车辆总线控制系统,完成执行动作。
云端部分
自动驾驶车辆是一个移动系统,需要云平台来提供支持。云端主要完成四个功能:
1. 数据存储:智能车路测中实采的数据量非常大,需要传输到云端进行分布式存储。
2. 仿真测试:开发的新算法在部署到车上之前会在云端的模拟器上进行测试。
3. 高精度地图生成:地图的生成采用众包形式,把每辆在路上行驶的智能车实时采集到的激光点云或视觉数据上传至云端,实现高精度地图的完善和更新。
4. 深度学习模型训练:自动驾驶的决策层使用了多种不同的深度学习模型,在《透析深度学习,其实它没那么神秘》这篇文章中小研提到了深度学习算法存在“长尾”问题,对于没见过的情况它处理不了,因此需要持续不断地通过新数据进行模型训练,来提升算法的处理能力。由于训练的数据量非常大,所以要在云端完成。
自动驾驶领域未来的重大机遇
通过上文的梳理,小研认为自动驾驶领域未来三到五年重要的早期创业和投资机会在以下几个方面:
1.传感器的选择和优化配置
不同传感器有各自的优缺点,没有一种传感器可以适用于任何使用环境。把各类传感器的数据进行融合,达到宽适用范围、高感知精度的同时,减少冗余配置,降低整体成本,提供传感器集成方案。融合架构的搭建,多种数据类型的处理,融合算法的探索,都是非常有挑战的工作,但是做好会有非常大的价值。
2.高性能计算平台
自动驾驶汽车产生的海量数据,需要车载人工智能大脑——高性能硬件计算平台来处理,国内余凯博士领导的地平线机器人是这方面探索的先驱,小研在之前的文章《AI时代,我的中国“芯”》中介绍过。
3.车联网
近几年国内后装车联网发展很快,形成了包含导航、娱乐、金融、交互、服务等功能的生态圈,未来会逐步向以智能车载操作系统为核心的前装业务演变。国内LTE-V车联网专用通信标准将于今年出台,可利用现有蜂窝网络基础设施,成为自动驾驶感知机构的延伸。
4.运营服务
汽车智能化以后会成为下一个移动终端,未来会有越来越多的运营服务商涌现,也会有更多基于内容资源、平台服务、共享经济的新商业模式衍生出来。
5.车载集成系统
面向自动驾驶的车载集成系统,需将感知、决策层的技术架构和车辆总线控制系统结合起来重新设计,将卓越的算法落地到安全、鲁棒的执行中。
6.云端
做支持自动驾驶的云平台的公司同样值得关注,包括数据集成、众包地图、模拟器、模型再训练平台等。
7.自动驾驶的商业化之路
自动驾驶的商业化应用有货运和客运两大块。货运的需求方比较明朗,有矿山和港口运营公司、物流公司、电商、出行服务运营商等,货运的工况主要是高速公路、矿区、港口等相对单一封闭的区域,实现起来更容易一些。客运在开放道路上运营还是非常困难的,目前能够落地的应用场景主要是园区低速自动驾驶,未来可能会探索给滴滴、UBER这样的运营商提供固定区域内的自动驾驶运营服务,等各类驾驶场景都验证成熟以后才会推向开放区域,最后才是卖给个人,这条路还是很漫长的。
前段时间百度无人车开源了阿波罗平台,就有好事之徒写了“百度无人车扔下原子弹,炸掉行业百亿美金投资”的软文,大有误导公众之嫌。其实自动驾驶产业刚刚起步,行业标准和技术架构都没完善,未来还需要持续探索,百度开源算法对推动整个行业的进步绝对是好事情。
汽车是个很大的产业,产业链上各个环节都有活得很好的公司,自动驾驶由于信息技术和人工智能的加持,拥有比传统汽车产业更大的市场空间,更何况电动化、智能化大潮的到来使中国企业摆脱了“历史包袱”,和国外企业站在同一起跑线上,弯道超车的机会大大的有,你且看所有一线基金在自动驾驶领域都有投资布局就能明白它到底有多被看好。
从全文的梳理可以看出,自动驾驶领域有些方向的timing已经到了,而有些方向还没到。当下我们更应该保持耐心,随着技术和产业的逐渐成熟,这些机会的启动点会一个个到来,自动驾驶是一波大的浪潮,未来十年都值得我们持续关注。