CN110956161B - 一种自主建图方法、装置及智能机器人 - Google Patents
一种自主建图方法、装置及智能机器人 Download PDFInfo
- Publication number
- CN110956161B CN110956161B CN201911303195.6A CN201911303195A CN110956161B CN 110956161 B CN110956161 B CN 110956161B CN 201911303195 A CN201911303195 A CN 201911303195A CN 110956161 B CN110956161 B CN 110956161B
- Authority
- CN
- China
- Prior art keywords
- intelligent robot
- grid map
- detectable
- nodes
- detectable boundary
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 49
- 238000013507 mapping Methods 0.000 title claims description 27
- 238000001514 detection method Methods 0.000 claims description 103
- 238000004422 calculation algorithm Methods 0.000 claims description 33
- 238000010586 diagram Methods 0.000 claims description 23
- 230000008859 change Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 10
- 238000011161 development Methods 0.000 claims description 9
- 230000004888 barrier function Effects 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 7
- 230000005484 gravity Effects 0.000 claims description 7
- 238000000605 extraction Methods 0.000 claims description 4
- 238000010276 construction Methods 0.000 abstract description 5
- 230000001360 synchronised effect Effects 0.000 abstract description 3
- 230000018109 developmental process Effects 0.000 description 7
- 230000011218 segmentation Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
- G06V10/267—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本发明实施例涉及同步定位与建图技术领域,公开了一种自主建图方法,该方法首先获取所述智能机器人当前所探测得到的栅格地图,并提取该栅格地图的可探测边界和障碍物信息,接着,结合所述可探测边界和所述障碍物信息,通过空间分割算法分割所述栅格地图,从分割的栅格地图中确定探测目标点,最后,控制所述智能机器人移动至所述探测目标点对未知区域进行探索,扩充所述栅格地图,执行本发明实施例提供的自主建图方法的智能机器人能够自主建图,不需要人工操作,节省人力。
Description
技术领域
本发明实施例涉及同步定位与建图技术领域,特别涉及一种自主建图方法、装置及智能机器人。
背景技术
随着同步定位与建图技术的发展,机器人越来越智能化,机器人在各行各业中的应用也越来越广泛,而随着智能时代到来,目前出现了一种室内机器人,能够绘制室内地图,具备导航功能。
在实现本发明实施例过程中,发明人发现以上相关技术中至少存在如下问题:目前的室内导航机器人,在前期绘制室内地图时,通常是由人工遥控机器人扫描所在工作空间,利用测距的传感器进行室内地图的绘制,虽然这个建图的过程只需要进行一次,但是必要的人工操作带来的结果就是需要专业的技术人员事先知道完整的地图或者室内空间结构,其耗费的人力成本也较高。
发明内容
针对现有技术的上述缺陷,本发明实施例的目的是提供一种能够自主工作的自主建图方法、装置及智能机器人。
本发明实施例的目的是通过如下技术方案实现的:
为解决上述技术问题,第一方面,本发明实施例中提供了一种自主建图方法,应用于智能机器人,包括:
获取所述智能机器人当前所探测得到的栅格地图;
提取所述栅格地图的可探测边界和障碍物信息;
结合所述可探测边界和所述障碍物信息,通过空间分割算法分割所述栅格地图,从分割的栅格地图中确定探测目标点;
控制所述智能机器人移动至所述探测目标点对未知区域进行探索,扩充所述栅格地图。
在一些实施例中,所述结合所述可探测边界和所述障碍物信息,通过空间分割算法分割所述栅格地图,从分割的栅格地图中确定探测目标点的步骤,进一步包括:
根据所述障碍物信息分割所述栅格地图,得到所述栅格地图的沃罗诺伊图,其中,所述沃罗诺伊图包括用于分割所述栅格地图的边和相邻的各所述边相交的节点;
通过深度优先遍历算法将所述节点分割为主干节点和枝干节点,其中,所述主干节点为所述智能机器人所能够最快移动至最远距离的可探测边界所经过的节点,每一所述可探测边界可追溯至一所述主干节点;
根据所述主干节点所包含的所有所述可探测边界的总面积信息及其与所述智能机器人的距离信息,计算各所述主干节点的探测代价;
将所述探测代价最高的所述主干节点作为所述探测目标点。
在一些实施例中,所述计算各所述可探测边界的探测代价的计算公式如下:
其中,Score表示所述主干节点j的探测代价,Si表示可探测边界i的面积,dj表示可探测边界i到主干节点j的距离,l表示所述主干节点j与所述智能机器人的距离。
在一些实施例中,在结合所述可探测边界和所述障碍物信息,通过空间分割算法分割所述栅格地图,从分割的栅格地图中确定探测目标点的步骤之前,所述方法还包括:
判断所述智能机器人的行进方向的改变幅度是否超过预设阈值,或者所述智能机器人是否发生闭环检测;
若是,执行所述分割所述栅格地图,从分割的栅格地图中确定探测目标点的步骤。
在一些实施例中,所述方法还包括:
若否,根据预设快速开拓算法,从提取到的可探测边界中确定最优的可探测边界;
获取所述最优的可探测边界的中间点或所述最优的可探测边界所构成的几何图形的重心,作为所述探测目标点。
为解决上述技术问题,第二方面,本发明实施例中提供了一种建图装置,应用于智能机器人,包括:
获取模块,用于获取所述智能机器人当前所探测得到的栅格地图;
提取模块,用于提取所述栅格地图的可探测边界和障碍物信息;
确定模块,用于结合所述可探测边界和所述障碍物信息,通过空间分割算法分割所述栅格地图,从分割的栅格地图中确定探测目标点;
控制模块,用于控制所述智能机器人移动至所述探测目标点对未知区域进行探索,扩充所述栅格地图。
在一些实施例中,所述确定模块还用于根据所述障碍物信息分割所述栅格地图,得到所述栅格地图的沃罗诺伊图,其中,所述沃罗诺伊图包括用于分割所述栅格地图的边和相邻的各所述边相交的节点;
通过深度优先遍历算法将所述节点分割为主干节点和枝干节点,其中,所述主干节点为所述智能机器人所能够最快移动至最远距离的可探测边界所经过的节点,每一所述可探测边界可追溯至一所述主干节点;
根据所述主干节点所包含的所有所述可探测边界的总面积信息及其与所述智能机器人的距离信息,计算各所述主干节点的探测代价;
将所述探测代价最高的所述主干节点作为所述探测目标点。
在一些实施例中,所述计算各所述可探测边界的探测代价的计算公式如下:
其中,Score表示所述主干节点j的探测代价,Si表示可探测边界i的面积,dj表示可探测边界i到主干节点j的距离,l表示所述主干节点j与所述智能机器人的距离。
在一些实施例中,所述装置还包括:
判断模块,用于判断所述智能机器人的行进方向的改变幅度是否超过预设阈值,或者所述智能机器人是否发生闭环检测;
若是,执行所述分割所述栅格地图,从分割的栅格地图中确定探测目标点的步骤。
在一些实施例中,所述判断模块还用于在所述的行进方向的改变幅度未超过预设阈值,或者所述智能机器人未发生闭环检测时,根据预设快速开拓算法,从提取到的可探测边界中确定最优的可探测边界;
获取所述最优的可探测边界的中间点或所述最优的可探测边界所构成的几何图形的重心,作为所述探测目标点。
为解决上述技术问题,第三方面,本发明实施例提供了一种智能机器人,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上第一方面所述的方法。
为解决上述技术问题,第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如上第一方面所述的方法。
为解决上述技术问题,第五方面,本发明实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行如上第一方面所述的方法。
与现有技术相比,本发明的有益效果是:区别于现有技术的情况,本发明实施例中提供了一种自主建图方法,该方法首先获取所述智能机器人当前所探测得到的栅格地图,并提取该栅格地图的可探测边界和障碍物信息,接着,结合所述可探测边界和所述障碍物信息,通过空间分割算法分割所述栅格地图,从分割的栅格地图中确定探测目标点,最后,控制所述智能机器人移动至所述探测目标点对未知区域进行探索,扩充所述栅格地图,执行本发明实施例提供的自主建图方法的智能机器人能够自主建图,不需要人工操作,节省人力。
附图说明
一个或多个实施例中通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件/模块和步骤表示为类似的元件/模块和步骤,除非有特别申明,附图中的图不构成比例限制。
图1是本发明实施例提供的方法的其中一种应用场景的示意图;
图2是本发明实施例提供的一种自主建图方法的流程图;
图3是图2所示方法中步骤130的一子流程图;
图4是图2所示方法中步骤120的一子流程图;
图5是本发明实施例提供的一种建图装置的结构示意图;
图6是本发明实施例提供的一种智能机器人的结构示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,如果不冲突,本发明实施例中的各个特征可以相互结合,均在本申请的保护范围之内。另外,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。
除非另有定义,本说明书所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本说明书中在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是用于限制本发明。本说明书所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。
此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
图1为本发明实施例提供的自主建图方法的其中一种应用环境的示意图,其中,该应用环境中包括:智能机器人10,所述智能机器人10能够通过探测装置探测周围环境并将周围环境栅格化,得到一栅格地图A。
所述栅格地图A由一个个栅格构成,每一栅格皆能够表征其所在位置周围环境的状态,该状态包括三种状态,表征存在障碍物的占有状态(即图1中黑色的栅格),表征无障碍物且所述智能机器人10能够自由通过的空闲状态(即图1中无颜色的栅格),以及所述智能机器人10还未探测到的未知状态(未在图1中画出来的栅格)。所述智能机器人10能够根据所述栅格地图A,规划前进路线,且在所述智能机器人10前进的过程中,不断检测并更新该栅格地图A。
其中,空闲状态的栅格与未知状态的栅格的交界处,标记为所述栅格地图A的可探测边界S,结合障碍物信息(占有状态的栅格所在的坐标位置等),通过空间分割算法分割所述栅格地图,可得到如图虚线所示的沃罗诺伊图,所述智能机器人10可沿着该沃罗诺伊图的边(图1中的虚线)前行并检测,沿该路径前行能使所述智能机器人10行走在最安全的路径上,该沃罗诺伊图包括多个节点(D1至D5),所述智能机器人10可以将多个节点(D1至D5)作为探测目标点,移动到这些探测目标点上后,对未知区域进行探索,扩充所述栅格地图A。
所述智能机器人10上至少设置有能够探测空间障碍物的探测装置,例如,能够检测到障碍物距离所述智能机器人10的距离信息的激光探测装置、传感器、深度摄像头等。所述智能机器人10能够移动,设置有移动装置,其移动路径可以根据其移动装置的移动方式进行设定。所述智能机器人10内设置有中央处理器,能够接收、发送指令,处理大量的数据信息。
需要说明的是,本申请实施例所提供的自主建图方法一般由上述智能机器人10执行,相应地,建图装置一般设置于所述智能机器人10中。用于建图的所述智能机器人10,其数量可以是一台或多台,本申请不对其数量进行限定,当其数量为多台时,多台所述智能机器人10之间能够进行实时数据共享,以用于在范围较大的检测区域内实现自主建图。
具体地,下面结合附图,对本发明实施例作进一步阐述。
本发明实施例提供了一种自主建图方法,该方法可被上述智能机器人10执行,请参见图2,其示出了本发明实施例提供的一种自主建图方法的流程图,该方法包括但不限于以下步骤:
步骤110:获取所述智能机器人当前所探测得到的栅格地图。
在本发明实施例中,首先,获取所述智能机器人所探测得到的栅格地图,该所探测得到的栅格地图可以是如图1所示的栅格地图A,需要说明的是,图1所示栅格地图A即为不包含所述未知状态的栅格的栅格地图,所述智能机器人可以通过各种探测装置探测得到所述栅格地图A。
步骤120:提取所述栅格地图的可探测边界和障碍物信息。
在本发明实施例中,进一步地,获取所述栅格地图的可探测边界,所述可探测边界即为所述智能机器人所探测得到的栅格地图上,空闲状态的栅格与未知状态的栅格的边界。如图1所示即为由多个栅格构成的所述栅格地图A的外周上的多段可探测边界S。所述提取所述栅格地图的障碍物信息,即获取占有状态的栅格在所述栅格地图上相对于所述智能机器人的坐标信息。
需要说明的是,障碍物在实际上可能是形状各异,大小不同的,在将障碍物在地图上栅格化后,在一栅格上无论是被障碍物部分占有,或是全部占有,皆标记为占有状态,表征该栅格上存在障碍物,以提高智能机器人前行时的安全性。此外,图1中分布的有障碍物皆只占有一个栅格,可选的,实际出现的障碍物体积较大时,或者栅格比例尺选择较小时,也会出现一个障碍物占有多个栅格的状态,图1仅为一实施例,对此不作限定。
步骤130:结合所述可探测边界和所述障碍物信息,通过空间分割算法分割所述栅格地图,从分割的栅格地图中确定探测目标点。
进一步地,在获取障碍物信息后,根据障碍物所在栅格的位置,通过空间分割算法分割所述栅格地图,以使所述智能机器人能够避开所述障碍物所在的栅格,并在栅格地图中选取探测目标点。为所述智能机器人位于所述探测目标点时,能够对可探测边界进行探测,以扩充栅格地图。所述探测目标点可以是在分割后的栅格地图的分割线上,或者是在可探测边界上。
步骤140:控制所述智能机器人移动至所述探测目标点对未知区域进行探索,扩充所述栅格地图。
在获得所述探测目标点后,驱动所述智能机器人移动到所述探测目标点上进行探测,以沿着所述探测目标点周围的可探测边界进行探测,获取所述探测目标点周围处于未知状态的栅格内的障碍物信息。
本发明实施例中提供了一种自主建图方法,该方法首先获取所述智能机器人当前所探测得到的栅格地图,并提取该栅格地图的可探测边界和障碍物信息,接着,结合所述可探测边界和所述障碍物信息,通过空间分割算法分割所述栅格地图,从分割的栅格地图中确定探测目标点,最后,控制所述智能机器人移动至所述探测目标点对未知区域进行探索,扩充所述栅格地图,执行本发明实施例提供的自主建图方法的智能机器人能够自主建图,不需要人工操作,节省人力。
在一些实施例中,请参见图3,其示出了图2所示方法中步骤130的一子流程图,所述步骤130包括但不限于以下步骤:
步骤131:根据所述障碍物信息分割所述栅格地图,得到所述栅格地图的沃罗诺伊图。
其中,所述沃罗诺伊图包括用于分割所述栅格地图的边和相邻的各所述边相交的节点。为获得所述智能机器人能够前行的最安全的路径,本发明实施例在通过空间分割算法对栅格地图进行分割时,将所述栅格地图分割为沃罗诺伊图,请一并参见图1,即为图1中表征用于分割所述栅格地图的边的虚线和相邻的各所述边相交的各节点(D1至D5)所构成的分割图,在任意所述虚线上取一点,所述智能机器人在该点上时与该虚线两侧的障碍物的距离是相等的。
步骤132:通过深度优先遍历算法将所述节点分割为主干节点和枝干节点。
其中,所述主干节点为所述智能机器人所能够最快移动至最远距离的可探测边界所经过的节点,每一所述可探测边界可追溯至一所述主干节点。在本发明实施例中,进一步地,通过深度优先遍历算法(DFS,Depth First Search)获取所述智能机器人沿着所述用于分割所述栅格地图的边能够最快移动至最远距离的可探测边界S所经过的节点,并将这些节点标记为主干节点,同时,将所述智能机器人沿着所述用于分割所述栅格地图的边所能够移动至其他可探测边界时所经过的且未归类为主干节点的节点标记为枝干节点。
例如,请继续参见图1,该智能机器人10可从当前位置沿D1→D2a或D2b→D3→D4→D5最快移动至最远距离的可探测边界,因此,将D1、D2a和/或D2b、D3、D4、D5标记为所述主干节点。可以理解的是,D2a和D2b分别与D1和D3的距离是一样的,因此,两者皆可作为主干节点。然后,再将所述智能机器人沿着所述虚线所能够移动至其他可探测边界S’时所经过的且未归类为主干节点的节点标记为枝干节点,也即是,图1中的D4-1和D4-2节点。
所述智能机器人可以在到达上述节点对栅格地图进行扩充后,根据扩充后的栅格地图中的可探测边界和障碍物信息,重新通过空间分割算法分割所述栅格地图,以更新上述节点的位置。
步骤133:根据所述主干节点所包含的所有所述可探测边界的总面积信息及其与所述智能机器人的距离信息,计算各所述主干节点的探测代价。
进一步地,本发明实施例通过计算每个主干节点的探测代价的方式,来获取可探测的边界范最大且尽可能的离所述智能机器人最近的的主干节点,计算各所述可探测边界的探测代价的计算公式如下:
其中,Score表示所述主干节点j的探测代价,Si表示可探测边界i的面积,dj表示可探测边界i到主干节点j的距离,l表示所述主干节点j与所述智能机器人的距离。
步骤134:将所述探测代价最高的所述主干节点作为所述探测目标点。
本发明实施例将探测代价最高的主干节点作为探测目标点,驱动所述智能机器人移动至该探测目标点对位置区域进行探测,实现栅格地图的扩充。
在一些实施例中,请参见图4,其示出了图2所示方法中步骤120的一子流程图,所述步骤120包括但不限于以下步骤:
步骤121:判断所述智能机器人的行进方向的改变幅度是否超过预设阈值,或者所述智能机器人是否发生闭环检测;若是,跳转至步骤130;若否,跳转至步骤122。
在结合所述可探测边界和所述障碍物信息,通过空间分割算法分割所述栅格地图,从分割的栅格地图中确定探测目标点的步骤之前,还需要先判断所述智能机器人是否在短时间内大幅度改变行进方向,如急转弯等,如发生行进方向的大幅度改变,则说明在大幅度方向上存在障碍物导致所述智能机器人无需检测,此时,可通过上述空间分割算法,重新确定探测目标点。或者,在所述智能机器人发生闭环检测,也即是重复检测同一区域的时候,说明该区域已被探测完毕,此时,同样可通过上述空间分割算法,重新确定探测目标点。
步骤122:根据预设快速开拓算法,从提取到的可探测边界中确定最优的可探测边界。
在本发明实施例中,若无需通过上述空间分割算法确定探测目标点,则说明当前位置上所述智能机器人尚有未探测可探测边界,此时,通过预设快速开拓算法,从提取到的可探测边界中确定最优的可探测边界,进行探测工作。
所述预设快速开拓算法可根据所述智能机器人与各可探测边界之间的距离、智能机器人的前进方向与各可探测边界之间的夹角,以及,各可探测边界的大小,计算各所述可探测边界的探测代价,将所述探测代价最高的可探测边界作为最优的可探测边界。具体地,所述计算各所述可探测边界的探测代价的计算公式如下:
其中,表示所述可探测边界j的探测代价,fj D表示所述智能机器人与可探测边界j之间的距离,fj S表示所述可探测边界j的大小,fj R表示所述智能机器人的前进方向与可探测边界j之间的夹角,ωd表示所述fj D的权重,ωs表示所述fj S的权重,ωr表示所述fj R的权重。
步骤123:获取所述最优的可探测边界的中间点或所述最优的可探测边界所构成的几何图形的重心,作为所述探测目标点。
请一并参见图1,假设获取到的最优的可探测边界为图1中的可探测边界S’,进一步地,需要驱动所述智能机器人移动至所述最优的可探测边界S’或该可最优的探测边界S’的附近进行进一步的探测,因此,优选的,选取该最优的可探测边界S’的中间点M1作为探测目标点,或者,若所述中间点M1上存在障碍物,则获取所述最优的可探测边界S’所构成的几何图形的重心M2作为所述探测目标点。
本发明实施例还提供了一种建图装置,应用于智能机器人,请参见图5,其示出了本发明实施例提供的一种建图装置的结构图,该建图装置200包括:获取模块210、提取模块220、确定模块230和控制模块240。
所述获取模块210用于获取所述栅格地图的可探测边界。
所述提取模块220用于提取所述栅格地图的可探测边界和障碍物信息。
所述确定模块230用于结合所述可探测边界和所述障碍物信息,通过空间分割算法分割所述栅格地图,从分割的栅格地图中确定探测目标点。
所述控制模块240用于控制所述智能机器人移动至所述探测目标点对未知区域进行探索,扩充所述栅格地图。
在一些实施例中,所述确定模块230还用于根据所述障碍物信息分割所述栅格地图,得到所述栅格地图的沃罗诺伊图,其中,所述沃罗诺伊图包括用于分割所述栅格地图的边和相邻的各所述边相交的节点;
通过深度优先遍历算法将所述节点分割为主干节点和枝干节点,其中,所述主干节点为所述智能机器人所能够最快移动至最远距离的可探测边界所经过的节点,每一所述可探测边界可追溯至一所述主干节点;
根据所述主干节点所包含的所有所述可探测边界的总面积信息及其与所述智能机器人的距离信息,计算各所述主干节点的探测代价;
将所述探测代价最高的所述主干节点作为所述探测目标点。
在一些实施例中,所述计算各所述可探测边界的探测代价的计算公式如下:
其中,Score表示所述主干节点j的探测代价,Si表示可探测边界i的面积,dj表示可探测边界i到主干节点j的距离,l表示所述主干节点j与所述智能机器人的距离。
在一些实施例中,所述装置200还包括:判断模块(未图示),用于判断所述智能机器人的行进方向的改变幅度是否超过预设阈值,或者所述智能机器人是否发生闭环检测;
若是,执行所述分割所述栅格地图,从分割的栅格地图中确定探测目标点的步骤。
在一些实施例中,所述判断模块(未图示)还用于在所述的行进方向的改变幅度未超过预设阈值,或者所述智能机器人未发生闭环检测时,根据预设快速开拓算法,从提取到的可探测边界中确定最优的可探测边界;
获取所述最优的可探测边界的中间点或所述最优的可探测边界所构成的几何图形的重心,作为所述探测目标点。
本发明实施例还提供了一种智能机器人,请参见图6,其示出了能够执行图2至图4所述自主建图方法的智能机器人的硬件结构。所述智能机器人10可以是图1所示的智能机器人10。
所述智能机器人10包括:至少一个处理器11;以及,与所述至少一个处理器11通信连接的存储器12,图6中以其以一个处理器11为例。所述存储器12存储有可被所述至少一个处理器11执行的指令,所述指令被所述至少一个处理器11执行,以使所述至少一个处理器11能够执行上述图2至图4所述的自主建图方法。所述处理器11和所述存储器12可以通过总线或者其他方式连接,图6中以通过总线连接为例。
存储器12作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的自主建图方法对应的程序指令/模块,例如,附图5所示的各个模块。处理器11通过运行存储在存储器12中的非易失性软件程序、指令以及模块,从而执行智能机器人的各种功能应用以及数据处理,即实现上述方法实施例自主建图方法。
存储器12可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据建图装置的使用所创建的数据等。此外,存储器12可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器12可选包括相对于处理器11远程设置的存储器,这些远程存储器可以通过网络连接至建图装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器12中,当被所述一个或者多个处理器11执行时,执行上述任意方法实施例中的自主建图方法,例如,执行以上描述的图2至图4的方法步骤,实现图5中的各模块和各单元的功能。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
本申请实施例还提供了一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如,执行以上描述的图2至图4的方法步骤,实现图5中的各模块的功能。
本申请实施例还提供了一种计算机程序产品,包括存储在非易失性计算机可读存储介质上的计算程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时时,使所述计算机执行上述任意方法实施例中的自主建图方法,例如,执行以上描述的图2至图4的方法步骤,实现图5中的各模块的功能。
本发明实施例中提供了一种自主建图方法,该方法首先获取所述智能机器人当前所探测得到的栅格地图,并提取该栅格地图的可探测边界和障碍物信息,接着,结合所述可探测边界和所述障碍物信息,通过空间分割算法分割所述栅格地图,从分割的栅格地图中确定探测目标点,最后,控制所述智能机器人移动至所述探测目标点对未知区域进行探索,扩充所述栅格地图,执行本发明实施例提供的自主建图方法的智能机器人能够自主建图,不需要人工操作,节省人力。
需要说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域普通技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (6)
1.一种自主建图方法,其特征在于,应用于智能机器人,包括:
获取所述智能机器人当前所探测得到的栅格地图;
提取所述栅格地图的可探测边界和障碍物信息;
判断所述智能机器人的行进方向的改变幅度是否超过预设阈值,或者所述智能机器人是否发生闭环检测;
若是,根据所述障碍物信息分割所述栅格地图,得到所述栅格地图的沃罗诺伊图,其中,所述沃罗诺伊图包括用于分割所述栅格地图的边和相邻的各所述边相交的节点;
通过深度优先遍历算法将所述节点分割为主干节点和枝干节点,其中,所述主干节点为所述智能机器人所能够最快移动至最远距离的可探测边界所经过的节点,每一所述可探测边界可追溯至一所述主干节点;
计算各所述主干节点的探测代价,其中,所述计算各所述可探测边界的探测代价的计算公式如下:
其中,表示所述主干节点/>的探测代价,/>表示可探测边界/>的面积,/>表示可探测边界/>到主干节点/>的距离,/>表示所述主干节点/>与所述智能机器人的距离;
将所述探测代价最高的所述主干节点作为探测目标点;
控制所述智能机器人移动至所述探测目标点对未知区域进行探索,扩充所述栅格地图。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若否,根据预设快速开拓算法,从提取到的可探测边界中确定最优的可探测边界;
获取所述最优的可探测边界的中间点或所述最优的可探测边界所构成的几何图形的重心,作为所述探测目标点。
3.一种建图装置,其特征在于,应用于智能机器人,包括:
获取模块,用于获取所述智能机器人当前所探测得到的栅格地图;
提取模块,用于提取所述栅格地图的可探测边界和障碍物信息;
判断模块,用于判断所述智能机器人的行进方向的改变幅度是否超过预设阈值,或者所述智能机器人是否发生闭环检测;
确定模块,用于在所述智能机器人的行进方向的改变幅度超过预设阈值,或者所述智能机器人发生闭环检测时,结合所述可探测边界和所述障碍物信息,通过空间分割算法分割所述栅格地图,从分割的栅格地图中确定探测目标点,所述确定模块还用于根据所述障碍物信息分割所述栅格地图,得到所述栅格地图的沃罗诺伊图,其中,所述沃罗诺伊图包括用于分割所述栅格地图的边和相邻的各所述边相交的节点;通过深度优先遍历算法将所述节点分割为主干节点和枝干节点,其中,所述主干节点为所述智能机器人所能够最快移动至最远距离的可探测边界所经过的节点,每一所述可探测边界可追溯至一所述主干节点;计算各所述主干节点的探测代价;将所述探测代价最高的所述主干节点作为探测目标点;
控制模块,用于控制所述智能机器人移动至所述探测目标点对未知区域进行探索,扩充所述栅格地图;
其中,所述计算各所述可探测边界的探测代价的计算公式如下:
其中,表示所述主干节点/>的探测代价,/>表示可探测边界/>的面积,/>表示可探测边界/>到主干节点/>的距离,/>表示所述主干节点/>与所述智能机器人的距离。
4.根据权利要求3所述的装置,其特征在于,
所述判断模块还用于在所述的行进方向的改变幅度未超过预设阈值,或者所述智能机器人未发生闭环检测时,根据预设快速开拓算法,从提取到的可探测边界中确定最优的可探测边界;
获取所述最优的可探测边界的中间点或所述最优的可探测边界所构成的几何图形的重心,作为所述探测目标点。
5.一种智能机器人,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1-2任一项所述的方法。
6.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行如权利要求1-2任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911303195.6A CN110956161B (zh) | 2019-12-17 | 2019-12-17 | 一种自主建图方法、装置及智能机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911303195.6A CN110956161B (zh) | 2019-12-17 | 2019-12-17 | 一种自主建图方法、装置及智能机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110956161A CN110956161A (zh) | 2020-04-03 |
CN110956161B true CN110956161B (zh) | 2024-05-10 |
Family
ID=69982153
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911303195.6A Active CN110956161B (zh) | 2019-12-17 | 2019-12-17 | 一种自主建图方法、装置及智能机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110956161B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112729322B (zh) * | 2020-12-30 | 2023-07-28 | 北京云迹科技股份有限公司 | 一种构建网格地图的方法、装置及电子设备 |
CN113485372B (zh) * | 2021-08-11 | 2023-06-16 | 追觅创新科技(苏州)有限公司 | 地图探索方法和装置、存储介质、电子装置 |
CN113867349B (zh) * | 2021-09-28 | 2024-04-09 | 浙江大华技术股份有限公司 | 一种机器人的避障方法、系统及智能机器人 |
CN114545923A (zh) * | 2021-12-28 | 2022-05-27 | 美的集团(上海)有限公司 | 机器人的建图方法、电子设备及计算机存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005032196A (ja) * | 2003-07-11 | 2005-02-03 | Japan Science & Technology Agency | 移動ロボット用経路計画システム |
CN105825301A (zh) * | 2016-03-16 | 2016-08-03 | 福州华鹰重工机械有限公司 | 一种利用环境分割的多车辆协同探索方法及装置 |
WO2018120489A1 (zh) * | 2016-12-29 | 2018-07-05 | 珠海市一微半导体有限公司 | 一种智能机器人的路径规划方法 |
CN108549388A (zh) * | 2018-05-24 | 2018-09-18 | 苏州智伟达机器人科技有限公司 | 一种基于改进a星策略的移动机器人路径规划方法 |
CN108898605A (zh) * | 2018-07-25 | 2018-11-27 | 电子科技大学 | 一种基于图的栅格地图分割方法 |
CN109445442A (zh) * | 2018-12-17 | 2019-03-08 | 中新智擎科技有限公司 | 一种机器人避障控制方法、装置、存储介质及机器人 |
CN109540155A (zh) * | 2019-02-01 | 2019-03-29 | 西安全志科技有限公司 | 一种扫地机器人的路径规划与导航方法、计算机装置以及计算机可读存储介质 |
CN110531760A (zh) * | 2019-08-16 | 2019-12-03 | 广东工业大学 | 基于曲线拟合和目标点邻域规划的边界探索自主建图方法 |
-
2019
- 2019-12-17 CN CN201911303195.6A patent/CN110956161B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005032196A (ja) * | 2003-07-11 | 2005-02-03 | Japan Science & Technology Agency | 移動ロボット用経路計画システム |
CN105825301A (zh) * | 2016-03-16 | 2016-08-03 | 福州华鹰重工机械有限公司 | 一种利用环境分割的多车辆协同探索方法及装置 |
WO2018120489A1 (zh) * | 2016-12-29 | 2018-07-05 | 珠海市一微半导体有限公司 | 一种智能机器人的路径规划方法 |
CN108549388A (zh) * | 2018-05-24 | 2018-09-18 | 苏州智伟达机器人科技有限公司 | 一种基于改进a星策略的移动机器人路径规划方法 |
CN108898605A (zh) * | 2018-07-25 | 2018-11-27 | 电子科技大学 | 一种基于图的栅格地图分割方法 |
CN109445442A (zh) * | 2018-12-17 | 2019-03-08 | 中新智擎科技有限公司 | 一种机器人避障控制方法、装置、存储介质及机器人 |
CN109540155A (zh) * | 2019-02-01 | 2019-03-29 | 西安全志科技有限公司 | 一种扫地机器人的路径规划与导航方法、计算机装置以及计算机可读存储介质 |
CN110531760A (zh) * | 2019-08-16 | 2019-12-03 | 广东工业大学 | 基于曲线拟合和目标点邻域规划的边界探索自主建图方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110956161A (zh) | 2020-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110956161B (zh) | 一种自主建图方法、装置及智能机器人 | |
US11709058B2 (en) | Path planning method and device and mobile device | |
CN109724612B (zh) | 一种基于拓扑地图的agv路径规划方法及设备 | |
CN109976350B (zh) | 多机器人调度方法、装置、服务器及计算机可读存储介质 | |
CN109509210B (zh) | 障碍物跟踪方法和装置 | |
CN113485375B (zh) | 一种基于启发式偏置采样的室内环境机器人探索方法 | |
CN110674705B (zh) | 基于多线激光雷达的小型障碍物检测方法及装置 | |
CN113110482B (zh) | 基于先验信息启发式的室内环境机器人探索方法及系统 | |
CN109163722B (zh) | 一种仿人机器人路径规划方法及装置 | |
CN113110522B (zh) | 一种基于复合式边界检测的机器人自主探索方法 | |
CN107631734A (zh) | 一种基于D*_lite算法的动态平滑路径规划方法 | |
CN112229419B (zh) | 一种动态路径规划导航方法及系统 | |
CN111665852B (zh) | 一种障碍物避让方法、装置、车辆及存储介质 | |
CN111609852A (zh) | 语义地图构建方法、扫地机器人及电子设备 | |
CN110705385B (zh) | 一种障碍物角度的检测方法、装置、设备及介质 | |
CN109341698B (zh) | 一种移动机器人的路径选择方法及装置 | |
CN113189988B (zh) | 一种基于Harris算法与RRT算法复合的自主路径规划方法 | |
CN110262487B (zh) | 一种障碍物检测方法、终端及计算机可读存储介质 | |
CN111679661A (zh) | 基于深度相机的语义地图构建方法及扫地机器人 | |
CN114111825A (zh) | 路径规划方法、装置、电子设备、工程机械和存储介质 | |
JP7047576B2 (ja) | 地図作成装置 | |
CN113110455A (zh) | 一种未知初始状态的多机器人协同探索方法、装置及系统 | |
CN113219990B (zh) | 基于自适应邻域与转向代价的机器人路径规划方法 | |
CN112197783B (zh) | 一种考虑车头指向的两阶段多抽样的rrt路径规划方法 | |
CN113282088A (zh) | 工程车的无人驾驶方法、装置、设备、存储介质及工程车 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |