1.本发明涉及高阶辅助驾驶技术领域,尤其涉及一种点云拼接方法、装置、电子设备及存储介质。
背景技术:
2.在高阶辅助驾驶领域中,通常可以采用车辆部署的多角度多方向的雷达(如,激光雷达等),对车辆周边行驶环境进行更大范围地精准探测,在此过程中,需要将车辆搭载的多台雷达所各自探测到的点云
数据转换至相同的
坐标系下并进行点云拼接,获得环境点云数据,以反映车身周围的完整环境。
3.然而,由于不同雷达的探测范围间可能存在重叠,因而在点云拼接的过程中通常也会产生部分点云重叠区域,进一步的,由于点云重叠区域中的点云密度与单个雷达所对应探测区域中的点云密度通常不同,且由于雷达的外参精度等实际要求,容易在点云重叠区域中产生点云重影,进而导致拼接出的环境点云数据的精度不高,车辆无法准确识别出其周围的完整环境。
技术实现要素:
4.本技术实施例提供一种点云拼接方法、装置、电子设备及存储介质,用于提升车辆多雷达场景下的点云拼接精度。
5.第一方面,本技术实施例提供一种点云拼接方法,包括:
6.获取车辆搭载的
多个雷达各自采集到的原始点云数据,其中,每个原始点云数据包含至少一个针对
所述车辆所处目标环境采集到的原始点云点。
7.分别将多个所述原始点云数据映射在车体坐标系中,并采用基准雷达,对多个所述车体坐标系下的所述原始点云数据进行运动补偿,获得多个补偿点云数据,其中,所述基准雷达为所述多个雷达中的任意一个。
8.分别将多个所述补偿点云数据映射在球体坐标系中,并采用对应所述多个雷达设置的基准重叠区域,对多个所述补偿点云数据进行点云过滤,获得多个目标点云数据。
9.采用所述多个目标点云数据进行点云拼接,获得环境点云数据。
10.在一种可选的实施例中,所述分别将多个所述原始点云数据映射在车体坐标系中,包括:
11.针对多个所述原始点云数据,分别执行以下操作:
12.针对一个所述原始点云数据对应的一个雷达,从预设参数集合中,获取与所述一个雷达的搭载位置对应的仿射变换参数,其中,所述仿射变换参数与所述车辆对应车体坐标系中的车体坐标原点关联。
13.采用所述仿射变换参数,分别计算所述一个所述原始点云数据中,至少一个所述原始点云点各自的车体坐标,并基于至少一个所述车体坐标,将所述一个所述原始点云数据映射在所述车体坐标系中。
14.在一种可选的实施例中,所述采用基准雷达,对多个所述车体坐标系下的所述原始点云数据进行运动补偿,包括:
15.针对多个所述车体坐标系下的所述原始点云数据,分别执行以下操作:
16.针对一个所述车体坐标系下的所述原始点云数据对应的一个雷达,获取所述一个雷达对应的雷达位姿。
17.采用基准雷达对应的基准位姿,计算所述基准雷达与所述一个雷达间的相对位姿。
18.基于所述相对位姿,分别对所述一个所述车体坐标系下的所述原始点云数据中,至少一个所述原始点云点进行运动补偿,获得补偿点云数据。
19.在一种可选的实施例中,所述分别将多个所述补偿点云数据映射在球体坐标系中,包括:
20.针对多个所述补偿点云数据,分别执行以下操作:
21.针对一个所述补偿点云数据对应的一个雷达,分别获取所述一个雷达的平面信息以及垂面信息,其中,所述平面信息用于表征所述一个雷达在水平方向对所述目标环境的探测范围,所述垂面信息用于表征所述一个雷达在垂直方向对所述目标环境的探测范围。
22.采用所述平面信息及所述垂面信息,分别计算所述一个所述补偿点云数据中,至少一个补偿点云点各自的球体坐标,并基于至少一个所述球体坐标,将所述一个所述原始点云数据映射在所述球体坐标系中。
23.在一种可选的实施例中,所述采用所述平面信息及所述垂面信息,分别计算所述一个所述补偿点云数据中,至少一个补偿点云点各自的球体坐标,包括:
24.针对所述一个所述补偿点云数据中,至少一个补偿点云点,分别执行以下操作:
25.对所述平面信息,以及一个补偿点云点的航向角进行计算,获得所述一个补偿点云点在二维投影平面上的横轴投影值。
26.对所述垂面信息,以及所述一个补偿点云点的俯仰角进行计算,获得所述一个补偿点云点在所述二维投影平面上的纵轴投影值。
27.采用所述横轴投影值及所述纵轴投影值,获得所述一个补偿点云点的球体坐标。
28.在一种可选的实施例中,所述采用对应所述多个雷达设置的基准重叠区域,对多个所述补偿点云数据进行点云过滤,获得多个目标点云数据,包括:
29.针对多个所述补偿点云数据中,每相邻两个雷达对应的两个补偿点云数据,分别执行以下操作:
30.采用对应相邻两个雷达设置的一个基准重叠区域,从相邻两个雷达对应的两个补偿点云数据中,获取相应球体坐标投影至所述基准重叠区域中的至少一个所述补偿点云点,为待筛选的重叠点云点。
31.将所述基准重叠区域划分为至少一个体素网格,并确定所述至少一个体素网格各自的目标点云点,其中,每个体素网格包含至少一个所述重叠点云点。
32.针对每个所述体素网格,将包含的至少一个所述重叠点云点替换为相应的目标点云点,并将所述基准重叠区域中的至少一个所述目标点云点进行组合,获得目标点云数据。
33.在一种可选的实施例中,所述目标点云点为一个所述体素网格中,至少一个所述重叠点云点的重心点或中心最近点。
34.第二方面,本技术实施例提供一种点云拼接装置,包括:
35.获取模块,用于获取车辆搭载的多个雷达各自采集到的原始点云数据,其中,每个原始点云数据包含至少一个针对所述车辆所处目标环境采集到的原始点云点。
36.车体映射模块,用于分别将多个所述原始点云数据映射在车体坐标系中,并采用基准雷达,对多个所述车体坐标系下的所述原始点云数据进行运动补偿,获得多个补偿点云数据,其中,所述基准雷达为所述多个雷达中的任意一个。
37.球体映射模块,用于分别将多个所述补偿点云数据映射在球体坐标系中,并采用对应所述多个雷达设置的基准重叠区域,对多个所述补偿点云数据进行点云过滤,获得多个目标点云数据。
38.拼接模块,用于采用所述多个目标点云数据进行点云拼接,获得环境点云数据。
39.在一种可选的实施例中,所述分别将多个所述原始点云数据映射在车体坐标系中,所述车体映射模块具体用于:
40.针对多个所述原始点云数据,分别执行以下操作:
41.针对一个所述原始点云数据对应的一个雷达,从预设参数集合中,获取与所述一个雷达的搭载位置对应的仿射变换参数,其中,所述仿射变换参数与所述车辆对应车体坐标系中的车体坐标原点关联。
42.采用所述仿射变换参数,分别计算所述一个所述原始点云数据中,至少一个所述原始点云点各自的车体坐标,并基于至少一个所述车体坐标,将所述一个所述原始点云数据映射在所述车体坐标系中。
43.在一种可选的实施例中,所述采用基准雷达,对多个所述车体坐标系下的所述原始点云数据进行运动补偿,所述车体映射模块具体用于:
44.针对多个所述车体坐标系下的所述原始点云数据,分别执行以下操作:
45.针对一个所述车体坐标系下的所述原始点云数据对应的一个雷达,获取所述一个雷达对应的雷达位姿。
46.采用基准雷达对应的基准位姿,计算所述基准雷达与所述一个雷达间的相对位姿。
47.基于所述相对位姿,分别对所述一个所述车体坐标系下的所述原始点云数据中,至少一个所述原始点云点进行运动补偿,获得补偿点云数据。
48.在一种可选的实施例中,所述分别将多个所述补偿点云数据映射在球体坐标系中,所述球体映射模块具体用于:
49.针对多个所述补偿点云数据,分别执行以下操作:
50.针对一个所述补偿点云数据对应的一个雷达,分别获取所述一个雷达的平面信息以及垂面信息,其中,所述平面信息用于表征所述一个雷达在水平方向对所述目标环境的探测范围,所述垂面信息用于表征所述一个雷达在垂直方向对所述目标环境的探测范围。
51.采用所述平面信息及所述垂面信息,分别计算所述一个所述补偿点云数据中,至少一个补偿点云点各自的球体坐标,并基于至少一个所述球体坐标,将所述一个所述原始点云数据映射在所述球体坐标系中。
52.在一种可选的实施例中,所述采用所述平面信息及所述垂面信息,分别计算所述一个所述补偿点云数据中,至少一个补偿点云点各自的球体坐标,所述球体映射模块具体
用于:
53.针对所述一个所述补偿点云数据中,至少一个补偿点云点,分别执行以下操作:
54.对所述平面信息,以及一个补偿点云点的航向角进行计算,获得所述一个补偿点云点在二维投影平面上的横轴投影值。
55.对所述垂面信息,以及所述一个补偿点云点的俯仰角进行计算,获得所述一个补偿点云点在所述二维投影平面上的纵轴投影值。
56.采用所述横轴投影值及所述纵轴投影值,获得所述一个补偿点云点的球体坐标。
57.在一种可选的实施例中,所述采用对应所述多个雷达设置的基准重叠区域,对多个所述补偿点云数据进行点云过滤,获得多个目标点云数据,所述球体映射模块具体用于:
58.针对多个所述补偿点云数据中,每相邻两个雷达对应的两个补偿点云数据,分别执行以下操作:
59.采用对应相邻两个雷达设置的一个基准重叠区域,从相邻两个雷达对应的两个补偿点云数据中,获取相应球体坐标投影至所述基准重叠区域中的至少一个所述补偿点云点,为待筛选的重叠点云点。
60.将所述基准重叠区域划分为至少一个体素网格,并确定所述至少一个体素网格各自的目标点云点,其中,每个体素网格包含至少一个所述重叠点云点。
61.针对每个所述体素网格,将包含的至少一个所述重叠点云点替换为相应的目标点云点,并将所述基准重叠区域中的至少一个所述目标点云点进行组合,获得目标点云数据。
62.在一种可选的实施例中,所述目标点云点为一个所述体素网格中,至少一个所述重叠点云点的重心点或中心最近点。
63.第三方面,提出了一种电子设备,其包括处理器和存储器,其中,所述存储器存储有程序代码,当所述程序代码被所述处理器执行时,使得所述处理器执行上述第一方面所述的点云拼接方法的步骤。
64.第四方面,提出一种计算机可读存储介质,其包括程序代码,当所述程序代码在电子设备上运行时,所述程序代码用于使所述电子设备执行上述第一方面所述的点云拼接方法的步骤。
65.本技术实施例的技术效果如下:
66.本技术实施例提供一种点云拼接方法、装置、电子设备及存储介质,将车辆搭载的多个雷达各自采集到的原始点云数据分别映射在车体坐标系中,并采用基准雷达,对多个原始点云数据进行运动补偿,获得多个补偿点云数据,进一步的,分别将多个补偿点云数据映射在球体坐标系中,并采用对应多个雷达设置的基准重叠区域,对多个补偿点云数据进行点云过滤,获得多个目标点云数据,进而采用多个目标点云数据进行点云拼接,获得环境点云数据,基于上述方式,本技术实施例将处理后的多个补偿点云数据映射在球体坐标系中,并根据映射坐标,对投影至预设基准重叠区域中的多补偿点云数据进行点云过滤,进而在每个基准重叠区域中,避免因点云重叠而产生的点云重影,进一步提升了车辆多雷达场景下,所拼接出的环境点云数据的精度,确保车辆准确识别出其周围的完整环境。
附图说明
67.图1为本技术实施例提供的一种可能的应用场景示意图;
68.图2为本技术实施例提供的一种点云拼接方法的流程图;
69.图3为本技术实施例提供的一种点云拼接装置的结构示意图;
70.图4为本技术实施例提供的一种电子设备示意图。
具体实施方式
71.下面将结合本发明实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
72.需要说明的是,在本技术的描述中“多个”理解为“至少两个”。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。a与b连接,可以表示:a与b直接连接和a与b通过c连接这两种情况。另外,在本技术的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
73.此外,本技术技术方案中,对数据的采集、传播、使用等,均符合国家相关法律法规要求。
74.参阅图1所示,为本技术实施例提供的一种可能的应用场景示意图,该应用场景包括车辆101以及多个雷达102,其中,所述车辆101可以通过有线传输方式或者无线传输方式,获取所述多个雷达102针对车辆101所处目标环境各自采集到的原始点云数据。
75.示例性的,所述车辆101可以通过车载总线等有线传输方式,获取所述多个雷达102针对车辆101所处目标环境各自采集到的原始点云数据。
76.示例性的,所述车辆101可以通过蜂窝移动通信技术接入网络等无线传输方式,获取所述多个雷达102针对车辆101所处目标环境各自采集到的原始点云数据,所述蜂窝移动通信技术,包括第五代移动通信(5th generation mobile networks,5g)技术。
77.进一步的,每个雷达102是具有环境感知功能的物理传感器,所述多个雷达102间的环境感知范围存在重叠,本技术实施例中,所述多个雷达102包括但不限于:激光雷达、毫米波雷达、超声波雷达中的任意一种或组合。
78.示例性的,本技术实施例可以采用车辆搭载的多个激光雷达,分别采集车辆101至其周围目标环境中障碍物体反射回的激光信号,并获得各激光雷达各自采集到的原始点云数据,所述原始点云数据,如,包括但不限于三维坐标、反射强度等。
79.基于上述应用场景,下面将结合参考附图,对本技术实施例所提供的点云拼接方法进行进一步地阐述、说明,参阅图2所示,所述方法可以由所述车辆101或与所述车辆101连接的任意电子设备执行,包括:
80.s201:获取车辆搭载的多个雷达各自采集到的原始点云数据。
81.s202:分别将多个原始点云数据映射在车体坐标系中,并采用基准雷达,对多个车体坐标系下的原始点云数据进行运动补偿,获得多个补偿点云数据。
82.具体的,通过车辆搭载的多个雷达,获取多个雷达针对车辆所处目标环境采集到的原始点云数据,其中,每个原始点云数据包含至少一个雷达针对目标环境采集到的原始点云点。
83.进一步的,由于不同雷达的搭载位置不同,为确保获取到的多个原始点云数据间坐标系统一,分别将多个原始点云数据,映射在指定的车体坐标系中,具体的,针对多个原始点云数据,分别执行以下操作:
84.s2021:针对一个原始点云数据对应的一个雷达,从预设参数集合中,获取与一个雷达的搭载位置对应的仿射变换参数。
85.s2022:采用仿射变换参数,分别计算一个原始点云数据中,至少一个原始点云点各自的车体坐标,并基于至少一个车体坐标,将一个原始点云数据映射在车体坐标系中。
86.具体的,根据仿射变换参数进行车体坐标转换,其中,仿射变换参数与车辆对应车体坐标系中的车体坐标原点关联。
87.示例性的,本技术实施例中,针对一个雷达采集到的原始点云数据,根据该原始点云数据中的原始点云点的数目为n,则将上述原始点云数据映射到车体坐标系中,如下式所示:
88.pi=pose*pi;i∈n
89.其中,pi为上述原始点云数据中的一个原始点云点,pose为上述一个雷达与车辆对应车体坐标系中的车体坐标原点间的仿射变换参数。
90.进一步的,为确保多原始点云数据间的时间统一,采用基准雷达,对多个车体坐标系下的原始点云数据进行运动补偿,其中,基准雷达为多个雷达中的任意一个,具体的,针对多个车体坐标系下的原始点云数据,分别执行以下操作:
91.s2023:针对一个车体坐标系下的原始点云数据对应的一个雷达,获取一个雷达对应的雷达位姿。
92.s2024:采用基准雷达对应的基准位姿,计算基准雷达与一个雷达间的相对位姿。
93.s2025:基于相对位姿,分别对一个车体坐标系下的原始点云数据中,至少一个原始点云点进行运动补偿,获得补偿点云数据。
94.示例性的,本技术实施例中,根据一个雷达对应的雷达位姿为pose
cur
,基准雷达对应的基准位姿为pose
base
,对一个雷达对应车体坐标系下的原始点云数据进行运动补偿,如下式所示:
95.pose
diff
=pose
cur-pose
base
96.pi=pose
diff
*pi;i∈n
97.其中,pi为上述车体坐标系中的一个原始点云数据中的一个原始点云点,pose
diff
为上述一个雷达与基准雷达间的相对位姿,n为上述车体坐标系中的一个原始点云数据中的原始点云点的数目。
98.s203:分别将多个补偿点云数据映射在球体坐标系中,并采用对应多个雷达设置的基准重叠区域,对多个补偿点云数据进行点云过滤,获得多个目标点云数据。
99.进一步的,为实现重叠区域中的点云过滤,将多个补偿点云数据映射在球体坐标系中,具体的,针对多个补偿点云数据,分别执行以下操作:
100.s2031:针对一个补偿点云数据对应的一个雷达,分别获取一个雷达的平面信息以及垂面信息。
101.s2032:采用平面信息及垂面信息,分别计算一个补偿点云数据中,至少一个补偿点云点各自的球体坐标,并基于至少一个球体坐标,将一个原始点云数据映射在球体坐标
系中。
102.具体的,上述平面信息用于表征一个雷达在水平方向对目标环境的探测范围,上述垂面信息用于表征一个雷达在垂直方向对目标环境的探测范围。
103.在一种可选的实施例中,采用平面信息及垂面信息,分别计算一个补偿点云数据中,至少一个补偿点云点各自的球体坐标,可以针对每个补偿点云点,分别执行以下操作:
104.s20321:对平面信息,以及一个补偿点云点的航向角进行计算,获得一个补偿点云点在二维投影平面上的横轴投影值。
105.s20322:对垂面信息,以及一个补偿点云点的俯仰角进行计算,获得一个补偿点云点在二维投影平面上的纵轴投影值。
106.s20323:采用横轴投影值及纵轴投影值,获得一个补偿点云点的球体坐标。
107.示例性的,本技术实施例中,根据一个雷达的水平信息以及垂直信息,计算该一个雷达对应补偿点云数据中,至少一个补偿点云点各自的球体坐标,如下式所示:
108.c
x
=0.5*(yaw/(π*scale)+1.0)
109.cy=1.0-(pitch+abs(fov_down))/fov
110.其中,c
x
为一个补偿点云点在二维投影平面上的横轴投影值,yaw为该一个补偿点云点的航向角,scale为雷达在水平方向上的探测范围与180
°
的相对比例,cy为该一个补偿点云点在二维投影平面上的纵轴投影值,pitch为该一个补偿点云点的俯仰角,fov为雷达在垂直方向上的探测范围,fov_down为雷达在垂直方向上的下半区探测范围。
111.进一步的,通过每个补偿点云点的球体坐标,采用对应多个雷达设置的基准重叠区域进行点云过滤,具体的,针对每相邻两个雷达对应的两个补偿点云数据,分别执行以下操作:
112.s2033:采用对应相邻两个雷达设置的一个基准重叠区域,从相邻两个雷达对应的两个补偿点云数据中,获取相应球体坐标投影至基准重叠区域中的至少一个补偿点云点,为待筛选的重叠点云点。
113.s2034:将基准重叠区域划分为至少一个体素网格,并确定至少一个体素网格各自的目标点云点。
114.s2035:针对每个体素网格,将包含的至少一个重叠点云点替换为相应的目标点云点,并将基准重叠区域中的至少一个目标点云点进行组合,获得目标点云数据。
115.具体的,本技术实施例中,可以人为设置针对多个雷达的一个或多个基准重叠区域,也可以根据多个雷达各自在车辆中的搭载位置,为每相邻两个雷达设置对应的基准重叠区域,以表明该基准重叠区域中可能发生点云重叠。
116.进一步的,根据至少一个补偿点云点各自的球体坐标投影至对应基准重叠区域中,筛选出每相邻两个雷达对应的重叠点云点,通过划分为至少一个体素网格,将每个体素网格中包含的至少一个重叠点云点替换为其中的一个目标点云点,其中,上述体素网格可以任意划分,且每个体素网格包含至少一个重叠点云点。
117.在一种可选的实施例中,所述目标点云点为一个所述体素网格中,至少一个重叠点云点的重心点或中心最近点。
118.示例性的,本技术实施例中,针对相邻两个雷达对应的基准重叠区域o1,将其划分为对应的至少一个体素网格o1~on,其中,每个体素网格包含至少一个重叠点云点,则将每
个体素网格包含的至少一个重叠点云点替换为相应的中心最近点,即采用中心最近点,对每个体素网格中的所有重叠点云点进行表示,进一步的,对所有体素网格的中心最近点进行组合,并以组合的目标点云数据表示该基准重叠区域中的所有重叠点云点,以此达到点云过滤的目的。
119.s204:采用多个目标点云数据进行点云拼接,获得环境点云数据。
120.进一步的,采用多个目标点云数据进行点云拼接,获得环境点云数据,由于本技术实施例中,采用上述球体坐标以及网格划分的方式进行了点云过滤,从而在每相邻两个雷达对应的重叠区域中,对可能产生点云重影的多个重叠点云点进行了充分过滤,进而保证了多目标点云数据所拼接出的环境点云数据的精度,确保车辆准确识别出其周围的完整环境。
121.进一步地,基于相同的技术构思,本技术实施例还提供了一种点云拼接装置,该点云拼接装置用以实现本技术实施例的上述方法流程。参阅图3所示,该装置包括获取模块301、车体映射模块302、球体映射模块303以及拼接模块304,其中:
122.获取模块301,用于获取车辆搭载的多个雷达各自采集到的原始点云数据,其中,每个原始点云数据包含至少一个针对所述车辆所处目标环境采集到的原始点云点。
123.车体映射模块302,用于分别将多个所述原始点云数据映射在车体坐标系中,并采用基准雷达,对多个所述车体坐标系下的所述原始点云数据进行运动补偿,获得多个补偿点云数据,其中,所述基准雷达为所述多个雷达中的任意一个。
124.球体映射模块303,用于分别将多个所述补偿点云数据映射在球体坐标系中,并采用对应所述多个雷达设置的基准重叠区域,对多个所述补偿点云数据进行点云过滤,获得多个目标点云数据。
125.拼接模块304,用于采用所述多个目标点云数据进行点云拼接,获得环境点云数据。
126.在一种可选的实施例中,所述分别将多个所述原始点云数据映射在车体坐标系中,所述车体映射模块302具体用于:
127.针对多个所述原始点云数据,分别执行以下操作:
128.针对一个所述原始点云数据对应的一个雷达,从预设参数集合中,获取与所述一个雷达的搭载位置对应的仿射变换参数,其中,所述仿射变换参数与所述车辆对应车体坐标系中的车体坐标原点关联。
129.采用所述仿射变换参数,分别计算所述一个所述原始点云数据中,至少一个所述原始点云点各自的车体坐标,并基于至少一个所述车体坐标,将所述一个所述原始点云数据映射在所述车体坐标系中。
130.在一种可选的实施例中,所述采用基准雷达,对多个所述车体坐标系下的所述原始点云数据进行运动补偿,所述车体映射模块302具体用于:
131.针对多个所述车体坐标系下的所述原始点云数据,分别执行以下操作:
132.针对一个所述车体坐标系下的所述原始点云数据对应的一个雷达,获取所述一个雷达对应的雷达位姿。
133.采用基准雷达对应的基准位姿,计算所述基准雷达与所述一个雷达间的相对位姿。
134.基于所述相对位姿,分别对所述一个所述车体坐标系下的所述原始点云数据中,至少一个所述原始点云点进行运动补偿,获得补偿点云数据。
135.在一种可选的实施例中,所述分别将多个所述补偿点云数据映射在球体坐标系中,所述球体映射模块303具体用于:
136.针对多个所述补偿点云数据,分别执行以下操作:
137.针对一个所述补偿点云数据对应的一个雷达,分别获取所述一个雷达的平面信息以及垂面信息,其中,所述平面信息用于表征所述一个雷达在水平方向对所述目标环境的探测范围,所述垂面信息用于表征所述一个雷达在垂直方向对所述目标环境的探测范围。
138.采用所述平面信息及所述垂面信息,分别计算所述一个所述补偿点云数据中,至少一个补偿点云点各自的球体坐标,并基于至少一个所述球体坐标,将所述一个所述原始点云数据映射在所述球体坐标系中。
139.在一种可选的实施例中,所述采用所述平面信息及所述垂面信息,分别计算所述一个所述补偿点云数据中,至少一个补偿点云点各自的球体坐标,所述球体映射模块303具体用于:
140.针对所述一个所述补偿点云数据中,至少一个补偿点云点,分别执行以下操作:
141.对所述平面信息,以及一个补偿点云点的航向角进行计算,获得所述一个补偿点云点在二维投影平面上的横轴投影值。
142.对所述垂面信息,以及所述一个补偿点云点的俯仰角进行计算,获得所述一个补偿点云点在所述二维投影平面上的纵轴投影值。
143.采用所述横轴投影值及所述纵轴投影值,获得所述一个补偿点云点的球体坐标。
144.在一种可选的实施例中,所述采用对应所述多个雷达设置的基准重叠区域,对多个所述补偿点云数据进行点云过滤,获得多个目标点云数据,所述球体映射模块303具体用于:
145.针对多个所述补偿点云数据中,每相邻两个雷达对应的两个补偿点云数据,分别执行以下操作:
146.采用对应相邻两个雷达设置的一个基准重叠区域,从相邻两个雷达对应的两个补偿点云数据中,获取相应球体坐标投影至所述基准重叠区域中的至少一个所述补偿点云点,为待筛选的重叠点云点。
147.将所述基准重叠区域划分为至少一个体素网格,并确定所述至少一个体素网格各自的目标点云点,其中,每个体素网格包含至少一个所述重叠点云点。
148.针对每个所述体素网格,将包含的至少一个所述重叠点云点替换为相应的目标点云点,并将所述基准重叠区域中的至少一个所述目标点云点进行组合,获得目标点云数据。
149.在一种可选的实施例中,所述目标点云点为一个所述体素网格中,至少一个所述重叠点云点的重心点或中心最近点。
150.与上述申请实施例基于同一发明构思,本技术实施例中还提供了一种电子设备,该电子设备可以用于点云拼接。在一种实施例中,该电子设备可以是服务器,也可以是终端设备或其他电子设备。在该实施例中,电子设备的结构可以如图4所示,包括存储器401,通讯接口403以及一个或多个处理器402。
151.存储器401,用于存储处理器402执行的计算机程序。存储器401可主要包括存储程
序区和存储数据区,其中,存储程序区可存储操作系统,以及运行即时通讯功能所需的程序等;存储数据区可存储各种即时通讯信息和操作指令集等。
152.存储器401可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,ram);存储器401也可以是非易失性存储器(non-volatile memory),例如只读存储器,快闪存储器(flash memory),硬盘(hard disk drive,hdd)或固态硬盘(solid-state drive,ssd)、或者存储器401是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器401可以是上述存储器的组合。
153.处理器402,可以包括一个或多个中央处理单元(central processing unit,cpu)或者为数字处理单元等。处理器402,用于调用存储器401中存储的计算机程序时实现上述点云拼接方法。
154.通讯接口403用于与终端设备和其他服务器进行通信。
155.本技术实施例中不限定上述存储器401、通讯接口403和处理器402之间的具体连接介质。本技术实施例在图4中以存储器401和处理器402之间通过总线404连接,总线404在图4中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线404可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
156.基于同一发明构思,本技术实施例还提供一种存储介质,该存储介质存储有计算机指令,当该计算机指令在计算机上运行时,使得计算机执行前文论述的一种点云拼接方法。
157.应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本技术的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
158.此外,尽管在附图中以特定顺序描述了本技术方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
159.本技术实施例提供一种点云拼接方法、装置、电子设备及存储介质,将车辆搭载的多个雷达各自采集到的原始点云数据分别映射在车体坐标系中,并采用基准雷达,对多个原始点云数据进行运动补偿,获得多个补偿点云数据,进一步的,分别将多个补偿点云数据映射在球体坐标系中,并采用对应多个雷达设置的基准重叠区域,对多个补偿点云数据进行点云过滤,获得多个目标点云数据,进而采用多个目标点云数据进行点云拼接,获得环境点云数据,基于上述方式,本技术实施例将处理后的多个补偿点云数据映射在球体坐标系中,并根据映射坐标,对投影至预设基准重叠区域中的多补偿点云数据进行点云过滤,进而在每个基准重叠区域中,避免因点云重叠而产生的点云重影,进一步提升了车辆多雷达场景下,所拼接出的环境点云数据的精度,确保车辆准确识别出其周围的完整环境。
160.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实
施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
161.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个服务器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
162.可使用一种或多种程序设计语言的任意组合来编写用于执行本技术操作的程序代码,程序设计语言包括面向对象的程序设计语言,诸如java、c++等,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算装置上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算装置上部分在远程计算装置上执行、或者完全在远程计算装置或服务器上执行。
163.在涉及远程计算装置的情形中,远程计算装置可以通过任意种类的网络包括局域网(lan)或广域网(wan)连接到用户计算装置,或者,可以连接到外部计算装置(例如,利用因特网服务提供商来通过因特网连接)。
164.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
165.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
166.显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
技术特征:
1.一种点云拼接方法,其特征在于,包括:获取车辆搭载的多个雷达各自采集到的原始点云数据,其中,每个原始点云数据包含至少一个针对所述车辆所处目标环境采集到的原始点云点;分别将多个所述原始点云数据映射在车体坐标系中,并采用基准雷达,对多个所述车体坐标系下的所述原始点云数据进行运动补偿,获得多个补偿点云数据,其中,所述基准雷达为所述多个雷达中的任意一个;分别将多个所述补偿点云数据映射在球体坐标系中,并采用对应所述多个雷达设置的基准重叠区域,对多个所述补偿点云数据进行点云过滤,获得多个目标点云数据;采用所述多个目标点云数据进行点云拼接,获得环境点云数据。2.如权利要求1所述的方法,其特征在于,所述分别将多个所述原始点云数据映射在车体坐标系中,包括:针对多个所述原始点云数据,分别执行以下操作:针对一个所述原始点云数据对应的一个雷达,从预设参数集合中,获取与所述一个雷达的搭载位置对应的仿射变换参数,其中,所述仿射变换参数与所述车辆对应车体坐标系中的车体坐标原点关联;采用所述仿射变换参数,分别计算所述一个所述原始点云数据中,至少一个所述原始点云点各自的车体坐标,并基于至少一个所述车体坐标,将所述一个所述原始点云数据映射在所述车体坐标系中。3.如权利要求2所述的方法,其特征在于,所述采用基准雷达,对多个所述车体坐标系下的所述原始点云数据进行运动补偿,包括:针对多个所述车体坐标系下的所述原始点云数据,分别执行以下操作:针对一个所述车体坐标系下的所述原始点云数据对应的一个雷达,获取所述一个雷达对应的雷达位姿;采用基准雷达对应的基准位姿,计算所述基准雷达与所述一个雷达间的相对位姿;基于所述相对位姿,分别对所述一个所述车体坐标系下的所述原始点云数据中,至少一个所述原始点云点进行运动补偿,获得补偿点云数据。4.如权利要求1-3任一项所述的方法,其特征在于,所述分别将多个所述补偿点云数据映射在球体坐标系中,包括:针对多个所述补偿点云数据,分别执行以下操作:针对一个所述补偿点云数据对应的一个雷达,分别获取所述一个雷达的平面信息以及垂面信息,其中,所述平面信息用于表征所述一个雷达在水平方向对所述目标环境的探测范围,所述垂面信息用于表征所述一个雷达在垂直方向对所述目标环境的探测范围;采用所述平面信息及所述垂面信息,分别计算所述一个所述补偿点云数据中,至少一个补偿点云点各自的球体坐标,并基于至少一个所述球体坐标,将所述一个所述原始点云数据映射在所述球体坐标系中。5.如权利要求4所述的方法,其特征在于,所述采用所述平面信息及所述垂面信息,分别计算所述一个所述补偿点云数据中,至少一个补偿点云点各自的球体坐标,包括:针对所述一个所述补偿点云数据中,至少一个补偿点云点,分别执行以下操作:对所述平面信息,以及一个补偿点云点的航向角进行计算,获得所述一个补偿点云点
在二维投影平面上的横轴投影值;对所述垂面信息,以及所述一个补偿点云点的俯仰角进行计算,获得所述一个补偿点云点在所述二维投影平面上的纵轴投影值;采用所述横轴投影值及所述纵轴投影值,获得所述一个补偿点云点的球体坐标。6.如权利要求1-3任一项所述的方法,其特征在于,所述采用对应所述多个雷达设置的基准重叠区域,对多个所述补偿点云数据进行点云过滤,获得多个目标点云数据,包括:针对多个所述补偿点云数据中,每相邻两个雷达对应的两个补偿点云数据,分别执行以下操作:采用对应相邻两个雷达设置的一个基准重叠区域,从所述相邻两个雷达对应的两个补偿点云数据中,获取相应球体坐标投影至所述基准重叠区域中的至少一个所述补偿点云点,为待筛选的重叠点云点;将所述基准重叠区域划分为至少一个体素网格,并确定所述至少一个体素网格各自的目标点云点,其中,每个体素网格包含至少一个所述重叠点云点;针对每个所述体素网格,将包含的至少一个所述重叠点云点替换为相应的目标点云点,并将所述基准重叠区域中的至少一个所述目标点云点进行组合,获得目标点云数据。7.如权利要求6所述的方法,其特征在于,所述目标点云点为一个所述体素网格中,至少一个所述重叠点云点的重心点或中心最近点。8.一种点云拼接装置,其特征在于,包括:获取模块,用于获取车辆搭载的多个雷达各自采集到的原始点云数据,其中,每个原始点云数据包含至少一个针对所述车辆所处目标环境采集到的原始点云点;车体映射模块,用于分别将多个所述原始点云数据映射在车体坐标系中,并采用基准雷达,对多个所述车体坐标系下的所述原始点云数据进行运动补偿,获得多个补偿点云数据,其中,所述基准雷达为所述多个雷达中的任意一个;球体映射模块,用于分别将多个所述补偿点云数据映射在球体坐标系中,并采用对应所述多个雷达设置的基准重叠区域,对多个所述补偿点云数据进行点云过滤,获得多个目标点云数据;拼接模块,用于采用所述多个目标点云数据进行点云拼接,获得环境点云数据。9.一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-7中任一项所述的方法。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一所述方法的步骤。
技术总结
本申请实施例提供一种点云拼接方法、装置、电子设备及存储介质,将车辆搭载的多个雷达各自采集到的原始点云数据分别映射在车体坐标系中,并采用基准雷达,对多个原始点云数据进行运动补偿,获得多个补偿点云数据,进一步的,分别将多个补偿点云数据映射在球体坐标系中,并采用对应多个雷达设置的基准重叠区域,对多个补偿点云数据进行点云过滤,获得多个目标点云数据,进而采用多个目标点云数据进行点云拼接,获得环境点云数据,基于上述方式,对投影至预设基准重叠区域中的补偿点云数据进行点云过滤,避免因点云重叠而产生的点云重影,从而有效提升了车辆多雷达点云拼接所获得的环境点云数据的精度,确保车辆感知环境的准确性。确性。确性。
技术研发人员:
赵天坤
受保护的技术使用者:
合众新能源汽车有限公司
技术研发日:
2022.09.26
技术公布日:
2022/12/30