美东时间2016年5月7号中午,人类历史上第一起无人驾驶的致死事故发生了。和以往Google无人车上被积雪压垮的松树枝挡住摄像头视线,无人车因为“看不清”而导致的急停事故不一样,这一次的事故真真切切发生于我们人类驾驶员的真实驾驶旅途中。
一辆Tesla 2015 Model S的车主,前海豹突击队队员,因为过于信任Autopilot系统,选择在驾驶的时候观看《哈利波特》,加上特殊环境导致两个传感器(计算机视觉与毫米波 雷达)同时失效,全速撞上了一辆左拐的白色拖车,从车底穿过后,又撞上了两个护栏,最终重伤后身亡。
事发地点Google地图如下:
事故发生前后双方驾驶路线如下:
笔者在参考NHTSA(美国国家公路交通安全管理局)的回应,Tesla的官方博客以及Elon Musk的本人的发言后,试图梳理整个事故,并回答几个关键的问题:
1、如果人类驾驶,此次事故是否可以避免 ?
答案是肯定的。事发地点地形开阔,且当天天气状况良好,人类驾驶员有足够的时间对大卡车做出反应,并做出刹车或绕道等避让动作。
2、为何来自Mobileye的计算机视觉传感器失效了?
Tesla 用来做无人驾驶的主要的传感器,来自于一家叫做Mobileye以色列公司的一款叫做EyeQ3的视觉传感器。但是,基于以下几个原因,该传感器在那个特点的时间和特定的地点失效了:
1)拖车过于庞大,且采用了纯白色涂装(见上图);
2)当天过于强烈的阳光反射,没有纹理的白色的车体使得摄像头无法提取纹理,分辨出是一辆有威胁的车辆;
3)当时蓝色的天空背景,加上大片的白色面积,导致EyeQ3认为出现在前面的白色块是一朵漂浮在空中的云朵……;
4)和一般的行车记录仪使用的广角摄像头不一样,EyeQ3选用普通摄像头,于是车头驾驶舱的信息未能被采集到,计算机能看到只有纯白色的车身;
5)那辆白色的汽车下方未作任何的装饰。如下图所示,如果像英国那样,强制对所有的卡车、拖车下方给出栅栏保护,或许EyeQ3会分辨出来。且Tesla会在前舱被撞后激活它的被动保护系统(如安全气囊等)。
3、为何毫米波雷达失效了?
有人认为是因为毫米波雷达安装过低,发射的毫米波从当前的卡车下方间隙出处穿越过去。他们低估了毫米波雷达设计者们的智慧……事实上,根据Musk 本人的Tweet(见上图)来看,情况恰恰相反: 雷达精确的测算了出了前方有一个巨大的障碍物。 但是,因为卡车过大的反射面积以及过高的车身。从毫米波雷达的角度来看,它更像是一个悬挂在道路上方的交通指示牌。于是,毫米波雷达系统做出了决策: 尽管汽车前方有一个巨大的障碍物,但那是悬挂在控制的指示牌,可以安全通过。
4 、为何两个传感器会同时失效?
显然,特斯拉没有做好传感器融合的工作。视觉系统认为是一朵白云, 毫米波雷达认为是一个悬空的交通指示牌。两个传感器得出彼此矛盾的结论,但特斯拉的算法认为,尽管二者有矛盾的结果,但二者结果都是可以安全通过的,于是 放心大胆的让汽车继续全速前进,悲剧就此发生。采这种融合算法的根源在于传感器无法保证高精度的识别,使得更高层的融合算法不得不采取某种折衷策略。
检测错误
5 、我们该如何避免类似的事故继续发生?
总结一下, 事故发生的几点原因在于:
1) 强烈的阳光照在白色车体上,让计算机视觉失去了提取纹理的功能;
2)巨大的白色色块与长焦摄像头,以及蓝色背景,让计算机视觉认为出现在前方是白色的云;
3) 过于巨大的反射面积,让毫米波误认为是广告牌或交通指示牌;
4) Tesla未能完善的传感器融合算法,让两个互相冲突的逻辑同时通过;
5) 车主过于相信Autopilot 系统,导致放弃了对车身控制;
幸运的是,现有的技术条件下,此类事故完全可以避免: 如果增加一个广角摄像头,采集到了车头的信息;如果毫米波雷达测量更精确,或者在前方安装了多个雷达,做雷达网络融合;如果特斯拉的传感器融合技术考虑的 更全面;如果安装了冗余的激光雷达; 如果大卡车有法规规定,强制进行涂漆装饰。这起事故都可以被避免。
同时,作为国内毫米波雷达研发人员,我们也已经得知:
1)事发前Mobileye开发的下一代的计算机视觉已经加上了广角镜头,将更多的信息囊括进来;
2)新一代的毫米波雷达系统将具有更高精度的识别和反应时间。
3)毫米波雷达成本的迅速下降,也将使五个毫米波雷达(一个77G长距离雷达,加上4个短距离雷达)成为标配,而不是现在Tesla现在这样使用单个远程77G雷达。
我们有理由相信,随着技术的进步,类似的事故发生概率会被逐渐降低。但在此之前,是一个人工智能和手动驾驶长期磨合的过程,仍需要驾驶员全神贯注地参与汽车的驾驶。