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

障碍物的识别方法、设备及存储介质与流程

2022-07-10 07:30:29 来源:中国专利 TAG:


1.本技术属于智能机器人技术领域,尤其涉及一种障碍物的识别方法及设备。


背景技术:

2.当前在自移动设备的移动过程中,为了保证自移动设备能够顺利的移动,需要对自移动设备周围的障碍物进行准确的识别,以防止自移动设备与障碍物发生碰撞。
3.然而在相关技术中,在自移动设备对障碍物进行识别时,对高度较低的障碍物,即低矮障碍物的识别率准确率较低,使得自移动设备容易与低矮障碍物发生碰撞,同时,容易将较矮的斜坡误认为障碍物,识别斜坡的准确率较低,从而导致自移动设备的工作效率较低。


技术实现要素:

4.本技术实施例提供了一种识别障碍物的方法、设备及存储介质,以解决自移动设备在进行识别障碍物时,无法准确识别低矮的障碍物以导致工作效率低的问题。
5.第一方面,本实施例提供了一种识别障碍物的方法,包括:获取目标区域中的目标点云数据,所述目标点云数据不包括地面点云数据;对所述目标点云数据进行拟合聚类处理,以得到待确认障碍物点云数据;获取所述待确认障碍物点云数据所处平面的第一颜色信息;获取所述待确认障碍物点云数据所处区域的第二颜色信息;当所述第二颜色信息与所述第一颜色信息不匹配时,确认所述待确认障碍物点云数据为障碍物点云数据。
6.第二方面,本技术实施例提供了一种识别障碍物的装置,该装置用于执行上述第一方面或第一方面的任一可能的实现方式中的方法。具体地,该装置可以包括用于执行第一方面或第一方面的任一可能的实现方式中识别障碍物的方法的模块。
7.第三方面,本技术实施例提供了一种设备,该设备包括存储器与处理器。该存储器用于存储指令;该处理器执行该存储器存储的指令,使得该设备执行第一方面或第一方面的任一可能的实现方式中识别障碍物的方法。
8.第四方面,提供一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当该指令在计算机上执行时,使得计算机执行第一方面或第一方面的任一可能的实现方式中识别障碍物的方法。
9.第五方面,提供一种包含指令的计算机程序产品,当该指令在设备上运行时,使得设备执行第一方面或第一方面的任一可能的实现方式中识别障碍物的方法。
10.本技术实施例中,由于低矮障碍物的点云数据集中分布在一定的区域空间内,通过对排除地面点云数据干扰的目标点云数据进行聚类拟合,通过过滤无关的地面点云数据前提下,聚类拟合不仅有利于提高待确认障碍物点云数据的集中程度,而且减少待确认障碍物点云数据的丢失。同时,结合颜色信息进一步识别待确认障碍物点云数据是否为障碍物,大大降低了低矮障碍物的漏检和错检的概率,提高了障碍物的识别准确率,使得自移动设备精准避障,减少了与低矮障碍物的碰撞次数,从而提高了自移动设备的工作效率。
附图说明
11.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
12.图1是本技术实施例提供的障碍物的识别方法的流程示意图;
13.图2是本技术实施例提供的待确认障碍物点云数据所处平面的示意图;
14.图3是本技术实施例提供的待确认障碍物点云数据所处区域的示意图;
15.图4是本技术实施例提供的得到目标点云数据的方法的流程示意图;
16.图5是本技术实施例提供的得到待确认障碍物点云数据的方法的流程示意图;
17.图6是本技术实施例提供的拟合平面的示意图;
18.图7是本技术另一实施例提供的拟合平面的示意图;
19.图8是本技术实施例提供的对第二点云数据进行聚类处理的方法的流程示意图;
20.图9是本技术实施例提供的识别障碍物的装置900的结构示意图;
21.图10是本技术实施例提供的设备1000的结构示意图。
具体实施方式
22.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
23.以自移动设备为割草机器人为例,当割草机器人在包含草坡的草坪上移动进行割草作业时,由于割草机器人在进行障碍物识别时,无法准确的识别草坪上高度较低的石头,使得割草机器人与石头发生碰撞,导致割草机器人无法继续进行割草作业,从而降低工作效率。或,以自移动设备为无人驾驶车辆为例,当无人驾驶车辆在路上行驶的过程中,无法准确的识别路上的低矮障碍物,导致无人驾驶车辆与障碍物发生碰撞,无法正常行驶。
24.由此可见,亟需一种识别障碍物的方法,使得自移动设备可以准备的识别高度较低的障碍物,从而提高自移动设备的工作效率。
25.本技术实施例提供的方法可以由第一设备执行,也可以由第一设备中的芯片执行,该第一设备可以是非自移动设备,例如服务器,电子设备(比如,手机),也可以是自移动设备,比如自移动设备可以是机器人(比如割草机器人、扫地机器人、排雷机器人、巡航机器人等),也可以是智能汽车等。在第一设备为非自移动设备外的设备时,该第一设备可以和自移动设备互相通信,比如,手机上可以安装有与该自移动设备对应的应用程序(application,app),用户可以在手机中操作该app,以触发手机和自移动设备建立通信连接。在第一设备为服务器时,用户可以在与该自移动设备通信的手机的app中触发自移动设备向服务器上报目标区域的深度图像和/或rgb图像以使得服务器执行本技术实施例提供的识别障碍物的方法。或者该自移动设备中具有第一控件,用户触发该第一控件,以触发自移动设备向服务器上报由自移动设备采集的目标区域的深度图像和/或rgb图像以使得服务器执行本技术实施例提供的识别障碍物的方法。
26.下面结合图1对本技术的实施例提供的识别障碍物的方法进行详细的介绍。
27.s101、第一设备获取目标区域中的目标点云数据,其中,目标点云数据不包括地面点云数据。
28.在一些实施例中,第一设备可以通过搭载在自移动设备上的深度相机获取自移动设备所在当前位置的深度图像,则可以将深度图像中除地面区域以外的区域确定为目标区域,在这种情况下,第一设备可以根据采集得到的深度图像,确定目标区域中的目标点云数据,其中目标点云数据不包括地面点云数据。
29.可选的,第一设备也可以通过搭载在自移动设备上的深度相机、激光扫描仪或激光雷达等其他仪器获取对应的深度图像,深度图像包括点云数据。
30.s102、第一设备对目标点云数据进行拟合聚类处理,以得到待确认障碍物点云数据。
31.其中待确认障碍物点云数据不包括目标点云数据中能够直接确定为障碍物的点云数据以及目标点云数据中能够直接确定为非障碍物的点云数据。
32.具体的,拟合聚类处理包括拟合处理以及聚类处理,其中拟合处理为拟合平面处理,目的是为了确定目标区域中是否包括斜坡。当存在斜坡时,将目标点云数据移除斜坡对应的点云数据,并对其剩下的点云数据进行聚类处理以获取到一个或多个待确认障碍物点云数据;当不存在斜坡时,对目标点云数据进行聚类处理得到多个待确认障碍物点云数据。
33.s103、第一设备获取待确认障碍物点云数据所处平面的第一颜色信息。
34.在一些实施例中,第一颜色信息为从待确认障碍物所处平面的一种或多种颜色信息中所确定的面积占比最大的颜色信息。
35.例如,如图2所示,当待确认障碍物点云数据201所处的平面为平面202时,第一颜色信息为平面202的一种或多种颜色信息中,颜色的面积占比最大的颜色信息。
36.s104、第一设备获取待确认障碍物点云数据所处区域的第二颜色信息。
37.在一些实施例中,第二颜色信息为待确认障碍物点云数据所处区域的一种或多种颜色信息中面积占比最大的颜色信息。
38.如图3所示,当待确认障碍物点云数据所处区域为区域301时,第二颜色信息为区域301的一种或多种颜色信息中,颜色的面积占比最大的颜色信息。
39.s105、当第二颜色信息与第一颜色信息不匹配时,第一设备确定待确认障碍物点云数据为障碍物点云数据。
40.在一些实施例中,当第一颜色信息与第二颜色信息的色差值大于预设的色差阈值时,则可以认为第二颜色信息与第一颜色信息不匹配。
41.应理解,本技术通过获取目标区域中,不包括地面点云数据的目标点云数据,并对目标点云数据进行拟合聚类处理,得到待确认障碍物点云数据,并通过对比待确认障碍物所在平面的第一颜色信息与障碍物所在区域的第二颜色信息,当第二颜色信息与第一颜色信息不匹配时,确定待确认障碍物点云数据为障碍物点云数据。可以看到,当目标区域中存在低矮的障碍物时,待确认障碍物点云数据所在区域内,颜色面积占比最大的为障碍物主要的颜色,即第一颜色信息,待确认障碍物点云数据所在平面内,颜色面积占比最大的颜色为障碍物所在平面主要的颜色,即,第二颜色信息。由于障碍物的颜色与障碍物所在平面的颜色之间会存在一定差别,因此,第二颜色信息与第一颜色信息不匹配。自移动设备可以根
据第一颜色信息与第二颜色信息,准确的识别出障碍物点云数据,使得自移动设备可以准确的识别出低矮的障碍物,进行精准避障,从而有效提高了自移动设备的工作效率。
42.在本技术的一个可能的实现方式中,上述s101可以通过图4中的s1到s4实现:
43.s1、第一设备获取原始点云数据,原始点云数据为基于自移动设备的坐标系下的点云数据。
44.在一些实施例中,原始点云数据为自移动设备采集到的深度图像中的所有物体在自移动设备坐标系下的点云数据。
45.例如,目标区域中包括草坪、草坡、石头、树木,则原始点云数据包括地面点云数据、草坡对应的点云数据、石头对应的点云数据、树木对应的点云数据。
46.在一些实施例中,自移动设备也可以通过深度相机,或激光扫描仪、或激光雷达等其他可以获取点云数据的仪器获取原始点云数据。
47.示例性的,在使用深度相机获取点云数据时,将深度图像中的每一个图像像素点的坐标、图像像素点的深度值以及相机对应的内部参数进行计算,以得到深度图像中的每个图像像素点在相机坐标系下的点云数据,具体可以按照公式(1)到公式(4)得到:。
[0048][0049][0050]
zc=d公式(3)
[0051]
pc=(xc,yc,zc)公式(4)
[0052]
其中,(u,v)表示图像坐标系下深度图像中的一个图像像素点的像素坐标;d为该图像像素点的深度值;l
x
,ly,f
x
以及fy均为相机对应的内部参数;pc表示深度图像中的一个图像像素点在相机坐标系下的点云数据坐标。
[0053]
进一步地,根据公式(5)将相机坐标系下每一个点云数据进行转换,以得到在自移动设备的坐标系下的原始点云数据:
[0054]
pr=r
rc
×
pc t
rc
公式(5)
[0055]
其中,pr表示在自移动设备的坐标系下的原始点云数据的坐标;r
rc
表示相机坐标系到自移动设备的坐标系下的旋转参数;t
rc
表示相机坐标系到自移动设备的坐标系下的平移参数;旋转参数和平移参数可通过实际测量获取。
[0056]
通过上述公式(1)至公式(5)可以获取到深度图像中的每一个图像像素点在自移动设备坐标系下的坐标。
[0057]
应理解,自移动设备的坐标系以自移动设备前进的方向为x轴的正方向,以自移动设备前进方向的逆时针90度的方向为y轴的正方向,以垂直于自移动设备所在平面,向上的方向为z轴的正方向。
[0058]
s2、第一设备获取原始点云数据中的各点对应的法向量,以及法向量与坐标系上的预设坐标轴之间的第一夹角。
[0059]
应理解,点云数据的法向量为在当前点云数据与周围至少两个点云数据拟合得到的平面上,该点云数据相对于该平面对应的法向量。其中,预设坐标为可以为自移动设备坐标系上横轴(x轴)、纵轴(y轴)或者竖轴(z轴)。
[0060]
应理解,法向量与自移动设备坐标系上的预设坐标轴之间的第一夹角为法向量与自移动设备坐标系中的z轴的正方向之间的夹角。
[0061]
s3、当原始点云数据中的点的第一夹角小于第一夹角阈值,并且所述点的高度小于预设的高度阈值时,第一设备将对应的点所属的点云数据作为地面点云数据。
[0062]
在一些实施例中,第一夹角阈值可以根据用户的设定进行确定。
[0063]
应理解,由于在实际情况中,地面对应的所有点云数据的法向量与自移动设备的坐标系的z轴的夹角并不是全部等于零,因此可以将第一夹角阈值设定为一个较小的值。
[0064]
在一些实施例中,预设的高度阈值可以根据自移动设备的移动装置的尺寸确定。
[0065]
例如,以自移动设备的移动装置为轮子为例进行说明,若轮子的直径为5厘米,则预设的高度阈值可以为5厘米。
[0066]
在一个可能的实现方式中,可以设置预设的高度阈值为5厘米,预设的第一夹角阈值为5度,则可以将原始点云数据中,在自移动设备的坐标系下的z轴的分量小于5厘米,且点云数据的法向量与坐标系中的z轴的夹角小于或等于5
°
的点所属的点云数据确定为地面点云数据。
[0067]
应理解,若目标区域中包括与地面平行的障碍物,例如目标区域中包括桌子,在这种情况下,仅根据原始点云数据中的点的第一夹角进行判断,会将桌子也确定为地面点云数据,或,若目标区域中包括高度较低的障碍物,例如目标区域中包括钉子,在这种情况下,仅根据点云数据中的点的高度,会将钉子也确定为地面点云数据,因此,可以将原始点云数据中的点的第一夹角小于第一夹角阈值,并且该点的高度小于预设的高度阈值的点所属的点云数据确定为地面点云数据,以提高识别的准确度。
[0068]
s4、第一设备从原始点云数据中移除地面点云数据,以得到目标点云数据。
[0069]
应理解,由于地面不是障碍物,且地面点云数据在后续拟合聚类的过程中会对拟合聚类的过程造成干扰。因此在对障碍物识别的过程中,无需对地面点云数据进行拟合聚类处理,在这种情况下,第一设备可以从原始点云数据中移除地面点云数据,以得到目标点云数据。
[0070]
在进行拟合处理时,地面点云数据会对拟合平面的过程造成干扰,因此通过从原始点云数据中移除地面点云数据,可以有效降低地面点云数据对障碍物识别的干扰,从而提高获取的待确认障碍物点云数据的准确率,同时,减少了无关的地面点云数据的计算量,从而提高了拟合处理的效率,进而提高了待确认障碍物点云数据的识别效率。
[0071]
在本技术的一个可能的实现方式中,上述s102可以包括图5中的s5到s8的具体实现:
[0072]
s5、第一设备对目标点云数据进行平面拟合。
[0073]
示例性的,在对目标点云数据进行平面拟合时,可以通过随机抽样一致(randomsampleconsensus,ransac)算法对目标点云数据进行平面拟合。
[0074]
应理解,本实施例以ransac算法为例,对目标点云数据进行拟合,在实际使用过程中,对平面拟合的算法不做限定,例如可以使用最小二乘法对目标点云数据进行平面拟合,或使用灰度值插值算法对目标点云数据进行平面拟合。
[0075]
s7、当目标点云数据经过拟合得到拟合平面时,第一设备根据拟合平面确定位于拟合平面上的第一点云数据以及拟合平面相对于与自移动设备的坐标系上的预设坐标轴
的第二夹角。
[0076]
示例性的,可以将拟合过程中与拟合的平面之间的最短距离小于内点距离阈值的点云数据称为内点数据,则在对目标点云数据经过拟合处理时,若内点数据的数量大于预设的内点阈值,可以认为目标点云数据经过拟合,得到了拟合平面,其中拟合平面的内点的数量大于预设的内点阈值。
[0077]
应理解,若目标区域中包括斜坡,则目标点云数据包括目标区域中,除地面点云数据以外的其他点云数据。例如,目标点云数据包括斜坡的点云数据、地面上的障碍物的点云数据,和/或,斜坡上的障碍物的点云数据。
[0078]
由于斜坡在目标区域中的体积较大,因此斜坡的点云数据的数量较多,且斜坡的点云数据绝大部分都位于同一个平面,而在对点云数据进行拟合的过程中,拟合的原则是使得拟合平面上有尽可能多的内点,因此对目标点云数据进行平面拟合之后,可以将得到的拟合平面认为是斜坡的平面,将拟合平面上的第一点云数据认为是斜坡的点云数据。
[0079]
例如,设置内点阈值为目标点云数据的数量的百分之八十,即,拟合平面的内点数量大于目标点云数据的数量的百分之八十时,该拟合平面确定为目标区域中的斜坡。若目标区域如图6所示,目标区域中包括斜坡601,且目标区域中包括地面上的一棵树,即为障碍物602、斜坡上的一块石头,即为障碍物603,此时目标点云数据包括斜坡601对应的点云数据、障碍物602对应的点云数据、障碍物603对应的点云数据,且目标点云数据的数量为31000个,斜坡601对应的点云数据的数量对应为25990个,障碍物602、障碍物603总共的点云数据对应的数量为4010个,此时对目标点云数据使用ransac算法进行平面的拟合,得到的拟合平面604对应的点云数据为斜坡601对应的点云数据,且拟合平面对应的内点的数量为目标点云数据的83.3%。因此,可以看到,若拟合过程中的内点的数量大于或等于内点阈值,则可以得到拟合平面,也即,目标区域中包括斜坡,且可以将拟合平面认为是斜坡的平面。
[0080]
可选的,内点阈值可以根据目标点云数据的数量确定,例如,内点阈值可以是目标点云数据的数量的百分之八十。
[0081]
在得到拟合平面之后,可以根据拟合平面,确定位于拟合平面上的第一点云数据以及拟合平面相对于与自移动设备的坐标系上的预设坐标轴的第二夹角。
[0082]
应理解,第二夹角为拟合平面与自移动设备的坐标系中的z轴之间的夹角,第二夹角可以用来描述拟合平面与自移动设备所处平面之间的夹角,进一步的,第二夹角也可以用来描述目标区域中的斜坡的坡度。
[0083]
在得到了第二夹角之后,可以根据第二夹角与第二夹角阈值之间的关系,进行s8或者s9的操作。
[0084]
s8、在第二夹角大于或等于第二夹角阈值时,第一设备将第一点云数据确定为障碍物点云数据。
[0085]
在一些实施例中,第二夹角大于或等于第二夹角阈值时,也即斜坡的坡度大于或等于第二夹角阈值时,第一设备将该斜坡的点云数据确定为障碍物的点云数据,从而将该斜坡确定为障碍物,可以对该障碍物进行避障处理。
[0086]
例如,设置第二夹角阈值为45度,当斜坡的坡度大于45度时,即斜坡对应的拟合平面与自移动设备的坐标系中的z轴之间的夹角大于45度时,由于自移动设备无法通过坡度
大于或等于45度的斜坡,因此将斜坡视为障碍物,需要进行避障措施,在这种情况下,第一设备将第一点云数据确定为障碍物点云数据。
[0087]
s9、在第二夹角小于第二夹角阈值时,第一设备将目标点云数据移除第一点云数据,以得到第二点云数据;
[0088]
在一些实施例中,在第二夹角小于第二夹角阈值时,也即斜坡的坡度小于第二夹角阈值时,将该斜坡确定为可通过的斜坡,换句话说,也即拟合平面点云数据不是障碍物点云数据。在这种情况下,移除目标点云数据中的拟合平面上的第一点云,得到第二点云数据。
[0089]
例如,设置第二夹角阈值为45度,则当斜坡的坡度小于45度时,斜坡对应的拟合平面与自移动设备的坐标系中的z轴之间的夹角小于45度,由于自移动设备可以顺利通过坡度小于45度的斜坡,因此该斜坡不是障碍物。在这种情况下,移除目标点云数据中的拟合平面上的第一点云,得到第二点云数据。
[0090]
s10、对第二点云数据进行聚类处理以得到待确认障碍物点云数据。
[0091]
在得到第二点云数据之后,对第二点云数据进行聚类处理,以得到待确认障碍物点云数据,具体的聚类处理过程由图8中的s11到s14实现。
[0092]
基于上述技术方案,由于机器人爬坡时受最大斜坡角度影响,当遇到前方对象超过最大斜坡角度时机器人通常执行避障处理。因此,当通过平面拟合确定目标区域为斜坡,且斜坡的第二夹角大于或等于第二夹角阈值时,该斜坡的斜坡角度超过了最大斜坡角度,因此机器人无法通过该斜坡,此时将该斜坡识别为障碍物。反之,当斜坡的第二夹角小于第二夹角阈值时,机器人可以通过该斜坡,此时将该拟合平面的点云数据视为非障碍物点云数据。通过目标点云数据移除拟合平面的点云数据,可以得到更加准确的待确认障碍物点云数据,解决了自移动设备容易将可以通过的斜坡误识别为障碍物,导致自移动设备出现误判断,使得工作效率较低的技术问题,达到可以准确的只将机器人无法通过的斜坡识别为障碍物,从而提高自移动设备的工作效率的技术效果。
[0093]
在本技术的一个可能的实施例中,在s5之后,本技术实施例提供的方法还包括图5中的s6:在未拟合得到平面时,第一设备将目标点云数据作为第二点云数据,并对第二点云数据进行聚类处理以得到待确认障碍物点云数据。
[0094]
应理解,拟合过程中,当内点的数量大于预设的内点阈值,才会拟合得到平面。在这种情况下,若目标区域中不包括斜坡,则目标点云数据为目标区域中除地面点云数据以外的其他一个或多个障碍物的点云数据,由于该一个或多个障碍物中的障碍物的各自高度一般不同,且一个或多个障碍物中的障碍物的分布无固定的规律,因此目标点云的分布在自移动设备的坐标系下较为分散,此时对目标点云数据进行平面的拟合,由于拟合过程中的拟合平面的内点无法大于或等于预设的内点阈值,则无法得到拟合平面。
[0095]
例如,设置内点阈值为目标点云数据的数量的百分之八十,即,拟合过程中的内点小于目标点云数据的数量的百分之八十时,无法拟合得到平面,则,目标区域中不包括斜坡。若目标区域如图7所示,目标区域中不包括斜坡,包括地面701,且目标区域中包括5个障碍物,分别为障碍物702、障碍物703、障碍物704、障碍物705、障碍物706,此时目标点云数据包括障碍物702对应的点云数据的数量为1030,障碍物703对应的点云数据的数量为890、障碍物704对应的点云数据的数量为2305、障碍物705对应的点云数据的数量为760、障碍物
706对应的点云数据的数量为861,目标点云数据的数量为6000。此时对目标点云使用ransac算法进行平面的拟合,得到的内点的数量的最大值为目标点云数据的30.2%,此时无法拟合得到平面。因此,可以看到,若拟合平面的过程中的内点的数量小于内点阈值,则无法拟合得到平面,进一步的,可以确定目标区域不包括斜坡。
[0096]
基于上述技术方案,在未拟合得到平面时,说明目标区域中不包括斜坡,因此不存在斜坡点云数据对聚类处理造成干扰的情况,在这种情况下,可以直接将目标点云数据作为第二点云数据,并对第二点云数据进行聚类处理,得到的待确认障碍物点云数据中包括所有障碍物点云数据,不会存在漏识别的现象,有效提高了识别障碍物的准确度。
[0097]
在本技术的一个可能的实施例中,s10中的对第二点云数据进行聚类处理以得到待确认障碍物点云数据,具体可以通过图8中的s11到s14实现:
[0098]
s11、第一设备对第二点云数据进行聚类处理,以得到不同的聚类群。
[0099]
在一些实施例中,对第二点云数据进行聚类处理之后,会得到一个或多个不同的聚类群,其中,聚类群为根据预设的障碍物类别进行聚类得到的多个点云数据,不同的聚类群中包括的点云数据的点的数量不同。
[0100]
具体的,在对第二点云数据进行聚类处理时,本技术对第二点云数据进行聚类处理的算法不做限定。例如,可以使用k均值聚类算法、高斯混合模型算法、期望最大化算法等算法对第二点云数据进行聚类处理。
[0101]
s12、第一设备根据每个聚类群对应的点云数据的点的数量,从各聚类群中确定可疑障碍物聚类群。
[0102]
应理解,若目标区域中存在障碍物,则障碍物的聚类群对应的点云数据的点的数量会超过一定的阈值,因此将聚类群中对应的点云数据的点的数量超过阈值的聚类群确定为可疑障碍物聚类群。
[0103]
在确定出可疑障碍物聚类群之后,确定聚类群距离最近的平面的高度,可以包括s13或s14:
[0104]
s13、在可疑障碍物聚类群距离最近的平面的高度超过第三高度阈值时,第一设备将可疑障碍物聚类群对应的点云数据标定为障碍物的点云数据。
[0105]
可选的,当可疑障碍物聚类群所在的平面为地面时,可疑障碍物聚类群距离最近的平面的高度为可疑障碍物聚类群中的点云数据的点到地面之间的距离,当可疑障碍物聚类群所在的平面为斜坡时,可疑障碍物聚类群距离最近的平面的高度为可疑障碍物聚类群中的点云数据的点到斜坡之间的距离。
[0106]
例如,设置第三高度阈值为20厘米,则当可疑障碍物聚类群中的点云数据中的点距离最近的平面的高度超过20厘米时,将其可疑障碍物聚类对应的点云数据标定为障碍物的点云数据。
[0107]
可选的,在确定可疑障碍物聚类群距离最近的平面的高度时,在目标区域中包括斜坡时,可以通过方式1进行确定:
[0108]
方式1可以是:在目标区域中包括斜坡时,分别计算可疑障碍物聚类群距离地面的距离以及可疑障碍物聚类群距离斜坡平面的距离,将其中较小的距离值确定为可疑障碍物聚类群距离最近的平面的高度。
[0109]
例如,可疑障碍物距离地面的距离为3米,可以障碍物距离斜坡平面的距离为50厘
米,则可疑障碍物聚类群距离最近的平面的高度为50厘米。
[0110]
可选的,在确定可疑障碍物聚类群距离最近的平面的高度时,在目标区域中不包括斜坡时,可以通过方式2进行确定:
[0111]
方式2可以是:在目标区域中不包括斜坡时,将可疑障碍物聚类群距离地面的距离确定为可疑障碍物聚类群距离最近的平面的高度。
[0112]
具体的,当自移动设备位于地面上时,在确定可疑障碍物聚类群距离地面的距离时,可以通过方式3至方式7中的任意一种方式确定:
[0113]
方式3可以是:根据可疑障碍物聚类群中的多个点云数据在自移动设备的自移动设备的坐标系下的坐标,确定可疑障碍物聚类群的中心点的坐标,再根据该中心点的坐标,确定该可疑障碍物聚类群距离地面的距离,将该中心点到地面的最短距离确定为可疑障碍物聚类群距离地面的距离。
[0114]
应理解,在确定可以障碍物聚类群的中心点的坐标时,可以求取所有聚类群中的点云数据的坐标的平均值,以作为聚类群的中心点的坐标。
[0115]
例如,可疑障碍物聚类群中包括10个点云数据,该10个点云数据在自移动设备的坐标下的坐标分别为(13,54,23)、(15,56,44)、(13,51,37)、(16,53,22)、(14,54,34)、(16,52,71)、(17,53,41)、(19,55,35)、(12,49,29)、(18,53,49),则中心点的坐标为(15.3,53,38.5),其中,自移动设备的坐标系下的一个单位对应的长度是1厘米,则可疑障碍物聚类群距离地面的距离为38.5厘米。
[0116]
方式4可以是:根据可疑障碍物聚类群中的多个点云数据在自移动设备的坐标系下的坐标,确定可疑障碍物聚类群的点云数据中,高度最高的点云数据,再根据该点云数据对应的坐标,将该点云数据的点到地面的最短距离确定为可疑障碍物聚类群距离地面的距离。
[0117]
例如,第一目标对象中包括10个点云数据,该10个点云数据在自移动设备的坐标系下的坐标分别为(13,54,23)、(15,56,44)、(13,51,37)、(16,53,22)、(14,54,34)、(16,52,71)、(17,53,41)、(19,55,35)、(12,49,29)、(18,53,49),则点云数据中,高度最高的点所属的点云数据对应的坐标为(16,52,71),其中,自移动设备的坐标系下的一个单位对应的长度是1厘米,则可疑障碍物聚类群距离地面的距离为71厘米。
[0118]
方式5可以是:根据可疑障碍物聚类群中的多个点云数据在自移动设备的坐标系下的高度,确定多个分量的平均值,并将该平均值确定为可疑障碍物聚类群距离地面的距离。
[0119]
例如,可疑障碍物聚类群中包括10个点云数据,该10个点云数据的点在自移动设备的坐标系下的高度,即在自移动设备的坐标系下的z轴分量分别是:23、44、37、22、34、71、41、35、29、49,则多个分量的平均值为38.5,其中,自移动设备的坐标系下的一个单位对应的长度是1厘米,则可疑障碍物聚类群距离地面的距离为38.5厘米。
[0120]
方式6可以是:根据第一目标对象中的多个点云数据在自移动设备的坐标系下的高度,确定多个分量中的最大值,并将该最大值确定为可疑障碍物聚类群距离地面的距离。
[0121]
例如,第一目标对象中包括10个点云数据,该10个点云数据的点在自移动设备的坐标系下的高度,即在自移动设备的坐标系下的z轴分量分别是:23、44、37、22、34、71、41、35、29、49,则多个分量的最大值为71,其中,自移动设备的坐标系下的一个单位对应的长度
是1厘米,则可疑障碍物聚类群距离地面的距离为71厘米。
[0122]
方式7可以是:根据可疑障碍物聚类群中的多个点云数据在自移动设备的坐标系下的高度,即点云数据在自移动设备的坐标系下的z轴的分量,确定多个分量的中位数的值,并将该中位数的值确定为可疑障碍物聚类群距离地面的距离。
[0123]
例如,可疑障碍物聚类群中包括10个点云数据,该10个点云数据在自移动设备的坐标系下的z轴分量分别是:23、44、37、22、34、71、41、35、29、49,则中位数为36,其中,自移动设备的坐标系下的一个单位对应的长度是1厘米,则可疑障碍物聚类群距离地面的距离为36厘米。
[0124]
s14、在可疑障碍物聚类群距离最近的平面的高度小于第三高度阈值时,第一设备将可疑障碍物聚类群对应的点云数据确定为待确认障碍物点云数据。
[0125]
基于上述技术方案,在确定出可疑障碍物聚类群之后,根据可疑障碍物聚类群距离最近地平面的高度,将高度大于或等于第三高度阈值的可疑障碍物聚类群对应的点云数据直接确认障碍物点云数据,仅将高度小于第三高度阈值的可疑障碍物聚类群对应的点云数据确定为待确认点云数据,并对待确认点云数据进行结合颜色信息做进一步的分析与识别,可以减小识别障碍物点云数据时需要的计算量,同时通过将高度大于第三高度阈值的可疑障碍物确认为障碍物点云数据的技术手段,提高了识别障碍物的准确度。
[0126]
应理解,确定可疑障碍物聚类群距离最近的平面的高度可以参考上述方法进行确定,为了简洁,这里不再赘述。
[0127]
在本技术的一个可能的实施例中,s103具体可以通过以下方式实现:
[0128]
可选的,自移动设备上搭载有相机,用于获取待确认障碍物点云数据对应区域所处平面的图像信息,并将自移动设备上搭载的相机拍摄得到的图像信息发送至第一设备,使得第一设备获取待确认障碍物点云数据对应区域所处平面的图像信息。
[0129]
示例性的,第一设备在获取到图像信息之后,可以对图像信息进行颜色提取,获取到多个颜色信息,并从多个信息中筛选出主颜色信息作为第一颜色信息。
[0130]
可选的,图像信息可以是rgb图像。
[0131]
示例性的,在对图像信息进行颜色提取,获取到多个颜色信息,并从多个信息中筛选出主颜色信息作为第一颜色信息时,可以通过以下步骤确定第一颜色信息:
[0132]
例如,使用k均值聚类算法对目标区域的图像信息进行第一颜色的提取,提取前设置好提取的终止条件以及最大的迭代次数,以及聚类中心的选取方式,使用k均值聚类对图像信息处理之后,得到多个聚类群,其中多个聚类群分别对应多个颜色信息,在获得多个颜色信息之后,可以将多个聚类群中,最大的聚类群的聚类中心的点所属的点云的颜色筛选为主颜色信息,并将主颜色信息确定为第一颜色信息。
[0133]
例如,终止条件可以是在下一次聚类时重新分配给不同聚类的点云数据的点的数量低于3个,或,在下一次聚类时低于2个聚类群的聚类中心发生变化。
[0134]
应理解,此处仅以k均值聚类确定第一颜色信息为例进行说明,在实际应用中,对提取图像中的颜色使用到的算法不作限定,可以是任意一种可以用来提取图像中的颜色的算法,例如深度学习算法、中位切分法等。
[0135]
可选的,第一颜色信息可以是该区域包括的颜色的色号或颜色的变化规律。
[0136]
基于上述技术方案,由于待确认障碍物点云数据对应区域所处平面的图像信息中
可能包含了多种颜色,即存在干扰的颜色信息,因此通过从多个颜色信息中筛选出主颜色信息作为第一颜色信息可以有效减少干扰,从而提高对障碍物的识别准确度。
[0137]
在本技术的一个可能的实施例中,s104具体可以通过以下步骤实现:
[0138]
在获取到待确认障碍物之后,根据待确认障碍物对应的聚类群中的点云数据,在对应的rgb图中找到待确认障碍物对应的聚类群对应的区域,将该区域的颜色信息确定为第二颜色信息。
[0139]
可选的,第二颜色信息可以是该区域包括的颜色的色号或颜色的变化规律。
[0140]
在本技术的一个可能的实施例中,s105具体可以通过以下步骤实现:
[0141]
计算第二颜色信息与第一颜色信息的色差值,当色差值大于预设的色差阈值时,将待确认障碍物点云数据作为障碍物点云数据。
[0142]
示例性的,在计算第二颜色信息与第一颜色信息的色差值时,可以将图像转换为hvs颜色空间(hue saturation value,hvs)或lab颜色空间(lab color space,lab)的模式,从而计算第二颜色信息与第一颜色信息的色差值。
[0143]
应理解,由于第一颜色信息表示待确认障碍物点云数据所处平面的颜色信息,第二颜色信息表示待确认障碍物点云数据所处区域的颜色信息,由于障碍物的点云数据的颜色信息很大概率与障碍物所处平面点云数据的颜色信息存在一定的色差,因此可以通过计算第二颜色信息与第一颜色信息之间的色差值,当色差值大于预设的色差阈值时,将待确认障碍物点云数据作为障碍物点云数据。
[0144]
例如,自移动设备在草坪上进行除草作业,一个灰色的石头在草坪上,则可以得到灰色的石头对应的点云数据为待确认障碍物点云数据,石头的点云数据所处的平面为草坪,石头的点云数据所处的区域为石头。在这种情况下,第一颜色信息为绿色,第二颜色信息为灰色,由于灰色与绿色之间的色差超过预设的色差阈值,则可以将灰色的石头的点云数据作为障碍物点云数据,从而准确的识别出障碍物。
[0145]
通过计算第二颜色信息与第一颜色信息之间的色差值,并当色差值大于预设的色差阈值时,将待确认障碍物点云数据作为障碍物点云数据的技术手段,可以准确的识别出低矮的障碍物,且当可通过的斜坡的颜色与地面颜色相同时,避免将斜坡识别为障碍物,有效提高了识别障碍物的准确性。
[0146]
在一些实施例中,第一颜色信息也可以是待确认障碍物点云数据所处平面的颜色的变化规律,第二颜色信息可以是待确认点云数据所处区域的颜色变化规律,在这种情况下,若待确认障碍物点云数据所处平面的颜色的变化规律以及待确认点云数据所处区域的颜色变化规律之间的相似度高于某一阈值时,认为第二颜色信息与第一颜色信息之间的色差低于某一阈值,在这种情况下,可以认为待确认障碍物不是障碍物。
[0147]
在本技术的一些实施例中,在确定出可疑障碍物聚类群之后,可以先根据可疑障碍物聚类群距离最近的平面的高度,确定出待确认障碍物点云数据,再根据待确认点云数据所处平面的第一颜色信息与待确认点云数据所处区域的第二颜色信息,将第二颜色信息与第一颜色信息不匹配的待确认障碍物点云数据确认为障碍物点云数据。
[0148]
在本技术的另一些实施例中,在确定出可疑障碍物聚类群之后,也可以先根据可疑障碍物聚类群所处平面的颜色信息与可疑障碍物聚类群所处区域的颜色信息,将可疑障碍物聚类群所处平面的颜色信息与可疑障碍物聚类群所处区域的颜色信息不匹配的可疑
障碍物聚类群确定为待确认障碍物点云数据,再根据待确定点云数据距离最近的平面的高度,将高度大于预设的第三高度阈值的待确认障碍物点云数据确认为障碍物点云数据。
[0149]
图9为本技术实施例提供的识别障碍物装置900的示意性框图,包括获取单元901、处理单元902、确认单元903。
[0150]
其中获取单元901,用于获取目标区域中的目标点云数据,所述目标点云数据不包括地面点云数据。
[0151]
处理单元902,用于对所述目标点云数据进行拟合聚类处理,以得到待确认障碍物点云数据。
[0152]
获取单元901,还用于获取所述待确认障碍物点云数据所处平面的第一颜色信息。
[0153]
获取单元901,还用于获取所述待确认障碍物点云数据所处区域的第二颜色信息。
[0154]
确认单元903,用于当所述第二颜色信息与所述第一颜色信息不匹配时,确认所述待确认障碍物点云数据为障碍物点云数据。
[0155]
可选的,获取单元901,还用于获取原始点云数据,所述原始点云数据为基于自移动设备的坐标系下的点云数据。
[0156]
可选的,获取单元901,还用于获取原始点云数据中的各点对应的法向量,以及所述法向量与所述坐标系上的预设坐标轴之间的第一夹角。
[0157]
可选的,确认单元903,还用于当所述原始点云数据中的点的第一夹角小于第一夹角阈值,并且所述点的高度小于预设的第三高度阈值时,将对应的点所属的点云数据作为地面点云数据。
[0158]
可选的,处理单元902,还用于从所述原始点云数据中移除所述地面点云数据,以得到目标点云数据。
[0159]
可选的,处理单元902,还用于当所述目标点云数据经过拟合得到拟合平面时,根据拟合平面确定位于拟合平面上的第一点云数据以及所述拟合平面相对于与所述自移动设备的坐标系上的预设坐标轴的第二夹角。
[0160]
可选的,确认单元903,还用于在所述第二夹角大于或等于第二夹角阈值时,将所述第一点云数据确定为障碍物的点云数据。
[0161]
可选的,处理单元902,还用于在所述第二夹角小于第二夹角阈值时,将所述目标点云数据移除所述第一点云数据,以得到第二点云数据。
[0162]
可选的,处理单元902,还用于对所述第二点云数据进行聚类处理以得到待确认障碍物点云数据。可选的,确认单元903,还用于在未拟合得到平面时,将所述目标点云数据作为所述第二点云数据。
[0163]
可选的,确认单元903,还用于在对所述第二点云数据进行聚类处理,以得到不同的聚类群,其中,所述聚类群为根据预设的障碍物类别进行聚类得到的多个点云数据。
[0164]
可选的,确认单元903,还用于在根据每个所述聚类群对应的点云数据的点的数量,从各聚类群中确定可疑障碍物聚类群。
[0165]
可选的,确认单元903,还用于在所述可疑障碍物聚类群距离最近的平面的高度超过第三高度阈值时,将所述可疑障碍物聚类群对应的点云数据标定为障碍物的点云数据。
[0166]
可选的,确认单元903,还用于在所述可疑障碍物聚类群距离最近的平面的高度小于所述第三高度阈值时,将所述可疑障碍物聚类群对应的点云数据确定为待确认障碍物点
云数据。
[0167]
可选的,所述方法还包括计算单元,用于计算所述第二颜色信息与第一颜色信息的色差值。
[0168]
可选的,确认单元903,还用于当所述色差值大于预设的色差阈值时,将所述待确认障碍物点云数据作为障碍物点云数据。
[0169]
可选的,获取单元901,还用于获取待确认障碍物点云数据对应区域所处平面的图像信息。
[0170]
可选的,处理单元902,还用于对所述图像信息进行颜色提取,以得到多个颜色信息。
[0171]
可选的,确认单元903,还用于从所述多个颜色信息中筛选出主颜色信息作为第一颜色信息。
[0172]
可选的,获取单元901,还用于获取自移动设备的激光雷达点云数据。
[0173]
可选的,处理单元902,还用于将所述激光雷达点云数转换至所述自移动机设备的坐标系下,以获取所述原始点云数据。
[0174]
应理解的是,本技术实施例的装置900可以通过专用集成电路(application-specific integrated circuit,asic)实现,或可编程逻辑器件(programmable logic device,pld)实现,上述pld可以是复杂程序逻辑器件(complex programmable logical device,cpld),现场可编程门阵列(field-programmable gate array,fpga),通用阵列逻辑(generic array logic,gal)或其任意组合。也可以通过软件实现图1所示的识别障碍物的方法,当通过软件实现图1所示的识别障碍物的方法时,装置900及其各个模块也可以为软件模块。
[0175]
图10为本技术实施例提供的一种设备的结构示意图。如图10所示,其中设备1000包括处理器1001、存储器1002、通信接口1003和总线1004。其中,处理器1001、存储器1002、通信接口1003通过总线1004进行通信,也可以通过无线传输等其他手段实现通信。该存储器1002用于存储指令,该处理器1001用于执行该存储器1002存储的指令。该存储器1002存储程序代码10021,且处理器1001可以调用存储器1002中存储的程序代码10021执行图1所示的识别障碍物的方法。
[0176]
应理解,在本技术实施例中,处理器1001可以是cpu,处理器1001还可以是其他通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。
[0177]
该存储器1002可以包括只读存储器和随机存取存储器,并向处理器1001提供指令和数据。存储器1002还可以包括非易失性随机存取存储器。该存储器1002可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(random access memory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(static ram,sram)、动态随机存取存储器(dram)、同步
动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data date sdram,ddr sdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synchlink dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,dr ram)。
[0178]
该总线1004除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图10中将各种总线都标为总线1004。
[0179]
应理解,根据本技术实施例的设备1000可对应于本技术实施例中的装置900,并可以对应于本技术实施例图1所示方法中的第一设备,当设备1000对应于图1所示方法中的第一设备时,设备1000中的各个模块的上述和其它操作和/或功能分别为了实现图1中的由第一设备执行的方法的操作步骤,为了简洁,在此不再赘述。
[0180]
本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
[0181]
本技术实施例提供了一种计算机程序产品,当计算机程序产品在自移动设备上运行时,使得自移动设备执行时实现可实现上述各个方法实施例中的步骤。
[0182]
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
再多了解一些

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

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

相关文献