发明内容
为此,本发明所要解决的技术问题在于克服现有技术中激光雷达定位误差的问题。
为解决上述技术问题,本发明提供了一种激光雷达测量值修正方法,包括如下步骤:
S1、搭建测试环境,提供测试空间和环形内侧面,所述测试空间温度可调的设置,所述环形内侧面包括扫描区A和扫描区B,所述扫描区A的回波测量值大于所述扫描区B的回波测量值,待修正激光雷达设于所述环形内侧面内且二者置于所述测试空间中,待修正激光雷达循环扫描所述扫描区A和所述扫描区B;
S2、采集数据,待修正激光雷达在不同温度条件下旋转扫描多圈,每扫描一圈获得多个点的测量数据;
S3、数据处理,解析每个点的数据,剔除异常值,处理完的每个点的测量数据包括测量距离、回波测量值、测量角度以及APD温度信息;
S4、角度零位校准,
S4.1、计算角度偏差,计算激光雷达扫描时每一圈回波测量值忽然增大的多个连续点中最中间点的理论角度与测量角度的角度偏差值,计算激光雷达扫描多圈的角度偏差值的平均值,得到角度偏差平均值;
S4.2、调整输出角度,根据角度偏差平均值和每个点的测量角度,得到每个点的实际角度;
S4.3、计算实际距离误差,根据每个点的实际角度和环形内侧面的尺寸计算每个点的实际距离,根据每个点的实际距离和测量距离计算每个点的实际距离误差;
S5、生成建模数据,每个点的建模数据包括测量距离、回波测量值、实际角度、APD温度信息、实际距离、实际距离误差;
S6、建立误差补偿模型,通过非线性拟合得到实际距离误差与回波测量值、APD温度的二元函数,得到误差补偿模型;
S7、修正原始测量距离,通过误差补偿模型计算每个点的预测距离误差,根据预测距离误差对每个点的测量距离进行修正,得到每个点的修正后距离;
S8、验证误差补偿效果,根据每个点的修正后距离和实际距离计算每个点的模型误差;
S9、判断多个点的模型误差是否都在设定范围内,如是,则修正结束,将该误差补偿模型写入设备,如否,则进入步骤S10;
S10、调整二元函数拟合方案,回到步骤S6。
进一步的,S1中,所述扫描区A为第一矩形面,所述扫描区B包括依次两两首尾垂直相接的第二矩形面、第三矩形面、第四矩形面以及第五矩形面,所述第一矩形面覆盖部分所述第三矩形面;
S2中,首先将测试空间的温度调节到低于室温的T1,采集T1至室温温度段的每个点的测量数据,然后将测试空间的温度加热到高于室温的T2,采集室温到T2温度段的每个点的测量数据,待修正激光雷达在不同温度条件下旋转扫描n圈,每扫描一圈获得m个点的数据;
S3中,每个点的测量数据表示为(d,p,a,t),其中d表示测量距离、p表示回波测量值、a表示测量角度,t表示APD温度信息;
S4.1中,根据如下公式计算角度偏差平均值ε,
其中,
表示第i圈第Z
(i)个点的测量角度,k
(i)表示激光雷达扫描第i圈时回波测量值从第k
(i)个点忽然增大;s
(i)表示激光雷达扫描第i圈时回波测量值忽然增大的点的个数,n表示共扫描n圈;
S4.2中,根据如下公式计算每个点的实际角度,
a′j (i)=aj (i)+εi=1,Λ,n;j=1,Λ,m
其中,a′j (i)表示第i圈第j个点的实际角度,aj (i)表示第i圈第j个点的测量角度,ε表示角度偏差值,n表示共扫描n圈,m表示每圈扫描m个点;
S4.3中,根据如下公式计算每个点的实际距离v,v=f(angle,A,B),v表示实际距离,angle为每个点的实际角度,A表示第二矩形面和第四矩形面沿扫描方向的长度,B表示第三矩形面和第五矩形面沿扫描方向的长度;根据如下公式计算每个点的实际距离误差e,e=d-v,其中e表示每个点的实际距离误差,d表示测量距离;
S5中,每个点的建模数据表示为(d,p,a′,t,v,e),d表示测量距离,p表示回波测量值,a′表示实际角度,t表示APD温度信息,v表示实际距离,e表示实际距离误差;
S6中,二元函数为:Y=F(X)=F(P,T),其中P=[p
1 p
2 Λ p
m×n]
T,T=[t
1 t
2 Λt
m×n]
T,输入为:
输出为:
其中,F(P,T)表示预测距离误差,pm×n表示第m×n个点的回波测量值,tm×n表示第m×n个点的测量温度,em×n表示第m×n个点的实际距离误差;
S7中,根据如下公式得到每个点的修正后距离;
其中,
表示第i圈第j个点的预测距离误差,d
j′
(i)表示第i圈第j个点的修正后距离,
表示第i圈第j个点的测量距离,n表示共扫描n圈,m表示每圈扫描m个点;
S8中,根据如下公式计算模型误差,
其中,
表示第i圈第j个点的模型误差,d′
j (i)表示第i圈第j个点的修正后距离,
表示第i圈第j个点的实际距离,n表示共扫描n圈,m表示每圈扫描m个点。
进一步的,S10中,调整二元函数拟合方案为提高拟合函数的次幂,或者分段拟合且增加拟合分段数量。
进一步的,所述扫描区A和所述扫描区B的回波测量值明显不同。
进一步的,所述测试空间为温箱的内部空间,通过温箱调整所述测试空间的温度。
进一步的,所述扫描区A为一反光板的表面。
本发明还提供另外一个技术方案:采用如上所述的激光雷达测量值修正方法获得的误差补偿模型。
本发明还提供另外一个技术方案:采用如上所述的误差补偿模型的激光雷达。
由于上述技术方案运用,本发明与现有技术相比具有下列优点:
1)本发明提供的激光雷达测量值修正方法、误差补偿模型以及激光雷达,不需要反复测量很多数据,只需要测量数据中的回波测量值和APD温度覆盖到一定范围,节省产品标定时间;
2)本发明提供的激光雷达测量值修正方法、误差补偿模型以及激光雷达,直接利用数据建模预测误差,不局限于产品结构和元器件参数;
3)本发明提供的激光雷达测量值修正方法、误差补偿模型以及激光雷达,二元模型相对于现有的一元模型可以更全面的描述误差,预测效果更好;
4)本发明提供的激光雷达测量值修正方法、误差补偿模型以及激光雷达,同时提供了一种角度零位的校准方法,零位校准越准确,实际距离误差计算得越准确,从而模型精度越高;
5)本发明提供的激光雷达测量值修正方法、误差补偿模型以及激光雷达,有效控制硬件成本。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
应该指出,以下详细说明都是例示性的,旨在对本申请提供作为进一步改进说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。在本公开中,术语如“上”、“下”、“左”、“右”、“前”、“后”、“竖直”、“水平”、“侧”、“底”等指示的方位或位置关系为基于附图所示的方位或位置关系,只是为了便于叙述本公开各部件或元件结构关系而确定的关系词,并非特指本公开中任一部件或元件,不能理解为对本公开的限制。本公开中,术语如“固接”、“相连”、“连接”等应做广义理解,表示可以是固定连接,也可以是一体地连接或可拆卸连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的相关科研或技术人员,可以根据具体情况确定上述术语在本公开中的具体含义,不能理解为对本公开的限制。
以下为用于说明本发明的一较佳实施例,但不用来限制本发明的范围。
实施例一
如图1至图8所示,一种激光雷达测量值修正方法,包括如下步骤:
S1、搭建测试环境,提供测试空间和环形内侧面10,测试空间温度可调的设置,环形内侧面10包括扫描区A和扫描区B,扫描区A的回波测量值大于扫描区B的回波测量值,待修正激光雷达20设于环形内侧面10内且二者置于测试空间中,待修正激光雷达20循环扫描扫描区A和所述扫描区B,扫描区A为第一矩形面11,扫描区B包括依次两两首尾垂直相接的第二矩形面12、第三矩形面13、第四矩形面14以及第五矩形面15,第一矩形面11覆盖部分第三矩形面13;
S2、采集数据,待修正激光雷达在不同温度条件下旋转扫描多圈,每扫描一圈获得多个点的测量数据,首先将测试空间的温度调节到低于室温的T1,采集T1至室温温度段的每个点的测量数据,然后将测试空间的温度加热到高于室温的T2,采集室温到T2温度段的每个点的测量数据,待修正激光雷达在不同温度条件下旋转扫描n圈,每扫描一圈获得m个点的数据;
S3、数据处理,解析每个点的数据,剔除异常值,处理完的每个点的测量数据包括测量距离、回波测量值、测量角度以及APD温度信息,每个点的测量数据表示为(d,p,a,t),其中d表示测量距离、p表示回波测量值、a表示测量角度,t表示APD温度信息;
S4、角度零位校准,
S4.1、计算角度偏差,计算激光雷达扫描时每一圈回波测量值忽然增大的多个连续点中最中间点的理论角度与测量角度的角度偏差值,计算激光雷达扫描多圈的角度偏差值的平均值,得到角度偏差平均值,根据如下公式计算角度偏差平均值ε,
其中,
表示第i圈第Z
(i)个点的测量角度,k
(i)表示激光雷达扫描第i圈时回波测量值从第k
(i)个点忽然增大;s
(i)表示激光雷达扫描第i圈时回波测量值忽然增大的点的个数,n表示共扫描n圈;
S4.2、调整输出角度,根据角度偏差平均值和每个点的测量角度,得到每个点的实际角度,根据如下公式计算每个点的实际角度,
a′j (i)=aj (i)+ε i=1,Λ,n;j=1,Λ,m
其中,a′j (i)表示第i圈第j个点的实际角度,aj (i)表示第i圈第j个点的测量角度,ε表示角度偏差值,n表示共扫描n圈,m表示每圈扫描m个点;
S4.3、计算实际距离误差,根据每个点的实际角度和环形内侧面的尺寸计算每个点的实际距离,根据每个点的实际距离和测量距离计算每个点的实际距离误差,根据如下公式计算每个点的实际距离v,v=f(angle,A,B),v表示实际距离,angle为每个点的实际角度,A表示第二矩形面和第四矩形面沿扫描方向的长度,B表示第三矩形面和第五矩形面沿扫描方向的长度;根据如下公式计算每个点的实际距离误差e,e=d-v,其中e表示每个点的实际距离误差,d表示测量距离;
S5、生成建模数据,每个点的建模数据包括测量距离、回波测量值、实际角度、APD温度信息、实际距离、实际距离误差,每个点的建模数据表示为(d,p,a′,t,v,e),d表示测量距离,p表示回波测量值,a′表示实际角度,t表示APD温度信息,v表示实际距离,e表示实际距离误差;
S6、建立误差补偿模型,通过非线性拟合得到实际距离误差与回波测量值、APD温度的二元函数,得到误差补偿模型,
二元函数为:Y=F(X)=F(P,T),其中P=[p
1 p
2 Λ p
m×n]
T,T=[t
1 t
2 Λ t
m×n]
T,输入为:
输出为:
其中,F(P,T)表示预测距离误差,pm×n表示第m×n个点的回波测量值,tm×n表示第m×n个点的测量温度,em×n表示第m×n个点的实际距离误差;
S7、修正原始测量距离,通过误差补偿模型计算每个点的预测距离误差,根据预测距离误差对每个点的测量距离进行修正,得到每个点的修正后距离,
根据如下公式得到每个点的修正后距离;
其中,
表示第i圈第j个点的预测距离误差,d
j′
(i)表示第i圈第j个点的修正后距离,
表示第i圈第j个点的测量距离,n表示共扫描n圈,m表示每圈扫描m个点;
S8、验证误差补偿效果,根据每个点的修正后距离和实际距离计算每个点的模型误差,根据如下公式计算模型误差,
其中,
表示第i圈第j个点的模型误差,d′
j (i)表示第i圈第j个点的修正后距离,
表示第i圈第j个点的实际距离,n表示共扫描n圈,m表示每圈扫描m个点;
S9、判断多个点的模型误差是否都在设定范围内,如是,则修正结束,将该误差补偿模型写入设备,如否,则进入步骤S10;
S10、调整二元函数拟合方案,调整二元函数拟合方案为提高拟合函数的次幂,或者分段拟合且增加拟合分段数量,回到步骤S6。
本实施例中优选的实施方式,扫描区A和扫描区B的回波测量值明显不同。
本实施例中优选的实施方式,测试空间为温箱的内部空间,通过温箱调整所述测试空间的温度。
本实施例中优选的实施方式,扫描区A为一反光板的表面。
1、搭建测试环境时,测量环境形状可以为标准矩形,如图2所示,安装反光板的目的是做角度零位校准,反光板要严格以角度零位对称安装,激光雷达正面朝向反光板安装。可以根据矩形的边长计算出每个扫描角度对应的实际距离。因此,计算实际距离的函数是关于矩形边长和角度的,假设这个函数为f,则有
v=f(angle,A,B) (1)
其中v为角度angle对应的真实距离。
测量辅助工具为温箱,目标是调节温度,建立模型要使用不同APD温度下的测量数据;
该实施例中的数据实际测量环境为白板,180度对应的真实距离为1290mm,例中截取了180度至240度角度范围内的数据进行实施例说明,共有77493条。
2、采集数据时,根据实际情况确定温度范围T1-T2,其中T1<室温<T2。
3、数据处理时,处理数据,形成建模数据
解析原始数据,剔除异常值后,处理完每个点的数据应该包含:测量距离,实时回波测量值,角度,以及APD温度信息,用以下形式表示:
(d,p,a,t) (2)
激光雷达扫描一圈得到一帧数据,假设一帧有m个点,则第k帧数据可以表示为
((d1 (k),p1 (k),a1 (k),t1 (k)),(d2 (k),p2 (k),a2 (k),t2 (k)),Λ,(dm (k),pm (k),am (k),tm (k))) (3)
假设所有采集的数据共有n帧,可以表示为
((d1 (1),p1 (1),a1 (1),t1 (1)),(d2 (1),p2 (1),a2 (1),t2 (1)),Λ,(dm (1),pm (1),am (1),tm (1)))
((d1 (2),p1 (2),a1 (2),t1 (2)),(d2 (2),p2 (2),a2 (2),t2 (2)),Λ,(dm (2),pm (2),am (2),tm (2)))
Λ
((d1 (n),p1 (n),a1 (n),t1 (n)),(d2 (n),p2 (n),a2 (n),t2 (n)),Λ,(dm (n),pm (n),am (n),tm (n)))
4、角度零位校准时
4.1、计算角度偏差时
激光雷达扫描到反光板的区域时回波测量值值会突然增大,如图3所示。
因为反光板是角度零位对称安装的,定义一个回波测量值阈值pt,假设第k帧的所有回波测量值中大于阈值pt的回波测量值有s(k)个,这s(k)个回波测量值一定是下标连续的,假设从i(k)开始,即
那么第k帧的角度零位对应的回波测量值下标值可以定义为
由(3)式可知,每个点的回波测量值,角度等数据的下标是一致的,因此第k帧角度零位对应的角度为
图2中角度零位对应的实际角度为180度,所以第k帧的角度偏差为
由于随机性每一帧得到的角度偏差可能存在差异,为了减小这种随机误差,最终的角度偏差为每一帧偏差的均值,即最终的角度偏差ε定义如下:
其中i=1,2,…,n
4.2、调整输出角度时
将每一帧的每个点的角度数据都以(5)式做调整,即调整后的角度为
a′j (i)=aj (i)+ε i=1,Λ,n;j=1,Λ,m
4.3、计算实际距离误差时
对于任意如(2)式形式的点都可以通过(1)式计算出该点对应的环境真实距离v,然后用测量距离d减去v得到实际距离误差e,这样每个点的信息增加为:
(d,p,a′,t,v,e) (6)
5、生成建模数据时,假设点云的数据为n,则可以将所有数据看作一个m×n×6的数组,其中维度(p,t,e)用来建立模型,其他维度的数据用来进行补偿效果验证。假设经过角度零位校准、计算实际距离误差后的数据形式如图4所示,表中的各列数据分别代表了测量距离,回波测量值,测量角度,APD温度,环境真实值以及实际距离误差,即(6)式提到的内容。
6、建立误差模型时
输入为
输出为
通过非线性拟合得到实际距离误差与回波测量值、APD温度的二元函数,即
Y=F(X)=F(P,T) (7)
其中P=[p1 p2 Λ pm×n]T,T=[t1 t2 Λ tm×n]T。
如果整体拟合次数过高,也可以考虑分段拟合,这样能够降低每个分段内拟合函数的次数。
其中不同APD温度下误差与回波测量值的关系需要用(7)式提到的二元模型来拟合。根据(7)式建立回波测量值、APD温度与实际距离误差的模型,模型拟合效果如图5所示。
7、根据模型修正测量距离时,根据(6)式每一组回波测量值和APD温度都可以预测一个误差值,用该误差值对原始测量距离进行误差补偿,修正后的测量距离为
其中i=1,2,...n,j=1,2,...,m。
根据(8)式修正原始测量距离值,原始测量距离与经过该模型补偿误差后的测量距离对比如图7和图8所示。
8、验证误差补偿效果时,拟合函数可以看作根据回波测量值和APD温度对误差进行预测,预测是存在误差的,即拟合模型的误差,定义为
根据(7)式修正后的测量距离与真实值的差。用公式表达如下:
其中i=1,2,...n,j=1,2,...,m。
根据(9)式计算模型误差,模型误差的分布如图6所示。
9、判断模型误差是否在设定范围内时,可以给定一个误差阈值h,要求激光雷达95%的测量实际距离误差要落到区间[-h,h]中。查看(9)式得到的模型误差的分布情况可以进行该验证。另可以直接对比原始输出的测量距离和修正后的测量距离,查看直观的误差补偿效果。
如果补偿效果没有达到标准,则可以通过改变拟合函数的策略,例如提高拟合函数的次幂,如为分段拟合则可以增加拟合分段数量等方法进一步减小模型误差。
假设误差阈值h=30mm,要求激光雷达95%的测量实际距离误差要落到区间[-30,30]中。经过计算,经过模型修正后的实际距离误差95.11%落在该区间中,即该模型达到预期效果,误差补偿后的残余误差在可接受范围内。
10、将模型写入设备时,如果经模型补偿后的误差在可接受范围,则可以将该模型写入设备。
将模型写入设备后,对比误差补偿前后的扫描效果,如图7和8所示。可以看出误差补偿前测量数据分布散差大,且整体测量轮廓不水平,经过本发明提供的误差补偿方法后,修正后的测量数据散差显著变小,且呈基本水平扫描轮廓。进一步对比180度处的测量值,补偿前测量值分布在1038mm-1208mm之间,补偿后测量值分布在1283mm-1295mm之间,而环境真实值为1290mm。
因此该实施例可以充分说明本发明提供的误差补偿方案可以显著减小系统误差。
采用如上所述的激光雷达测量值修正方法获得的误差补偿模型。
采用如上所述的误差补偿模型的激光雷达。
以上为对本发明实施例的描述,通过对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。