一种确定目标对象点云集的方法及装置与流程

文档序号:28941426发布日期:2022-02-16 17:03阅读:182来源:国知局
一种确定目标对象点云集的方法及装置与流程

1.本技术涉及自动驾驶领域,尤其涉及一种确定目标对象点云集的方法及装置。


背景技术:

2.随着城市的发展,交通越来越拥堵,人们驾车越来越趋于疲劳。为了满足人们的出行要求,自动驾驶应用而生。自动驾驶的关键在于能够高精度地识别周围的道路环境,从而自动驾驶安全可靠。目前的自动驾驶车辆中安装有激光传感器,实时获取周围的激光数据,结合高精度地图,以供车辆做出正确的行驶决策。
3.其中,在制作高精度地图的过程中,采集的激光点云中有些物体是临时物体,这些物体会随着时间变化,影响定位精度,这些临时物体不适合作为地图的一部分,需要在制图过程中把这些物体去除掉。临时物体,包括:移动物体(如行人、行驶的汽车)和可移动物体(如静止的自行车和汽车等)。如何在激光点云中,确定目标对象的点云集是本技术实施例待解决的技术问题。


技术实现要素:

4.本技术提供一种确定目标对象点云集的方法及装置,以确定目标对象对应的点云集。
5.第一方面,提供一种确定目标对象点云集的方法,该方法包括:获取来自视觉传感器的图像数据和来自探测传感器的点云数据;根据所述图像数据中包括的目标对象,确定探测传感器所对应的第一坐标系中的至少一个3d锥形空间;根据所述至少一个3d锥形空间,得到多个候选点云集;在所述多个候选点云集中,确定目标对象的点云集。可选的,上述3d锥形空间可以为目标对象在第一坐标系中的投射,该3d锥形空间在第一坐标系中可包括多个点云数据;目标对象的点云集中可包括多个点云数据。
6.通过实施上述方法,利用来自视觉传感器的图像数据完成与探测传感器的点云数据的融合,确定目标对象的点云集,无需获取目标对象的深度信息,降低对视觉传感器的要求。
7.可选的,在得到上述目标对象的点云集之后,可利用上述目标对象的点云集对目标对象进行识别,或者制作高精度地图,或定位等,不作限定。进一步,若用于制作高精度地图,或定位等,还可包括:在探测传感器所采集的其周围所有物体的点云数据中,去除目标对象的点云集,得到第二点云数据等。
8.在一种可能的实现方式中,上述根据图像数据所包括的目标对象,确定探测传感器所对应的第一坐标系中的至少一个3d锥形空间,包括:在所述图像数据中识别目标对象和目标对象的轮廓;例如,可利用ai识别算法,在上述图像数据中识别目标对象;在目标对象中识别目标对象的轮廓;根据目标对象的轮廓,确定探测传感器所对应的第一坐标系中的3d锥形空间。
9.通过上述方法,能够实现根据目标对象的轮廓,在第一坐标系中投射3d锥形空间,
在3d锥形空间中所包括的点云数据中,确定目标对象的点云集,可提高对目标对象点云集的识别准确性。
10.在一种可能的实现方式中,上述根据目标对象的轮廓,得到3d锥形空间的过程,包括:获取目标对象的轮廓所包括的像素,将上述像素在像素坐标系中的坐标,转换为视觉传感器所对应的第二坐标系(相机坐标系)中的坐标,上述目标对象的轮廓对应的其在第二坐标系中的坐标可称为一个3d点集;将所述3d点集由第二坐标系转换到第一坐标系;在第一坐标系中,将上述目标对象的轮廓对应的坐标进行曲线拟合,得到一条拟合的曲线;从所述第一坐标的原点,向所述拟合的曲线投射射线,得到一个3d锥形空间。
11.通过上述方法,可实现由目标对象的轮廓向第一坐标系中的3d锥形空间的转换,得到目标对象在第一坐标系中对应的空间范围。该空间范围内所包括的点云数据,包括目标对象所对应的点云集。
12.在一种可能的实现方式中,上述将3d点集由第二坐标系转换到第一坐标系,包括:根据所述第二坐标系到车体坐标系的第一转换关系和所述第一坐标系到所述车体坐标系的第二转换关系,将所述3d点集由所述第二坐标系转换到所述第一坐标系。
13.当然,在本技术实施例中,也可以直接建立第二坐标系与第一坐标系的转换关系,无需再经过车体坐标系的转换,简化第二坐标系与第一坐标系间的转化过程。
14.可选的,上述将目标对象的轮廓由像素坐标系中的坐标,转换为第二坐标系中的坐标,包括:可根据第二坐标系的内参,将目标对象的轮廓在像素坐标系中的坐标转换为第二坐标系中的坐标。
15.可选的,上述方法还包括:根据一个3d点集,得到对应于多个放大倍数的多个3d点集,每个3d点集可对应于不同的放大倍数。每个3d点集对应于一个3d锥形空间。
16.在一种可能的实现方式中,上述根据3d锥形空间,确定目标对象的点云集,包括:对3d锥形空间所包括的点云进行聚类,得到多个候选点云集;在上述多个候选点云集中,确定满足目标对象的条件的点云集。
17.需要说明的是,上述满足目标对象的条件的点云集有多种理解,一种理解为:所述目标对象的条件为点云集在多个候选点云集中的可信度最高。例如,可计算上述聚类得到的多个候选点云集中,每个候选点云集的可信度;在上述多个候选点云集中,选择可信度最高的点云集作为目标对象的点云集;或者,另一种理解为:所述目标对象的条件为点云集在多个候选点云集的可信度大于或等于第一阈值,所述第一阈值可以为预配置,预定义,或出厂设置等,不作限定。
18.可选的,上述对3d锥形空间所包括的点云进行聚类,得到多个候选点云集的过程,可包括:确定每个3d锥形空间内所包括的点云到第一坐标系原点的第一距离,该第一距离可以为3d锥形空间内所包括的所有点云到第一坐标系原点的平均距离;根据距离与系数的对应关系,确定第一距离对应的系数;根据第一距离对应的系数,聚类3d锥形空间内所包括的点云,得到多个候选点云集,每个候选点云集中包括至少一个点云。
19.通过实施上述方法,无需获取目标对象的深度信息,即可获取目标对象对应的点云集,减少了方案的复杂度。同时借助于ai算法,识别目标对象和目标对象的轮廓,可以提高识别目标对象点云集方案的准确性。
20.第二方面,提供一种装置,该装置用于实现上述第一方面或第一方面中任意一种
方法,包括相应的功能模块或单元,分别用于实现上述方法中的步骤。功能可以通过硬件实现,也可以通过硬件执行相应的软件实现,硬件或软件包括一个或多个与上述功能相应的模块或单元。
21.第三方面,提供一种装置,该装置包括至少一个处理器和至少一个存储器。其中,所述至少一个存储器用于存储计算程序或指令,所述至少一个处理器与所述至少一个存储器耦合;当处理器执行计算机程序或指令时,使得该装置执行上述第一方面或第一方面中的任意一种方法。
22.第四方面,提供一种传感器或者融合装置,该传感器可以为激光传感器等探测传感器,例如,激光雷达。该传感器或者融合装置可包括上述第二方面或第三方面所述的装置。
23.第五方面,提供一种终端,该终端可包括上述第二方面或第三方面所述的装置,或者第四方面提供的传感器或者融合装置。可选的,该终端可以为智能运输设备(车辆或者无人机)、智能家居设备、智能制造设备或者机器人等。该智能运输设备例如可以是自动导引运输车(automated guided vehicle,agv)、或无人运输车。
24.第六方面,装置一种系统,该系统包括上述第二方面或第三方面的装置、探测传感器和视觉传感器;
25.第七方面,提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令被装置执行时,使得该装置执行上述第一方面或第一方面中的任意一种方法。
26.第八方面,提供本技术提供一种计算机程序产品,该计算机程序产品包括计算机程序或指令,当计算机程序或指令被装置执行时,使得该装置执行上述第一方面或第一方面中的任意一种方法。
附图说明
27.图1、图2和图3为本技术实施例提供的当前去除目标对象点云集的方案;
28.图4为本技术实施例提供的确定目标对象点云集的方法流程图;
29.图5为本技术实施例提供的像素坐标系到相机坐标系转换的示意图;
30.图6为本技术实施例提供的拟合曲线的示意图;
31.图7为本技术实施例提供的3d点集和投射3d锥形的示意图;
32.图8为本技术实施例提供的应用场景的示意图;
33.图9为本技术实施例提供的去除目标对象点云的示意图;
34.图10和图11为本技术实施例提供的装置的结构示意图。
具体实施方式
35.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整性描述。
36.汽车自动驾驶对导航和定位要求很高,高精度地图与激光雷达点云匹配的定位方法是高精度导航和定位的一种重要方法。其中,在制作高精度地图的过程中,采集的激光点云中有些物体是临时物体,这些物体会随着时间变化,影响定位精度。这些临时物体不适合
作为地图的一部分,需要在制图的过程中把这些物体去除掉。目前,在激光点云中去除目标对象点云集的方案主要包括以下几种:
37.第一种方案,如图1所示,可使用编辑工具手动清除目标对象的点云集。存在人力成本高,容易误操作等问题。且在定位过程中,需要实时处理点云数据,无法手动去除,影响定位精度。
38.第二种方案,如图2所示,可使用人工智能(artificial intelligence,ai)或聚类算法,直接从激光点云中识别目标对象,并从点云中去除的方法。由于激光点云中的点是三维的,三维的点是非结构化数据,具有稀疏性、无序性、非均匀分布、数量变化大等特点,用来做深度学习的难度很大。同时激光点云具有发散性,远处的物体点很稀疏,识别难度很大或无法识别。
39.第三种方案,如图3所示,激光和视觉联合的方法,使用ai算法识别目标对象,使用多目摄像头或深度摄像头识别目标对象的深度信息,基于目标对象的深度信息,计算出物体的三维(three-dimensional,3d)位置,然后在激光点云中找到上述3d位置的点云,并去除。从图像中识别目标对象的3d位置依赖多目摄像头或深度摄像头,成本高,技术难度大。
40.基于上述,本技术实施例提供一种方法,在该方法中无需依赖多目摄像头或深度摄像头采集的目标对象的深度信息,直接利用目标对象的图像数据和激光点云的融合,即可在激光点云中识别出目标对象对应的点云集,降低整个方案的硬件要求。
41.如图4所示,提供一种确定目标对象点云集的方法流程,至少包括:
42.步骤401:获取来自视觉传感器的图像数据和来自探测传感器的点云数据。
43.其中,视觉传感器可以为单目摄像头、多目摄像头或深度摄像头等。可选的,由于单目摄像头相对于多目摄像头或深度摄像头的价格较低,因此在本技术实施例的方案中若使用单目摄像头,可以降低整个方案的成本。探测传感器可以为激光传感器等。
44.步骤402:在探测传感器对应的第一坐标系中得到目标对象对应的至少一个3d锥形空间,所述目标对象位于所述图像数据所指示的图像中,所述第一坐标系为探测传感器所对应的坐标系。在一种场景中,上述探测传感器可以安装于自动驾驶汽车上,所述探测传感器可以对周围物体进行扫描,采集周围物体的点云数据。在一种理解中,所述点云数据是指在一个三维坐标系统中的一组向量集合。这些向量通常以x、y、z三维坐标的形式表示,而且一般主要用于代表一个物体的外表面形状。
45.在本技术实施例中,首先获取视觉传感器所采集的外部图像数据;且在外部图像数据中识别目标对象和目标对象的轮廓;之后,根据目标对象的轮廓,在上述探测传感器所对应的第一坐标系中,确定上述目标对象的轮廓所对应的3d锥形空间。在一种理解中,上述3d锥形空间可认为是目标对象的轮廓在第一坐标系中的投射。在某种程度上,该3d锥形空间在第一坐标系中所包括的点云集,即为目标对象的点云集。只不过,在实际应用中,场景复杂,存在各种影响因素,3d锥形空间所包括的点云集中,可能除包括目标对象所对应的点云集外,可能还包括其它物体的点云集。比如,在一种场景中,受各种条件限制,对目标对象轮廓的识别可能并不是完全精准。比如,识别的目标对象的轮廓可能会大于目标对象的实际轮廓。如此,在本技术实施例中,利用上述识别的大于目标对象实际轮廓的轮廓去投射得到的3d锥形空间中,除包括目标对象的点云集外,可能还会包括其它物体对应的点云集。或者,在另一种场景中,目标对象的附近可能存在其它物体,那么探测传感器所采集的目标对
象的图像数据中会包括其它物体,进一步若上述其它物体与目标物体在空间上有重叠,那么该目标物体的轮廓所对应的3d锥形空间中也会包括其它物体的点云集。比如,目标对象为自行车,自行车与树的空间存在重叠,那么利用自行车的轮廓所投射的3d点集中,除了包括自行车的点云集外,可能还会包括树的点云集。因此,后续需要下述步骤403和步骤404的进一步处理,在上述3d锥形空间所包括的点云集中,聚类出多个候选点云集,在上述多个候选点云集中,选择一个点云集作为目标对象的点云集等。关于步骤403和步骤404的具体处理过程,可参见下述记载。
46.当然,应当指出,在本技术实施例中,直接将3d锥形空间所包括的点云,作为目标对象的点云集的方案,即仅利用步骤401和步骤402确定目标对象点云集的方案,也在本技术实施例的保护范围内。
47.在一种可能的实现方式中,可以利用ai算法在视觉传感器所采集的外部图像数据中,识别目标对象和/或目标对象的轮廓。比如,可预先获取大量的图像数据,对ai模型进行训练,得到一个神经网络,经过训练,该神经网络可以在图像数据中,识别出目标对象和/或目标对象的轮廓。在本技术实施例中,可以将视频传感器所采集的外部图像数据,输入到上述训练好的神经网络中,该神经网络的输出即为目标对象对应的数据。其中,上述ai模型可以为循环神经网络(recurrent neural network,rnn)、卷积神经网络(convolutional neural networks,cnn)等。可选的,上述ai模型可以随着时间的推移持续更新。关于在上述目标对象中识别目标对象轮廓的方式,与上述方式相似,不再赘述。本领域技术人员可知,该步骤不限于使用ai算法识别所述目标对象和所述目标对象的轮廓,还可以采用其他图形算法,具体可以参见现有技术。
48.在以下实施例中,将具体介绍根据目标对象轮廓,获得至少一个3d锥形空间的过程:
49.1)根据所述目标对象的轮廓,得到视觉传感器所对应的第二坐标系中的至少一个3d点集。
50.首先,应该指出,本技术实施例主要涉及四个坐标系,分别为上述探测传感器对应的第一坐标系,又称为激光坐标,该视觉传感器对应的第二坐标系,又称为相机坐标系,以及下述图像像素对应的第三坐标系,又称为像素坐标系,汽车对应的第四坐标系,又称为车体坐标系。
51.其中,在上述第一坐标系中,采用极坐标系统,在平面内由极点、极轴和极径组成的坐标系。在平面上取一点o,可定义为极点,从o出发引一条射线ox,称为极轴。再取定一个长度单位,通常规定角度取逆时针方向为正。这样,平面上任一点p的位置可以用线段op的长度ρ以及从ox到op的角度θ来确定,有序数对(ρ,θ)就称为p点的极坐标,记为p(ρ,θ);ρ称为p点的极径,θ称为p点的极角。在上述第二坐标系中,原点为视觉传感器的光心,x轴与y轴与图像的x,y轴平行,z轴为视觉传感器光轴,z辆与图像平面垂直。在上述第三坐标系中,可以以图像左上角为原点建立以像素为单位的坐标系,像素的横坐标和纵坐标分别为其图像像素所在的列数与行数。在上述第四标系中,其原点与车辆的质心重合,当车辆在水平路面上静止时,x轴平行于地面方向指向车辆前方,x轴通过质心指向上方,y辆指向驾驶员的左侧。
52.应当指出,上述目标对象的轮廓可以由多个像素组成,每个像素对应一像素坐标。
可以将该目标对象的轮廓所包括的多个像素坐标,转换为上述第二坐标系中的3d点集。在一种理解中,上述3d点集中包括多个第二坐标系中的坐标,每个坐标对应于上述像素坐标系中的一个像素坐标。比如,在像素坐标系中,上述目标对象的轮廓中包括n个像素坐标,可将上述n个像素坐标转换为第二坐标系中的n个坐标,该n个坐标可称为一个3d点集。在一种可能方案中,将像素坐标系中的一个像素坐标转换为第二坐标系中的一个坐标的过程,满足以下公式:
[0053][0054]
其中,xy代表像素坐标系即第三坐标系中的坐标,xyz代表第二坐标系即视觉传感器中的坐标,s,f
x
,fy,c
x
,cy等为相机内参,且f
x
,fy分别为视觉传感器在x方向和y方向的焦距,c
x
和cy为视觉传感器的中心,s为比例因子。
[0055]
在一种示例中,如图5所示,p为目标对象,利用视觉传感器采集目标对象p的图像,得到包括目标对象p的图像数据,可在上述图像数据中识别目标对象p以及目标对象p的轮廓;将目标对象p的轮廓所包括的像素坐标转换为视觉传感器对应的第二坐标系中的坐标,该目标对象p的轮廓所对应的第二坐标系中的坐标对应一3d点集。
[0056]
2)将所述3d点集由第二坐标系转换到第一坐标系。
[0057]
在一种示例中,可标定视觉传感器外参,可获得第二坐标系到第四坐标系的转换关系(t1);标定探测传感器外参,可获得第一坐标系到第四坐标系的转换关系(t2);第二坐标系到第一坐标系的转换关系,满足以下条件:
[0058]
第一坐标系坐标=t2-1
*t1*(第二坐标系坐标);
[0059]
通过以上记载,上述3d点集由多个第二坐标系的坐标组成。在本技术实施例中,可将上述3d点集中的每个坐标,按照上述公式关系,转换为第一坐标系中的坐标。或者,在本技术实施例中,也可直接建立第一坐标系与第二坐标系间的转换关系,不再经过第四坐标系的转换,不作限定。
[0060]
3)在第一坐标系中,针对3d点集对应的坐标进行曲线拟合并从探测传感器的原点投射射线,得到3d锥形空间。
[0061]
其中,通过上述记载可知,上述3d点集由多个第二坐标系的坐标组成,经过上述步骤2)的转换,可将上述3d点集中的坐标由第二坐标转换为第一坐标系。通过上述操作,可以在第一坐标系中,得到一系列的坐标点,可对上述多个点进行曲线拟合,得到一条拟合的曲线。在一示例中,如图6所示,由3d点集转换得到的第一坐标系中的一系列坐标点可以由“圆圈”表示,经过曲线拟合,可将上述多个坐标转换为一条正弦曲线。如图7所示,假设上述拟合的曲线位于上述由顶点(a,b,c,d)组成的截面上,从第一坐标系原点f向上述拟合的曲线进行投射,可得到如图7所示的3d锥形空间。当然上述描述,是以3d点集对应的第一坐标系中的点位于同一个平面或截面为例进行描述的,实质上并不限定3d点集所对应的第一坐标系中的点是否位于同一个平面或截面中。
[0062]
步骤403:根据所述至少一个3d锥形空间,得到多个候选点云集。
[0063]
可以理解的是,在本技术实施例中,可以得到一个3d锥形空间,也可以得到多个3d
锥形空间。如此操作的主要是因为:同一个物体,与探测传感器的距离不同,探测传感器所扫描的获得点的数量不同。比如,该物体距离探测传感器的距离越近,探测传感器扫描获得的点越稠密,即越多,该物体距离探测传感器的距离越远,探测传感器所扫描的获得的点越稀疏,即越少。在某种程度上,可以认为目标对象与探测传感器的距离不同,可能投射到探测传感器坐标系中的3d锥形空间可能不同。
[0064]
应当指出,通过上述记载可知,上述3d锥形空间是由3d点集对应的第一坐标系中的点通过曲线拟合和投射而得到的,一个3d点集对应一个3d锥形空间。而在本技术实施例中,若需要得到多个3d锥形空间,需要首先得到多个3d点集。在本技术实施例中,由上述步骤402中记载的方式可以得到一个3d点集。可选的,在本技术实施例中,由一个3d点集,得到多个3d点集的过程可包括:可将得到的一个3d点集,按照射线方向等倍距放大,按照不同的放大倍数,可以得到多个3d点集,所述多个3d点集中的每个3d点集对应不同的放大倍数中的放大倍数。如图7所示,e是第二坐标系的原点,根据上述步骤402中的记载的方法,得到一个3d点集,为了便于区分,可将该3d点集称为第一3d点集。其中,上述第一3d点集中的所有点位于截面1(a,b,c,d)中,可按照射线方向,以放大倍数m,对上述截面1(a,b,c,d)进行放大,得到截面2(a’,b’,c’d’),上述截面2中可包括第二3d点集,上述第二3d点集与上述第一3d点集中的坐标间可满足上述放大倍数m的关系。
[0065]
在本技术实施例中,可以根据多个3d锥形空间,得到候选点云集。其中,对一个3d锥形空间进行处理,得到候选点云集的过程,可包括:在探测传感器所对应的第一坐标系中,确定3d锥形空间所包括的点云;对3d锥形空间所包括的点云进行聚类,得到多个候选点云集。在一种理解中,聚类可以理解为按照阈值把距离相近的点分成一组,每个候选点云集可能为不同类别的点云集。比如,通过聚类得到3类候选点云集,第一类候选点云集可能为自行车对应的点云集,第二类候选点云集为行人对应的点云集,第三类候选点云集为树的候选点云集。
[0066]
在本技术的一示例中,上述步骤403中对3d锥形空间所包括的点云进行聚类,得到多个候选点云集的过程,可包括:确定3d锥形空间中所包括的点云到第一坐标系原点的第一距离,该第一距离可以是3d锥形空间中包括的所有点云到第一坐标系原点的平均距离。根据对应于第一距离的距离系数,聚类所述3d锥形空间中的点云集,得到多个候选点云集。应当指出,上述对应于第一距离的距离系数,还可称为第一距离对应的距离系数,第一距离对应的系数等。为了便于描述,以下以第一距离对应的系数为例进行说明。在一种可能的实现方案中,在确定3d锥形空间中所包括的点云到激光坐标系原点的平均距离,即上述第一距离之后,可根据距离与系数的对应关系,确定上述第一距离对应的系数;根据第一距离对应的系数,聚类3d锥形空间中所有的点云,每类作为目标对象的候选点云集。在一种理解中,上述距离与系数的对应关系可以为:在不同距离下探测传感器的横向相邻点和纵向相邻点的距离。因此上述第一距离对应的系数实质上应该为两个值,分别为探测传感器的横向相邻点的距离(又称为密度)和纵向相邻点的距离(又称为密度)。在一种理解中,由于探测传感器周期性发送每帧的激光信号,用于扫描其周围的物体。比如每帧激光信号包括32线信号,32线信号纵向排列,每线信号横向排列,且每线信号由多个点组成。上述横线相邻点的距离,是指每线信号中相邻点的距离。纵向相邻点的距离是指,任两个相邻横线信号的对应点的距离。举例来说,32线信号的编号为0至31,每线信号包括100个点,所述横线相邻
点是指0至100个点中任两个相邻点的距离,纵向相邻点是指32个线信号中,比如0号线信号与1号线信号中,任两个相邻点的距离,比如,0号线信号中的第99点与1号线信号中的第99点的距离。
[0067]
应当指出,若聚类后产生的候选点云集大于预设阈值,该阈值可以为预定义的、预配置的或出厂时设置的等,不作限定。可在候选点云集中,选择部分点云集,进行后续步骤404中的可信度计算,挑选目标对象对应的点云集的过程。比如,在一种实现方式中,在通过上述聚类的方式获得多个候选点云集后,若某一个或多个候选点云集中包括的点云数量较少,比如,小于第二阈值,当然该第二阈值同样可以为预配置的,预定义的或出厂时设置的,通常可以认为该类数量比较少的候选点云集是离散的点,为噪声,可以预先去除,不再进一步参与后续步骤404中的,挑选目标对象对应的点云集的过程。
[0068]
步骤404:在所述多个候选点云集中,确定目标对象的点云集。
[0069]
可选的,所述目标对象的点云集,可以为多个候选点云集中,符合目标对象的条件的点云集。所述目标对象的条件可以为点云集在多个候选点云集中的可信度最高,可参见下述第一种方案的记载,或者点云集在多个候选点云集的可信度大于或等于第一阈值,可参见下述第二种方案的记载。
[0070]
在第一种方案中,可获取多个候选点云集中每个候选点云集的可信度;确定可信度最高的候选点云集作为目标对象的点云集。
[0071]
在一种方案中,可以采用以下方式,获取每个候选点云集的可信度:在第一坐标系中,计算候选点云集中所有的点到第一坐标系中原点的距离,该距离可以上述所有点的平均距离;获取历史数据,所述历史数据为目标对象在不同距离下,对应的点云数量。比如,如表1所示,通过大量的统计,可以得到以下历史数据:目标对象在与探测传感器的距离为a时,探测传感器所采集到的点云数量应该为x1,在距离b时,探测传感器所采集到的点云数量应该为x2,在距离c时,探测传感器所采集到的点云数量应该为x3。
[0072]
表1
[0073][0074]
在本技术实施例中,可根据每个候选云集中的点云与原点的距离,在历史数据中,获取与该距离最匹配的一个距离。比如,上述a、b、c的取值分别为50米、100米和150米。针对某个候选点云集中的点云与原点的距离为52,那么可以认为上述a距离50米为与该距离最匹配的一个距离。之后,根据该候选点云集中实际所包括的点云数量与历史数据中其应该包括的点云数量,计算该候选点云集的可信度。比如,仍沿用上述距离,上述与原点距离52的候选点云集中包括95个点云,这95个点云为实际扫描到的点云。而历史数据中,目标对象与探测传感器的距离为50米时,其实际应该采集的点云数据为100,那么该候选点云集的可信度可以为1-(100-90)/100=90%。
[0075]
或者,在第二种方案中,当确定多个候选点云集的可信度之后,可从中选择可信度大于或等于第一阈值的候选点云集,作为目标对象的点云集,该第一阈值可以是预配置的,预定义的,或者出厂时设置的等,不作限定。在一种可能的实现方式中,当大于或者等于第
一阈值的候选点云集的数量为多个时,可将该多个候选点云集均作为目标对象的点云集;或者,可以在上述多个候选点云集中,选择一个或者等多个候选点云集作为目标对象的点云集。关于从上述多个候选点云集中,选择一个或多个候选点云集的方案不作限定,可以根据具体实现场景确定选择的规则,例如随机选择或者预定义筛选规则。
[0076]
通过上述可以看出,在本技术实施例中,无需获取目标对象的深度信息,即可获取目标对象对应的点云集,减少了方案的复杂度。同时借助于ai算法,识别目标对象和目标对象的轮廓,可以提高识别目标对象点云集方案的准确性。
[0077]
在本技术实施例中,在通过上述步骤401至步骤404,获取目标对象的点云集之后。本技术实施例并不限于,对所述目标对象的点云集的应用。例如,可以利用目标对象的点云集对目标对象进行识别。或者,可以在探测传感器所采集的点云数据中,去除所述目标对象的点云等,以得到更精准的地图或定位信息等。
[0078]
在一种示例中,以探测传感器为激光传感器为例,如图8所示,详细介绍本技术实施例的应用:
[0079]
1)数据采集车上安装有激光传感器,该激光传感器可以扫描其周围物体,得到其周围物体对应的点云集;由于其数据采集车中有些物体是临时物体,不适合作为地图的一部分,影响定位精度。其中,临时物体,可包括:移动物体(如行人、行驶的汽车)和可移动物体(如静止的自行车和汽车等)。因此,在本技术实施例中,若数据采集车上安装的视觉传感器发现其周围有临时物体时,可采集包括上述临时物体的图像,且可利用上述图4所示实施例中的方法,利用包括临时物体的图像,识别出临时物体对应的点云集。且在激光传感器所采集的其周围所有物体的点云集中,去除临时物体的点云集。且利用当前的地图制作算法,确定每个临时物体的点云集对应的真实世界的坐标,比如,全球定位系统(global positioning system,gps)坐标或北斗坐标等,完成高精度地图的制作。
[0080]
2)自动驾驶的汽车上安装有激光传感器,同样该激光传感器可以扫描其周围物体,得到其周围物体对应的点云集;之后,利用该自动驾驶汽车上安装的视觉传感器,若发现其周围有临时物体,则采集包括临时物体的图象;同理,利用上述图4所示实施例中的方法,利用临时物体的图像,识别出临时物体对应的点云集;且在激光传感器所采集的其周围物体的点云集中,去除临时物体的点云集;最后利用定位算法,将去除临时物体的点云集与上述得到的高精度地图进行匹配,得到该自动驾驶汽车的位置信息。
[0081]
通过上述方法,可实时自动去除激光点云中的临时物体,在制作高精度地图时提升地图制作效率和精度,减少硬件、人力和时间成本;可在实时定位时提升点云与地图的匹配度,提升定位精度。除此之外,由于在制作地图和定位的过程中,去除了临时物体,也可以提高对目标对象的位置的识别精度等。
[0082]
如图9所示,以探测传感器为激光传感器,视觉传感器为单目摄像头为例,提供一种去除目标对象点云集的方案,至少包括:
[0083]
1、在激光坐标系中,计算目标对象所在的3d空间范围
[0084]
1)获取单目摄像头采集的图像数据。
[0085]
2)通过ai算法识别出目标对象。可选的,目标对象的数量可能有多个。针对每个目标对象,可分别确定其对应的点云集;然后,在探测传感器所采集的周围物体的所有点云数据中,分别去除每个物体所对应的点云集。关于如何识别每个目标对象对应的点云集可参
见下述。在以下描述中,是以识别和去除单个目标对象的点云集为例进行说明的。
[0086]
3)通过ai算法识别出目标对象的轮廓,得到其轮廓在像素坐标系中的坐标。
[0087]
4)将像素坐标系上目标对象的轮廓转换成相机坐标系上的3d点集。
[0088]
例如,将像素坐标系上的轮廓点(位置)转换成相机坐标系上的一个3d点(位置)集。对3d轮廓点集按照射线方向(原点是相机坐标系原点)在等倍距位置生成新的3d点集,按不同的倍数,可以得到多个对应的3d点集。
[0089]
5)将3d点集由相机坐标系转换到激光坐标系。
[0090]
6)在激光坐标系中,计算出原点到轮廓点射线形成的3d空间范围。
[0091]
比如,针对每个3d轮廓点集进行曲线拟合,得到多条3d轮廓曲线。针对每条3d轮廓曲线,从激光原点向曲线投射射线,形成锥形3d空间,每个锥形3d空间就是目标对象的一个3d空间范围。
[0092]
2、生成目标对象的多个候选点云集
[0093]
1)根据几何换算,得到3d空间范围内的点云。
[0094]
2)对每个3d空间范围内的点进行聚类,得到多个候选点云集。
[0095]
3、选择目标对象最佳的候选点云集并去除
[0096]
1)根据目标对象类别,点云数量和距离,计算每个候选点集的可信度;
[0097]
2)针对每个目标对象,选取所有候选点云集中可信度最高的且超过阈值的候选点云集作为目标对象的点云集。
[0098]
3)从激光传感器所采集的其周围物体的所有点云中,去除目标对象对应的点云,得到不包含目标对象的激光点云。该不包括目标对象的激光点云,可以用于定位、制作高精度地图或者用于识别目标对象等,不作限定。
[0099]
应当指出,上述图9所示实施例与上述图4所示的实施例可相互参见,上述图9所示实施例中未详尽描述的内容,可参见上述图4所示实施例中的记载。通过上述方法,采用单目摄像头,只需使用ai算法识别目标对象和目标对象轮廓,无需借助多目摄像头或深度摄像头获取目标对象的精确3d位置,即可实现激光点云中的目标对象识别。
[0100]
以上结合图1至图9详细说明了本技术实施例的方法。以下结合图10和图11详细说明本技术实施例提供的装置。应理解,装置实施例的描述与方法实施例的描述相互对应。因此,未详细描述的内容可以相互参见上文方法实施例中的描述。
[0101]
图10是本技术实施例提供的装置1000的示意性框图,用于实现上述确定目标对象点云集的功能。例如,该装置可以为软件模块或芯片系统。所述芯片可以由芯片构成,也可包括芯片和其他分立器件。该装置1000包括获取单元1001和处理单元1002,获取单元1001可以与其它设备进行通信,还可称为通信接口、收发单元或者输入\输出接口等。可选的,装置1000可以是车载终端、或者配置于车载终端的芯片或电路。或者,装置1000可以是车载中央处理器,或者配置于车载中央处理器中的芯片或电路等。或者,装置1000可以是智能座舱域控制器(cockpit domain controller,cdc),或者配置于cdc中的芯片或电路等。或者,装置1000可以为探测传感器,或者配置于探测传感器中的芯片或电路等。可选的,探测传感器可以为激光传感器等。
[0102]
在一种可能的实现方案中,获取单元1001,用于执行上文方法实施例中的收发相关操作,处理单元1002,用于执行上文方法实施例中的处理相关操作。
[0103]
例如,获取单元1001,用于获取来自视觉传感器的图像数据和来自探测传感器的点云数据;处理单元1002,用于在第一坐标系中得到目标对象对应的至少一个三维3d锥形空间,所述目标对象位于所述图像数据所指示的图像中,所述第一坐标系为所述探测传感器对应的坐标系,根据所述至少一个3d锥形空间,得到多个候选点云集,以及在所述多个候选点云集中,确定所述目标对象的点云集。
[0104]
在一种可能的设计中,所述目标对象的点云集用于标识所述目标对象。
[0105]
在另一种可能的设计中,处理单元1002,还用于获取第二点云数据,所述第二点云数据为所述来自所述探测传感器的点云数据中去除所述目标对象的点云集得到的。
[0106]
可选的,所述在第一坐标系中得到目标对象对应的至少一个三维3d锥形空间,包括:在所述图像数据中识别所述目标对象和所述目标对象的轮廓;根据所述目标对象的轮廓,得到第二坐标系中的至少一个3d点集,所述第二坐标系为所述视觉传感器对应的坐标系;
[0107]
针对每个第二坐标系中的3d点集,执行以下操作:将所述3d点集由所述第二坐标系转换到所述第一坐标系;在所述第一坐标系中,针对每个3d点集进行曲线拟合并从所述第一坐标系的原点投射射线,得到所述3d锥形空间。
[0108]
示例的,所述根据所述目标对象的轮廓,得到第二坐标系中的至少一个3d点集,包括:根据所述第二坐标系的内参,将所述图像数据中目标对象的轮廓的像素坐标转换为所述第二坐标系中的一3d点集。
[0109]
可选的,处理单元1002,还用于:根据所述3d点集,得到对应于多个放大倍数的多个3d点集。
[0110]
示例的,所述将所述3d点集由所述第二坐标系转换到所述第一坐标系,包括:根据所述第二坐标系到车体坐标系的第一转换关系和所述第一坐标系到所述车体坐标系的第二转换关系,将所述3d点集由所述第二坐标系转换到所述第一坐标系。
[0111]
示例的,所述根据所述至少一个3d锥形空间,得到多个候选点云集,包括:针对每个3d锥形空间,执行以下操作:确定所述3d锥形空间中所包括的点云到第一坐标系原点的第一距离;根据对应于所述第一距离的距离系数,聚类所述3d锥形空间中的点云集,得到所述多个候选点云集。
[0112]
可选的,所述目标对象的候选点云集为所述多个候选点云集中,满足所述目标对象的条件的点云集;和/或所述目标对象的点云集可信度大于或等于第一阈值。
[0113]
本技术实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。另外,在本技术实施例中各功能单元可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0114]
请参见图11,图11为本技术实施例提供的装置1100的结构示意图,该装置1100可以为探测传感器或车辆,或者为探测传感器或车辆中的一部件,例如芯片或集成电路等。该装置1100可以包括至少一个处理器1102和通信接口1104。进一步可选的,所述装置还可以包括至少一个存储器1101。更进一步可选的,还可以包含总线1103,其中,存储器1101、处理器1102和通信接口1104通过总线1103相连。
[0115]
其中,存储器1101用于提供存储空间,存储空间中可以存储操作系统和计算机程
序等数据。存储器1101可以是随机存储记忆体(random access memory,ram)、只读存储器(read-only memory,rom)、可擦除可编程只读存储器(erasable programmable read only memory,eprom)、或便携式只读存储器(compact disc read-only memory,cd-rom)等等中的一种或者多种的组合。
[0116]
处理器1102是进行算术运算和/或逻辑运算的模块,具体可以是中央处理器(central processing unit,cpu)、图片处理器(graphics processing unit,gpu)、微处理器(microprocessor unit,mpu)、专用集成电路(application specific integrated circuit,asic)、现场可编程逻辑门阵列(field programmable gate array,fpga)、复杂可编程逻辑器件(complex programmable logic device,cpld)、协处理器(协助中央处理器完成相应处理和应用)、微控制单元(microcontroller unit,mcu)等处理模块中的一种或者多种的组合。
[0117]
通信接口1104可以用于为所述至少一个处理器提供信息输入或者输出。和/或所述通信接口可以用于接收外部发送的数据和/或向外部发送数据,可以为包括诸如以太网电缆等的有线链路接口,也可以是无线链路(wi-fi、蓝牙、通用无线传输、车载短距通信技术等)接口。可选的,通信接口1104还可以包括与接口耦合的发射器(如射频发射器、天线等),或者接收器等。
[0118]
该装置1100中的处理器1102用于读取所述存储器1101中存储的计算机程序,用于执行前述的确定目标对象点云集的方法,例如图4所示实施例所描述的确定目标对象点云集的方法。
[0119]
例如,该装置1100中的处理器1102用于读取所述存储器1101中存储的计算机程序,用于执行以下操作:
[0120]
获取来自视觉传感器的图像数据和来自探测传感器的点云数据,在第一坐标系中得到目标对象对应的至少一个三维3d锥形空间,所述目标对象位于所述图像数据所指示的图像中,所述第一坐标系为所述探测传感器对应的坐标系,根据所述至少一个3d锥形空间,得到多个候选点云集,以及在所述多个候选点云集中,确定所述目标对象的点云集。
[0121]
在一种可能的设计中,所述目标对象的点云集用于标识所述目标对象。
[0122]
在另一种可能的设计中,处理器1102还用于执行以下操作:获取第二点云数据,所述第二点云数据为所述来自所述探测传感器的点云数据中去除所述目标对象的点云集得到的。
[0123]
可选的,所述在第一坐标系中得到目标对象对应的至少一个三维3d锥形空间,包括:在所述图像数据中识别所述目标对象和所述目标对象的轮廓;根据所述目标对象的轮廓,得到第二坐标系中的至少一个3d点集,所述第二坐标系为所述视觉传感器对应的坐标系;
[0124]
针对每个第二坐标系中的3d点集,执行以下操作:将所述3d点集由所述第二坐标系转换到所述第一坐标系;在所述第一坐标系中,针对每个3d点集进行曲线拟合并从所述第一坐标系的原点投射射线,得到所述3d锥形空间。
[0125]
示例的,所述根据所述目标对象的轮廓,得到第二坐标系中的至少一个3d点集,包括:根据所述第二坐标系的内参,将所述图像数据中目标对象的轮廓的像素坐标转换为所述第二坐标系中的一3d点集。
[0126]
可选的,处理器1102还用于执行以下操作:根据所述3d点集,得到对应于多个放大倍数的多个3d点集。
[0127]
示例的,所述将所述3d点集由所述第二坐标系转换到所述第一坐标系,包括:根据所述第二坐标系到车体坐标系的第一转换关系和所述第一坐标系到所述车体坐标系的第二转换关系,将所述3d点集由所述第二坐标系转换到所述第一坐标系。
[0128]
示例的,所述根据所述至少一个3d锥形空间,得到多个候选点云集,包括:针对每个3d锥形空间,执行以下操作:确定所述3d锥形空间中所包括的点云到第一坐标系原点的第一距离;根据对应于所述第一距离的距离系数,聚类所述3d锥形空间中的点云集,得到所述多个候选点云集。
[0129]
可选的,所述目标对象的候选点云集为所述多个候选点云集中,满足所述目标对象的条件的点云集。和/或,所述目标对象的点云集可信度大于或等于第一阈值。
[0130]
本技术实施例还提供一种传感器或者融合装置,所述传感器可以为激光传感器或其它传感器,例如激光雷达等。一种设计中,该传感器或者融合装置包括至少一个控制器,所述控制器可包括上述图10或图11所述的装置。另一种设计中,该传感器或者融合装置包括上述图10或图11所示的装置,所述装置可以是独立设置的,也可以集成在传感器或者融合装置所包括的至少一个控制器等。
[0131]
本技术实施例还提供一种终端,该终端可包括上述图10或图11所述的装置,或者上述实施例提供的传感器或融合装置。可选的,该终端可以为智能运输设备(车辆或者无人机)、智能家居设备、智能制造设备或者机器人等。该智能运输设备例如可以是自动导引运输车(automated guided vehicle,agv)、或无人运输车。
[0132]
本技术实施例还提供一种系统,包括上述图10或图11所示的装置,探测传感器和视觉传感器。
[0133]
进一步的,本技术实施例还提供一种装置,包括用于实现上文方法实施例的单元。或者,包括处理器和接口电路,所述处理器用于通过所述接口电路与其它装置通信,并执行上文方法实施例中的方法。或者,所述装置包括处理器,用于调用存储器中存储的程序,以执行上文方法实施例中的方法。
[0134]
本技术实施例还提供一种可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上文方法实施例中的方法。
[0135]
本技术实施例还提供一种芯片系统,该芯片系统包括处理器,还可以包括存储器,用于实现上文方法实施例中的方法。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
[0136]
本技术实施例还提供一种计算机程序产品,包括指令,当其在计算机上运行时,使得计算机执行上文方法实施例的方法。
[0137]
在本技术实施例中,处理器可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0138]
在本技术实施例中,存储器可以是非易失性存储器,比如硬盘(hard disk drive,
hdd)或固态硬盘(solid-state drive,ssd)等,还可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,ram)。存储器是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本技术实施例中的存储器还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
[0139]
本技术实施例提供的方法中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、用户设备或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,简称dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机可以存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,数字视频光盘(digital video disc,简称dvd))、或者半导体介质(例如,ssd)等。
[0140]
显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1