赞
踩
本文主要对无人驾驶的整体情况做一个简要的概括介绍。
无人车的实现需要诸多硬件传感器的支持,这些传感器包括:
GPS+IMU 全球定位+惯性测量
Camera 视觉传感器
Lidar 激光传感器
Millimeter Wave Radar 毫米波雷达
Ultrasonic Radar 超声波雷达
Vehicle Control Unit Signals VCU信号
Autonomous Vehicle Controller 无人驾驶控制器
上一张百度Apollo的技术架构图。
Apollo 技术框架图
可以看出除了第一排在云端工作的的模块,剩下的模块都是需要实时跑在车上的。
1、GPS定位原理很简单
GPS是全球定位系统(Global Position System)的简称,常见于汽车、手机中。民用GPS的定位精度在10~20米之间,这是为什么用手机的GPS定位,有时候明明在陆地上,却被认为在河里的原因。
GPS定位的原理很简单,叫做三角定位法(Triangulation)。原理如图:
图片出处:https://www.nationalgeographic.org/photo/triangulation-sized/
装在无人车上的GPS接收机,首先量测无线电信号到达卫星的传播时间,再将传播时间乘以光速,即可得到当前GPS接收机到达卫星的距离,有了距离,就可以根据几何原理求得位置了。
图片出处:http://slideplayer.com/slide/5717261/
若已知GPS接收机到达1号卫星和3号卫星的距离,那么1号和3号卫星根据距离产生两个球体(图中绿色和蓝色的球体),两个球体的相交的部分为圆形,该圆形与地球表面靠近的任何一个点都有可能是当前无人车(GPS接受装置)的位置。
因此仅根据这两个距离信息,还无法确定当前无人车的具体位置。此时通过引入第三个卫星的距离,就能较为准确地确定无人车的位置。这就是三角定位法的原理。
GPS定位精度不太够
根据上面的介绍,只要得到无线电信号达到三颗卫星的传播时间,似乎就能计算得到无人车的位置。
可是工程问题永远没有理论计算那么简单!
在空旷且云层稀薄的情况下,无线电信号的传播时间乘以光速确实与实际的距离接近。
但无线电信号的传播时间多少会受到传播介质的影响的。诸如云层的稀薄情况、天气好坏等都会影响到传播时间,进而影响到距离的计算。距离不准,得到的定位结果当然也不准了。
为了降低天气、云层对定位的影响,工程师们引入了差分GPS的技术。如下图所示:
图片出处:http://what-when-how.com/gps-with-high-rate-sensors/carrier-smoothed-code-gps/
在地面上建基站(Base Station),基站在建立时,可以得到基站的精确位置信息(经纬度)。同时基站具有接收卫星信号的功能。
当基站的GPS接收机与车载GPS接收机相距较近时(<30km),可以认为两者的GPS信号通过的是同一片大气区域,即两者的信号误差基本一致。根据基站的精确位置和信号传播的时间,反推此时天气原因导致的信号传播误差,之后利用该误差修正车载的GPS信号,即可降低云层、天气等对信号传输的影响。
使用差分GPS技术,可以使无人车的定位精度从10米级别提升至米级。
差分GPS可以解决定位的精度问题,但是解决不了遮挡和反射问题。
当无人车在高楼林立的环境中行驶时,这就会发生如下问题。
图片出处:https://www.e-education.psu.edu/geog862/node/1721
1.信号丢失
GPS接收机在高楼周围,很容易失去某一方向、所有的卫星信号,仅依靠另外三面的卫星信号求得的定位结果,在精度上很难满足无人驾驶的需求。
2.多路径问题
在高楼周围也可能导致原本收不到的卫星信号,经过大楼楼体的镜面反射被接收到,这种信号被称为多路径信号(Multi-Path Signal)。从图中可以看出,根据多路径信号计算得到的距离会明显大于实际距离。而无人车是很难判断,当前接收到的信号是单路径还是多路径的。
鉴于以上各种原因,可以看出,单靠GPS这一种传感器,无人车在复杂场景中,很难实现精确定位。
GPS定位频率不太高
GPS定位的频率不怎么高,只有10Hz,即100ms才能定位一次。
通过一个简单的例子,说一说为什么10Hz不够高。
假设一辆汽车正以72km/h(20m/s)的速度在路上直线行驶,GPS定位的周期为100ms,则一个周期后,汽车相对于前一次定位的结果移动了20m/s * 0.1s = 2m,即两次的定位结果相距2米。
如果无人车行驶在一条有曲率的路上,那就意味着,每隔2m,才能根据自车所在的位置,进行一次控制(方向盘转角、油门开度等)的计算。这种控制频率下的车辆行驶效果如下图。无人车在实际轨迹两侧忽左忽右,无法精确地沿着轨迹行驶。
相对于理想情况下的控制方法,无人车的行驶轨迹应当如下图,保持极高频率的定位和控制,每走一小步,都重新进行控制的计算,并执行控制。
为了解决GPS频率太低所带来的问题,工程师引入了其他传感器信号(IMU、激光、视觉)用以提高无人车的定位频率。
2、 IMU
为了能让无人驾驶系统更高频率地获取定位信息,就必须引入频率更高的传感器。这就是这一次内容的主角——IMU(Inertial Measurement Unit)惯性测量单元。
下图就是百度Apollo计划推荐使用的IMU——NovAtel SPAN-IGM-A1。
图片出处:https://github.com/ApolloAuto/apollo/blob/master/docs/quickstart/apollo_2_0_hardware_system_installation_guide%20v1.md
GPS得到的经纬度信息作为输入信号传入IMU,IMU再通过串口线与控制器相连接,以此获取更高频率的定位结果。
小到每天使用的手机,大到导弹、宇宙飞船都会使用到IMU,区别在于成本和精度。根据不同的使用场景,对IMU的精度有不同的要求。精度高,也意味着成本高。IMU的精度、价格和使用场景,如下图所示。
从图中可以看出,普通的消费级电子产品所使用到的IMU都是低精度且十分廉价的IMU,这种IMU普遍应用于手机、运动手表中。常用于记录行走的步数。
而无人驾驶所使用到的IMU,价格从几百块到几万块不等,取决于此无人驾驶汽车对定位精度的要求。
精度更高的IMU会用于导弹或航天飞机。就以导弹为例,从导弹发射到击中目标,宇航级的IMU可以达到极高精度的推算,误差甚至可以小于一米。
除了精度和成本的特性外,IMU还有两个十分关键的特性。其一是更新频率高,工作频率可以达到100Hz以上。其二是短时间内的推算精度高,不会有太大的误差。
在上次有关GPS的分享中,我们提到GPS的定位频率只有10Hz,而IMU的两个特性刚好可以弥补GPS的劣势,和GPS组成定位的黄金搭档。
黄金搭档:GPS + IMU
晚上回到家,发现家里停电时,眼睛在黑暗中什么都看不见的情况下,只能根据自己的经验,极为谨慎地走小碎步,并不断用手摸周围的东西(比如冰箱),用以确定自己所在的位置。
在这个过程中,GPS的作用就类似于摸到的东西之后对自己的位置进行的修正,IMU的作用就类似于小碎步,不对地对自己的位置进行推算。
不断的修正和不断的推算,就能保证自己的定位相对稳定。如下图所示。
在无人驾驶系统中,GPS的更新频率一般为10Hz,IMU的更新频率一般为100Hz。
两个传感器共同工作时,可以给出频率100Hz的定位输出。下图是两传感器数据融合的原理图。
GPS+IMU融合原理图
运行在控制器上的软件对信息的处理流程在时间维度上类似下图。在0~100ms的周期中,使用IMU进行9次位置的估计,待新的GPS定位数据进来时,则进行修正,以此实现高频率的定位结果输出。
GPS+IMU信号处理时序图
就这样,GPS与IMU便相辅相成地实现了无人车的稳定定位。
有了100Hz的稳定定位,无人车在处理路径跟随问题时,就能像下图一样,保持极高频率的定位和控制。每走一小步,便重新进行方向盘转角的计算,进而控制无人车沿着既定的轨道行驶。
3、摄像机
下图就是百度Apollo 2.0推荐使用的摄像机LI-USB30-AR023ZWDR。
Apollo 2.0 摄像机LI-USB30-AR023ZWDR
Apollo 2.0中使用了两个同样的摄像机,通过USB3.0的转接线接入控制器,传递彩色图像信息。两个摄像机的镜头的焦距分别是6mm和25mm,分别用于检测近处和远处的红绿灯。
摄像机的分类
摄像机根据镜头和布置方式的不同主要有以下四种:单目摄像机、双目摄像机、三目摄像机和环视摄像机。
单目摄像机
单目摄像机模组
单目摄像机模组只包含一个摄像机和一个镜头。
由于很多图像算法的研究都是基于单目摄像机开发的,因此相对于其他类别的摄像机,单目摄像机的算法成熟度更高。
但是单目有着两个先天的缺陷。一是它的视野完全取决于镜头。焦距短的镜头,视野广,但缺失远处的信息。反之亦然。因此单目摄像机一般选用适中焦距的镜头。二是单目测距的精度较低。
摄像机的成像图是透视图,即越远的物体成像越小。近处的物体,需要用几百甚至上千个像素点描述;而处于远处的同一物体,可能只需要几个像素点即可描述出来。这种特性会导致,越远的地方,一个像素点代表的距离越大,因此对单目来说物体越远,测距的精度越低。
双目摄像机
双目摄像机模组
由于单目测距存在缺陷,双目摄像机应运而生。相近的两个摄像机拍摄物体时,会得到同一物体在摄像机的成像平面的像素偏移量。有了像素偏移量、相机焦距和两个摄像机的实际距离这些信息,根据数学换算即可得到物体的距离。原理图下图。
图片出处:https://www.slideshare.net/DngNguyn43/stereo-vision-42147593
根据双目测距原理应用在图像上每一个像素点时,即可得到图像的深度信息,如下图。
图片出处:Computer Vision and Image Understanding《2D-3D-based on-board pedestrian detection system》
深度信息的加入,不仅能便于障碍物的分类,更能提高高精度地图定位匹配的精度。
虽然双目能得到较高精度的测距结果和提供图像分割的能力,但是它与单目一样,镜头的视野完全依赖于镜头。而且双目测距原理对两个镜头的安装位置和距离要求较多,这就会给相机的标定带来麻烦。
三目摄像机
由于单目和双目都存在某些缺陷,因此广泛应用于无人驾驶的摄像机方案为三目摄像机。三目摄像机其实就是三个不同焦距单目摄像机的组合。下图为特斯拉 AutoPilot 2.0安装在挡风玻璃下方的三目摄像机。
三目摄像机模组
根据焦距不同,每个摄像机所感知的范围也不尽相同。
如下图,可以看出三个摄像头的感知范围由远及近,分别为前视窄视野摄像头(最远感知250米)、前视主视野摄像头(最远感知150米)及前视宽视野摄像头(最远感知60米)。
特斯拉AutoPilot 2.0视觉传感器感知范围
对摄像机来说,感知的范围要么损失视野,要么损失距离。三目摄像机能较好地弥补感知范围的问题。因此在业界被广泛应用。
那么测距精度的问题怎么办?
正是由于三目摄像机每个相机的视野不同,因此近处的测距交给宽视野摄像头,中距离的测距交给主视野摄像头,更远的测距交给窄视野摄像头。这样一来每个摄像机都能发挥其最大优势。
三目的缺点是需要同时标定三个摄像机,因而工作量更大。其次软件部分需要关联三个摄像机的数据,对算法要求也很高。
环视摄像机
之前提到的三款摄像机它们所用的镜头都是非鱼眼的,环视摄像机的镜头是鱼眼镜头,而且安装位置是朝向地面的。某些高配车型上会有“360°全景显示”功能,所用到的就是环视摄像机。
安装于车辆前方、车辆左右后视镜下和车辆后方的四个鱼眼镜头采集图像,采集到的图像与下图类似。鱼眼摄像机为了获取足够大的视野,代价是图像的畸变严重。
图片出处:https://www.aliexpress.com/item/360-bird-View-Car-DVR-record-system-with-4HD-rear-backup-front-side-view-camera-for/32443455018.html
通过标定值,进行图像的投影变换,可将图像还原成俯视图的样子。之后对四个方向的图像进行拼接,再在四幅图像的中间放上一张车的俯视图,即可实现从车顶往下看的效果。如下图。
图片出处:https://www.aliexpress.com/item/360-bird-View-Car-DVR-record-system-with-4HD-rear-backup-front-side-view-camera-for/32443455018.html
环视摄像机的感知范围并不大,主要用于车身5~10米内的障碍物检测、自主泊车时的库位线识别等。
摄像机的功能
摄像机在无人车上的应用,主要有两大类功能。主要是感知能力,其次是定位能力。
摄像机可以提供的感知能力有:
①车道线(lane)
车道线是摄像机能够感知的最基本的信息,拥有车道线检测功能即可实现高速公路的车道保持功能。
②障碍物(Obstacle)
图中使用矩形框框中的物体。图中仅有汽车、行人和自行车等物体。其实障碍物的种类可以更丰富,比如摩托车、卡车,甚至动物都是可以检测到的。有了障碍物信息,无人车即可完成车道内的跟车行驶。
③交通标志牌和地面标志(Traffic Sign and Road Sign)
图中使用绿色或红色矩形框框出的物体。这些感知信息更多的是作为道路特征与高精度地图做匹配后,辅助定位。当然也可以基于这些感知结果进行地图的更新。
④可通行空间(FreeSpace)
图中使用透明绿的覆盖的区域。该区域表示无人车可以正常行使的区域。可通行空间可以让车辆不再局限于车道内行驶,实现更多跨车道的超车功能等,把车开的更像老司机。
⑤交通信号灯(Traffic Light)
图中使用绿框框出来的物体。交通信号灯状态的感知能力对于城区行驶的无人驾驶汽车十分重要,这也是为什么百度Apollo 2.0实现“简单路况自动驾驶”所必须开放的功能。
定位能力
相信大家都对视觉SLAM技术都有所耳闻,根据提前建好的地图和实时的感知结果做匹配,获取当前无人车的位置。视觉SLAM需要解决的最大问题在于地图的容量过大,稍微大一点的区域,就对硬盘的容量要求很高。如何制作出足够轻量化的地图,成为SLAM技术商业化的关键。
Mobileye在已实现的道路经验管理(Road Experience Management,REM)功能,能够实现复杂路况的全局定位能力。
4、激光雷达
如下图所示,激光雷达的发射器发射出一束激光,激光光束遇到物体后,经过漫反射,返回至激光接收器,雷达模块根据发送和接收信号的时间间隔乘以光速,再除以2,即可计算出发射器与物体的距离。
图片出处:http://slideplayer.com/slide/7103535/
激光雷达的分类
激光雷达根据安装位置的不同,分类两大类。一类安装在无人车的四周,另一类安装在无人车的车顶。
安装在无人车四周的激光雷达,其激光线束一般小于8,常见的有单线激光雷达和四线激光雷达。
安装在无人车车顶的激光雷达,其激光线束一般不小于16,常见的有16/32/64线激光雷达。
单线激光雷达
图片出处:http://robotsforroboticists.com/sick-lms511-lidar-review/
单线激光雷达是目前成本最低的激光雷达。成本低,意味着量产的可能性大。
前两天朋友圈刷屏的“北京首个自动驾驶测试场启用”新闻中出现的福田自动驾驶汽车就使用了4个单线激光雷达,分别布置于无人车的前后左右,用于车身周围障碍物的检测,如下图。
单线激光雷达的原理可以通过下图理解。
图片出处:http://www.mdpi.com/1424-8220/16/6/933/htm
单束激光发射器在激光雷达内部进行匀速的旋转,每旋转一个小角度即发射一次激光,轮巡一定的角度后,就生成了一帧完整的数据。因此,单线激光雷达的数据可以看做是同一高度的一排点阵。
单线激光雷达的数据缺少一个维度,只能描述线状信息,无法描述面。如上图,可以知道激光雷达的面前有一块纸板,并且知道这块纸板相对激光雷达的距离,但是这块纸板的高度信息无从得知。
四线激光雷达
如上图所示,四线激光雷达基本都像这样。
全新的奥迪A8为了实现Level 3级别的自动驾驶,也在汽车的进气格栅下布置的四线激光雷达ScaLa。
有了之前单线激光雷达的原理介绍,四线激光雷达的工作原理就很容易理解了。
如下图所示,不同的颜色代表不同的激光发射器。
图片出处:https://www.youtube.com/watch?v=lj5B2g4MyMM
四线激光雷达将四个激光发射器进行轮询,一个轮询周期后,得到一帧的激光点云数据。四条点云数据可以组成面状信息,这样就能够获取障碍物的高度信息。
根据单帧的点云坐标可得到障碍物的距离信息。
根据多帧的点云的坐标,对距离信息做微分处理,可得到障碍物的速度信息。
实际应用时,在购买激光雷达的产品后,其供应商也会提供配套的软件开发套件(SDK,Software Development Kit),这些软件开发套件能很方便地让使用者得到精准的点云数据,而且为了方便自动驾驶的开发,甚至会直接输出已经处理好的障碍物结果。
如下图绿的的矩形框即为障碍物相对于自车的位置,矩形框的前端有个小三角,表示障碍物的运动方向。
16/32/64线激光雷达
图片出处:http://velodynelidar.com/news.php
16/32/64线的激光雷达的感知范围为360°,为了最大化地发挥他们的优势,常被安装在无人车的顶部。
三款激光雷达的技术参数和成本如下图。(更多Velodyne激光雷达的技术资料/使用手册等,可在公众微信号 自动驾驶干货铺 里回复 Velodyne 获取)
图片出处:http://auto.qq.com/a/20170609/058173.htm
360°的激光数据可视化后,就是大家经常在各种宣传图上看到的效果,如下图。
图中的每一个圆圈都是一个激光束产生的数据,激光雷达的线束越多,对物体的检测效果越好。比如64线的激光雷达产生的数据,将会更容易检测到路边的马路牙子。
16/32/64线的激光雷达只能提供原始的点云信号,没有对应的SDK直接输出障碍物结果。因此各大自动驾驶公司都在点云数据基础上,自行研究算法完成无人车的感知工作。
激光雷达的数据
激光雷达的点云数据结构比较简单。以N线激光雷达为例来讲解点云的数据结构。
在实际的无人驾驶系统中,每一帧的数据都会有时间戳,根据时间戳进行后续和时间有关的计算(如距离信息的微分等)。因此N线激光雷达的点云数据结构如下图。
每一线点云的数据结构又是由点云的数量和每一个点云的数据结构组成。由于激光雷达的数据采集频率和单线的点云数量都是可以设置的,因此1线点云数据中需要包含点云数量这个信息。
最底层的是单个点云的数据结构。点的表达既可以使用theta/r的极坐标表示,也可以使用x/y/z的3维坐标表示。
每个点云除了坐标外,还有一个很重要的元素,那就是激光的反射强度。激光在不同材料上的反射强度是不一样的。以3维坐标的表示方法为例,单个点云的数据结构如下图。X/Y/Z方向的偏移量是以激光雷达的安装位置作为原点。
激光雷达能做什么?
激光雷达点云数据的一般处理方式是:数据预处理(坐标转换,去噪声等),聚类(根据点云距离或反射强度),提取聚类后的特征,根据特征进行分类等后处理工作。
以百度Apollo 2.0目前已开放的功能为例,看看激光雷达能完成哪些工作。
障碍物检测与分割
图片出处:http://data.apollo.auto/?locale=zh-cn&lang=en
利用高精度地图限定感兴趣区域(ROI,Region of Interest)后,基于全卷积深度神经网络学习点云特征并预测障碍物的相关属性,得到前景障碍物检测与分割。
可通行空间检测
利用高精度地图限定ROI后,可以对ROI内部(比如可行驶道路和交叉口)的点云的高度及连续性信息进行判断点云处是否可通行。
高精度电子地图制图与定位
利用多线激光雷达的点云信息与地图采集车载组合惯导的信息,进行高精地图制作。自动驾驶汽车利用激光点云信息与高精度地图匹配,以此实现高精度定位。
障碍物轨迹预测
根据激光雷达的感知数据与障碍物所在车道的拓扑关系(道路连接关系)进行障碍物的轨迹预测,以此作为无人车规划(避障、换道、超车等)的判断依据。
5、毫米波雷达
下图为百度Apollo 2.0中所使用的毫米波雷达——Continental的ARS-408,它被安装在汽车保险杠的正中间,面向汽车的前进方向。
https://www.continental-automotive.com/Landing-Pages/Industrial-Sensors/Products/ARS-408-21
毫米波雷达的分类
频率在10GHz~200GHz的电磁波,由于其波长在毫米量级,因此处于该频率范围的电磁波也被工程师们称为毫米波。
应用在自动驾驶领域的毫米波雷达主要有3个频段,分别是24GHz,77GHz和79GHz。不同频段的毫米波雷达有着不同的性能和成本。
以Audi A8的传感器布局为例,讲解不同频段毫米波雷达的功能。
短距离雷达:24GHz频段
如上图所示被标注了橙色框的Corner radar和Rear radar,就是频段在24GHz左右的雷达。
处在该频段上的雷达的检测距离有限,因此常用于检测近处的障碍物(车辆)。图中的这4个角雷达,能够实现的ADAS功能有盲点检测、变道辅助等;在自动驾驶系统中常用于感知车辆近处的障碍物,为换道决策提供感知信息。
长距离雷达:77GHz频段
如上图所示,被标注为绿色框的Long-range radar,即为频段在77GHz左右的雷达。性能良好的77GHz雷达的最大检测距离可以达到160米以上,因此常被安装在前保险杠上,正对汽车的行驶方向。如下图右下角的棕色区域,为特斯拉AutoPilot 2.0中所配备的长距离毫米波雷达,及其感知范围。
https://www.tesla.cn/autopilot
长距离雷达能够用于实现紧急制动、高速公路跟车等ADAS功能;同时也能满足自动驾驶领域,对障碍物距离、速度和角度的测量需求。
长距离雷达:79GHz频段
该频段的传感器能够实现的功能和77GHz一样,也是用于长距离的测量。
根据公式:光速 = 波长 * 频率,频率更高的毫米波雷达,其波长越短。波长越短,意味着分辨率越高;而分辨率越高,意味着在距离、速度、角度上的测量精度更高。因此79GHz的毫米波雷达必然是未来的发展趋势。
毫米波雷达相比于激光有更强的穿透性,能够轻松地穿透保险杠上的塑料,因此常被安装在汽车的保险杠内。这也是为什么很多具备ACC(自适应巡航)的车上明明有毫米波雷达,却很难从外观上发现它们的原因。
毫米波雷达的数据
由于毫米波的测距和测速原理都是基于多普勒效应,因此与激光的笛卡尔(XYZ)坐标系不同,毫米波雷达的原始数据是基于(距离+角度)极坐标系。当然,两种坐标系可以根据三角函数相互转换。
如下图所示,安装有毫米波雷达的自车前方有迎面驶来的蓝色小车和同向行驶的绿色小车。
毫米波雷达发射的电磁会穿透汽车的前后保险杠,但是无法穿透汽车底盘的金属,因此在遇到金属这类毫米波雷达无法穿透的物体时,电磁波就会返回。
以德尔福的前向毫米波雷达ESR为例,该雷达每帧最多能够返回64个目标的数据,每个目标的数据组成如下:
power
回波强度,单位为分贝。不同类型的障碍物(汽车、铁护栏、摩托车等)在不同距离下的回波强度也会有所变化,如果回波强度太低可以认定该信号为噪声。
track_bridge_objectType
所检测到的障碍物是否为桥。城市道路中会遇到立交桥的场景,从ESR中获取的该信号,可以用于判断所检测到的障碍物是否为桥。
track_oncoming
障碍物是否在靠近的标志位。该标志位多用于主动安全的AEB(自动紧急刹车)中。
track_id
障碍物的“身份证”。每个障碍物都会有一个固定的ID,ID范围是0~63。
track_status
障碍物的跟踪状态。
track_theta
障碍物与毫米波雷达所成的夹角。示意图中的θ角,就是这里的值。由于每个雷达都有极限探测范围,以ESR为例,图中θ的范围在-45°和45°之间。
track_distance
障碍物距离毫米波雷达的距离。该距离是极坐标系下的距离,也就是示意图中的x。根据x和θ,即可计算出自车笛卡尔(XYZ)坐标系下的坐标。
track_relative_radial_velocity
障碍物与自车的径向相对速度。由于多普勒效应的原理,雷达的测量中只能提供极坐标系下的径向速度,切向速度的测量置信度很低,因此雷达并不会提供障碍物的切向速度。
track_relative_radial_acceleration
障碍物与自车的径向相对加速度。该值是通过对径向相对速度做微分得到的。
track_mode_type
障碍物的运动状态。根据该值可以判断障碍物时静止的还是运动的。
track_width
障碍物的宽度。将原始的雷达数据点通过聚类后,会得到一个区域,该区域的范围即认为是障碍物的宽度。
更多信息可参考链接:
ApolloAuto/apollogithub.com
目前国际上主流的毫米波雷达供应商有四家,分别是Autoliv(奥托立夫)、Bosch(博世)、Continental(大陆)、Delphi(德尔福),业界简称ABCD。各家的毫米波雷达的产品提供的功能大同小异,大部分功能都是通过障碍物的回波能量、距离、角度信息推算而来的。
毫米波雷达的挑战
在谈论挑战之前,先直观地感受一下激光雷达的数据吧。图左为毫米波雷达检测障碍物的位置信息;图右是实际的道路场景。
图中灰色圆圈的中心为雷达的安装位置,蓝色的点为静止的障碍物,粉红色的点移动的障碍物。
可以很清晰地看到蓝色的点组成了一条直线,这条直线其实就是铁护栏。但是如何让计算机知道这么多点里面有这么一条护栏呢?这就是算法工程师每天要做的事情啦。
实际开发的过程中,在自动驾驶领域应用毫米波雷达有一下三点挑战。
挑战1:数据稳定性差
很明显...看到这样(乱且不稳定)的数据,工程师也表示很绝望。数据的不稳定性对后续的软件算法提出了较高的要求。
挑战2:对金属敏感
由于毫米波雷达发出的电磁波对金属极为敏感,在实际测试过程中会发现近处路面上突然出现的钉子、远距离外的金属广告牌都会被认为是障碍物。一旦车辆高速行驶,被这些突然跳出的障碍物干扰时,会导致刹车不断,导致汽车的舒适性下降。
挑战3:高度信息缺失
毫米波雷达的数据只能提供距离和角度信息,不能像激光雷达那样提供高度信息。没有高度信息的障碍物点会给技术开发带来很多挑战。
6、超声波雷达
如果你觉得超声波雷达有些陌生,那么它还有一个更通俗的名字——倒车雷达。
在倒车入库,慢慢挪动车子的过程中,在驾驶室内能听到”滴滴滴“的声音,这些声音就是根据超声波雷达的检测距离给司机的反馈信息。
车载的超声波雷达一般安装在汽车的保险杠上方,隐藏在保险杠的某个位置。在车上外观如下图黄色箭头处的圆点所示。
超声波雷达未安装时的模样如下:
https://www.aliexpress.com/item/New-Parking-Sensor-Car-Reverse-Back-Up-Ultrasonic-Radar-G0448-P/32382592684.html
超声波雷达的类型
常见的超声波雷达有两种。第一种是安装在汽车前后保险杠上的,也就是用于测量汽车前后障碍物的倒车雷达,这种雷达业内称为UPA;第二种是安装在汽车侧面的,用于测量侧方障碍物距离的超声波雷达,业内称为APA。
UPA和APA的探测范围和探测区域都太相同,如下图所示。图中的汽车配备了前后向共8个UPA,左右侧共4个APA。
UPA超声波雷达
UPA超声波雷达的探测距离一般在15~250cm之间,主要用于测量汽车前后方的障碍物。
如图所示,为单个UPA的探测范围示意图。
APA超声波雷达
APA超声波雷达的探测距离一般在30~500cm之间。APA的探测范围更远,因此相比于UPA成本更高,功率也更大。
如图为单个APA的探测范围示意图。
APA的探测距离优势让它不仅能够检测左右侧的障碍物,而且还能根据超声波雷达返回的数据判断停车库位是否存在。
超声波雷达的数学模型
虽然UPA和APA无论在探测距离还是探测形状上区别很大,但是它们依然可以用同样的数学模型描述,描述一个超声波雷达的状态需要如下四个参数,其数学模型的示意图如下。
参数1:α
α是超声波雷达的探测角,一般UPA的探测角为120°左右,APA的探测角比UPA小,大概为80°。
参数2:β
β是超声波雷达检测宽度范围的影响因素之一,该角度一般较小。UPA的β角为20°左右,APA的β角比较特殊,为0°。
参数3:R
R也是超声波雷达检测宽度范围的影响因素之一,UPA和APA的R值差别不大,都在0.6m左右。
参数4:D
D是超声波雷达的最大量程。UPA的最大量程为2米~2.5米,APA的最大量程至少是5米,目前已有超过7m的APA雷达在业内使用。
超声波雷达的特性
特性一:温度敏感
超声波雷达的测距原理和之前介绍的激光雷达、毫米波雷达类似,距离=传播速度*传播时间/2。不同的是激光雷达和毫米波雷达的波速都为光速,而超声波雷达的波速跟温度有关。近似关系如下:
C = C0 + 0.607 ∗ T,C0为零度时的声波速度332m/s,T为温度(单位:℃)。
例如,温度在0℃时,超声波的传播速度为332m/s;温度在30℃时,超声波的传播速度为350m/s。相同相对位置的障碍物,在不同温度的情况下,测量的距离不同。
对传感器精度要求极高的自动驾驶系统来说,要么选择将超声波雷达的测距进行保守计算;要么将温度信息引入自动驾驶系统,提升测量精度。
特性二:无法精确描述障碍物位置
超声波雷达在工作时会返回一个探测距离的值,如图所示。处于A处和处于B处的障碍物都会返回相同的探测距离d。所以在仅知道探测距离d的情况下,通过单个雷达的信息是无法确定障碍物是在A处还是在B处的。
超声波雷达的应用
本文标题提到超声波雷达是被严重低估的传感器,因为它除了检测障碍物外,还可以做很多事。
应用1:泊车库位检测
自动泊车功能需要经历两个阶段:1.识别库位;2.倒车入库
识别库位功能就是依赖安装在车辆侧方的APA,如下场景。
http://articles.sae.org/7477/
汽车缓缓驶过库位时,汽车右前方的APA传感器返回的探测距离与时间的关系大致如下图:
将t1时刻到t2时刻的车速做积分即可得到库位的近似长度,如果近似认为汽车为匀速行驶,直接用车速乘以(t2-t1)即可。当检测的长度超过车辆泊入所需的最短长度时则认为当前空间有车位。
同样后侧向的APA也会生成类似信号曲线,用以做库位的二次验证。有了库位检测功能,进而开发自主泊车功能就不是难事了。
高速横向辅助
特斯拉Model S在AutoPilot 1.0时代就实现了高速公路的巡航功能,为了增加高速巡航功能的安全性和舒适性,特斯拉将用于泊车的APA超声波雷达,也用在了高速巡航上。
7、高精地图
通过下图,可以感性地看出传统导航地图与高精度电子地图的区别。
高精度地图是什么?
现阶段的高精度地图更多地被定义为:服务于无人驾驶驾驶的地图。相比于传统地图的“定性”描述来说,高精度地图是一种“定量”的描述。
以坡度为例,传统地图能提供的仅仅是前方有上(下)坡这个信息,但无法提供上(下)坡的角度;
以弯道为例,传统地图提供的仅仅是前方有个比较“急”的弯道,但无法提供弯道的曲率半径;
以路口为例,传统地图提供的仅仅是前方路口有红绿灯这个信息,并不知道红绿灯的具体位置在哪。
高精度地图可以提供传统地图提供不了的精确数据,这就是高精度地图的“定量”描述。
这些定量描述对人类驾驶员驾驶汽车来说没有多大帮助,因为人类是高度智能化的个体,拥有极高的图像识别、信息联想和学习能力,而这些能力这是目前无人驾驶“大脑”所不具备的。为了弥补无人驾驶“大脑”还不够聪明的缺陷,高精度地图挺身而出。
高精度地图能够为无人驾驶提供的内容如下:
车道级道路信息
传统导航地图只能提供道路级(Road)的导航信息,如下图最左侧所示。道路R1连接着R2,R2同时连接着R3和R4。而高精度地图能够提供车道级(Lane)的导航信息,这种导航信息能够精确到车道的连接关系。如下图中间图所示Lane1连着Lane4,Lane4连着Lane8,;Lane3连着Lane6和Lane7,Lane7连着Lane10。
图片出处:未来汽车大讲堂 - 网易云课堂 高精地图,自动驾驶的必由之路
车道级别的道路信息能够解决在路口转弯时,无人车不知道需要转多大的角度和保持多高车速的问题。如下图右侧绿虚线即为高精度地图为无人车提供的虚拟车道线中心,只要提前变道到正确车道,并沿着虚拟车道线所在的车道行驶,即可顺利通过路口。
图片出处:未来汽车大讲堂 - 网易云课堂 高精地图,自动驾驶的必由之路
道路先验信息
先验信息是指某些可以提前采集且短时间内不会改变的信息。
仅依靠传感器的信息是很难感知车辆现在是处在高速公路上,还是处在普通城市道路上的;无限速牌的路段,车速最高可以开多快;前方道路的曲率;所处路段的GPS信号强弱。这些都是传感器遇到性能瓶颈时,无法实时得到的信息。而这些信息却都是客观存在,不会随外部事物的变化而变化,因此可以提前采集,并作为先验信息传给无人车做决策。
图为高精度地图可以为无人车提供的某些先验信息。包括道路曲率、航向、坡度和横坡角。这些信息对于无人车的安全性和舒适性都至关重要。
图片出处:未来汽车大讲堂 - 网易云课堂 高精地图,自动驾驶的必由之路
感兴趣点
感兴趣点是POI(Point of Interest)的直译。在交通场景中能成为POI的东西有很多,比如:
用中心点和多个外包络点描述的交通标志牌、地面标志、灯杆、红绿灯、收费站等;用一系列连续点所组成的链状信息描述的路沿、护栏、隧道、龙门架、桥等。
高精度地图精确记录了这些POI的经纬度和高度,只要给定无人车的精确位置(经纬高),即可将各个POI相对于自车的位置计算出来。将这些POI信息的相对位置逆向投影到车载前视图像上,如下图所示。
图片出处:未来汽车大讲堂 - 网易云课堂 高精地图,自动驾驶的必由之路
到这个时候,肯定有人问:高精度地图比传统地图多出如此多的信息,容量肯定很大吧?
不不不。现阶段的高精度地图容量并不比传统地图大多少。为什么呢?
因为现阶段的高精度地图完全是为无人驾驶服务的,而传统地图是为人类服务的。高精度地图只用关心与驾驶有关(道路、POI)的信息,并不关心周边的商场有几层、超市的面积有多大、小饭馆有多少家。而这类信息刚好是人类更关心的。正是因为侧重点不一样,所以在容量方面并不会有太大的差别。
下图从要素、系统、用途方面更为清晰地囊括了传统地图和高精度地图的侧重点:
图片出处:未来汽车大讲堂 - 网易云课堂 高精地图,自动驾驶的必由之路
高精度地图的应用
高精度地图只是一个静态的数据,在实际使用时,不可能一开始就将全国的地图导入到系统中,这样不仅费时,而且会占用系统很多资源。高精度地图的供应商(图商)除了提供高精度地图外,还会提供一个叫做“地图引擎”的软件。由这个软件负责整个高精度地图的资源调度,无人车只需要告诉“地图引擎”现在的大致位置以及想要去的地方,“地图引擎”就会将这个过程中所要用到的高精度地图数据发布出来,供无人车使用。数据流如下图所示。
高精度地图的应用需要配合高精度的定位。
高精度定位,至少包含无人车当前的位置和航向角。位置是指无人车GPS天线安装位置所在的经度、纬度、高度;航向角,是指无人车车头的朝向与正北方向的夹角。
理论上,已知两个点的经纬高,即可计算出两个点的相对位置。那为什么还需要提供精确的航向信息呢?
如下图所示,如果无人车想要实现沿高精度地图车道线直线行驶,在有正确的经纬高和航向角情况下,车道线上的一系列点在无人车坐标系下的相对关系如下图(图中黑点)。根据车道线规划出来的轨迹(绿线)是与车道平行的直线。
试想一下,如果这时候航向值变得不准,比如偏了几十度。由于经纬高没有变化,因此车道线上的所有点距离无人车中心的距离是保持不变的,但这些点会以中心旋转。得到的车道线在无人车坐标系下的相对关系如下图。根据此车道线规划出来的轨迹,会让无人车认为必须要转一个角度才能实现车道保持。最终造成的控制结果就是,无人车一直在原地打转。由此可见无人车的航向角是很重要的定位信息。
充分利用高精度地图的作用将对无人驾驶有如下帮助:
提升无人车的感知能力
比如,在天气良好的情况下,车载传感器能够检测出车道线、障碍物、路沿、可通行空间等,但对于道路坡度、道路曲率的检测无能为力。这些数据有助于无人车的控制,刚好高精度地图可以提供。
再比如,当遇到暴雨/大雪/沙尘等恶劣天气,车载传感器很难感知到远处的障碍物、车道线信息。而定位+高精度地图的配合是可以提供诸如车道线、路沿和可通行空间这些信息的,增加系统的信息冗余。
结合车载传感器信息,提升定位精度
业内通用的定位方式是GPS+高精度地图+摄像机(激光雷达等)信息融合的定位方法。
首先根据GPS的数据(经纬高和航向)确定无人车大致处于哪条道路上,这个位置的可能与真实位置有5~10米的差距。
根据车载传感器检测的车道线(虚、实线)及道路边缘(路沿或护栏)的距离与高精地图提供的车道线及道路边缘做比对,然后修正无人车的横向定位。
根据车载传感器检测到的广告牌、红绿灯、墙上的标志、地上的标志(停止线、箭头等),与高精地图提供的同一道路特征(POI)进行匹配,进而修正纵向定位和航向。在没有检测到任何道路特征的情况下,可以通过航位推算进行短时间的位置推算。
无人车的定位算法通常采用粒子滤波的方法,需要多个计算周期后,定位结果才会收敛,进而提供一个相对稳定的定位结果。粒子滤波的算法原理我会在随后的系列文章中介绍。
高精度地图的挑战
挑战一:高精度地图的众包
高精度地图虽然好用,但目前还无法大规模地生产,大部分内外业处理还是由人工来完成标注和数据转化。而且仅仅靠地图公司的几十上百辆采集车在道路上采集,很难保证地图数据的实效性,即无法保证地图数据足够“新鲜”。
因此图商都希望能在量产车的前装摄像头上做文章,让这款摄像头具备L2以上自动驾驶能力外,还能够将采集图像预处理后的数据传到云端,实现数据的更新。当一个地点的实际情况被足够多的私家车检测到与地图不符时,由图商确认信息后,对地图进行相应的更新。这样一来,地图数据迭代地足够快,就能更好地服务于高精度地图生态和无人车了。
挑战二:高精度地图的政策
地图政策的这项挑战仅存在于国内。
高精度地图和国防息息相关,因此高精度地图的采集和使用在国内是受到严格限制的。目前我国仅有14家单位具有甲级地图测绘资质,这就意味着,只有这14家图商具有高精度地图采集和使用的权利。无人驾驶初创公司如果想使用高精度地图,要么强依赖这14家图商,要么在法律的红线上做研究。
由于测绘资质政策的存在,我觉得国外的无人驾驶技术想要染指中国的市场,并不是一件简单的事情。即便是博世这种Tier1中的大佬,没有国内图商的帮助,想要扩张他们的无人驾驶技术,依然会寸步难行。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。