自动驾驶在拥堵路段的道路几何信息估计

2020-09-28 10:15李慧云
集成技术 2020年5期
关键词:本车卡尔曼滤波曲率

李 看 雷 斌 李慧云

1(武汉科技大学 机械自动化学院 武汉 430000)

2(中国科学院深圳先进技术研究院 深圳 518055)

1 引 言

随着我国经济的快速发展,国内汽车保有量持续增加。国家公安交通部数据显示,截至 2019 年底,全国汽车保有量达 2.6 亿辆,其中私家车保有量达 2.07 亿辆[1]。庞大的汽车使用量,给社会生活带来诸多严峻挑战,如交通拥堵、环境污染、事故高发等。据国家统计局统计,2018 年全年交通事故死亡人数高达 63 194 人[2]。而交通事故发生的主要原因是驾驶人员的失误,相关交通碰撞研究表明,配备自动驾驶技术的车辆可以有效减少事故发生,降低交通事故率[3]。此外,自动驾驶配合车联网,进行多车协作,能最大化汽车利用率,缓解交通压力和环境污染。如上所述,自动驾驶是未来亟需发展的一项关键技术。这一技术主要由四大核心构成:环境感知、精确定位、路径规划和控制[4]。其中,环境感知是指无人车通过车载传感器(如相机、雷达)获得并感知环境相关信息,从而为后续无人车自主决策提供依据,对自动驾驶的实现起着举足轻重的作用。道路几何信息是环境感知的重要信息之一,其规定道路的几何形状及车辆的前进方向等。只有当无人车感知到准确的道路几何信息后,决策系统才能确定行驶的方向与速度。

道路几何信息的感知方法主要包括车道线检测、高精度地图和多信息融合三大类。(1)车道线检测:由于车道线区域一般比马路上其他区域具有更显眼的颜色且利于辨别,因此传统车道线检测一般使用色域变换、感兴趣区域提取、边缘检测、霍夫变换、卡尔曼滤波及粒子滤波等方法[5-7]。近年来,随着卷积神经网络(Convolutional Neural Network,CNN)的兴起,出现了许多新颖的检测方法。例如,Pan 等[8]提出片到片的卷积方式,强化了长条形物体的先验信息,将车道线检测的准确率提升至 96.53%;Ghafoorian 等[9]融合生成对抗网络(Generative Adversarial Network,GAN)和语义分割网络(Semantic Segmentation Network),得到 EL-GAN 网络,使得分割结果与标签值更贴近,免除了后操作处理(Postprocessing);Li 等[10]基于 Faster R-CNN 修改方形待选区域为线性待选区域,提高了网络检测线性物体的性能。在车道线清晰可见的情况下,车道线检测是获取道路几何的首选。(2)高精度地图(High Definition Map):与普通的电子地图不同,高精度地图拥有车道级别的精度,同时包含车道线、红绿灯、交通标识等静态交通信息[11]。使用高精度地图获得车道几何信息的关键在于定位的精度。只有获得厘米级别的定位精度,无人车才能有效定位自身位置,结合地图得到正确的道路几何信息。在定位精度足够且拥有高精度地图的情况,这是一种稳定高效获得道路几何信息的方法。(3)多信息融合:车辆在行驶过程中,除了可观测到的车道线外,周围的其他车辆以及道路两旁的静止物体也可以给道路几何提供参考。因此,采用滤波的框架,将诸多与道路几何相关的信息融合在一起,能够得到更精确的道路几何信息。例如,Eidehall 等[12]将车辆跟踪和车道线检测放到同一个滤波框架,提高了算法在面对复杂环境时的鲁棒性;Hammarstrand 等[13]结合多段回旋曲线提出一种贝叶斯融合框架,通过车道线形状、前车信息、路旁反射物等精确估计出车前 200 m 的道路几何信息。多信息融合能够通过采用多种与车道相关的不确定信息,求解出最优的车道几何信息。

常规场景下,以上方法均能良好地工作。例如,在高速路和城市路况中车道线清晰可见的情况下,车道线检测方法表现优异;在建筑开阔,全球定位系统(Global Positioning System,GPS)信号无干扰的情况下,基于高精度地图的方法能快速获得道路几何信息;在高速路上,相关信息较多时,多信息融合能最大程度地利用相关信息,提升估计精度。但是,要实现全工况自动驾驶,特殊场景也需要考虑。除以上常规场景外,日常生活中也常见道路拥挤、高楼林立的路况。此外,由于现代城市道路拥挤且车道线被遮挡严重,车道线检测和多信息融合的方法常常失效。而精确定位依赖于 GPS 传感器,由于高楼遮挡了 GPS 信号,使得定位中产生多路径效应,从而导致精度下降,因此无法使用高精度地图获得道路几何信息。在交通拥挤的市内道路中,如何利用有限的观测信息来获得道路几何信息仍需深入研究。

为探索从较少车道相关信息中得到道路几何信息,本文提出一种利用前车相对信息与本车信息结合的新颖道路几何估计方法。首先,用毫米波雷达(Radar)和惯性测量单元(Inertial Measurement Unit,IMU)获得前车相对本车的距离、速度、相对方位角以及本车的角速度,构成观测空间;然后,结合本车与前车的运动学模型以及道路模型建立预测模型,关联状态空间与观测空间建立观测模型,使用无损卡尔曼滤波[14]估计出道路曲率。本研究所提出的道路几何估计方法在观测信息较少的情况下工作良好,且在车道严重遮挡、GPS 丢失这类极端情况下,仍能提供道路几何信息作为参考。

2 方 法

本文针对的是道路拥挤的市内交通,如图 1 所示。为了更清晰具体地描述问题,作以下假设:首先,认为道路位于二维平面中,忽略地面斜率带来的影响;其次,因为本文的目标是对车道曲率进行估计,所以车道岔口以及合并处不在本文考虑的范围内;最后,假设前方车辆行驶过程中,车身大致沿着车道中轴线前进,车道线遮挡严重,驾驶在高楼之间的车辆因为多路径效应无法获得精确 GPS 信号。

图1 拥堵场景与测试场景Fig. 1 Congestion scenarios and test scenarios

在以上假设前提下,本文方法的整体架构如图 2 所示。从交通场景中获得道路几何的方法,本质上是对可观测到的数据进行处理,估计出道路几何信息。若可观测数据中包含精确定位,则使用高精度地图即可;若可观测数据中不包含精确定位,但包含车道线,则对车道线进行检测;此外,还可以结合其他车辆以及路旁静态物体,进行多信息融合估计车道几何。但若以上信息均无法获得,且可观测数据中包含前车以及 IMU 信息,则使用基于前车的道路几何估计方法。该方法主要由数据处理和滤波模块组成。其中,数据处理模块将毫米波雷达和 IMU 的数据转换成观测空间中的变量;滤波模块搭建系统的预测模型以及观测模型,使用无损卡尔曼滤波估计出道路曲率。

图2 整体架构Fig. 2 Architecture

2.1 数据处理

图3 采样密度对比Fig. 3 Sampling density comparison

自动驾驶中,常用的传感器有相机、毫米波雷达、激光雷达和 IMU。为了获得本车的角速度、速度及前车的相对信息(如相对距离、速度、方位角等),分别使用 IMU、轮速传感器和毫米波雷达。所包括的三轴加速度计、三轴陀螺仪,分别用来测量物体在三维空间的加速度和角速度,通过使用 IMU 外参矩阵将陀螺仪得到的角速度转换到车体坐标,得到本车偏航角角速度,记为 ;最后,轮速传感器用来测量汽车车轮转速,由车轮转速以及车轮的半径得到本车的速度,记为v。

2.2 滤波框架

由毫米波雷达和 IMU 获得前车相对信息以及本车信息后,通过本车、前车以及道路模型三者的关系构建出状态空间,并基于无损卡尔曼滤波框架给出对应的预测模型以及观测模型。

2.2.1 状态空间

状态空间是指系统中决定系统状态的变量集合。本文研究对象主要包括道路、本车、前车。首先对常用的道路模型分析得到道路的状态变量,然后增加本车与前车相关的状态变量,从而得到状态空间的变量集合。道路模型描述道路的形状,即向前延伸过程中道路曲率如何变换。其中,曲率越小,半径越大,道路越接近直线;曲率越大,半径越小,道路越陡峭。由此可知,曲率剧烈变换的道路表明道路突然变缓或突然变陡峭,这些对于驾驶都是不利的。因此道路的曲率常常缓慢增加或减少,可由一条回旋曲线表征(如图 5)。曲率随径向距离的增加而线性变化,

图4 毫米波雷达数据处理Fig. 4 Radar data processing

图5 回旋曲线Fig. 5 Clothoid curve

图6 本车和前车以及道路的关系Fig. 6 Relationship between host car and leading car and road

图7 前车在本车车体坐标系下的方位角Fig. 7 The azimuth of the preceding vehicle in the coordinate system of the vehicle body

如前所述,本文构建了系统的状态空间,分析并给出预测模型以及观测模型。模型中拥有非线性部分,因此使用非线性卡尔曼滤波器进行滤波。常用的非线性卡尔曼滤波器有扩展卡尔曼滤波器和无损卡尔曼滤波器两种。其中,无损卡尔曼滤波是无损变换与标准卡尔曼滤波体系的结合,通过无损变换使非线性系统适用于线性假设下的标准卡尔曼滤波。结合公式(7)和(13),得到无损卡尔曼滤波的预测与更新公式(14):

3 实 验

3.1 实验建立

本文采用 Car Learning to Act(Carla)软件进行模拟实验。其中,Carla[16]是一款用于自动驾驶训练、验证以及测试的开源软件。如图 8 所示,Carla 驾驶场景基于虚拟引擎(Unreal Engine)构建,使用 C++ 进行开发,同时提供 Python 接口,具有数据易获取、环境丰富、开源、接口灵活等特点。它分为服务器端(Server)和客户端(Client)。其中,服务器端负责地图搭建、数据交互功能;客户端向用户提供接口以控制车辆运行、设置传感器等。值得一提的是,真实车辆上的大部分传感器在 Carla 中均可仿真获得,如灰度相机、深度相机、激光雷达、毫米波雷达、IMU 等。

图8 Carla 介绍Fig. 8 Introduction of Carla

仿真过程中,总共生成 28 辆车来模拟环境,其中包括本车、前车以及左右两车道各 13 辆车。本车装载有毫米波雷达以及 IMU 两个传感器,对应的参数配置如表 1 所示,示例数据如图 9 所示。驾驶过程中,前车由 Carla 中交通管理模块(Traffic Manager)接管,处于自动驾驶模式,沿着当前车道中轴线前行。本车通过客户端交互,处于手动驾驶模式,同时传感器获得的数据以 15 fps 的帧率保存到本地,本车的速度也通过 Carla 中接口函数调用保存到本地。本文使用 Carla 自带的地图 Town 5 作为测试地图,从中选出 3 段作为测试路段,如图 10 所示。三个测试路段周围分别有高楼、普通楼房以及高架桥,道路均依次由 3 段直线、曲线、直线所组成。同时,为模拟自动驾驶中由于多路径效应导致的定位下降问题,分别对上述 3 个路段设置了定位误差(10 m、5 m、20 m)。在以上 3 个测试场景中,分别进行 10 次测试,总共 30 次实验,将所保存的数据依次离线处理,得到最后的结果。

表1 传感器配置Table 1 Sensor configuration

图9 示例数据Fig. 9 Sample data

图10 实验路段Fig. 10 Test road

3.2 实验结果

3.2.1 估计结果

图 11 为本车在场景 1 中的测试结果。该场景由 3 段路组成,分别是直线、曲线和直线,对应的曲率分别为 0、0.033、0。图中绿色实线表示真实值;蓝色虚线表示本文方法估计值;横坐标表示本车在行驶过程中的采样次数,采样的频率为 15 fps;纵坐标表示曲率,即半径的倒数。

3.2.2 对比分析

本研究分别在 3 个不同道路曲率路段进行测试,同时 3 个路段的环境设置也不同。其中,路段 1 曲率和路段 3 曲率较大,路段 2 曲率较小;路段 1 周围有高楼,路段 2 相对空旷,路段 3 位于高架桥之下。本研究对 3 类环境分别设置定位误差为 10 m、5 m、20 m。

图11 路段 1 实验结果Fig. 11 Experiment output in the road 1

三个场景下的实验对比结果如图 12 所示。其中,绿色实线代表真实值;蓝色虚线代表本文估计的结果;红色点表示基于地图的结果。因为每个场景下存在定位误差,所以基于地图的方法在查询所在位置的曲率时存在以下情况:(1)定位正确,曲率正确;(2)定位到反向车道,曲率相反;(3)定位到前后不同的路段上,曲率为前后路段的曲率。例如在图 12(a)中,采样次数在 80~100 次时,曲率可能为 0.031,即正确曲率;可能为 0,即前一部分路段曲率;可能为-0.031,即反向车道曲率。对比基于地图的方法,本文方法更贴合真实值。将 3 幅图对比分析发现,基于地图的方法对环境依赖严重,从场景 2 到场景 1 再到场景 3,周围遮挡物越多,定位精度越差,得到的曲率值结果也越差。而本文方法只依赖前车以及本车的自身状态,对环境的鲁棒性更强,3 幅图的误差较相近。

图12 3 个路段的实验结果Fig. 12 Experiment output of three roads

针对 3 个场景,分别做了 10 次实验,结果如图 13 所示。从图 13 可看出,蓝色虚线(基于地图方法)的波动程度依次是(c)>(a)>(b)。这是因为就定位误差而言,场景 3>场景 1>场景 2,定位误差越大,误差范围越大,曲率结果错误的可能性也越大。另一方面,三个场景下基于本文方法得到的结果波动较小,相对更加稳定。这也再次验证相比基于地图的方法,在定位误差较大的情况下,本文方法能对环境遮挡有更好的鲁棒性,输出更稳定的估计结果。

对图 13 中 10 次实验结果求均值,得到 2 种方法在 3 个场景下的平均均方根误差。三个场景下,本文方法的平均均方根误差分别为 0.003 3、0.001 9、0.004 6;基于地图方法的平均均方根误差分别为 0.031 4、0.020 7 和 0.033 4。与基于地图的方法相比,本文方法定位精度分别提升了 89.5%、90.8% 和 86.2%。同时,如图 12 所示,场景 3 的曲率值>场景 1 的曲率值>场景 2 的曲率值,表明场景曲率越大,本文方法估计结果误差越大。可能的原因是曲率越大,前车与本车相对角度差越大,预测模型的误差也越大。

图13 均方根误差Fig. 13 Root mean square error

4 与国内外相似研究的对比分析

现阶段获得道路几何信息的场景,主要集中在道路空旷、路况可见度良好的情况,如高速路、车流量较少的市内道路。Hammarstrand 等[13]在高速路场景下,利用车道线、其他车辆、路旁障碍物等估计出车前 200 m 的道路几何信息。Ghafoorian 等[9]在路况清晰的市内路上,使用生成对抗网络和语义分割网络检测车道线来得到道路几何。此外,在定位准确情况下,使用高精度地图可以得到道路几何信息[11]。但是,对于车道线被遮挡、定位不准的情况,尚未有深入研究。而本文提出的方法在这种特殊情况下,不依赖车道线以及定位精度,仍能工作良好;与基于地图的方法相比,本文方法精度提高了 86%。本研究的不足之处在于,未在真实的场景下对所提出的方法进行验证,且实际情况中的定位误差可能与仿真实验中给定的不同。

5 结 论

真正的自动驾驶需要覆盖全部场景,因此,在车道线遮挡、高楼林立的市内交通条件下,如何获得道路几何信息仍需要深入研究。针对这一特殊场景,本文提出一种基于前车相对信息的道路几何估计方法,仅依靠前车相对本车的位置、速度、角度以及本车自身信息作为观测信息,避免了因车道线信息丢失而无法获得道路几何以及因定位失效导致高精度地图匹配误差大的问题。在仿真软件 Carla 上进行的实验结果表明,本文方法相比高精度地图匹配的结果精度提升了 86% 以上。在城市道路观测信息受到限制的条件下,本文方法可以为无人驾驶输出更为可靠的转向角等信息。

猜你喜欢
本车卡尔曼滤波曲率
基于车辆对道路不满意度的微观换道决策
基于深度强化学习与扩展卡尔曼滤波相结合的交通信号灯配时方法
一类双曲平均曲率流的对称与整体解
复杂工况下二阶碰撞时间自动紧急制动模型
带平均曲率算子的离散混合边值问题凸解的存在性
半挂汽车列车AEBS 控制策略研究
面向复杂曲率变化的智能车路径跟踪控制
卡尔曼滤波在信号跟踪系统伺服控制中的应用设计
一种基于前向防碰撞系统的汽车防追尾装置
基于递推更新卡尔曼滤波的磁偶极子目标跟踪