无视场重叠的多激光雷达外参自动标定方法与流程

文档序号:31048991发布日期:2022-08-06 06:13阅读:83来源:国知局
无视场重叠的多激光雷达外参自动标定方法与流程

1.本发明涉及自动驾驶领域,尤其涉及一种无视场重叠的多激光雷达外参自动标定方法。


背景技术:

2.在自动驾驶车辆的感测技术中,使用多传感器融合技术,可以得到关于环境更加可靠、统一、精细的描述,以便决策与规划及控制。在进行数据融合时,多传感器的标定是必须解决的问题之一。标定一般分为各传感器自身参数的标定以及多传感器的联合标定。各传感器自身参数的标定是为了保证所采集数据的准确性,而多传感器的联合标定是为了多传感器数据的准确匹配。
3.近年来,多激光雷达外参标定已经成为当前配有多颗激光雷达的自动驾驶车辆进行多激光雷达融合感知之前的必要环节,其目的是为了获取多颗激光雷达之间的精确的相对位姿关系。现有的技术方案主要是靠手工精确测量,其缺点是手工姿态精度比较难控制,且当激光雷达之间的安装位置比较远且中间有其他物体隔断的时候,相对位姿测量比较困难。
4.因此,如何快速准确的确定自动驾驶车辆上多激光雷达的位姿信息,对激光雷达进行准确的外参标定是亟需解决的问题。


技术实现要素:

5.本发明提供一种无视场重叠的多激光雷达外参自动标定方法,该方法能够快速准确的确定自动驾驶车辆上多激光雷达的位姿信息,从而对激光雷达进行准确的外参标定。
6.第一方面,本发明实施例提供一种无视场重叠的多激光雷达外参自动标定方法,无视场重叠的多激光雷达外参自动标定方法包括:
7.获取自动驾驶车辆所在的当前位置;
8.获取当前位置在高精地图中对应的地图点云数据,地图点云数据与多个激光雷达的局部坐标系位姿相对应;
9.利用设置于自动驾驶车辆的多颗激光雷达获取当前位置的实测数据,实测数据包括多组实测三维点云数据,每一组实测三维点云数据由一个激光雷达获取;
10.将地图点云数据和实测数据进行配准,得到每一个激光雷达的局部坐标系位姿;
11.根据每一个激光雷达的局部坐标系位姿得到多个激光雷达中任意两个激光雷达之间的相对位姿;
12.根据任意两个激光雷达之间的相对位姿对设置于自动驾驶车辆的多颗激光雷进行位姿相关的外参标定。
13.第二方面,本发明实施例提供一种计算机可读存储介质,该计算机可读存储介质上存储有能够被处理器加载并执行的无视场重叠的多激光雷达外参自动标定方法的程序指令。
14.第三方面,本发明实施例提供一种计算机设备,该计算机设备包括:
15.存储器,用于存储程序指令;
16.处理器,用于执行程序指令以使计算机设备实现无视场重叠的多激光雷达外参自动标定方法。
17.上述无视场重叠的多激光雷达外参自动标定方法,通过获取自动驾驶车辆所在的当前位置,然后获取当前位置在高精地图中对应的地图点云数据,地图点云数据包括多组标定三维点云数据。利用设置于自动驾驶车辆的多颗激光雷达获取当前位置的实测数据,将地图点云数据和实测数据进行配准,得到每一个激光雷达的局部坐标系位姿,根据每一个激光雷达的局部坐标系位姿得到多个激光雷达中任意两个激光雷达之间的相对位姿,根据任意两个激光雷达之间的相对位姿对设置于自动驾驶车辆的多颗激光雷进行位姿相关的外参标定。上述方法利用高精地图中已经标定的标定三维点云数据来进行配准保证了当多颗激光雷达的感测范围被其他物体遮挡隔断之后仍旧能成功求解外参。
附图说明
18.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
19.图1为本发明第一实施例提供的无视场重叠的多激光雷达外参自动标定方法的流程图。
20.图2为本发明第一实施例提供的视场重叠的多激光雷达外参自动标定方法的第一子流程图。
21.图3为本发明第一实施例提供的视场重叠的多激光雷达外参自动标定方法的第二子流程图。
22.图4为本发明第一实施例提供的视场重叠的多激光雷达外参自动标定方法的第三子流程图。
23.图5为本发明第一实施例提供的视场重叠的多激光雷达外参自动标定方法的第四子流程图。
24.图6为本发明第二实施例提供的视场重叠的多激光雷达外参自动标定方法的子流程图。
25.图7为本发明第一实施例提供的计算机设备内部机构示意图。
26.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
27.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
28.本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第
四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
29.需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
30.请结合参看图1,其为本发明第一实施例提供的无视场重叠的多激光雷达外参自动标定方法的流程图。其中,本发明实施例提供的无视场重叠的多激光雷达外参自动标定方法具体包括下面步骤。
31.步骤s101,获取自动驾驶车辆所在的当前位置。具体地,利用定位软件获取自动驾驶车辆当前的位置信息,在本实施例中,位置信息是自动驾驶车辆在世界坐标系下的获取的三维坐标数据。三维坐标数据是带有经纬度和高程的三维数据。定位软件可以是gps、gnss、北斗或者其他提供定位服务的卫星系统。
32.步骤s102,获取当前位置在高精地图中对应的地图点云数据,地图点云数据与多个激光雷达的局部坐标系位姿相对应。具体地,该地图点云数据由设置于自动驾驶车辆的一个或多个激光雷达在局部坐标系位姿下感测得到。该地图点云数据包含了“路灯1”、“路灯2”、“写字楼1”、“树木1
”……
等多个环境中固定物体的点云数据。本实施例中的名称仅做示例不做限定。具体内容请参考步骤s1201-步骤s1202。
33.步骤s103,利用设置于自动驾驶车辆的多颗激光雷达获取当前位置的实测数据,实测数据包括多组实测三维点云数据,每一组实测三维点云数据对应一个激光雷达。实测三维点云数据是以世界坐标系为基准的点云数据。具体地,多颗激光雷达的感测数据共同构成一个自动驾驶车辆全部的视角,全部的视角覆盖自动驾驶车辆周围的所有区域,每一个激光雷达对应一个区域的局部三维点云数据。
34.在本实施例中,实测数据是以世界坐标系为基准的数据,局部坐标系位姿是以激光雷达自身的坐标系为基准的数据。
35.步骤s104,将地图点云数据和实测数据进行配准,得到每一个激光雷达的局部坐标系位姿。局部坐标系位姿是以激光雷达自身的坐标系为基准的数据。在本实施例中,利用迭代最近点匹配算法(iterative closest point,icp)将实测三维点云数据与高精地图中对应的地图点云数据进行配准。icp算法是一个点云自动配准算法,将每一个激光雷达的位姿配准完毕后,能得到每一个激光雷达的局部坐标系位姿。具体内容请参考步骤s1401-步骤s1402。
36.步骤s105,根据每一个激光雷达的局部坐标系位姿得到多个激光雷达中任意两个激光雷达之间的相对位姿。在本实施例中,使用矩阵对各个激光雷达的局部坐标系位姿进
行相对变换得到激光雷达之间的相对位姿。具体内容请参考步骤s1501-步骤s1502。
37.上述实施例中无视场重叠的多激光雷达外参自动标定方法,通过获取自动驾驶车辆所在的当前位置,然后获取当前位置在高精地图中对应的地图点云数据。利用设置于自动驾驶车辆的多颗激光雷达获取当前位置的实测数据,将地图点云数据和实测数据进行配准,得到每一个激光雷达的局部坐标系位姿,根据每一个激光雷达的局部坐标系位姿得到多个激光雷达中任意两个激光雷达之间的相对位姿,根据任意两个激光雷达之间的相对位姿对设置于自动驾驶车辆的多颗激光雷进行位姿相关的外参标定。上述方法利用高精地图中已经标定的地图点云数据来进行配准保证了当多颗激光雷达的感测范围被其他物体遮挡隔断之后仍旧能成功求解外参。
38.请结合参看图2,其为本发明第一实施例提供的步骤s102的步骤流程图。其中,步骤s102,获取当前位置在高精地图中对应的地图点云数据,具体包括下面步骤。
39.步骤s1021,根据当前位置获取高精地图中对应的环境数据。环境数据为静态无重复的三维点云数据数据,具有大量重复数据的环境不适用于本方案。例如,本实施例适用的环境不能是具有局部相似性的环境,比如各个位置都一样的长走廊,直线公路等。
40.在一些优选的实施例中,环境数据中具有一些墙面数据,或者其他比较整齐的结构的数据比较好,例如一条街上不同的大厦。
41.在一些优选的实施例中,环境数据中不能有运动的物体。例如,面积为200m*200m的车库,在没有车辆运动或者人员运动时,就是本实施例比较理想的环境,在本实施例中,激光雷达探测范围200m左右,所以最优的数据获取环境范围设定为长宽在200m左右,既能够保证激光雷达获取足够多的实测数据,也能够保证数据配准的准确。本实施例中提到的数据仅为示例不做限定。
42.在一些优选的实施例中,为了获得足够多的三维点云数据,实际环境也不能小于自动驾驶车辆本身所占用的面积。
43.步骤s1022,提取环境数据中包含的标定三维点云数据。具体地,提取“树木”、“路灯”对应的标定三维点云数据。
44.上述实施例中,自动驾驶车辆根据根据当前位置中包含的标定三维点云数据对自动驾驶车辆上安装的多个激光雷达获得的数据进行配准,减少因重复数据导致的配准误差,提高配准的准确性。
45.请结合参看图3,其为本发明第一实施例提供的步骤s104的步骤流程图。其中,步骤s104,将地图点云数据和实测数据进行配准,得到每一个激光雷达的局部坐标系位姿,具体包括下面步骤。
46.步骤s1041,利用icp算法将每一组实测三维点云数据和多组标定三维点云数据进行配准得到对应的标定三维点云数据。具体地,利用icp算法配准每一个激光雷达在高精地图中标定三维点云数据。
47.步骤s1042,根据标定三维点云数据得到每一个激光雷达的局部坐标系位姿。
48.请结合参看图4,其为本发明第一实施例提供的步骤s105的步骤流程图。其中,步骤s105,根据每一个激光雷达的局部坐标系位姿得到多个激光雷达中任意两个激光雷达之间的相对位姿,具体包括下面步骤。
49.步骤s1051,根据相邻两个激光雷达之间的局部坐标系位姿得到相邻两个激光雷
达之间的相对位姿。
50.步骤s1052,根据相邻两个激光雷达之间的相对位姿得到多个激光雷达中任意两个激光雷达之间的相对位姿。在本实施例中,根据任意相邻两个激光雷达之间的相对位姿得到多个激光雷达中任意两个激光雷达之间的相对位姿,具体内容请参考步骤s601-步骤s602。
51.请结合参看图5,其为本发明第一实施例提供的步骤s1052的步骤流程图。其中,步骤s1052,根据相邻两个激光雷达之间的相对位姿得到多个激光雷达中任意两个激光雷达之间的相对位姿,具体包括下面步骤。
52.步骤s601,将每一颗激光雷达的局部坐标系位姿[xi,yi,zi,rolli,pitchi,yawi]转化为仿射变换矩阵,其中,[xi,yi,zi]为第i个激光雷达在世界坐标系的位置,[rolli,pitchi,yawi]为第i个激光雷达在世界坐标系的姿态。
[0053]
步骤s602,利用仿射变换矩阵得到相邻两个激光雷达之间的相对位姿。具体地,pa=tpb,即,t=pa*p
b-1
,其中,pa为激光雷达a的位姿,pb为激光雷达b的位姿,p
b-1
为对pb进行求逆得到的位姿,t为激光雷达a相对于激光雷达b的相对位姿。
[0054]
请结合参看图6,其为本发明第二实施例提供的无视场重叠的多激光雷达外参自动标定方法的子流程图。第二实施例提供的无视场重叠的多激光雷达外参自动标定方法与第一实施例提供的无视场重叠的多激光雷达外参自动标定方法的差异在于,第二实施例提供的无视场重叠的多激光雷达外参自动标定方法还包括下面步骤。
[0055]
步骤s701,判断激光雷达以局部坐标系位姿获取的实测三维点云数据与对应的标定三维点云数据的配准率是否达到预设值。
[0056]
步骤s702,当激光雷达以局部坐标系位姿获取的实测三维点云数据与对应的标定三维点云数据的配准率达到预设值时,判定激光雷达的当前的位姿为最佳位姿。
[0057]
上述实施例中,在第一次利用无视场重叠的多激光雷达外参自动标定方法得到多个激光雷达的相对位姿后进行验证进一步保证了通过无视场重叠的多激光雷达外参自动标定方法获取的多颗激光雷达的位姿的准确性。
[0058]
本发明还提供了一种计算机可读存储介质。计算机可读存储介质上存储有能够被处理器加载并执行的上述的无视场重叠的多激光雷达外参自动标定方法的程序指令。由于计算机可读存储介质采用了上述所有实施例的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果,在此不再赘述。
[0059]
本发明还提供一种计算机设备900,计算机设备900至少包括存储器901和处理器902。存储器901用于存储无视场重叠的多激光雷达外参自动标定方法的程序指令。处理器902,用于执行程序指令以使计算机设备实现上述的无视场重叠的多激光雷达外参自动标定方法。请结合参看图7,其为本发明第一实施例提供的计算机设备900的内部结构示意图。
[0060]
其中,存储器901至少包括一种类型的计算机可读存储介质,该计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、磁性存储器、磁盘、光盘等。存储器901在一些实施例中可以是计算机设备900的内部存储单元,例如计算机设备900的硬盘。存储器901在另一些实施例中也可以是计算机设备900的外部存储设备,例如计算机设备900上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字卡(secure digital,sd),闪存卡(flash card)等。进一步地,存储器901还可以既包括计算机
设备900的内部存储单元也包括外部存储设备。存储器901不仅可以用于存储安装于计算机设备900的应用软件及各类数据,例如无视场重叠的多激光雷达外参自动标定方法的程序指令等,还可以用于暂时地存储已经输出或者将要输出的数据,例如,无视场重叠的多激光雷达外参自动标定方法执行产生的数据等。
[0061]
处理器902在一些实施例中可以是中央处理器(central processing unit,cpu)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器901中存储的程序指令或处理数据。具体地,处理器902执行无视场重叠的多激光雷达外参自动标定方法的程序指令以控制计算机设备900实现无视场重叠的多激光雷达外参自动标定方法。
[0062]
进一步地,计算机设备900还可以包括总线903可以是外设部件互连标准总线(peripheral component interconnect,简称pci)或扩展工业标准结构总线(extended industry standard architecture,简称eisa)等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0063]
进一步地,计算机设备900还可以包括显示组件904。显示组件904可以是led(light emitting diode,发光二极管)显示器、液晶显示器、触控式液晶显示器以及oled(organic light-emitting diode,有机发光二极管)触摸器等。其中,显示组件904也可以适当的称为显示装置或显示单元,用于显示在计算机设备900中处理的信息以及用于显示可视化的用户界面。
[0064]
进一步地,计算机设备900还可以包括通信组件905,通信组件905可选的可以包括有线通信组件和/或无线通信组件(如wi-fi通信组件、蓝牙通信组件等),通常用于在计算机设备900与其他计算机设备之间建立通信连接。
[0065]
图7仅示出了具有组件901-905以及实现无视场重叠的多激光雷达外参自动标定方法的程序指令的计算机设备900,本领域技术人员可以理解的是,图7示出的结构并不构成对计算机设备900的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。由于计算机设备900采用了上述所有实施例的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果,在此不再赘述。
[0066]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
[0067]
该无视场重叠的多激光雷达外参自动标定方法包括一个或多个程序指令。在设备上加载和执行该程序指令时,全部或部分地产生按照本发明实施例的流程或功能。该设备可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该程序指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,该程序指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
[0068]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,
装置和单元的具体工作过程,可以参考上述方法实施例中的对应过程,在此不再赘述。
[0069]
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的无视场重叠的多激光雷达外参自动标定方法实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0070]
该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0071]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0072]
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个计算机可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的计算机可读存储介质包括:u盘、流动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序指令的介质。
[0073]
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘且本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
[0074]
以上所列举的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属于本发明所涵盖的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1