一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种激光点云的语义信息标注方法及相关设备与流程

2021-11-29 14:11:00 来源:中国专利 TAG:


1.本技术涉及自动驾驶技术领域,更具体地说,是涉及一种激光点云的语义信息标注方法及相关设备。


背景技术:

2.近些年来随着人工智能技术的发展,其各个落地场景也在逐步投入使用,比如ai医疗、人脸识别支付技术、智能机器人以及自动驾驶技术。自动驾驶技术作为一项比较重要的技术,还处在技术不断迭代的测试阶段,国内外仍在持续不断地投入资源以开展相关的研发工作。
3.自动驾驶技术是一个复杂的工程体系,需要各个模块相互配合才能全方位保证驾驶的安全性,这些模块大致分为环境感知、行为决策、路径规划、行为控制四个模块。
4.其中,环境感知模块包括静态物体、动态物体、路面三个方面。针对运动物体,不仅要进行对象检测而且要跟踪其轨迹,并且基于跟踪结果预测对象的下一个位置。这点在市区道路是必不可少的,特别在交通状况混乱的城市,针对运动物体的环境感知尤为重要。当无人车运行在路上,由于行人会持续不断的经过车辆前方,如果一旦检测到前方有行人或者车辆就停车,将永远难以合理地通过所有路口。司机将根据行人的移动轨迹粗略地评估下一个位置,然后根据行人的速度计算安全空间,即路径规划过程。这一过程不仅针对单一物体,大多数情况都是多目标的检测及跟踪。无人驾驶车辆也必须能够做到这一点。
5.行为决策模块需要收集车辆的所有重要外围信息,不仅包括无人驾驶车辆本身的当前速度、方向、位置和行驶车道,还包括在无人驾驶车辆的一定距离内的障碍物信息,并且需要预测其他障碍物的轨迹。行为决策作为自动驾驶体系中一个汇集信息的模块,其需要解决的问题是,将环境感知模块的输出作为输入,并根据这些信息的知识来决定无人驾驶车辆的驾驶策略。
6.路径规划模块是基于环境感知模块提供的周围环境信息和车辆在该环境中的确定位置,根据一定的路径查找算法,找到一条较优的可通行路径,然后实现无人驾驶车辆自动导航到确定位置。根据环境感知模块感知到的周围工作环境信息的完整性,路径规划方法包括依靠于环境感知模块实时采集到的环境信息作为融合环境信息的局部路径规划方法,与依靠于全局的周边环境信息的全局路径规划方法。
7.运动控制模块则包括纵向和横向的车辆控制。横向控制即通过给定的速度,并且车辆可以通过控制行驶及转向进而沿着预定轨道移动。纵向控制是为了在车辆行驶过程中设置恰当的速度,大多时候需要水平方向控制的配合,共同达到自动驾驶车辆的平稳性、舒适性尤其是安全性,为客户提供优良的乘车体验。
8.通过以上分析可知,环境感知模型在无人驾驶的整个体系下扮演着相当关键的角色。随着道路场景越来越复杂,如果只能识别2d或者3d box,将很难较好的理解场景。获取标签数据,是构建环境感知模型中最关键的部分。因此,迫切需要针对每个点云的点粒度的语义信息。
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.图1为本技术实施例公开的激光点云的语义信息标注方法的示意图;
67.图2示例了本技术实施例公开的对非简单多边形进行拆分的示意图;
68.图3示例了本技术实施例公开的从多边形内部确定参考点的示意图;
69.图4为本技术实施例公开的激光点云的语义信息标注装置的示意图;
70.图5为本技术实施例公开的激光点云的语义信息标注设备的示意图。
具体实施方式
71.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
72.下面介绍本技术实施例提供的激光点云的语义信息标注方法。请参阅图1,本技术实施例提供的激光点云的语义信息标注方法可以包括如下步骤:
73.步骤s100,获取表征感兴趣区域的第一多边形列表。
74.具体地,获取激光点云图像中标注为感兴趣区域的至少一个第一多边形,由这些第一多边形组成第一多边形列表。
75.其中,可以通过解析rosbag文件来获取激光点云图像,对激光点云图像的标注可以通过标注工具来进行。
76.具体地,首先可以通过工具对采集到的rosbag文件进行预处理,将其切分成独立的激光雷达帧(lidar帧)以及与其对应的图像帧(image帧),并对lidar帧和image帧进行同步(sync),使得具体的image帧与其lidar帧对应上。其中,image帧是一帧一帧的图像,lidar帧是pcd文件,用于存储激光雷达的点云数据,包括点的坐标和点的强度(intensity)等信息。
77.标注员在每一帧中标注员依据点云形态、点云运动状态、图片辅助等多种信息,通
过标注工具用多边形(polygon)的形式标注出感兴趣区域(region of interest,roi),后续的标注内容可以只关注roi区域以内的范围。
78.多边形可以用点的列表表示,比如polygon1=[point1,point2,point3,point4,

,pointn],点列表集合围起来的区域即为多边形polygon1所在区域。
[0079]
步骤s200,获取表征不可行驶区域的第二多边形列表。
[0080]
具体地,获取所述激光点云图像中处于所述感兴趣区域内,且标注为不可行驶区域的至少一个第二多边形,由这些第二多边形组成第二多边形列表。
[0081]
其中,不可行驶区域可以包括各种类别的障碍物所占据的区域,例如车辆、行人、警示路障等。具体标注方法及过程与步骤s100相仿,此处不再赘述。当获取roi区域以及不可行驶区域后,从roi区域中剔除掉不可行驶区域,则剩下的就是可行驶区域。
[0082]
步骤s300,判断第一多边形列表中的第一多边形是否与第二多边形列表中的任一第二多边形存在重叠。
[0083]
具体地,对于第一多边形列表中的每个第一多边形,判断该第一多边形是否与第二多边形列表中的任意一个第二多边形存在重叠。其中,两个多边形之间的重叠可以是这两个多边形的部分区域重叠,也可以是其中一个多边形完全包含另外一个多边形。
[0084]
一方面,第一多边形列表中的某个第一多边形与第二多边形列表中的某个第二多边形存在重叠,意味着该第一多边形所在的区域(即roi区域)存在不可行驶的区域,进一步地需要将所包含的不可行驶的区域从该第一多边形中剔除。
[0085]
另一方面,第一多边形列表中的所有第一多边形与第二多边形列表中任何一个第二多边形都不存在重叠,意味着第一多边形列表中的所有第一多边形所在的区域(即roi区域)均不存在不可行驶的区域,即,此时第一多边形列表中的所有第一多边形的区域构成可行驶区域。
[0086]
因此,若第一多边形列表中存在与第二多边形重叠的第一多边形,则执行步骤s400;否则,若第一多边形列表中的所有第一多边形与第二多边形中的任意第二多边形均不存在重叠,则执行步骤s500。
[0087]
步骤s400,生成新的第一多边形替换掉第一多边形列表中存在重叠的目标第一多边形。
[0088]
具体地,针对存在重叠的目标第一多边形和目标第二多边形,根据该目标第一多边形与该目标第二多边形的差集,生成新的第一多边形,并以该新的第一多边形替换掉第一多边形列表中的该目标第一多边形。其中,该新的第一多边形与该目标第二多边形不存在重叠。然后,返回执行步骤s300。
[0089]
其中,该差集指的是从该目标第一多边形的区域中剔除掉同属于该目标第二多边形的区域,由此而得到的新的区域。
[0090]
可以理解的是,根据该目标第一多边形与该目标第二多边形的差集,而生成的新的第一多边形,可以是仅仅一个新的第一多边形,也可以是两个、或多个新的第一多边形。
[0091]
步骤s500,将最终的第一多边形列表中的各第一多边形标注为可行驶区域。
[0092]
具体地,经过步骤s300和步骤s400的处理,已经将第一多边形列表中与第二多边形列表的第二多边形存在重叠的第一多边形,全部替换成与第二多边形列表的任意第二多边形均不存在重叠的新的第一多边形。意味着,此时的第一多边形列表(最终的第一多边形
列表)中的第一多边形所在区域均不是不可行驶区域。因此,可以将最终的第一多边形列表中的各第一多边形标注为可行驶区域。
[0093]
本技术实施例的上述获取可行驶区域的过程所需的计算不复杂且计算量不大。通过本技术实施例上述的技术方案能够快速高效地实现激光点云的语义信息标注,可以一定程度上解决激光点云的标签数据量小的困境。
[0094]
在本技术的一些实施例中,前面提到的第一多边形与第二多边形均为简单多边形。基于此,上述步骤s400根据该目标第一多边形与该目标第二多边形的差集,生成新的第一多边形替换掉第一多边形列表中的该目标第一多边形的过程,可以包括:
[0095]
a1,判断该差集是否构成非简单多边形;若是,则执行a2;若否,则执行a3。
[0096]
其中,该差集可以看出是点的集合。对于该差集的判断可以依照简单多边形中的边及顶点需满足的条件来进行判断。如果该差集本身就很明显地构成简单多边形,则可以通过a3,直接生成相应的简单多边形。否则,还需要通过a2对其作进一步处理,以便将该差集拆分成简单多边形。
[0097]
a2,将该差集对应的非简单多边形拆分成至少两个新的第一多边形;将这些新的第一多边形添加至第一多边形列表中,并将该目标第一多边形从第一多边形列表中移除。
[0098]
a3,根据该差集,生成至少一个新的第一多边形;将所述新的第一多边形添加至所述第一多边形列表中,并将所述目标第一多边形从所述第一多边形列表中移除。
[0099]
可以理解的是,a2及a3中所生成的第一多边形也属于简单多边形。
[0100]
在本技术的一些实施例中,上述a2将该差集对应的非简单多边形拆分成至少两个新的第一多边形的过程,可以包括:
[0101]
b1,从目标第二多边形内部确定一个参考点。
[0102]
b2,设置一条参考直线,该参考直线通过该参考点,并与目标第一多边形和目标第二多边形相交于多个点。
[0103]
b3,从b2中的这些点中确定第一交点、第二交点、第三交点和第四交点;其中,第一交点和第二交点位于该参考点的第一侧,第三交点和第四交点位于该参考点的第二侧。可以理解的是,第一侧和第二侧相对分居参考点的两边,属于参考点的不同的侧。
[0104]
该第一交点为目标第一多边形位于第一侧的交点中距离该参考点最近的交点,该第四交点为该目标第一多边形位于第二侧的交点中距离该参考点最近的交点;该第二交点为该目标第二多边形位于第一侧的交点中距离该参考点最远的交点,该第三交点为目标第二多边形位于第二侧的交点中距离该参考点最远的交点。
[0105]
b4,以第一交点、第二交点连成的线段,以及,第三交点、第四交点连成的线段,作为分界,将所述差集对应的非简单多边形拆分成两个新的第一多边形。
[0106]
在本技术的一些实施例中,上述b2的参考直线可以为参考坐标系下平行于横轴或竖轴的直线。
[0107]
例如,请参阅图2,对于目标第一多边形abcdefgh,以及目标第二多边形a1b1c1d1e1f1g1,从目标第二多边形的内部确定参考点点o。
[0108]
以通过点o的直线l作为参考直线,直线l分别与目标第一多边形abcdefgh、目标第二多边形a1b1c1d1e1f1g1相交于多个点。
[0109]
分别以点o左侧的点m、点n作为第一交点、第二交点,分别以点o右侧的点p、点q作
为第三交点、第四交点。其中,点m为直线l与目标第一多边形abcdefgh的、位于点o左侧的交点中,距离点o最近的交点;点q为直线l与目标第一多边形abcdefgh的、位于点o右侧的交点中,距离点o最近的交点;点n为直线l与目标第二多边形a1b1c1d1e1f1g1的、位于点o左侧的交点中,距离点o最远的交点;点p为直线l与目标第二多边形a1b1c1d1e1f1g1的、位于点o右侧的交点中,距离点o最远的交点。
[0110]
以线段mn、线段pq为分界,将目标第一多边形abcdefgh与目标第二多边形a1b1c1d1e1f1g1的差集拆分成两个新的第一多边形。
[0111]
在本技术的一些实施例中,上述b4以第一交点、第二交点连成的线段,以及,第三交点、第四交点连成的线段,作为分界,将所述差集对应的非简单多边形拆分成两个新的第一多边形的过程,可以包括:
[0112]
c1,以第一交点为起点,沿着目标第一多边形的顺时针方向,拾取目标第一多边形的第一顶点,直到第四交点;以第三交点为起点,沿着目标第二多边形的逆时针方向,拾取目标第二多边形的第二顶点,直到第二交点;则将第一交点、第一顶点、第四交点、第三交点、第二顶点以及第二交点依次连接,得到一个新的第一多边形;
[0113]
c2,以第一交点为起点,沿着目标第一多边形的逆时针方向,拾取目标第一多边形的第三顶点,直到第四交点;以第三交点为起点,沿着目标第二多边形的顺时针方向,拾取目标第二多边形的第四顶点,直到第二交点;则将第一交点、第三顶点、第四交点、第三交点、第四顶点以及第二交点依次连接,得到另一个新的第一多边形。
[0114]
例如,请参阅图2,一方面,以第一交点m为起点,沿着目标第一多边形abcdefgh的顺时针方向,拾取目标第一多边形abcdefgh的第一顶点c、b、a、h、g、f,直到第四交点q;以第三交点p作为起点,沿着目标第二多边形a1b1c1d1e1f1g1的逆时针方向,拾取目标第二多边形a1b1c1d1e1f1g1的第二顶点g1、a1,直到第二交点n。则mcbahgfqp g1a1n为新的第一多边形。
[0115]
另一方面,以第一交点m为起点,沿着目标第一多边形abcdefgh的逆时针方向,拾取目标第一多边形abcdefgh的第三顶点d、e,直到第四交点q;以第三交点p作为起点,沿着目标第二多边形a1b1c1d1e1f1g1的顺时针方向,拾取目标第二多边形a1b1c1d1e1f1g1的第四顶点f1、e1、d1、c1、b1,直到第二交点n。则mdeqp f1e1d1c1b1n为另一个新的第一多边形。
[0116]
目标多边形的边数可以仅有三条(此时,目标多边形为三角形),也可以超过三条(此时,目标多边形不是三角形)。基于此,在本技术的一些实施例中,上述b1从该目标第二多边形内部确定一个参考点的过程,可以包括:
[0117]
1)当目标第二多边形为三角形时:
[0118]
确定该目标第二多边形的形心作为参考点。
[0119]
2)当目标第二多边形不是三角形时:
[0120]
d1,从该目标第二多边形的顶点中确定三个依次相邻的目标顶点,并以目标顶点为顶点生成三角形。其中,该目标第二多边形的其他顶点均在所述三角形的内部。
[0121]
d2,从该三角形位于该目标第二多边形内部的边上,确定一个点作为候选参考点。
[0122]
其中,由于该三角形是由目标第二多边形中三个依次相邻的顶点连接而成,则从这三个依次相邻的顶点中取首尾两个点所连接成的边,作为目标第二多边形内部的边。
[0123]
可以理解的是,该参考点可以是该三角形位于该目标第二多边形内部的边,除去
端点以外的任何点。
[0124]
d3,判断该候选参考点是否在该目标第二多边形的内部。若是,则将该候选参考点确定为参考点;若否,返回执行d1,直到参考点被确定。
[0125]
例如,请参阅图3,对于多边形abcd,首先从该多边形的顶点中确定三个相邻的顶点a、b、c,并以这三个相邻的顶点a、b、c为顶点,生成三角形abc。
[0126]
此时,由于多边形abcd的顶点d位于三角形abc的内部。因此从多边形abcd中重新确定三个依次相邻顶点,例如顶点b、c、d,并以重新确定的这三个依次相邻的顶点b、c、d为顶点,生成三角形bcd。
[0127]
此时,取首尾两个点b和d,从线段bd上选取一个点o作为候选参考点。由于点o在多边形abcd的内部,因此可以确定点o为参考点。
[0128]
在本技术的一些实施例中,上述d5从该三角形位于该目标第二多边形内部的边上,选取一个点,并确定该点为候选参考点的过程,可以包括:
[0129]
确定该三角形位于该目标第二多边形内部的边的中点,为候选参考点。
[0130]
在本技术的一些实施例中,上述a1判断该差集是否构成非简单多边形的过程,可以包括:
[0131]
e1,根据该差集确定至少一个多边形。
[0132]
e2,针对e1中的每一个多边形,判断该多边形是否存在以下情况:
[0133]
该多边形的一个顶点在该多边形的一条边上;
[0134]
该多边形的一条边与另外一条边相交。
[0135]
若是,则确定该差集构成非简单多边形;若否,则确定该差集没有构成非简单多边形。
[0136]
在本技术的一些实施例中,上述步骤s300判断第一多边形是否与第二多边形列表中的任意一个第二多边形存在重叠的过程,可以包括:
[0137]
针对第二多边形列表中的每一个第二多边形,通过计算该第一多边形与该第二多边形的交并比,确定该第一多边形是否与该第二多边形存在重叠。
[0138]
下面对本技术实施例提供的激光点云的语义信息标注装置进行描述,下文描述的激光点云的语义信息标注装置与上文描述的激光点云的语义信息标注方法可相互对应参照。
[0139]
请参见图4,本技术实施例提供的激光点云的语义信息标注装置,可以包括:
[0140]
感兴趣区域获取单元21,用于获取激光点云图像中标注为感兴趣区域的至少一个第一多边形,所述至少一个第一多边形组成第一多边形列表;
[0141]
不可行驶区域获取单元22,用于获取所述激光点云图像中处于所述感兴趣区域内,且标注为不可行驶区域的至少一个第二多边形,所述至少一个第二多边形组成第二多边形列表;
[0142]
区域重叠判断单元23,用于对于第一多边形列表中的每个第一多边形,判断所述第一多边形是否与第二多边形列表中的任意一个第二多边形存在重叠;
[0143]
区域处理单元24,用于针对存在重叠的目标第一多边形和目标第二多边形,根据所述第一多边形与所述第二多边形的差集,生成新的第一多边形替换掉第一多边形列表中的所述目标第一多边形,所述新的第一多边形与所述目标第二多边形不存在重叠;
[0144]
可行驶区域标注单元25,用于当第一多边形列表中的所有第一多边形与第二多边形中的任意第二多边形均不存在重叠时,将最终的第一多边形列表中的各第一多边形标注为可行驶区域。
[0145]
在本技术的一些实施例中,所述第一多边形与所述第二多边形均为简单多边形;区域处理单元24根据所述目标第一多边形与所述目标第二多边形的差集,生成新的第一多边形替换掉第一多边形列表中的所述目标第一多边形的过程,可以包括:
[0146]
判断所述差集是否构成非简单多边形;
[0147]
若是,将所述差集对应的非简单多边形拆分成至少两个新的第一多边形;将所述至少两个新的第一多边形添加至所述第一多边形列表中,并将所述目标第一多边形从所述第一多边形列表中移除;
[0148]
若否,根据所述差集,生成至少一个新的第一多边形;将所述新的第一多边形添加至所述第一多边形列表中,并将所述目标第一多边形从所述第一多边形列表中移除。
[0149]
在本技术的一些实施例中,区域处理单元24将所述差集对应的非简单多边形拆分成至少两个新的第一多边形的过程,可以包括:
[0150]
从所述目标第二多边形内部确定一个参考点;
[0151]
设置一条参考直线,所述参考直线通过所述参考点,并与所述目标第一多边形和所述目标第二多边形相交于多个点;
[0152]
从所述多个点中确定第一交点、第二交点、第三交点和第四交点;其中,第一交点和第二交点位于所述参考点的第一侧,第三交点和第四交点位于所述参考点的第二侧;所述第一交点为所述目标第一多边形位于第一侧的交点中距离所述参考点最近的交点,所述第四交点为所述目标第一多边形位于第二侧的交点中距离所述参考点最近的交点;所述第二交点为所述目标第二多边形位于第一侧的交点中距离所述参考点最远的交点,所述第三交点为所述目标第二多边形位于第二侧的交点中距离所述参考点最远的交点;
[0153]
以第一交点、第二交点连成的线段,以及,第三交点、第四交点连成的线段,作为分界,将所述差集对应的非简单多边形拆分成两个新的第一多边形。
[0154]
在本技术的一些实施例中,区域处理单元24以第一交点、第二交点连成的线段,以及第三交点、第四交点连成的线段作为分界,将所述差集对应的非简单多边形拆分成两个新的第一多边形的过程,可以包括:
[0155]
以第一交点为起点,沿着所述目标第一多边形的顺时针方向,拾取所述目标第一多边形的第一顶点,直到第四交点;以第三交点为起点,沿着所述目标第二多边形的逆时针方向,拾取所述目标第二多边形的第二顶点,直到第二交点;则将所述第一交点、第一顶点、第四交点、第三交点、第二顶点以及第二交点依次连接,得到一个所述新的第一多边形;
[0156]
以第一交点为起点,沿着所述目标第一多边形的逆时针方向,拾取所述目标第一多边形的第三顶点,直到第四交点;以第三交点为起点,沿着所述目标第二多边形的顺时针方向,拾取所述目标第二多边形的第四顶点,直到第二交点;则将所述第一交点、第三顶点、第四交点、第三交点、第四顶点以及第二交点依次连接,得到另一个所述新的第一多边形。
[0157]
在本技术的一些实施例中,区域处理单元24从所述目标第二多边形内部确定一个参考点的过程,可以包括:
[0158]
当所述目标第二多边形为三角形时:确定所述目标第二多边形的形心作为所述参
考点;
[0159]
当所述目标第二多边形不是三角形时:
[0160]
当所述目标第二多边形为三角形时:确定所述目标第二多边形的形心作为所述参考点;
[0161]
当所述目标第二多边形不是三角形时:
[0162]
从所述目标第二多边形的顶点中确定三个依次相邻的目标顶点,并以目标顶点为顶点生成三角形,所述目标第二多边形的其他顶点均在所述三角形的内部;
[0163]
从所述三角形位于所述目标第二多边形内部的边上,确定一个点作为候选参考点;
[0164]
判断所述候选参考点是否在所述目标第二多边形的内部;
[0165]
若是,则将所述候选参考点确定为所述参考点;
[0166]
若否,返回执行从所述目标第二多边形的顶点中确定三个依次相邻的目标顶点的步骤,直到所述参考点被确定。
[0167]
在本技术的一些实施例中,区域处理单元24根据所述三角形位于所述目标第二多边形内部的边,确定所述参考点的过程,可以包括:
[0168]
确定所述边的中点为所述参考点。
[0169]
在本技术的一些实施例中,区域处理单元24判断所述差集是否构成非简单多边形的过程,可以包括:
[0170]
根据所述差集确定至少一个多边形;
[0171]
针对每一个所述多边形,判断所述多边形是否存在以下情况:
[0172]
所述多边形的一个顶点在所述多边形的一条边上;
[0173]
所述多边形的一条边与另外一条边相交;
[0174]
若是,则确定所述差集构成非简单多边形。
[0175]
在本技术的一些实施例中,区域重叠判断单元23判断所述第一多边形是否与第二多边形列表中的任意一个第二多边形存在重叠的过程,包括:
[0176]
针对第二多边形列表中的每一个第二多边形,通过计算所述第一多边形与所述第二多边形的交并比,确定所述第一多边形是否与所述第二多边形存在重叠。
[0177]
本技术实施例提供的激光点云的语义信息标注装置可应用于激光点云的语义信息标注设备,如计算机等。可选的,图5示出了激光点云的语义信息标注设备的硬件结构框图,参照图5,激光点云的语义信息标注设备的硬件结构可以包括:至少一个处理器31,至少一个通信接口32,至少一个存储器33和至少一个通信总线34。
[0178]
在本技术实施例中,处理器31、通信接口32、存储器33、通信总线34的数量为至少一个,且处理器31、通信接口32、存储器33通过通信总线34完成相互间的通信;
[0179]
处理器31可能是一个中央处理器cpu,或者是特定集成电路asic(application specific integrated circuit),或者是被配置成实施本技术实施例的一个或多个集成电路等;
[0180]
存储器32可能包含高速ram存储器,也可能还包括非易失性存储器(non

volatile memory)等,例如至少一个磁盘存储器;
[0181]
其中,存储器33存储有程序,处理器31可调用存储器33存储的程序,所述程序用
于:
[0182]
获取激光点云图像中标注为感兴趣区域的至少一个第一多边形,所述至少一个第一多边形组成第一多边形列表;
[0183]
获取所述激光点云图像中处于所述感兴趣区域内,且标注为不可行驶区域的至少一个第二多边形,所述至少一个第二多边形组成第二多边形列表;
[0184]
对于第一多边形列表中的每个第一多边形,判断所述第一多边形是否与第二多边形列表中的任意一个第二多边形存在重叠;
[0185]
若是,针对存在重叠的目标第一多边形和目标第二多边形,根据所述目标第一多边形与所述目标第二多边形的差集,生成新的第一多边形替换掉第一多边形列表中的所述目标第一多边形,所述新的第一多边形与所述目标第二多边形不存在重叠;
[0186]
返回执行所述对于第一多边形列表中的每个第一多边形,判断所述第一多边形是否与第二多边形列表中的任意一个第二多边形存在重叠的步骤,直到第一多边形列表中的所有第一多边形与第二多边形中的任意第二多边形均不存在重叠时,将最终的第一多边形列表中的各第一多边形标注为可行驶区域。
[0187]
可选的,所述程序的细化功能和扩展功能可参照上文描述。
[0188]
本技术实施例还提供一种存储介质,该存储介质可存储有适于处理器执行的程序,所述程序用于:
[0189]
获取激光点云图像中标注为感兴趣区域的至少一个第一多边形,所述至少一个第一多边形组成第一多边形列表;
[0190]
获取所述激光点云图像中处于所述感兴趣区域内,且标注为不可行驶区域的至少一个第二多边形,所述至少一个第二多边形组成第二多边形列表;
[0191]
对于第一多边形列表中的每个第一多边形,判断所述第一多边形是否与第二多边形列表中的任意一个第二多边形存在重叠;
[0192]
若是,针对存在重叠的目标第一多边形和目标第二多边形,根据所述目标第一多边形与所述目标第二多边形的差集,生成新的第一多边形替换掉第一多边形列表中的所述目标第一多边形,所述新的第一多边形与所述目标第二多边形不存在重叠;
[0193]
返回执行所述对于第一多边形列表中的每个第一多边形,判断所述第一多边形是否与第二多边形列表中的任意一个第二多边形存在重叠的步骤,直到第一多边形列表中的所有第一多边形与第二多边形中的任意第二多边形均不存在重叠时,将最终的第一多边形列表中的各第一多边形标注为可行驶区域。
[0194]
可选的,所述程序的细化功能和扩展功能可参照上文描述。
[0195]
综上所述:
[0196]
本技术仅需获取激光点云图像中标注为感兴趣区域以及在所述感兴趣区域中的不可行驶区域的数据,并以多边形形式来表征所述感兴趣区域和不可行驶区域。所述感兴趣区域通常是目标行驶的道路,不可行驶区域通常是道路上的行人或其他车辆等障碍物区域或者是路面坑洼的区域等,所需要标注的工作量比较少,可以容易地获取大量的感兴趣区域和不可行驶区域的多边形数据。
[0197]
当获得以多边形形式来表征所述感兴趣区域和不可行驶区域后,以第一多边形列表来保存感兴趣区域的第一多边形,以第二多边形列表来保存不可行驶区域的第二多边
形。然后,判断第一多边形列表中的多边形是否与第二多边形列表中任意一个多边形存在重叠。对于存在重叠的目标第一多边形与目标第二多边形,根据所述第一多边形与所述第二多边形的差集,生成新的第一多边形替换掉第一多边形列表中的所述目标第一多边形。其中,所述新的第一多边形与所述目标第二多边形不存在重叠,以此保证所生成的新的第一多边形不存在不可行驶的区域。
[0198]
然后返回执行判断第一多边形列表中的多边形是否与第二多边形列表中任意一个多边形存在重叠的步骤,对于第一多边形列表中的多边形(包括原有的第一多边形以及所生成的新的第一多边形)进行一一判断,直到第一多边形列表中的所有第一多边形与第二多边形中的任意第二多边形均不存在重叠时,意味着第一多边形列表中的各第一多边形中存在不可行驶的区域部分已经全部剔除掉,此时最终的第一多边形列表中的各第一多边形表征感兴趣区域中的可行驶区域,即可将其标注为可行驶区域。
[0199]
上述获取可行驶区域的过程所需的计算不复杂且计算量不大。通过本技术的技术方案能够快速高效地实现激光点云的语义信息标注,可以一定程度上解决激光点云的标签数据量小的困境。
[0200]
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0201]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间可以根据需要进行组合,且相同相似部分互相参见即可。
[0202]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献