AI系列之自动驾驶(三):“解剖”汽车的“感官系统”
汽车要依靠传感器来感知周遭的环境变化,各种类型的传感器由于其属性以及技术原理的不同,各有各擅长的应用场景,发挥着其他的传感器不具备的作用。
想象一下:此刻地你正行走于繁华的闹市之中,穿梭于往来的人群之间,你随着人流而动,向着你想要到达的某座商场而出发。
你的大脑飞速的运转,尽管你丝毫没有意识到海量的数据流经由感官,源源不断地汇集到你的大脑,并在其中进行某种计算形成“思考”这一行为概念。
转瞬后,“沿着哪条路走比较近?”、“乘坐哪种交通工具会更加快捷?”、“怎样规划,可以顺道路过你想要品尝的小吃店,去犒赏一下自己的辛劳?”,这些即刻浮现在你的脑海,很快你便会从各种备选方案中找出你认为最优的路径方案。
你没有特别的去注意,但是你可以轻而易举的在拥挤的人群中来去自如,灵巧地避过前后左右所有你想避开的人和物,抵达你想要到达的地方。
因为你的眼睛为你扫描了周边的一切环境,它在第一时间向你的大脑反馈:你处于什么位置?你的周遭都有哪些事物?冲你来的电动车速度有多快?旁边的人是步行还是快跑,脚下是否有台阶或者障碍物?
你在一瞬间得到了一切的反馈。于是你停下脚步,侧着身子给飞驰的电动车让了些许空间,以便于它能够顺利通过,也使得你自己可以规避被撞的危险。
而后你加快了脚步超过了旁边的小伙子,因为他看着手机放慢的脚步阻碍了你前行的方向。
不远处向下的阶梯映入眼帘,你知道你需要放慢脚步小心的走下,使得你不至于踉跄而倒。
耳边突然传来一阵熟悉的呼喊,你在一瞬间辨别出来那是友人的声色,于是你抬起头望向声音传来的方向,看到了马路对面正在招手的她。并且,左右传来的汽笛声又使得你不得不左右环视确认安全后,才放心通过前方的路口。
你的鼻子闻到了一阵“飘香”,于是你抬头“虎视”四方,眼睛又让你找到了那家长沙臭豆腐,于是你带着友人去饕餮了一番。
最后,此行的目的地,你皮笑肉不笑地带着友人走进了一家高档商场,因为你的心反馈出一个信息——你要出血了,所以它也在滴血。
在此行程中,你的眼睛为你提供了实时的环境信息,包括:一切周遭实物的扫描,自身位置的定位,物体识别,以及周遭物体潜在移动方向及速度的测算。
就在那一刹那,你的大脑完成了一切的计算,并通过日常的所见你的大脑绘制并存储了这一代地方的高清地图。而你的耳朵,为你提供了所处位置周边物体所产生的一切声音反馈,并且可以对某条声色进行准确接收和识别,还可以根据声音的大小判断物体距离的远近,从而实现测距和预警功能。
眼睛、耳朵、鼻子、肢体甚至于你的皮肤,无时无刻不在与现实世界进行着的交互行为,及其敏锐地搜取着所有的体外信息。
现实世界通过你的这些外设“传感器”,为你提供可以描绘体外环境信息的数据流。
你的身体通过对于各部位汇集的数据流进行快速分析,并完成信息解读,为你的决策系统提供数据依据,并利用你身体中的“反馈控制系统”执行你的意志,完成与现实世界的物理交互。
如果人类作为一个“智能行为体”依靠着“人肉传感器”可以接收到源源不断地外部数据,从而实现智能决策,那么,汽车为什么不可以?
传感器如何作用于自动驾驶?如何作用于无人驾驶这一宏图伟愿?
我们终于进入了正题,没错,我就是这样任性的写了这么一大段前言,没毛病。
自动驾驶依靠传感器去获取车体周遭环境,每种传感器都有各自所擅长的优势以及限制,需要结合各类传感器的优点,进行技术互补来完成对于周围环境的理解和响应。
这些各类传感器需要通过“传感器融合”的技术手段,去完成数据收集后的分析处理,借助数据融合实现各类传感器的在环境监测数据方面的一致性视角的同步分析,来尽可能的为汽车提供周围环境的准确信息。
一、数码相机(摄像头)
数码相机之于无人驾驶驾驶就如同眼睛之于人类——人靠眼睛捕获外部信息,智能汽车则依靠数码相机获取车外环境信息。
随着相关技术的发展,数码相机的性能越来越高,这体现在:诸如拍摄速度越来越快、成像质量越来越高等方面。
将之加之于汽车上,就如同为其配备了一双可以观察世界的眼睛。这为我们之前的文章中所提到的“中层控制系统”提供了重要的数据源,深度学习算法通过这些采集到的环境数据就可以进行物体识别、轨迹预测等操作。
应用于无人驾驶领域的专业数码相机,同样远非简单记录像素值那般简单。它可以自动分析图片数据处理图片所包含的“内容”,可以自动检测出画面中的各种物体,并转化成数值表格,罗列出物体信息清单,为进一步识别和判断提供预处理数据。
但是,不同于生物体具备的“立体视觉”,数码相机可以把三维空间数据转化为二维像素矩阵,却会遗漏最关键的要素信息——深度数值。
生物体一般具备至少两只及以上的眼睛,在获取二维图像信息的同时也会依靠深度感知能力得到深度距离信息(简单来说:咱们不仅能在老远的地方,就能看到村头的狗蛋,还能大概知道他距离我多远),从而形成三维“立体视觉”。
如果车与物体的距离不能被准确感知,那么,关键性的决策信息将无法被补足,对于自动驾驶来说,物体深度距离的判定尤为重要。
目前的一个解决方案就是:借鉴于生物体的形态为汽车配置多台数码相机去捕捉统一视觉镜头,就可以通过计算机重建3D场景,对于车体的周围环境有更为清楚的深度认知。
这样一来,以车体为中心,固定半径距离内的所有物体的横向布局和纵向深度距离就能够非常清楚的显现出来了。
而另外一个方案就是具备投影功能的“结构光相机”,它能够使图片数据附着深度信息。结构光相机可以将光纤投射到目标场景上并测量其失真度,通过失真度测量计算出深度数据。
但是,其弱点也相对更为突出:一是如果日光较为强烈相机投射出的光线就会收到影响和干扰,二是超过一定的距离(10米左右),结构光相机的作用就会荡然无存。
结合不宜日光强烈和限定距离这两个使用场景,该方案主要用于室内行车操作,比如:出入车库或者停车场。
二、激光雷达
激光雷达,全称“光检测与测距”(Lidar),它通过向周围不断地发射脉冲激光束,然后根据光束折返回来所用的时间去完成测距任务。
每秒数百万次的发射频率使得Lidar传感器可以计算出周遭环境的三维数字模型,真正地实现3D世界的可视化,完成高精度3D模型的绘制。
激光雷达具备360度全方位无死角的可视能力,且具备深度信息的探测能力——实时掌控与周围物体间的准确距离。
在激光雷达诞生的半个世纪以来,它常常被用于地形测绘,甚至考古领域,1971年阿波罗计划期间,宇航员用其绘制了月球表面,展现出了其卓越的应用价值。直到21世纪初期,此项技术才与汽车产生联系,在DARPA的数届挑战赛上激光雷达大放异彩,且在此之后逐渐流行。
激光雷达的工作原理曾有一段形象的比喻:
就好像你身处一个充满了隐形物体的房间内,激光雷达就好像你手中的红色涂料,你旋转着身姿将红色涂料向四周喷射。很快,那些隐形的物体会因为沾染了涂料而显现出它的外形,展现在你的面前。当涂料足够多喷射的足够远覆盖的足够全,那么整个房间内的所有隐形物体将无所遁形的暴露出来。
激光雷达的工作原理就是如此:通过不断的进行光束发射,对周围进行扫描和测量,光束越多越密场景模型的精度就越高。
这里我们需要引入“点云”这一概念进行说明,通过测量仪器得到的产品外观表面的点数据集合也称之为点云。
点与点之间间距越大我们称为“稀疏点云”,反之通过三维激光扫描仪得到的点云因为因为描述物体外观的点数较多较密的我们称之为“密集点云”。
Lidar以特定模式向外发射激光束形成大量细密的点组成的扫描线。如果想要构建较为完整的3D模型,那就必须让其高速旋转,我们可以使用一组旋转的镜子去改变激光的方向。这样,激光束越多就会呈现出以激光雷达为中心一组组不断向外扩展的环形扫描线,就像一颗石头投入一片静水中,同心圆状的涟漪就会向四周荡开。
这些平行且极为密集的环形扫描线碰触到实体事物后就会显现出外部形状,一如上述所述的“喷涂”的例子一样。
由此,当汽车装载了激光雷达,那么汽车也就能实现对于陌生世界的“喷涂”从而“看到”现实的周围环境。
激光雷达传感器为中层控制系统中的算法提供了详尽的环境数据流,深度算法据此可以对数据进行解析,识别出:这些已经显现的具备某种外部形状的物体可能会是什么?从而达到对于行车环境的实时监控和准确识别,为决策系统进行端起的轨迹预测和路径规划提供依据。
三、雷达
雷达,又称“无线电检测与测距”,由发射器和接收器组成,发射器负责向外发射电磁波,接收器负责接收反射回波。
其工作原理就是:按照一定的频率向目标区域去发射电磁波,电磁波以等同于光速的传播速度呈环装极速向外扩张,利用电磁波在碰触障碍物的时候反射形成的回波来检测周围的现实环境和物体布局。
由于折返的回波能量在传播的过程中会逐渐衰减,所以接收器一般都会采用电波放大技术以便于捕获尽可能多的回声,获取更多的环境信息。
举个栗子:
想象一下,你正闭着眼站在一个未知的空间内,你的手里捧着一堆弹力球,你转动一下身子就向一个方向抛掷弹力球。如果那个方向的弹力球,没有折回打到你的身上,那么至少你就会知道这个方向多半是一条通途。
相反,弹回并打在你身上的那个弹力球,抛掷方向多半是有一个庞大的障碍物在等着你。这样,你在无法用眼睛去观察环境的情况下,就可以借助弹力球去了解:周围是否存在障碍物等环境信息。
在这个例子中,抛掷弹力球的手就像雷达的发射器一样,弹力球就像发射出的电磁波,而是否被回弹的弹力球所击中的身体就是接收器。
你通过抛掷弹力球并根据身体是否被其回弹击中就能完成判断。
言归正传,不同的雷达传感器拥有不同的波长,波长越长传输得距离越远。但长波往往会绕过微小的物体,对于环境监测的半径相对较长,但监测结果也更为粗略,对应的微波在细小物品的监测上展示出来的结果则是令人满意的。
另外,雷达传感器根据多普勒效应可以监测物体的移动速度。通过监测记录电磁波向目标物体发射和反射回波的频率变化,去判断移动中的物体是在靠近还是远离,更进一步算出其移动速度。
对于自动驾驶汽车来说,雷达传感器的应用,可以实时监测车体的周边环境,识别大型障碍物体,可以应对大雨、浓雾等异常天气,不受路面扬尘等影响,精准检测物体距离车体的位置,以及各个物体的行进方向和速度。
四、超声波传感器
超声波传感器,又称“声呐”。
与雷达相似,超声波传感器也是通过发射某种波形信号并通过检测回波频率去监测环境信息。不同于雷达的电磁波,超声波传感器就如同它的命名一样发射的是超声波。
超声波传感器也分为两个部分:发送器和传感器。
发送器产生高于人类所能收听范围的机器波,接收器感受到声波的回声根据物体反射回来的时间、频率和声波形状来监测物体的位置和速度。同样,它也具备穿透浓雾、扬尘天气环境的能力,能在刺眼的阳关下观测物体。
相较于雷达的电磁波,声波的传播速度相对较慢,这就意味着:它能以高分辨率来看清微小物体,但是在风和距离的影响下衰减较快——也就是说其监测范围相对较小,日常应用中经常与雷达传感器互为补充。
五、毫米波雷达传感器
毫米波雷达,简而言之就是工作在毫米波频段的雷达,而毫米波其实质上就是电磁波的一个频段。
毫米波是指:波长处于1mm~10mm之间的电磁波,位于微波与远红外波相交叠的波长范围,对应的频率范围为10~200GHz,其频率高于无线电且低于可见光和红外线。
根据波的传播理论,频率越高,波长越短,分辨率越高,穿透能力越强,但在传播过程的损耗也越大,传输距离越短;相对地,频率越低,波长越长,绕射能力越强,传输距离越远。
所以,毫米波天然地具备分辨率高、指向性强、抗干扰能力佳等优点,随之在一定的距离范围内可以保证较好的环境探测能力。其探测距离处于150m-250m之间,高性能的毫米波探测雷达甚至可以达到300m的广域,极大地满足自动驾驶汽车在高速运动时所需要的探测范围。
其工作原理是通过比较电磁波传播遇到介质之后的回波,与发出波形的频率差和时间差去计算障碍物与本体的距离。障碍物距离本体现实距离越远,回波时间就越长,那么与发出波形的频率差值就越大。再将发出波形的频率与回波的频率进行减法运算即可得出频率差,据此判断出障碍物体的距离值。
通过以上我们看到毫米波雷达的巨大优势和应用价值,与极易受天气等自然环境影响的摄像头,或是超声波传感器相比毫米波雷达传感器凭借其不受尘雾、雨雪等恶劣天气影响的绝对优势荣膺“全天候全天时”的桂冠,成为众多汽车辅助驾驶系统的不二选择。
并且,凭借多普勒效应原理毫米波雷达具备出色的测距测速能力,毫米波雷达被广泛地应用在自适应巡航控制(ACC)、前向防撞报警(FCW)、盲点检测(BSD)、辅助停车(PA)、辅助变道(LCA)等汽车ADAS中。
最后
各种类型的传感器因为各自的技术原理,都有其擅长的应用场景,发挥着其他类型的传感器天生不具备的优势。
就像人的眼睛能“看”却不具备“听”的功能,耳朵能“听”却不能“看”,但如果将眼睛所见,和耳朵所听结合起来,我们就能非常全面的了解我们所在的场景环境。
同样,我们只有将各类传感器所具备的优势进行整合,才能极大化地获取尽可能完整的环境信息,帮助汽车掌握尽可能多的环境数据,为更高层级的控制系统提供可靠的决策依据。
所以,多传感器的融合将是未来的趋势,也是自动驾驶系统必要的技术储备。
对于自动驾驶汽车来说,传感器源源不断地提供环境数据流是一切的根本。
再精巧的机械系统,再智能的算法,如果没有了环境数据,它就无法进行反馈控制。没有任何的决策依据,更谈不上“自动驾驶”这一根本诉求。就像人一样,看不到影像,听不到声音,感受不到任何地外界变化,再聪明地大脑也只能束手无策。
从根本上讲,这个世界任何一种生物都是自然环境的组成部分。作为生态链条的每一环,彼此之间都在进行着各种层面地接触和交互,正是由于这种本质关系地存在,对于环境的了解和观察,以及随之产生的反馈行为才是各种生物生存的根本。
本文由 @江天一隅 原创发布于人人都是产品经理。未经许可,禁止转载
题图来自Unsplash,基于CC0协议
能不能再讲讲现在的无人驾驶的落地应用,以及当前应用时遇到的局限? 比如为什么需要设置上下车点,什么样的路线适合什么级别的自动驾驶技术去落地等等?
期待 😆