科幻电影里的自动驾驶技术让大家心驰神往,近几年,随着人工智能的技术提升,无人驾驶汽车从我们的幻想成为了现实。车企、互联网企业纷纷涌入这个全新领域。
然而,曾经的Uber的撞人事故中为什么传感器没能检测到行人?无人驾驶汽车又是怎么样的一个技术解决方案呢?我们来了解一下。
无人驾驶技术
无人驾驶汽车是一种智能汽车,也可以称之为轮式移动机器人,主要依靠车内的以计算机系统为主的智能驾驶仪来实现无人驾驶。无人驾驶汽车是通过车载传感系统感知道路环境,自动规划行车路线并控制车辆到达预定目标的智能汽车。
它是集自动控制、体系结构、人工智能、视觉计算等众多技术于一体,是计算机科学高度发展的产物,也是衡量一个国家科研实力和工业水平的一个重要标志。
通过给车辆装备智能软件和多种感应设备,包括车载传感器雷达 以及摄像头等,实现车辆的自主安全驾驶,安全高效地到达目的地并达到完全消除交通事故的目标 美国 (美国国家公路交通安全管理局)分级定义汽车的自动化等级。
0级:由驾驶员驾驶;
1级:具备1 种以上自动化控制功能(如自适应巡航和车道保持系统等) ;
2级:以汽车为主体执行多种操作功能;
3级:当以汽车为主体的驾驶行不通时可指示驾驶员切换为手动驾驶;
4级:完全可以无人驾驶。
无人驾驶技术主要有以下几种技术组成:
1、车道保持系统
公路行驶时,该系统能探测到左右两根车道线,如果发生偏航时,车道保持系统会通过振动提示驾驶者,然后自动修正方向,辅助回正车辆使其一直保持在路中间行驶。
自适应巡航控制(ACC)是一个允许车辆巡航控制系统通过调整速度以适应交通状况的汽车功能。
安装在车辆前方的雷达用于检测在本车前进道路上是否存在速度更慢的车辆。若存在速度更慢的车辆,ACC系统会降低车速并控制与前方车辆的间隙或时间间隙。若系统检测到前方车辆并不在本车行驶道路上时将加快本车速度使之回到之前所设定的速度。此操作实现了在无司机干预下的自主减速或加速。ACC控制车速的主要方式是通过发动机油门控制和适当的制动。
3、夜视系统
夜视系统是一种源自军事用途的汽车驾驶辅助系统。在这个辅助系统的帮助下,驾驶者在夜间或弱光线的驾驶过程中将获得更高的预见能力,它能够针对潜在危险向驾驶者提供更加全面准确的信息或发出早期警告
4、精确定位/导航系统
自动驾驶汽车依赖于非常精确的地图来确定位置,因为只是用 GPS 技术会出现偏差。在自动汽车上路之前,工程师会驾车收集路况数据,因此,自动汽车能够将实时的数据和记录的数据进行比较,这有助于它将行人和路旁的物体分辨开来。
无人驾驶汽车的传感器系统
无人驾驶汽车的实现需要大量的科学技术支持,而其中最重要的就是大量的传感器定位。核心技术是包括高精度地图、定位、感知、智能决策与控制等各个模块。其中有几个关键的技术模块,包含精确GPS定位及导航、动态传感避障系统、机械视觉三个大部分,其他的如只能行为规划等不属于传感器范畴,属于算法方面,不做过多设计。传感器系统如图所示。
精确GPS定位及导航
无人驾驶汽车对GPS定位精度、抗干扰性提出了新的要求。在无人驾驶时GPS导航系统要不间断的对无人车进行定位。在这个过程之中,无人驾驶汽车的GPS导航系统要求GPS定位误差不超过一个车身宽度。
无人驾驶汽车面临的另一个问题面临的另一个挑战,是需要确保他们又完美的导航功能,实现导航的主要技术是现在生活中已经使用非常广泛的GPS技术。由于GPS无积累误差、自动化测量的特点,因此十分适合用于无人驾驶汽车的导航定位。
为了大幅提高GPS测量技术的精度,本系统采用位置差分GPS测量技术。相较于传统的GPS技术,差分GPS技术会在一个观测站对两个目标的观测量、两个观测站对一个目标的观测量或者一个测站对一个目标的两次测量之间求差,目的在于消去公共误差源,包括电离层和对流层效应等。
位置差分原理是一种最简单的差分方法,任何一种GPS接收机均可改装和组成这种差分系统。
安装在基准站上的GPS接收机观测4颗卫星后便可进行三维定位,解算出基准站的坐标。由于存在着轨道误差、时钟误差、SA影响、大气影响、多径效应以及其他误差,解算出的坐标与基准站的已知坐标是不一样的, 存在误差。基准站利用数据链将此改正数发送出去,由用户站接收,并且对其解算的用户站坐标进行改正。
最后得到的改正后的用户坐标已消去了基准站和用户站的共同误差,例如卫星轨道误差、 SA影响、大气影响等,提高了定位精度。以上先决条件是基准站和用户站观测同一组卫星的情况。位置差分法适用于用户与基准站间距离在100km以内的情况。其原理如图所示。
高精度的汽车车身定位是无人驾驶汽车行驶的先决条件,以现有的技术,利用差分GPS技术可以完成无人驾驶汽车的精确定位,基本满足需求。
动态传感避障系统
无人驾驶汽车作为一种陆地轮式机器人,既与普通机器人有着很大的相似性,又存在着很大的不同。首先它作为汽车需保证乘员乘坐的舒适性和安全性,这就要求对其行驶方向和速度的控制更加严格;另外,它的体积较大,特别是在复杂拥挤的交通环境下,要想能够顺利行驶,对周围障碍物的动态信息获取就有着很高的要求。国内外很多无人驾驶汽车研究团队都是通过分析激光传感器数据进行动态障碍物的检测。
斯坦福大学的自主车“Junior”利用激光传感器对跟踪目标的运动几何特征建模,然后用贝叶斯滤波器分别更新每个目标的状态;卡耐基 • 梅隆大学的 “BOSS”从激光传感器数据中提取障碍物特征,通过关联不同时刻的激光传感器数据对动态障碍物进行检测跟踪。
在实际应用中,3 维激光传感器因为数据处理工作量较大,存在一个比较小的延时,这在一定程度上降低了无人驾驶汽车对动态障碍物的反应能力,特别是无人驾驶汽车前方区域的运动障碍物,对其安全行驶构成了很大的威胁;而普通的四线激光传感器虽然数据处理速度较快,但是探测范围较小,一般在 100°~ 120°之间;另外,单个的传感器在室外复杂环境中也存在着检测准确率不高的现象。
针对这些问题,提出一种利用多激光传感器进行动态障碍物检测的方法,采用 3 维激光传感器对无人驾驶汽车周围的障碍物进行检测跟踪,利用卡尔曼滤波器对障碍物的运动状态进行跟踪与预测,对于无人驾驶汽车前方准确性要求较高的扇形区域,采用置信距离理论融合四线激光传感器数据来确定障碍物的运动信息,提高了障碍物运动状态的检测准确率,最终在栅格图上不仅对无人驾驶汽车周围的动、静态障碍物进行区别标示,而且还根据融合结果对动态障碍物的位置进行了延时修正,来消除传感器处理数据延时所带来的位置偏差。
其流程图如图所示,最终这些信息都显示在人机交互界面上。
动态避障系统的流程结构
首先对Veloadyne数据进行栅格化处理得到一张障碍物占用栅格图,对不同时刻的栅格图进行聚类跟踪可以获取障碍物的动态信息,将动态的障碍物从栅格图中删除并存储在动态障碍物列表中,这个删除了动态障碍物占用信息的栅格图也就是一张静态障碍物栅格图,然后将动态障碍物列表中的动态障碍物信息和Ibeo获取的无人驾驶汽车前方区域内的动态障碍物信息进行同步融合得到一个新的动态障碍物列表,最后将这个新的列表中的动态障碍物合并到静态障碍物栅格图中得到一张动静态障碍物区别标示的栅格图。障碍物检测模块是通过分析处理各种激光雷达返回的数据,将这些激光雷达数据进行栅格化处理,投影到512*512的栅格地图中,从而实现对环境中障碍物的检测。
最终,多传感器信息融合与环境建模模块则是将不同传感器获取的环境信息进行融合、建立道路模型并最终用栅格地图进行表示,这些环境信息包括:标识信息、路面信息、障碍物信息以及定位信息等。
最后,对获得的环境信息信号进行处理,得到一张动态的标志了障碍物的栅格图,从而达到避障的效果,采用融合 Velodyne 和 Ibeo 信息得到运动目标状态的方式相比于只用 Velodyne 处理结果的方式,检测结果的准确率和稳定性都得到了较大的提升。
机械视觉机构
机械视觉也可以称作为环境感知,是无人驾驶汽车最重要也是最复杂的一部分。无人驾驶车辆的环境感知层的任务是针对不同的交通环境,对传感器进行合理的配置、融合不同传感器获取的环境信息、对复杂的道路环境建立模型。无人驾驶系统的环境感知层分为交通标志识别、车道线的检测与识别、车辆检测、道路路沿的检测、障碍物检测以及多传感器信息融合与环境建模等模块。
传感器探测环境信息,只是将探测的物理量进行了有序排列与存储。此时计算机并不知道这些数据映射到真实环境中是什么物理含义。因此需要通过适当的算法从探测得到的数据中挖掘出我们关注的数据并赋予物理含义,从而达到感知环境的目的。
比如我们在驾驶车辆时眼睛看前方,可以从环境中分辨出我们当前行驶的车道线。若要让机器获取车道线信息,需要摄像头获取环境影像,影像本身并不具备映射到真实环境中的物理含义,此时需要通过算法从该影像中找到能映射到真实车道线的影像部分,赋予其车道线含义。
自动驾驶车辆感知环境的传感器繁多,常用的有:摄像头、激光扫描仪、毫米波雷达以及超声波雷达等。
针对不同的传感器,采用的感知算法会有所区别,跟传感器感知环境的机理是有关系的。每一种传感器感知环境的能力和受环境的影响也各不相同。比如摄像头在物体识别方面有优势,但是距离信息比较欠缺,基于它的识别算法受天气、光线影响也非常明显。激光扫描仪及毫米波雷达,能精确测得物体的距离,但是在识别物体方面远弱于摄像头。同一种传感器因其规格参数不一样,也会呈现不同的特性。为了发挥各自传感器的优势,弥补它们的不足,传感器信息融合是未来的趋势。事实上,已经有零部件供应商做过此事,比如德尔福开发的摄像头与毫米波雷达组合感知模块已应用到量产车上。因此本系统设计将多个感知模块结合去识别各种环境实物。
1、交通识别模块
交通标识识别模块又分为交通标志牌识别和交通信号灯识别。其中,交通标志牌识别主要由以下几部分组成:
(1)图像/视频输入;
(2)交通标识检测;
(3)交通标识识别;
(4)识别结果输出;
(5)实验数据库和训练样本数据库。
交通信号灯识别主要由以下几部分组成:
(1)图像/视频输入;
(2)交通信号灯检测;
(3)交通信号灯状态识别;
(4)识别结果输出。
交通标识识别模块系统框图如图所示。
交通标志牌识别系统框图
交通信号灯识别系统框
2、车道线检测与识别模块
车道线检测模块是通过对传感器图像进行车道线检测和提取来获取道路上的车道线位置和方向,通过识别车道线,提供车辆在当前车道中的位置,能够帮助无人车遵守交通规则,为无人驾驶车辆的自主行驶提供导向,提高无人车的行车稳定性。智能车道线检测和识别模块的处理流程主要是:
对采集的图像进行预处理,主要是图像的平滑;
对图像进行二值化,为了适应光照分布的不均勾,采用了自适应阈值二值化方法;
对二值化图像进行分析,得出该路段属于哪种路况;
对不同路况运用不同算法进行检测和识别在图像预处理阶段,运用高斯平滑模板对图像进行平滑,去除图像噪声的干扰。在图像二值化上,利用S*S大小的均值模板对图像进行卷积,将图像中车道线的区域信息提取出来,然后通过逆透视投影变换,通过路况判断,识别出车道线,通过透视投影原理,将车道线映射到原始图像上。
3、车辆检测模块
车辆检测模块则是通过对相机图像进行处理将环境中的车辆检测出来,为了保证图像中任意尺寸的车辆都能检测到,本设计采用滑动窗口的目标检测:在输入图像的多尺度空间中,对图像进行放缩,然后在每一个尺度上,通过平行移动滑动搜索窗口,可以获得不同尺度和不同坐标位置的子图。其次对所获得子框图的类别进行判别,整合各个子框图的类别信息,输出检测得到的结果。其检测采用的是基于区域的Haar特征描述算子和Adaboost级联分类器。
4、决策规划层
无人驾驶车辆决策规划层的任务是根据路网文件(RNDF)、任务文件(MDF)以及定位信息生成一条全局最优路径,并在交通规则的约束下,依靠环境感知信息实时推理出正确合理的驾驶行为,最终生成安全可行驶的路径发送给控制执行系统。决策规划层分为全局规划、行为决策和运动规划三个模块。
全局规划模块首先读取网文件和任务文件,遍历路网文件中的所有路点,生成所有路点之间的连通性,然后根据任务文件来设定起点、任务点和终点,计算出最优路径,最终将这条最优路径的路点序列发送给行为决策模块。
行为决策模块针对车辆所处的不同交通场景、任务要求以及环境特征,将无人驾驶车辆行为分为多个状态,并延展为不同的亚态和子态。
运动规划模块的任务则是根据行为决策模块发送的局部目标点以及环境感知信息,实时规划出安全可行驶的路径,并将路径的轨迹点序列发送给控制执行。
无人驾驶技术的展望
目前无人驾驶技术的实现主要是基于激光传感技术或者是超声雷达技术等,经过十余年的研究探索,许多机构和公司都已经推出了自己的无人驾驶汽车,但基本都存在不足,并不能实现真正意义的“无人驾驶”。
解决无人驾驶汽车的关键技术主要在于两个方面,一方面是算法的设计,另一方面便是传感器的设计。传感器的精度和响应速度直接关系到无人驾驶汽车的安全性问题,而安全性正是无人驾驶技术最基本也是最关键的部分。将来无人驾驶技术的发展方向也应该是改善算法和选择更合适精度更高的传感器。
面对无人驾驶的首例Uber撞人致死事故,禾赛科技CEO李一帆表示,我们不愿意接受的不是交通死亡事故本身,而是由于新技术带来的新增的、本来不一定会发生的死亡事故。从这个角度说,自动驾驶这个行业还远没有成熟,我们应该抱着一颗敬畏的心,用性能最好、最稳定的传感器来尽可能增加系统冗余,遵守最成熟的开发方法和测试流程。一切试图走捷径的低成本传感器方案,人肉小白鼠众包都是无稽之谈,是犯罪。
将来自动驾驶的路很长,后面可能还有更加糟糕的状况,但这些都不能掩盖自动驾驶对社会发展的价值。
编辑:峰会
评论
查看更多