一种融合车载信息的自动驾驶系统激光雷达在线标定方法与流程

文档序号:20695604发布日期:2020-05-12 14:55阅读:220来源:国知局
一种融合车载信息的自动驾驶系统激光雷达在线标定方法与流程

本发明涉及一种面向自动驾驶系统的激光雷达标定方法,特别是关于一种融合车载信息的自动驾驶系统激光雷达在线标定方法。



背景技术:

近年来兴起的自动驾驶技术有望解决交通事故数量居高不下的社会问题,甚至有望改变人们的出行方式,影响城市的设计格局,因而收到各国重视,成为汽车行业的研究热点。

自动驾驶系统需要与环境发生交互,因而需要感知环境的状态。目前自动驾驶系统常用的环境感知传感器包括:激光雷达、摄像头、毫米波雷达和超声波雷达。其中,激光雷达因能准确测距、视野广、不依赖可见光而备受青睐,成为现有自动驾驶系统中不可或缺的传感器。

在环境感知过程中,激光雷达检测到的目标需要转换到车辆坐标系下才能被自动驾驶系统的决策模块使用,该坐标转换需要用到激光雷达的外参。通常情况下,自动驾驶系统在安装好激光雷达后会进行静态标定,通过常用的测量手段,如皮尺、激光测距仪等,测出激光雷达相对于车辆坐标系的平移距离和旋转角度,即测量出外参。然后该外参会被写入自动驾驶系统的配置文件中,供环境感知算法调用,以修正激光雷达所检测到的障碍物位置,将其转换到车辆坐标系中。

但自动驾驶系统在运行过程中,会因胎压不稳、乘客数量不同、载荷不均等问题造成悬架形变,从而对激光雷达的外参产生临时影响,造成外参的临时误差。同时,自动驾驶在长期使用过程中,设备的安装支架会产生形变,对激光雷达的外参造成永久性误差。这些都会对自动驾驶系统的环境感知系统产生影响,降低障碍物的感知精度和稳定性,甚至威胁系统的行驶安全性。

尽管定期重新标定外参可以缓解上述问题,但:1)该方法费时费力;2)大规模量产的自动驾驶系统不可能都召回重标外参;3)激光雷达外参的临时变化无法及时被识别。所以,有必要充分利用激光雷达本身的点云信息,结合车载其他传感器信息,对激光雷达的外参进行在线实时估计,及时发现外参误差,保证环境感知系统的准确性和鲁棒性,进而为自动驾驶系统的正常运行保驾护航。

现有激光雷达外参标定方法存在如下缺陷:1)多为静态标定方法,需要特殊的场地和特殊的流程,无法在线实施;2)需要进行数据建模解算,增加了算法复杂度,也引入了模型失配误差;3)通常需要进行迭代优化以求最优解,容易陷入局部最优,得不到真正的准确外参。

近年来兴起的深度卷积神经网络技术具有强非线性拟合能力和学习能力,易于从大数据中自动分离出关键特征,从而实现端到端的模式识别。将深度卷积神经网络技术与激光雷达的标定场景相结合,有望从大数据中学习到复杂的位姿转换关系,在线融合激光点云数据与车载传感器数据,实现对激光雷达外参误差的在线识别。但相关工作暂未有人开展。



技术实现要素:

针对现有技术存在的不足,本发明的目的在于提供一种融合车载信息的自动驾驶系统激光雷达在线标定方法,利用深度卷积神经网络的数据分析能力处理激光雷达的点云数据和车载传感器数据,在线实时估计出激光雷达的外参误差,从而实现对激光雷达外参的实时修正,保证自动驾驶系统的正常工作。

为实现上述目的,本发明提供了如下技术方案:一种融合车载信息的自动驾驶系统激光雷达在线标定方法,包括如下步骤:

步骤1,搭建大数据引擎,该大数据引擎包括车载部分和服务器部分,其中车载部分包括传感器、预处理、数据同步和数据存储,其中传感器包括:

激光雷达,提供自动驾驶车辆周围的环境点云数据;

车载ecu,提供车辆的必要状态信息,即车速、方向盘转角和ins信息;

接收到上述环境点云数据和车辆的必要状态信息后通过预处理对激光雷达的点云数据解析,即将激光雷达的原始数据转换为算法所需要的常用格式,以激光点的空间三维坐标为表征,还对车载ecu数据解析,从can总线中将ecu的原始数据转换为算法所需要的常用格式,即车速值、方向盘转角值和车辆坐标系下的三轴加速度值;

步骤2,利用c++编程搭建初始深度卷积神经网络模型并保存;利用服务器部署所搭建的深度卷积神经网络模型,给模型输入大数据引擎所生成的数据,进行模型训练,并保存训练好的深度卷积神经网络模型;

步骤3,将训练好的深度卷积神经网络模型搭载到自动驾驶系统中,在软件中连接好激光雷达数据、车载传感器数据和深度卷积神经网络模型;正常运行自动驾驶系统,深度卷积神经网络模型将会实时收取激光雷达数据和车载传感器数据,并实时比对二者的偏差,在线给出激光雷达的外参误差值。

作为本发明的进一步改进,所述步骤一中搭建大数据引擎的具体步骤如下:

步骤一一,针对目标自动驾驶系统,安装好激光雷达,连接好车载传感器接口,并利用精密仪器完成对激光雷达的静态标定,获得激光雷达的外参;

步骤一二,驾驶搭载已标定自动驾驶系统的车辆在目标工作区域、场景中行驶,行驶车速保持在30km/h以下,保证车辆不发生剧烈颠簸,采集激光点云和车载传感器数据,并通过软件记录下来;

步骤一三,对已采集数据施加人为干扰,模拟车辆剧烈运动下的激光雷达点云数据和车载传感器数据,并通过软件记录下来。

作为本发明的进一步改进,所述步骤1中对车载ecu数据解析方式为将车载ecu获取的数据处理为车辆状态轨迹,其中该车辆状态轨迹由车辆运动学模型推导而出,所述车辆运动学模型由以下步骤推导而出:

步骤11,当车辆平稳、低速运动时,质心侧偏角和轮胎侧偏角均可忽略,于是有如下关系成立。

上式中,δ为车辆前轮平均转角,即为δo和δi的均值,v为车速,β为车辆横摆角;步骤12,根据步骤11中所示的运动学关系,若车辆当前位姿为tk,则下一时刻车辆位姿可预测为下式所示:

tk+1=tktδ

上式中,tδ即为k到k+1时刻车辆的位姿相对变化量;

步骤13,将步骤12中的tδ按下式计算:

其中,φ^表示取向量φ的反对称阵,δt表示k到k+1时刻的时间差。

作为本发明的进一步改进,所述步骤1中的数据同步具体步骤如下:

步骤14,为激光点云数据标记系统时间;

步骤15,根据激光点云的系统时间,在车辆状态数据流中插值,获得激光点云所在时刻的车辆状态数据近似值。

作为本发明的进一步改进,所述步骤一三中认为干扰的具体内容如下:

模拟车速增高,利用现有数据进行数值模拟,生成高速行驶工况的数据;

模拟车辆颠簸,利用现有数据,对点云和车辆状态轨迹共同施加预定好的短时间大俯仰和侧倾角度变换,模拟车辆的震动工况;

模拟遮挡工况,人为滤除多个角度的激光点云数据,使得深度卷积神经网络能应对点云稀少的工况;

模拟不同外参偏差值,通过人为加入预定好的外参偏差,获得带外参偏差的数据。

本发明的有益效果,1)不需要人为推导激光雷达的外参偏差变化数学模型,易于工程实用;2)进行外参误差估计所需的第三方设备为车载传感器,该设备在自动驾驶车辆中是必备的,所以本发明未增加额外设备,易于应用在现有自动驾驶系统中;3)本发明实现了激光雷达外参的实时在线标定,能为自动驾驶系统提供实时的外参修正,从而提升了自动驾驶系统的环境感知精度和可靠性,进而提升了自动驾驶系统的安全性。

附图说明

图1是本发明的硬件拓扑示意图;

图2是本发明的大数据引擎架构示意图;

图3是车辆运动学模型示意图;

图4是本发明的模型训练架构示意图;

图5是本发明的深度卷积神经网络模型示意图;

图6是本发明的模型部署应用架构示意图。

具体实施方式

下面将结合附图所给出的实施例对本发明做进一步的详述。

如图1所示,本发明所涉及的自动驾驶相关硬件包括激光雷达、车载ecu(electriccontrolunit,电子控制单元)和计算单元。其中激光雷达在自动驾驶系统中用于障碍物检测,他会实时向自动驾驶系统反馈所检测到的点云信息,自动驾驶的障碍物检测算法基于点云信息分析障碍物的类别和位置。车载ecu属于原车设备,会通过can(controlleraeranetwork,控制器局域网)总线向外发部当前车速、方向盘转角信息和ins(inertialnavigationsystem,惯性导航系统)信息。其中,ins信息即为车辆坐标系下的三轴(x、y和z轴)加速度信息。激光雷达是本发明的研究对象,本发明所计算的外参误差即为激光雷达的位姿标定偏差。车载ecu为本发明的算法提供辅助信息,本发明通过深度卷积神经网络计算激光雷达外参误差的本质是:连续多帧激光点云变化所对应的车辆轨迹应与车载ecu信息变化对应的轨迹一致。激光点云变化所对应的车辆轨迹具有强非线性,不易通过数据建模获得解析解,本发明通过深度卷积神经网络的学习能力,学习这种强非线性关系,从而避免复杂的数学建模,获得可靠的激光雷达外参误差。计算单元在本发明中有2个主要作用:1)在搭建大数据引擎时,采集和记录数据;2)在模型部署应用时,运行深度网络模型,实时估计激光雷达外参误差,供自动驾驶算法实用。注意,在实际实用过程中,自动驾驶算法也运行在计算单元中。

如图2所示,本发明的大数据引擎主要包含:车载部分和服务器部分。深度卷积神经网络中每个神经元的参数需要经过大数据的训练才能收敛到有效值,故而需要搭建大数据引擎,用于采集、处理和保存必要训练数据,以供深度卷积神经网络的训练使用。大数据引擎的车载部分运行在自动驾驶车辆上,负责采集有效数据;从车载部分采集了有效数据后,在服务器上对数据进行人为加偏处理,以丰富数据量和数据类型。

大数据引擎的车载部分包括:传感器、预处理、数据同步和数据存储,共4个子部分。其中,传感器主要包括:1)激光雷达,即为本发明的研究对象,提供自动驾驶车辆周围的环境点云数据;2)车载ecu,提供车辆的必要状态信息,即车速、方向盘转角和ins信息。预处理部分主要进行:1)激光雷达的点云数据解析,即将激光雷达的原始数据转换为算法所需要的常用格式,以激光点的空间三维坐标为表征;2)车载ecu数据解析,从can总线中将ecu的原始数据转换为算法所需要的常用格式,即车速值、方向盘转角值和车辆坐标系下的三轴加速度值(下文中将三者统称为车辆状态数据)。同步部分主要是将激光点云数据与车载ecu数据对齐到同一个时间戳,包括:1)为激光点云数据标记系统时间;2)根据激光点云的系统时间,在车辆状态数据流中插值,获得激光点云所在时刻的车辆状态数据近似值。存储部分即,将对齐后的激光点云数据与车辆状态数据按时间顺序存储在计算单元的硬盘中。

大数据引擎的服务器部分主要包括:人为加偏部分和存储部分。人为加偏的目的是,利用现有数据生成更多有效数据,并通过特定的数据加偏内容,增强深度卷积神经网络的鲁棒性和预测精度。加偏的内容主要包括:1)模拟车速增高,利用现有数据进行数值模拟,生成高速行驶工况的数据;2)模拟车辆颠簸,利用现有数据,对点云和车辆状态轨迹(该名词将在图3中解释)共同施加预定好的短时间大俯仰和侧倾角度变换,模拟车辆的震动工况;3)模拟遮挡工况,人为滤除多个角度的激光点云数据,使得深度卷积神经网络能应对点云稀少的工况;4)模拟不同外参偏差值,通过人为加入预定好的外参偏差,获得带外参偏差的数据。存储部分,即,将前述新生成的数据按时间顺序进行存储,以备后续训练使用。注意,在人为加偏前,会将车辆状态数据转换为车辆状态轨迹,以便后续处理。在大数据引擎服务器部分的存储阶段,不再存储原始的车辆状态,而是存储计算好的车辆状态轨迹。

大数据引擎的车载部分在自动驾驶车辆中运行,采集自动驾驶系统的目标工作环境数据。每次数据采集前,先通过高精度设备对激光雷达的外参进行静态标定,获得准确外参值,作为模型训练时的参考。采集过程中,控制车速在30km/h以下,尽量保持车辆平稳行驶,这样做是为了避免设备的外参因车身的剧烈运动而发生改变。采集完成后,将车载部分的数据拷贝到服务器中,以进行后续处理。

大数据引擎的服务器部分运行在后台服务器中,根据车载采集的数据,经过人为加偏后生成更多有效数据,以支持深度卷积神经网络的大数据训练。其中,人为加偏这一步可以:1)增加数据的工况种类,数据在实车采集时,只有低速、平稳行驶工况,通过人为加偏可以获得高速、剧烈驾驶工况下的数据;2)增加数据量,深度卷积神经网络容易过拟合,只有数据量足够大时,深度卷积神经网络才能在保证精度的基础上提升泛化能力,增强系统鲁棒性。

注意,在数据采集和存储过程中,也会对前述利用高精度设备所测量的外参标定值进行记录,作为模型训练时的参考值。

图3所示为本实施例中使用的车辆运动学模型。图中,δo和δi为车辆左前轮和右前轮转角,o为车辆当前的回转中心,l为车辆轮距,lw为车辆轮距,r为车辆质心的回转半径。在车辆不剧烈运动时,车辆的状态变化符合图3所示的车辆运动学模型,即车辆质心按照以o为圆心、以r为半径的圆弧运动,且圆周速度即为车辆的纵向速度v。从车载ecu获得的车辆状态数据不能直接输入给深度卷积神经网络,需要先处理为车辆状态轨迹。车辆状态轨迹即,由若干车辆位姿ti(包含x、y、z、α、β和γ,即,纵向位置、横向位置、垂向位置、横滚角、俯仰角和横摆角)组成的序列。由于车辆的运动符合车辆运动学模型,故可利用车辆状态数据,结合图3中的模型推导出车辆状态轨迹。当车辆平稳、低速运动时,质心侧偏角和轮胎侧偏角均可忽略,于是有如下关系成立。

上式中,δ为车辆前轮平均转角,即为δo和δi的均值,v为车速,β为车辆横摆角。车辆的平均前轮转角δ与车辆方向盘转角δw之间存在固定的比例关系,即,δw=λδ,其中λ为系数。尽管系数λ会随方向盘转角的不同而变化,但其变化趋势是固定的,不随时间和环境改变,可提前测量出来。根据上式中所示的运动学关系,若车辆当前位姿为tk,则下一时刻(即k+1时刻)车辆位姿可预测为下式所示。

tk+1=tktδ

上式中,tδ即为k到k+1时刻车辆的位姿相对变化量。本实施例中将车辆位姿表示为空间变换阵t,其结构如下式所示,其中r为旋转矩阵,与车辆的α、β和γ等效,t为平移向量,即为车辆的x、y、z。

前述的tδ按下式计算。其中,φ^表示取向量φ的反对称阵,δt表示k到k+1时刻的时间差。

φ=(00δγ)t

ρ=jδt

于是,基于车辆状态(即方向盘转角、车速信息)可预测车辆未来若干时刻的位姿,将这些位姿联系起来即为车辆状态轨迹。

注意,上述过程中没有使用ins数据,ins数据主要用于判断车辆是否处于平地平稳行驶状态。当车辆处于平地平稳行驶状态时,ins的z轴加速度值接近重力加速度值(误差小于2m/s2),且x和y轴加速度值保持在小值范围(-2m/s2~2m/s2之间)。当ins的数据超出上述范围时,认为车辆处于剧烈运动中,不记录数据。

如图4所示,本发明的模型训练利用了深度卷积神经网络的反向修正机制。首先从存储器中读取大数据,将其解析为算法常用的格式,即激光点的空间三维坐标形式和车辆的空间三维6自由度位姿形式车辆状态轨迹。然后将激光点云和车辆状态轨迹数据输入给深度卷积神经网络模型,深度卷积神经网络模型会计算出外参的偏差值。将深度卷积神经网络计算的外参偏差值与存储器中存储的外参标准值进行比较,即可得到深度卷积神经网络的预测残差。利用预测残差向深度卷积神经网络模型的神经元参数求导,即可得到神经元参数的反向修正值。最后利用所获得的反向修正值对深度卷积神经网络的神经元参数进行修正,修正后即可进入下一轮迭代,如此往复,即可不断优化神经元参数,使得深度卷积神经网络具备对激光雷达外参误差的预测能力。

图5中所示为本实施例的深度卷积神经网络模型具体结构,主要包括:数据流输入、全卷积层、池化层、金字塔池化层和全连接层,图中的w表示以像素为单位的深度图宽度,h表示以像素为单位的深度图高度。图5中以16线velodyne激光雷达的数据处理为例,每帧激光点云包含16线数据,每线数据包含上千个数据点。本发明中首先将每帧点云数据转换为深度图,像素为1800×16×1,即,宽度×高度×灰度。同时,为将车辆状态轨迹数据也作为神经网络的输入,从车辆状态轨迹中提取出与激光点云对应时刻的车辆位姿,并把车辆位姿信息转化为1800×16×1的深度图,该深度图的像素值即为车辆的空间三维6自由度位姿数值。把点云深度图与车辆位姿深度图叠加在一起,形成1800×16×2的混合深度图。只有多帧图像运动才能产生车辆运动的路径,才能估计激光雷达的外参,因此本发明中缓存9帧历史混合深度图,与当前帧深度图共同拼接为一幅大深度图,作为深度卷积神经网络的输入,其像素为1800×160×2。如图5中所示,在输入大深度图以后,深度卷积神经网络依次经过全卷积、池化、金字塔池化和全连接层后得到预测的激光雷达外参,该外参以6维李代数的形式描述。在与数据库中所存储的精确外参做差后得到外参误差,外参误差将用于计算神经元的修正项,然后通过修正项的反向传播来调整神经元的参数值。

图6中所示为本发明的深度神经模型部署应用系统架构,主要包括:传感器和软件两部分。在训练完成后,深度卷积神经网络将部署在实车的自动驾驶系统中,用于实时计算激光雷达的外参偏差。部署架构的传感器部分包括:1)激光雷达,即为所求外参偏差的主体;2)车载ecu,提供辅助信息,以便深度卷积神经网络能估计出准确外参。部署架构的软件部分包括:预处理、同步和模型3部分。预处理部分主要进行:1)激光雷达的点云数据解析,即将激光雷达的原始数据转换为算法所需要的常用格式,以激光点的空间三维坐标为表征;2)车载ecu的数据解析,将ecu的原始can数据转换为算法所需要的格式,即车辆状态轨迹,其中会用到图3中的车辆运动学模型。同步部分主要是将激光点云数据与车载ecu数据对齐到同一个时间戳,包括:1)为激光点云数据标记系统时间;2)根据激光点云的系统时间,在车辆状态轨迹数据流中插值,获得激光点云所在时刻的车辆位姿近似数据。模型部分主要进行:1)将激光点云数据转换为深度图;2)将车辆位姿转换为深度图;3)拼接激光深度图与车辆位姿深度图,形成混合深度图;4)缓存9帧历史混合深度图,并与当前帧混合深度图共同拼接为大深度图;5)将大深度图输入给深度卷积神经网络,得到估计的激光雷达外参;6)将所估计的外参与原始静态标定外参值做差得到外参误差。

图6中所示的过程在线运行,为自动驾驶系统提供实时的激光雷达外参误差,以便提升自动驾驶系统的环境感知能力。

以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1