欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

谷歌自动驾驶这些年练就了哪些老司机?

程序员文章站 2022-05-01 17:12:54
最近,一则关于美国高速公路安全局宣布就一辆特斯拉发生的事故展开调查引起业内对于自动驾驶技术的热烈讨论,随后宝马集团就携手英特尔与Mobileye,宣布三者将在2021年推出全自动驾驶汽车,进而又传出苹...

谷歌自动驾驶这些年练就了哪些老司机?

最近,一则关于美国高速公路安全局宣布就一辆特斯拉发生的事故展开调查引起业内对于自动驾驶技术的热烈讨论,随后宝马集团就携手英特尔与Mobileye,宣布三者将在2021年推出全自动驾驶汽车,进而又传出苹果、沃尔沃、奔驰等公司将于2021年推出全自动驾驶汽车的消息,一时间整个自动驾驶圈内好不热闹。

在一众从事自动驾驶研究的科技公司与汽车巨头中,最引人关注的就要数谷歌了,一方面是因为谷歌是一家非常令人尊敬的互联网公司,另一方面则是因为谷歌在自动驾驶领域已经处于某种程度的领先地位了——在其他公司都还在进行小范围内部测试的时候,几十台挂着Gooole

Logo的自动驾驶汽车已经在美国的街道上大摇大摆地跑了好几年了。今天,就带您一起来看一下谷歌自动驾驶项目的起因、工作原理及其背后的发展故事。

缘起DARPA汽车挑战赛

2004年3月,美国加州莫哈维沙漠中尘土飞扬,15辆外观怪异的汽车在沙漠中“怪异”地行驶着,有的在原地转圈,有的左摇右晃,还有跑着跑着翻倒在地,甚至是撞上围墙的。

这就是由美国国防部先进研究项目局DARPA(Defence Advanced

Rearch Projects Agency)举办的第一届无人驾驶汽车陆地挑战赛(Grand

Challenge)的场景。该场比赛的设计长度为240公里,但是没有一直队伍能够跑完全程。第一名由卡耐基梅隆大学的悍马获得,但是这辆悍马也仅仅行驶了11.78公里。

2005年,DARPA将比赛的奖金由100万美金提升到200万美元,共有二十三支队伍站在了起跑线上。最终,共有五支队伍穿过尘土到达终点,而斯坦福大学的Stanley——一辆改装的大众途锐,则站在了冠军的领奖台上。

这辆赛车由斯坦福大学计算机系与AI实验室教授Sebastian Thrun(塞巴斯特安·特龙)带领自己的学生打造,并得到了大众与红牛的赞助。在赢得了本届比赛之后,谷歌的拉里·佩奇和谢尔盖·布林就找到了特龙并邀请其加入谷歌并建立一个神秘的硬件实验室——即后来的Google X。

谷歌自动驾驶这些年练就了哪些老司机?

2007年,DARPA增加了赛事的难度——增加了一段城市环境的赛道,参赛车辆需要在前乔治空军基地内的模拟街道中完成比赛,刚刚加入谷歌的特龙这次继续代表斯坦福出战。这一次,他们的赛车由途锐换成了帕萨特旅行版,而车身上的赞助商LOGO中,也多出了Google与Intel。

虽然特龙的队伍在这届比赛中败于卡耐基梅隆大学——取得了第二名的成绩,但是谷歌却顺利地招募到了包括塞巴斯特安·特龙在内的一批无人驾驶领域的优秀人才,并于2009年正式启动了谷歌自动驾驶汽车项目。谷歌的自动驾驶项目很好的继承了特龙在DARPA比赛里面的经验,在项目逐渐上路之后,特龙于2011年成立了一家在线教育公司Udacity,并从那时起逐渐淡出了谷歌的自动驾驶项目,该项目技术主管克里斯·厄蒙森(Chris Urmson)则逐渐代替特龙代表谷歌自动驾驶项目出现在公众视野之中。

谷歌自动驾驶项目最开始用的是丰田的混动车型——普锐斯,而后又开始使用雷克萨斯旗下的混动SUV,RX450h,最后又自行开发了一款名为Google

self-driveing prototype vehicle(谷歌自动驾驶原型车)的自动驾驶电动车,这辆汽车的外形可爱且呆萌,在路上一眼就能够识别出来。谷歌方面表示,之所以采用了这种呆萌的造型,主要还是为了消除人们对于自动驾驶汽车的恐惧感,以便更好的推进其在公开道路上的测试工作。

谷歌自动驾驶这些年练就了哪些老司机?

现阶段谷歌已经淘汰了所有的普锐斯自动驾驶车型,取而代之的是24辆雷克萨斯RX450h混动SUV与34辆谷歌自动驾驶原型车,分别在加州山景城、亚利桑那凤凰城、德州奥斯丁以及华盛顿州柯克兰四座城市进行测试。从2009年项目启动到2016年5月31日,谷歌各类自动驾驶汽车已经在自动模式下行驶了累计行驶了260万公里,虽然发生了共计12起各种事故,但是谷歌方面表示没有一起事故是由自动驾驶汽车引起的。

为什么不是ADAS

不管是从高精度地图的普及程度、传感器性能还是从AI的技术水平、市场接受程度等方面来说,自动驾驶在短期内都不大可能实现大规模的商用,所以更接地气的ADAS(高级辅助驾驶系统)则成了车厂与配件巨头们争相发展的领域,然而就在他们为ADAS系统忙的不亦乐乎之时,谷歌却特立独行地直接跨到了全自动驾驶阶段——直接让一众传统车厂们惊到下巴落地。

其实谷歌最开始也考虑过推出辅助驾驶系统(ADAS),只不过后来一个撅着屁股的谷歌员工让他们放弃了这个想法。

2012年,谷歌自动驾驶项目团队将几辆雷克萨斯RX450h测试车交给其他部门的同事使用,以获得一些反馈信息。“其中有一名保时捷车主,过来跟我们说,你们这群人真蠢,竟然要做无人驾驶汽车。”谷歌自动驾驶汽车项目技术主管克里斯·厄蒙森在一次TED演讲上这样讲道,“不过他们最后还是屁颠屁颠地把这些车开走了。”

谷歌自动驾驶这些年练就了哪些老司机?

几周时间就这样过去了,这些谷歌员工们将测试车交了回来,“他们的反馈非常正面,大家都被我们的进展惊呆了,当然,还包括那名保时捷车主。”厄蒙森说, “但是我们却一点也高兴不起来。”

在将这些测试车交给谷歌员工们之前,厄蒙森及自动驾驶团队对他们进行了两个小时的培训,并犹如近期发布了Autopilot功能的特斯拉一样反复叮嘱他们“要保持高度警惕并时刻准备接管车辆”。然而车内摄像头录下来的情景却让厄蒙森们哭笑不得。

“有发短信的,有打电话的,有使用笔记本电脑的,甚至还有跑到后座睡觉的。我们其中的一个员工在驾驶时发现自己的手机没电了,他首先转过身在后排的包里拿出来了一台笔记本电脑,然后发现还需要数据线。所以他又转过身去,撅着屁股在背包里继续寻找他的数据线,”厄蒙森在TED的演讲上讲到,“最后,他找到了自己的数据线并且成功地通过电脑给他的手机充上了电。”

厄蒙森表示,那时候的测试车还处于非常早期的阶段,很容易出现各种问题。而他们的员工们在尝试了一两次之后,就大胆地将驾驶任务交给了这些测试车,“要知道他们可是在以70英里/小时的速度在高速上行驶!”厄蒙森说道,“在取得一两次成功之后,人们总是非常容易信任科技的能力。”

在上述测试之后,谷歌的自动驾驶团队就觉得驾驶辅助功能很不靠谱,因为驾驶辅助功能会让人们掉以轻心,并将拥有驾驶辅助功能的汽车当成全自动驾驶汽车来使用。所以谷歌就这样直接跳到了全自动驾驶级别,即美国高速公路安全局(NHTSA)为自动驾驶定义的第四级别。

谷歌团队的逻辑在今年引起广泛关注的特斯拉事故上得到了验证并由自动驾驶背了黑锅——一名特斯拉的铁杆粉丝违反使用规定在非封闭道路打开了特斯拉的Autopilot功能(自动巡航,并非自动驾驶功能)并在车辆行驶的时候观看《哈利波特》,最终出现严重的交通事故并失去了生命。

横着的路灯

谷歌自动驾驶这些年练就了哪些老司机?

谷歌自动驾车项目最早在其总部所在地,加州山景城的街道上进行公开路测,随后于2015年9月将其公开路测地点转移到了德州的奥斯丁,也许是因为这帮技术大牛太宅的原因,他们来到了奥斯丁之后却傻眼了——这里的信号灯都是横着的,而谷歌老家加州山景城的信号灯则都是竖着的。

不过就算是这些信号灯都是竖着的,谷歌的自动驾驶汽车也无法直接在德州开启自动驾驶模式。每当到达一个新地区,谷歌的工程师们都需要先开着谷歌雷克萨斯自动驾驶汽车在街上玩命地转悠——用车顶的那个激光雷达绘制当地的高精度地图(当然,还包括这一地区的交通信号灯的数据)并将他们上传到谷歌的数据库中。

谷歌自动驾驶这些年练就了哪些老司机?

不管是谷歌自动驾驶原型车还是谷歌雷克萨斯自动驾驶车,都得依靠高精度地图才能行驶,这种高精度地图与常见的Google

Map可大不相同,它是一种3D地图,并且用有深度信息,还包含了几乎所有的地理数据,包括马路道牙的高度、十字路口的宽口、交通信号灯的高度、路旁消防栓的位置与高度等等。

谷歌的工程师们利用装在无人车顶的激光雷达进行地图的测绘工作。具体原理跟物理课上利用回声测量距离一样,只不过这里测量的是激光的回弹时间。有了原始的地理数据之后,谷歌的地图团队会通过人工去标注关键的地理信息,例如信号灯的位置、车道线、道路宽度甚至是弯道的曲线等信息。

谷歌自动驾驶这些年练就了哪些老司机?

有可这种级别的高精度地图,谷歌无人车就能测算出自己在道路中的位置了。谷歌的做法是进行地图比对,即当无人车走在路上的时候还会再对周边的地理信息再扫描一遍,然后把现在的地理信息与之前人工扫描的信息进行比对,“这样电脑就能测算出无人车在地图中的位置了,且精度在10cm以内,”谷歌的一名研究员在项目报告中写到,“所以我们并不是单纯地依靠GPS系统、或是道路标线这样的单点数据来进行导航。”

鸭子、小狗与超级英雄

谷歌自动驾驶这些年练就了哪些老司机?

在一个天气晴朗的下午,一辆谷歌雷克萨斯无人驾驶车正悠然地行驶在自动行驶在加州山景城的大街上。车里也坐着谷歌的测试司机,虽然他的主要任务就是睁大双眼用眼睛看而已。然而却突然碰到了一辆“小狗动力”的滑板车(谷歌描述为Dog-powered

skate),——一个年轻人戴着墨镜与耳机站在滑板上面,手里拉着缰绳,而缰绳的前面则是一只卖力前进的小狗。

虽然为这个混杂着酷炫与幽默的场景吃了一惊,并且也十分同情那条拉着人走的小狗,但是这名测试司机却并没有停止这辆雷克萨斯RX450h的自动驾驶模式。

除了碰见过“小狗动力”滑板车之外,谷歌自动驾驶汽车们还碰见过其他各种千奇百怪的情景,例如曾有一辆谷歌自动驾驶原型车就碰到了一名老太太坐着电动轮椅在车辆前面转来转追赶一只鸭子的场景。虽然这辆呆萌的原型车此刻的内心是崩溃的,但另外一辆谷歌无人驾驶原型车则碰到了更神奇的情况:蜘蛛侠、小怪兽、方盒子,甚至还有一颗海王星!

谷歌自动驾驶这些年练就了哪些老司机?

跟上面那辆碰到“小狗动力滑板“的雷克萨斯一样,谷歌自动驾驶汽车们并不会因为无法识别这些物体而产生错乱,相应的,这些自动驾驶车辆会对其进行定位、分类、追踪并预测它们的行为,然后执行一个通用的行为准侧——减速、躲避或者直接是停车等待。

“我们并不会开发一种算法来教会我们的车辆去识别这些千奇百怪的事物,而是赋予了这些车辆最基本的识别能力,这种能力能够让它们去识别各种物体,以及其他任何道路使用者。”谷歌无人驾驶项目负责人,克里斯·厄蒙森在TED的演讲上如是说道。

现在,让我们来总结一下谷歌自动驾驶汽车的到底是怎么工作的:

1.人工驾驶自动驾驶车辆,并通过车顶上的激光雷达事先绘制某一区域的高精度地图。

2.自动驾驶汽车自行上路行驶之后,再次扫描周边环境,并与数据库中的地理信息进行比对,以确定位置。

谷歌自动驾驶这些年练就了哪些老司机?

3.激光雷达、摄像头、超声波雷达不停探测周边的环境,识别关键地理信息与运动物体,并对之进行标注与追踪。其中激光雷达识别周围的所有环境与物体,摄像头识别信号灯信息与近距离的运动物体,超声波雷达则探测与周围其他物体的距离。

谷歌自动驾驶这些年练就了哪些老司机?

4.知道了自身的位置、其它物体的位置与运动方式之后,再结合着交通规则(如红灯停车,按车道行驶),车载电脑就能计算出行驶轨迹,控制车辆前进。

谷歌自动驾驶这些年练就了哪些老司机?

5.谷歌还为其自动驾驶汽车开发了一套鸣笛系统,当需要提醒其它车辆或者是行人的时候,谷歌自动驾驶汽车还能够自动鸣笛,并且还用有多种鸣笛模式,如碰到自行车在前面时会短鸣一声以提醒注意,而碰见紧急情况时则会通过长鸣来引起对方注意。

大战自行车

所有的谷歌自动驾驶汽车都会共享数据,它们在路上扫描到的不同物体的轮廓数据、不同物体的运动模式、红绿灯信息,甚至是骑行者的转向手势等信息都会被上传到谷歌的数据中心,据谷歌方面介绍,谷歌数据中心单是交通信号灯的各类数据就有数百万条。厄蒙森表示,基于谷歌收集的海量数据,谷歌通过计算机模拟不同的路况条件,也能达到实现让谷歌自动驾驶汽车学习驾驶技能的效果。“总的来算,我们每天模拟行驶300万英里,”谷歌在其项目月度报告中写到,“这需要很强劲的计算能力,不过好在我们能够寻求谷歌旗下各个数据中心的帮助。”

谷歌自动驾驶这些年练就了哪些老司机?

谷歌称其自动驾驶软件的驾驶水平相当于一个拥有90年驾龄的人类——很厉害的水平,不过这位90岁高龄的驾驶者明显还有很多的改进空间。

2015年8月,德州的奥斯丁的天气依然炎热。一辆谷歌自动驾驶汽车探测到了路口的红灯,顺利地停在了十字路口,这看起来和以往的测试一样,等待红灯结束,然后走过这个路口。然而就在绿灯点亮的那一刹那,与谷歌自动驾驶汽车相垂直的方向上驶来一辆自行车,这辆自行车的骑手并没有像普通自行车的骑手那样放下一只脚来支撑自己,而是站在踏板上通过来回的前进后退来控制平衡。

这一行为对于人类司机来说很容易理解,但是却难倒了谷歌的自动驾驶系统,此时谷歌自动驾驶汽车这边是绿灯,而骑手那边是红灯。所以谷歌自动驾驶汽车探测到骑手的前进动作之后,会判定这名骑手要闯红灯,所以谷歌自动驾驶汽车就停下来等待自行车的通过。而当那名骑手前进完又开始后退的时候,谷歌自动驾驶汽车终于觉得可以安心驶过路口了,结果刚没走几步,这辆自行车又前进了,所以这辆刚起步的谷歌自动驾驶汽车就又停在了路中间。

“我们来来回回这个动作有整整两分钟,谷歌自动驾驶汽车一直没能穿过这个路口。”这名骑手在一个自行车论坛里写到,“车里的两个人一边笑着一遍往笔记本电脑里记录情况。”虽然跟谷歌的自动驾驶汽车有了一次愉快的接触,但是这名骑手却表示自己觉得自动驾驶汽车比人类驾驶的汽车更加安全。一名谷歌的发言人称这一情形正是谷歌想从社区中得到的反溃谷歌自动驾驶汽车们碰到的罕见情况越多,它们就越能够为未来替代人类司机做好准备。

憋了七年未市场化,谷歌为何如此淡定?

虽然谷歌的自动驾驶项目已经进行了7年,累计行驶了260万公里且相当于拥有了90年的年龄,但是至今也并没有看到其投放市场的意思,相反我们看到市场上特斯拉、沃尔沃等车厂已经开始借“自动驾驶”之名大声吆喝,也引来不少用户为之掏腰包。这背后的原因,核心在这两点:

1.谷歌作为一家科技公司,其主营业务跟汽车其实并不相干,所以他们并不像车企那样急着通过新技术的应用来吸引市场的注意以促进销量;反而更想憋个大招,推出时就成为一个可靠的标准系统。

2.自动驾驶的核心——人工智能系统,在眼下仍无法理解现实生活中近乎无数种的特殊情况(如上述自行车的例子),这也是谷歌自动驾驶项目在忙活了7年之后却仍未推向市场的最根本原因。

结语:驶向未来的自动驾驶

现阶段,有绝对大多数的交通事故都是由人为因素造成的,包括分心、情绪失控、反应不及时等。而自动驾驶汽车则能够完美地解决上述问题,保证交通安全,并且还能够帮助我们提升交通效率,解决拥堵状况。然而在自动驾驶的普及却仍然面临诸多挑战,包括高精度地图的普及、传感器性能的增强、配套法规的完善以及驾驶伦理的设置等等。

虽然问题重重,但是我们也都都心知肚明,科技的进步速度往往会超出我们想象,谷歌的Alpha Go已经位居围棋排行榜第一名的位置、美国已有多个州通过相关的法律允许自动驾驶汽车上路进行测试、科技巨头和汽车制造商们纷纷抛出了自己的自动驾驶计划等等。所有的这一切都在表明自动驾驶汽车离我们越来越近。

谷歌自动驾驶项目的技术主管克里斯·厄蒙森在2015年那场TED演讲的最后,展示了一张照片——他的两个儿子,一个11岁,1个12岁。“你们都在问我谷歌的自动驾驶汽车什么时候能够正式推出,”厄蒙森笑着说道,"而我的计划则是让我的大儿子到时不用再考驾照了。”(美国法律规定16岁即可考驾照,所以厄蒙森指的是2019年。)