障碍物的轮廓分割方法、装置、存储介质和移动机器人与流程

文档序号:33628781发布日期:2023-03-28 22:08阅读:55来源:国知局
障碍物的轮廓分割方法、装置、存储介质和移动机器人与流程

1.本发明涉及障碍物轮廓识别技术领域,尤其涉及一种障碍物的轮廓分割方法、一种计算机可读存储介质、一种障碍物的轮廓分割装置和一种移动机器人。


背景技术:

2.相关技术的障碍物凸包检测方法通常使用graham扫描法直接对点云进行处理得到障碍物的凸包。
3.然而,相关技术的问题在于,如图1所示,当障碍物轮廓有弯曲时如墙角、绿化带转弯处、栅栏转弯处、障碍物粘连等,会导致障碍物凸包包含大面积非障碍物区域,影响移动机器人的正常作业。


技术实现要素:

4.本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的第一个目的在于提出一种障碍物的轮廓分割方法,能够避免识别出的障碍物凸包面积远大于障碍物实际面积,从而,提高障碍物的轮廓识别精度,确保移动机器人正常作业。
5.本发明的第二个目的在于提出一种计算机可读存储介质。
6.本发明的第三个目的在于提出一种障碍物的轮廓分割装置。
7.本发明的第四个目的在于提出一种移动机器人。
8.为达到上述目的,本发明第一方面实施例提出的障碍物的轮廓分割方法,包括:获取障碍物的点云数据,并对所述点云数据进行预处理;根据预处理后的点云数据,对障碍物的初始点云轮廓进行提取,并对所述初始点云轮廓进行轮廓凸包点检测;获取每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,并根据所述每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,对所述障碍物的初始点云轮廓进行分割。
9.根据本发明实施例的障碍物的轮廓分割方法,获取障碍物的点云数据,并对点云数据进行预处理,进而,根据预处理后的点云数据,对障碍物的初始点云轮廓进行提取,并对初始点云轮廓进行轮廓凸包点检测,以及,获取每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,并根据每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,对障碍物的初始点云轮廓进行分割。由此,避免识别出的障碍物凸包面积远大于障碍物实际面积,从而,提高障碍物的轮廓识别精度,确保移动机器人正常作业。
10.另外,根据本发明上述实施例的障碍物的轮廓分割方法,可以具有如下的附加技术特征:
11.根据本发明的一个实施例,所述对所述点云数据进行预处理,包括:依次对所述点云数据进行点云拼接、点云滤波、点云地面滤除、点云聚类和点云投影。
12.根据本发明的一个实施例,所述对障碍物的初始点云轮廓进行提取,包括:从所述预处理后点云数据中选取初始点云轮廓基准点;根据所述初始点云轮廓基准点,获取多个轮廓点云;根据所述多个轮廓点云,提取所述障碍物的初始点云轮廓。
13.根据本发明的一个实施例,所述对所述初始点云轮廓进行轮廓凸包点检测,包括:通过向量叉乘的方式依次对所述多个轮廓点云中的每个轮廓点云进行轮廓凸包点检测,以获取每个轮廓点云对应的点云类型,其中,所述点云类型包括轮廓凸包点和非凸包轮廓点。
14.根据本发明的一个实施例,所述对所述障碍物的初始点云轮廓进行分割,包括:根据所述每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,确定第一分割轮廓点;过第一分割轮廓点作与对应轮廓凸包点之间的连线的垂线将所述障碍物分割为第一区域和第二区域,其中,所述第一区域包括位于所述垂线一侧的第一轮廓点,所述第二区域包括位于所述垂线另一侧的第二轮廓点;分别获取所述第一轮廓点和所述第二轮廓点至所述垂线的距离,并根据所述距离确定第二分割轮廓点;连接所述第一分割轮廓点和所述第二分割轮廓点,以将所述障碍物的初始点云轮廓分割为第一点云轮廓区域和第二点云轮廓区域。
15.根据本发明的一个实施例,所述方法还包括:若所述每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离均小于预设距离阈值,则维持所述障碍物的初始点云轮廓。
16.根据本发明的一个实施例,所述方法还包括:根据所述第一点云轮廓区域和所述第二点云轮廓区域控制移动机器人进行作业,或者,根据所述障碍物的初始点云轮廓控制移动机器人进行作业。
17.为达到上述目的,本发明第二方面提出的计算机可读存储介质,其上存储有障碍物的轮廓分割程序,该障碍物的轮廓分割程序被处理器执行时实现上述本发明实施例的障碍物的轮廓分割方法。
18.根据本发明实施例的计算机可读存储介质,通过处理器执行其上存储有的障碍物的轮廓分割程序,能够避免识别出的障碍物凸包面积远大于障碍物实际面积,从而,提高障碍物的轮廓识别精度,确保移动机器人正常作业。
19.为达到上述目的,本发明第三方面提出的障碍物的轮廓分割装置,包括:第一获取模块,用于获取障碍物的点云数据,并对所述点云数据进行预处理;第二获取模块,用于根据预处理后的点云数据,对障碍物的初始点云轮廓进行提取,并对所述初始点云轮廓进行轮廓凸包点检测;轮廓分割模块,用于获取每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,并根据所述每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,对所述障碍物的点云轮廓进行分割。
20.根据本发明实施例的障碍物的轮廓分割装置,通过第一获取模块获取障碍物的点云数据,并对点云数据进行预处理,进而,通过第二获取模块根据预处理后的点云数据,对障碍物的初始点云轮廓进行提取,并对初始点云轮廓进行轮廓凸包点检测,以及,通过轮廓分割模块获取每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,并根据每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,对障碍物的点云轮廓进行分割。由此,避免识别出的障碍物凸包面积远大于障碍物实际面积,从而,提高障碍物的轮廓识别精度,确保移动机器人正常作业。
21.为达到上述目的,本发明第四方面实施例提出的移动机器人,包括如上述本发明实施例的障碍物的轮廓分割装置。
22.根据本发明实施例的移动机器人,通过采用上述障碍物的轮廓分割装置,能够避
免识别出的障碍物凸包面积远大于障碍物实际面积,从而,提高障碍物的轮廓识别精度,确保移动机器人正常作业。
23.本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
24.图1是根据现有技术提取的障碍物的轮廓示意图;
25.图2是根据本发明实施例的障碍物的轮廓分割方法的流程示意图;
26.图3是根据本发明一个具体实施例的轮廓凸包点和非轮廓凸包点的示意图;
27.图4是根据本发明一个具体实施例的获取轮廓点云的原理示意图;
28.图5是根据本发明一个具体实施例的获取轮廓点云的原理示意图;
29.图6是根据本发明一个具体实施例的非轮廓凸包点与点云轮廓之间距离计算的原理示意图;
30.图7是根据本发明一个实施例的障碍物的轮廓分割方法的流程示意图;
31.图8是根据本发明一个具体实施例的障碍物的轮廓分割前的原理示意图;
32.图9是根据本发明一个具体实施例的障碍物的轮廓分割后的原理示意图;
33.图10是根据本发明实施例的障碍物的轮廓分割装置的方框示意图;
34.图11是根据本发明实施例的移动机器人的方框示意图。
具体实施方式
35.下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
36.下面参考附图描述本发明实施例的障碍物的轮廓分割方法、计算机可读存储介质、障碍物的轮廓分割装置和移动机器人。
37.图2是根据本发明实施例的障碍物的轮廓分割方法的流程示意图。
38.具体地,在本发明的一些实施例中,如图2所示,障碍物的轮廓分割方法,包括:
39.s101,获取障碍物的点云数据,并对点云数据进行预处理。
40.可以理解的是,在本发明的该实施例中,可以通过采集不同的激光雷达向障碍物发射探测信号,进而将激光雷达返回的点云数据作为障碍物的点云数据,并可以对点云数据进行预处理,从而,便于进行障碍物的轮廓提取与分割。
41.具体地,在本发明的一些实施例中,对点云数据进行预处理,包括:依次对点云数据进行点云拼接、点云滤波、点云地面滤除、点云聚类和点云投影。
42.可以理解的是,在本发明的该实施例中,点云拼接为获取不同激光雷达坐标系之间的坐标变换关系,以将不同激光雷达坐标系下的点云数据转换至同一坐标系下、点云滤波为根据预设检测范围对点云数据进行直通滤波,以去除预设检测范围外的点云数据、点云地面滤除为使用ransac平面拟合方法得到点云数据的平面合集,并根据地面相对于激光雷达的初始位置选择地面平面,以及对地面平面上的点进行滤除,以得到离散的障碍物点云数据、点云聚类为使用欧式聚类算法,以得到对应不同障碍物的点云数据,点云投影为将
聚类后的点云数据分别投影到移动机器人的坐标系xoy平面,以得到障碍物的平面点云数据。
43.s102,根据预处理后的点云数据,对障碍物的初始点云轮廓进行提取,并对初始点云轮廓进行轮廓凸包点检测。
44.可以理解的是,在本发明的该实施例中,可以利用预处理后的点云数据实现对障碍物的初始点云轮廓的提取,进而,对初始点云轮廓进行轮廓凸包点检测。
45.s103,获取每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,并根据每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,对障碍物的初始点云轮廓进行分割。
46.具体而言,以图3为例,可以看出,p1(x1,y1)和p2(x2,y2)为轮廓凸包点p0(x0,y0)和轮廓凸包点p3(x3,y3)之间的非凸包轮廓点,那么,非凸包轮廓点p1与对应轮廓凸包点之间的连线的垂直距离,即点云p1到对应的轮廓凸包点云p0和p3之间的连线p0p3的垂直距离:
[0047][0048]
由此,基于上述公式可以依次得到非凸包轮廓点p1与对应轮廓凸包点之间的连线p0p3的垂直距离d1,同理可得,非凸包轮廓点p2与对应轮廓凸包点之间的连线p0p3的垂直距离d2。
[0049]
可以理解的是,在本发明的该实施例中,在对初始点云轮廓进行轮廓凸包点检测之后,可以识别出多个轮廓凸包点和多个非凸包轮廓点,进而可以根据每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,判断障碍物凸包面积是否大于障碍物实际面积,例如,当存在非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离大于预设距离阈值时,可以判断出障碍物的凸包面积大于障碍物的实际面积,此时,需要对障碍物的初始点云轮廓进行分割,从而,提高障碍物的轮廓识别精度,确保移动机器人正常作业。
[0050]
进一步地,在本发明的一些实施例中,对障碍物的初始点云轮廓进行提取,包括:从预处理后点云数据中选取初始点云轮廓基准点,并根据初始点云轮廓基准点,获取多个轮廓点云,以及,根据多个轮廓点云,提取障碍物的初始点云轮廓。
[0051]
下面结合附图3至5与本发明的具体实施例,对本发明实施例中提取障碍物的点云轮廓的具体过程进行相应的说明:
[0052]
具体而言,在本发明的该实施例中,以图4所示的点云数据进行初始点云轮廓提取,选取点云数据中位于最左侧的点(该点为坐标x值最小点,若存在多个x值相同的点,则取坐标y值最大点)作为点云轮廓基准点p0(x0,y0),此时,以o0(x0-α,y0)为圆心,α为半径画圆,并以点p0为轴心,逆时针方向旋转圆o0,由图可见,当圆心旋转至o1位置时,出现点p1落在圆上,将p0p1连线作为轮廓边界线,继续以p1为轴心,旋转圆o1,使点p2落在圆上,以此类推,直至重新旋转至点云轮廓基准点p0,由此,逆时针依次提取出如图5所示的多个轮廓点云p0、p1、p2、p3、p4、p5、p6、p7和p8,保存顺序为[p0p1 p2 p3 p4 p5 p6 p7 p8],并根据多个轮廓点云提取出如图3所示的障碍物的初始点云轮廓。
[0053]
需要说明的是,α的取值可以根据实际轮廓提取精度需求进行相应的设定,α的取值越小,则根据点云轮廓基准点获取得到的轮廓点云越多,提出的障碍物的初始点云轮廓
越精细,反之,α的取值越大,则根据点云轮廓基准点获取得到的轮廓点云越少,提出的障碍物的初始点云轮廓越平滑。
[0054]
进一步地,在本发明的一些实施例中,对初始点云轮廓进行轮廓凸包点检测,包括:通过向量叉乘的方式依次对多个轮廓点云中的每个轮廓点云进行轮廓凸包点检测,以获取每个轮廓点云对应的点云类型,其中,点云类型包括轮廓凸包点和非凸包轮廓点。
[0055]
下面结合继续附图3与本发明的具体实施例,对本发明实施例中获取多个轮廓凸包点和多个非凸包轮廓点的具体过程进行相应的说明:
[0056]
具体而言,在本发明的该实施例中,为便于理解,对图3所示的点云轮廓进行轮廓凸包检测,以[p0 p1 p2 p3 p4 p5 p6 p7 p8]为例,取第一轮廓点p0、第二轮廓点p1和第三轮廓点p2,并将第一轮廓点p0压入栈中,然后,将第一向量p0p1和第二向量p1p2进行叉乘,得到叉乘结果此时,求得s
012
小于0,即第一向量p0p1至第二向量p1p2为顺时针方向旋转,因此,点云p1为非凸包轮廓点,进而继续取点云p3,并将向量p0p2和向量p2p3进行叉乘,此时,求得叉乘结果小于0,即向量p0p2至p2p3为顺时针方向旋转,因此,点云p2点为非凸包轮廓点,进而继续取点云p4,并将向量p0p3和向量p3p4进行叉乘,此时,求得叉乘结果大于0,即向量p0p3至p3p4为逆时针方向旋转,因此,可以将点云p3作为临时凸点,并将点云p3压入栈中,进而继续取点云p5,并将向量p3p4和p4p5进行叉乘,此时,求得叉乘结果大于0,即向量p0p3和向量p3p4为逆时针方向旋转,因此,可以将点云p4作为临时凸点,并将点云p4压入栈中,反之,若求得叉乘结果小于0,则进一步判断向量p0p3和向量p3p5的叉乘结果,此时,若求得叉乘结果小于0,则将p3从栈中取出,进而继续取点云p6,依次完成多个轮廓点云的轮廓凸包检测,从而得到每个轮廓点云对应的点云类型,其中,点云类型包括轮廓凸包点和非凸包轮廓点,其中,栈中的点云为轮廓凸包点,如图3所示,轮廓凸包点为[p0 p3 p4 p5 p6 p7 p8]。
[0057]
进一步地,在本发明的一些实施例中,如图7所示,对障碍物的初始点云轮廓进行分割,包括:
[0058]
s201,根据每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,确定第一分割轮廓点。
[0059]
具体地,在本发明的该实施例中,可以通过获取每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,以将与对应轮廓凸包点之间的连线的垂直距离最大的非凸包轮廓点作为第一分割轮廓点。
[0060]
s202,过第一分割轮廓点作与对应轮廓凸包点之间的连线的垂线将障碍物分割为第一区域和第二区域,其中,第一区域包括位于垂线一侧的第一轮廓点,第二区域包括位于垂线另一侧的第二轮廓点。
[0061]
具体地,在本发明的该实施例中,可以过第一分割轮廓点作与对应轮廓凸包点之间的连线的垂线,进而将障碍物分割为第一区域和第二区域,并基于第一区域和第二区域分别确定出位于垂线一侧的第一轮廓点和位于垂线另一侧的第二轮廓点。
[0062]
s203,分别获取第一轮廓点和第二轮廓点至垂线的距离,并根据距离确定第二分割轮廓点。
[0063]
可以理解的是,在本发明的该实施例中,在确定出位于垂线一侧的第一轮廓点和位于垂线另一侧的第二轮廓点之后,可以分别获取第一轮廓点和第二轮廓点至垂线的距
离,并将距离垂线更近的轮廓点作为第二分割轮廓点,从而,使分割后的两个点云轮廓区域可以相近似。
[0064]
s203,连接第一分割轮廓点和第二分割轮廓点,以将障碍物的初始点云轮廓分割为第一点云轮廓区域和第二点云轮廓区域。
[0065]
具体地,在本发明的该实施例中,可以通过第一分割轮廓点和第二分割轮廓点之间的连线,以将障碍物的初始点云轮廓分割为第一点云轮廓区域和第二点云轮廓区域,从而便于移动机器人根据第一点云轮廓区域和第二点云轮廓区域确定障碍物面积,并进行路径规划。
[0066]
下面结合附图8至9与本发明的具体实施例,对本发明实施例中对障碍物的初始点云轮廓进行分割的具体过程进行相应的说明:
[0067]
具体而言,假设对如图1所示的障碍物依次进行障碍物的初始点云轮廓提取、轮廓凸包点检测和非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离计算后,得到如图8所示的结果,其中,pk和ps为相邻的两个轮廓凸包点,pm为两个轮廓凸包点之间的多个轮廓点中与pk和ps连线之间的直线距离最大的非凸包轮廓点,距离为dmax,垂足为d,此时,作直线l过点d和第一分割轮廓点pm,该垂线与初始点云轮廓的一侧相交于第一分割轮廓点pm,与初始点云轮廓的另一侧相交于第二分割轮廓点pj和第三分割轮廓点pj+1所在的直线。
[0068]
其中,点云pj和pj+1的提取过程为:通过点pm将轮廓点[p0 p1 p2

pn]分割为q1=[p0 p1 p2

pm-1]和q2=[pm+1pm+1pm+2

pn]两个部分,并按顺序在q1和q2中取连续两点,例如,在q1中取点p0和p1,并判断p0和p1点是否在向量dpm两侧,此时,可以计算向量dp0与向量dpm的叉乘s0:
[0069][0070]
计算向量dp1与向量dpm的叉乘s1:
[0071][0072]
其中,当s0大于0时,可以判断出点p0在向量dpm左侧,当s0小于0时,可以判断点p0在向量dpm右侧,以及,当s0等于0时,可以判断点p0在向量dpm上,因此,当s0
·
s1≤0时,可以判断出点p0和p1分别在向量dpm的两侧,或者有一个点在向量dpm之上,此时,可以将点p0和p1作为所求点pj和pj+1,反之,若s0
·
s1>0,则继续判断点p1和p2,直至满足上述条件的点pj和pj+1。
[0073]
假设pj点在q2上,那么,q2可以被分割为q3=[pm+1pm+1pm+2

pj]和q4=[pjpj+1pj+2

pn],对q4和q1进行拼接后可以得到两个新的部分轮廓点:q1’=q4+q1+pm=[pjpj+1pj+2

pnp0 p1 p2

pm-1pm]和q2’=pm+q3=[pm pm+1pm+1pm+2

pj],进而,对新的轮廓点q1’和q2’分别进行轮廓凸包点检测,并判断每个非凸包轮廓点与初始点云轮廓的距离,如果存在非凸包轮廓点pi到初始点云轮廓的距离dmax大于预设距离阈值(该预设距离阈值可以根据实际情况进行相应的标定)dt时,继续对轮廓点进行分割,直到所有非凸包轮廓点到初始点云轮廓的距离dmax均小于预设距离阈值dt,实现如图9所示的障碍物的初始点云轮廓分割,此时,障碍物凸包面积分别为由[plpk pm pj pj+1]构成的面积和[pmpjptps]构成的面积。
[0074]
可以看出,基于本发明的障碍物的轮廓分割方法识别出的障碍物凸包面积(如图9
所示)相对于现有技术识别出的障碍物凸包面积(如图1所示)而言,更接近障碍物实际面积,从而,提高障碍物的轮廓识别精度,确保移动机器人正常作业。
[0075]
进一步地,在本发明的一些实施例中,方法还包括:若每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离均小于预设距离阈值,则维持障碍物的初始点云轮廓。
[0076]
可以理解的是,如果每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离均小于预设距离阈值,那么,可以认为识别出的障碍物凸包面积与障碍物实际面积相近似,此时,无需对障碍物的初始点云轮廓进行分割,可以继续维持障碍物的初始点云轮廓。
[0077]
进一步地,在本发明的一些实施例中,方法还包括:根据第一点云轮廓区域和第二点云轮廓区域控制移动机器人进行作业,或者,根据障碍物的初始点云轮廓控制移动机器人进行作业。
[0078]
可以理解的是,在本发明的该实施例中,在将障碍物的初始点云轮廓分割为第一点云轮廓区域和第二点云轮廓区域后,可以基于第一点云轮廓区域和第二点云轮廓区域确定出障碍物的实际面积,以控制移动机器人针对障碍物的实际面积进行作业,或者,在确定维持障碍物的初始点云轮廓之后,还基于障碍物的初始点云轮廓确定出障碍物的实际面积,以控制移动机器人针对障碍物的实际面积进行作业,从而,优化移动机器人的移动路径,提升移动机器人的作业效率。
[0079]
综上,根据本发明实施例的障碍物的轮廓分割方法,获取障碍物的点云数据,并对点云数据进行预处理,进而,根据预处理后的点云数据,对障碍物的初始点云轮廓进行提取,并对初始点云轮廓进行轮廓凸包点检测,以及,获取每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,并根据每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,对障碍物的初始点云轮廓进行分割。由此,避免识别出的障碍物凸包面积远大于障碍物实际面积,从而,提高障碍物的轮廓识别精度,确保移动机器人正常作业。
[0080]
基于前述本发明实施例的计算机可读存储介质,本发明实施例提出了一种计算机可读存储介质,其上存储有障碍物的轮廓分割程序,该障碍物的轮廓分割程序被处理器执行时实现前述本发明实施例的障碍物的轮廓分割方法。
[0081]
需要说明的是,本发明实施例的计算机可读存储介质的具体实施方式可以参见前述本发明实施例的障碍物的轮廓分割方法的具体实施方式,为减少冗余,在此不再赘述。
[0082]
综上,根据本发明实施例的计算机可读存储介质,通过处理器执行其上存储有的障碍物的轮廓分割程序,能够避免识别出的障碍物凸包面积远大于障碍物实际面积,从而,提高障碍物的轮廓识别精度,确保移动机器人正常作业。
[0083]
图10是根据本发明实施例的障碍物的轮廓分割装置的方框示意图。
[0084]
具体地,在本发明的一些实施例中,如图10所示,障碍物的轮廓分割装置100包括:第一获取模块10、第二获取模块20和轮廓分割模块30。
[0085]
其中,第一获取模块10用于获取障碍物的点云数据,并对点云数据进行预处理;第二获取模块20用于根据预处理后的点云数据,对障碍物的初始点云轮廓进行提取,并对初始点云轮廓进行轮廓凸包点检测;轮廓分割模块30用于获取每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,并根据每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,对障碍物的点云轮廓进行分割。
[0086]
进一步地,第一获取模块10具体用于,依次对点云数据进行点云拼接、点云滤波、
点云地面滤除、点云聚类和点云投影。
[0087]
进一步地,第二获取模块20具体用于,从预处理后点云数据中选取初始点云轮廓基准点;根据初始点云轮廓基准点,获取多个轮廓点云;根据多个轮廓点云,提取障碍物的初始点云轮廓。
[0088]
进一步地,第二获取模块20还用于,通过向量叉乘的方式依次对多个轮廓点云中的每个轮廓点云进行轮廓凸包点检测,以获取每个轮廓点云对应的点云类型,其中,点云类型包括轮廓凸包点和非凸包轮廓点。
[0089]
进一步地,轮廓分割模块30具体用于,对障碍物的初始点云轮廓进行分割,包括:根据每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,确定第一分割轮廓点;过第一分割轮廓点作与对应轮廓凸包点之间的连线的垂线将障碍物分割为第一区域和第二区域,其中,第一区域包括位于垂线一侧的第一轮廓点,第二区域包括位于垂线另一侧的第二轮廓点;分别获取第一轮廓点和第二轮廓点至垂线的距离,并根据距离确定第二分割轮廓点;连接第一分割轮廓点和第二分割轮廓点,以将障碍物的初始点云轮廓分割为第一点云轮廓区域和第二点云轮廓区域。
[0090]
进一步地,轮廓分割模块30还用于,若每个非凸包轮廓点与点云轮廓的距离均小于预设距离阈值,则维持障碍物的初始点云轮廓。
[0091]
进一步地,轮廓分割模块30还用于,根据第一点云轮廓区域和第二点云轮廓区域控制移动机器人进行作业,或者,根据障碍物的初始点云轮廓控制移动机器人进行作业。
[0092]
需要说明的是,本发明实施例的障碍物的轮廓分割装置100的具体实施方式与前述本发明实施例的障碍物的轮廓分割方法的具体实施方式一一对应,为减少冗余,在此不再赘述。
[0093]
综上,根据本发明实施例的障碍物的轮廓分割装置,通过第一获取模块获取障碍物的点云数据,并对点云数据进行预处理,进而,通过第二获取模块根据预处理后的点云数据,对障碍物的初始点云轮廓进行提取,并对初始点云轮廓进行轮廓凸包点检测,以及,通过轮廓分割模块获取每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,并根据每个非凸包轮廓点与对应轮廓凸包点之间的连线的垂直距离,对障碍物的点云轮廓进行分割。由此,避免识别出的障碍物凸包面积远大于障碍物实际面积,从而,提高障碍物的轮廓识别精度,确保移动机器人正常作业。
[0094]
图11是根据本发明实施例的移动机器人的方框示意图。
[0095]
具体地,在本发明的一些实施例中,如图11所示,移动机器人1000包括上述本发明实施例的障碍物的轮廓分割装置100。
[0096]
需要说明的是,本发明实施例的移动机器人的具体实施方式可以参见前述本发明实施例的障碍物的轮廓分割方法的具体实施方式,另外,本发明实施例的移动机器人的其他构成及作用对本领域的技术人员来说是已知的,为减少冗余,此处不做赘述。
[0097]
综上,根据本发明实施例的移动机器人,通过采用上述障碍物的轮廓分割装置,能够避免识别出的障碍物凸包面积远大于障碍物实际面积,从而,提高障碍物的轮廓识别精度,确保移动机器人正常作业。
[0098]
需要说明的是,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可
读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
[0099]
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0100]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
[0101]
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
[0102]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
[0103]
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
[0104]
在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示
第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
[0105]
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1