CN111121750A - 室内的路径获取方法和装置 - Google Patents
室内的路径获取方法和装置 Download PDFInfo
- Publication number
- CN111121750A CN111121750A CN201911368906.8A CN201911368906A CN111121750A CN 111121750 A CN111121750 A CN 111121750A CN 201911368906 A CN201911368906 A CN 201911368906A CN 111121750 A CN111121750 A CN 111121750A
- Authority
- CN
- China
- Prior art keywords
- point
- machine
- buffer area
- path
- determining
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Traffic Control Systems (AREA)
- Navigation (AREA)
Abstract
本发明公开了一种室内的路径获取方法和装置。其中,该方法包括:根据机器的旋转安全半轴长确定起始点所在起始层的第一缓冲区域,以及终点所在终点层的第二缓冲区域;获取起始点在第一缓冲区域内对应的第一邻近点,以及终点在第二缓冲区域内对应的第二邻近点;根据第一邻近点和第二邻近点确定机器在室内的路径。本发明解决了现有技术中直接在室内的密集路网上进行路径规划,导致计算复杂度高的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种室内的路径获取方法和装置。
背景技术
传统的基于道路路网的路径规划方法,通过道路网络与图的搜索相结合,并加入一些交通控制逻辑,即可快速得到车辆/行人行走的最佳路线。而在解决机器、机器载具、机器在房屋内行走的问题时,这种方法并不完全适用。
首先,房屋内的行走并没有非常明确和规定好的道路,在房屋的开敞空间处处都是可行走的道路,如果在这些开敞空间内生成密集路网并用于路径规划,则必然无法生成最优路径,既增加了转弯绕路的耗费,也增加了计算复杂度。同时,由于机器本身的尺寸和规格问题,会使得部分路网节点不可用,或需要重新生成路网,从而导致原本可行的路线不可行,或在计算路网时耗费过多的计算资源。
针对现有技术中直接在室内的密集路网上进行路径规划,导致计算复杂度高的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种室内的路径获取方法和装置,以至少解决现有技术中直接在室内的密集路网上进行路径规划,导致计算复杂度高的技术问题。
根据本发明实施例的一个方面,提供了一种室内的路径获取方法,包括:根据机器的旋转安全半轴长确定起始点所在起始层的第一缓冲区域,以及终点所在终点层的第二缓冲区域;获取起始点在第一缓冲区域内对应的第一邻近点,以及终点在第二缓冲区域内对应的第二邻近点;根据第一邻近点和第二邻近点确定机器在室内的路径。
进一步地,在根据机器的旋转安全半轴长确定起始点所在的起始层的第一缓冲区域之前,方法还包括:获取机器的旋转安全半轴长,其中,获取机器的旋转安全半轴长的步骤包括:确定机器的最长旋转半轴长与机器的转向安全缓冲距离之和为机器的旋转安全半轴长。
进一步地,根据机器的旋转安全半轴长确定起始点所在的起始层的第一缓冲区域,包括:将起始层的外边界向内收缩指定长度,得到起始层的第一缓冲区域,其中,指定长度为机器的旋转安全半轴长。
进一步地,获取起始点在第一缓冲区域内对应的第一邻近点,包括:判断起始点是否在第一缓冲区域内;如果起始点在第一缓冲区域内,确定第一邻近点为起始点本身;如果起始点不在第一缓冲区域内,在第一缓冲区域的子缓冲区域中查找与起始点距离最近的点,并确定查找到的点为第一邻近点,其中,子缓冲区域用于表示起始点所在的室内对应的缓冲区域。
进一步地,根据第一邻近点和第二邻近点确定机器在室内的路径,包括:在第一缓冲区域中查找与第一邻近点最近的第一路网节点,并在第二缓冲区域中查找与第二邻近点最近的第二路网节点;通过图的搜索算法获取第一路网节点和第二路网节点之间的候选路径,其中,候选路径通过多个路段构成;根据候选路径中的路段确定机器在室内的路径。
进一步地,根据候选路径中的路段确定机器在室内的路径,包括:根据多个路段确定出用于构成机器的路径的路段;确定起始点、第一邻近点、确定的路段、第二邻近点和终点构成机器在室内的路径。
进一步地,所述机器的移动路径包括相互垂直或屏平行的直线,根据多个路段确定出用于构成机器的路径的路段,包括:从多个路段中选择第一目标路段,并确定第一邻近点为起点;通过第一目标路段向起点做垂足;如果起点通过垂足至第一目标路段的路线完全属于第一缓冲区域,确定起点通过垂足至第一目标路段的路线为用于构成机器的路径中的第一路段;将起点通过垂足至第一目标路段的路线的终点作为机器的路径中的第二路段的起点,并从多个路段中选择第二目标路段,以确定用于构成机器的路径中的第二路段;如果起点通过垂足至第一目标路段的路线不完全属于第一缓冲区域,则重新选择第一目标路段。
进一步地,机器的移动路径包括斜线,根据多个路段确定出用于构成机器的路径的路段,包括:确定第一邻近点为起点;从多个路段中获取距离起点最远且在第一缓冲区域内的斜线路段;确定斜线路段为构成机器的路径中的第一路段;以第一路段的终点作为第二路段的起点,获取距离起点最远且在第一缓冲区域内的斜线。
进一步地,机器的移动路径包括曲线,根据多个路段确定出用于构成机器的路径的路段,包括:确定第一邻近点为起点;从多个路段中获取距离起点最远且在第一缓冲区域内的曲线;确定曲线为构成机器的路径中的第一路段;以第一路段的终点作为第二路段的起点,获取距离起点最远且在第一缓冲区域内的曲线。
根据本发明实施例的一个方面,提供了一种室内的路径获取装置,包括:第一确定模块,用于根据机器的旋转安全半轴长确定起始点所在起始层的第一缓冲区域,以及终点所在终点层的第二缓冲区域;获取模块,用于获取起始点在第一缓冲区域内对应的第一邻近点,以及终点在第二缓冲区域内对应的第二邻近点;第二确定模块,用于根据第一邻近点和第二邻近点确定机器在室内的路径。
根据本发明实施例的一个方面,提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述的室内的路径获取方法。
根据本发明实施例的一个方面,提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述的室内的路径获取方法。
在本发明实施例中,根据机器的旋转安全半轴长确定起始点所在起始层的第一缓冲区域,以及终点所在终点层的第二缓冲区域;获取起始点在第一缓冲区域内对应的第一邻近点,以及终点在第二缓冲区域内对应的第二邻近点;根据第一邻近点和第二邻近点确定机器在室内的路径。上述方案获取了室内的缓冲区域,并根据起始点和终点在其对应的缓冲区域中的邻近点进行路径规划,从而使得规划的路径均为可用的路径,避免了由于部分路段不可用使得需要重新进行计算所导致的增加计算复杂度的问题,解决了现有技术中直接在室内的密集路网上进行路径规划,导致计算复杂度高的技术问题,且由于在室内的路径规划导航中结合室内结构和移动机器的尺寸规格,从而避免移动过程中撞墙,进一步提升了机器移动时的安全性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本申请实施例的室内的路径获取方法的流程图;
图2是根据本申请实施例的一种获取缓冲区域的示意图;
图3是根据本申请实施例的一种获取机器在室内的路径的示意图;以及
图4是根据本申请实施例的室内的路径获取装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种室内的路径获取方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本申请实施例的室内的路径获取方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102,根据机器的旋转安全半轴长确定起始点所在起始层的第一缓冲区域,以及终点所在终点层的第二缓冲区域。
具体的,上述机器可以是机器载具、机器人等可以自行移动的设备。上述起始点和终点可以在同一楼层,也可以在不同楼层,当起始点和终点在同一楼层时,上述第一缓冲区域和第二缓冲区域为同一区域,确定其中任意一个即可,当起始点和终点不处于同一楼层时,可以分别确定起始层和终点层的缓冲区域。
上述缓冲区域用于表示允许机器经过的区域,机器在缓冲区域中的移动是安全的,不会碰到阻挡移动的障碍物,例如墙壁等。
机器的旋转安全半轴长是机器在旋转时所需要的最大半轴长,当机器在旋转时,与机器的距离处于其旋转安全半轴长以内的物体有可能被机器撞击,因此为了确保机器移动的安全,需要保证机器在移动时其旋转安全半轴长内不存在障碍物。
在一种可选的实施例中,可以将起始层和终点层的外边缘分别向内收缩机器的旋转安全半轴长,以及起始层和终点层的内边缘分别向外膨胀机器的旋转安全半轴长,所构成的新的空间区域即为上述第一缓冲区域或第二缓冲区域。
步骤S104,获取起始点在第一缓冲区域内对应的第一邻近点,以及终点在第二缓冲区域内对应的第二邻近点。
上述第一邻近点用于表示第一缓冲区域内与起始点距离最近的点,第二邻近点用于表示第二缓冲区域内与终点距离最近的点。
通过在第一缓冲区域内获取第一邻近点,从而能够先控制机器进入第一缓冲区域,并通过在第二缓冲区域内获取第二邻近点,从而能够控制机器从第二缓冲区域中移动至终点。
步骤S106,根据第一邻近点和第二邻近点确定机器在室内的路径。
在上述方案中,构建第一邻近点和第二邻近点之间的路径,在确定第一邻近点和第二邻近点之间的路径之后,其可以确定机器在室内的路径为:起始点、第一邻近点,第一邻近点至第二邻近点之间的路径、终点。
在起始点和终点处于同一楼层的情况下,可以直接规划第一邻近点与第二邻近点之间的路径,从而得到机器在室内的路径。
由上可知,本申请上述实施例根据机器的旋转安全半轴长确定起始点所在起始层的第一缓冲区域,以及终点所在终点层的第二缓冲区域;获取起始点在第一缓冲区域内对应的第一邻近点,以及终点在第二缓冲区域内对应的第二邻近点;根据第一邻近点和第二邻近点确定机器在室内的路径。上述方案获取了室内的缓冲区域,并根据起始点和终点在其对应的缓冲区域中的邻近点进行路径规划,从而使得规划的路径均为可用的路径,避免了由于部分路段不可用使得需要重新进行计算所导致的增加计算复杂度的问题,解决了现有技术中直接在室内的密集路网上进行路径规划,导致计算复杂度高的技术问题,且由于在室内的路径规划导航中结合室内结构和移动机器的尺寸规格,从而避免移动过程中撞墙,进一步提升了机器移动时的安全性。
作为一种可选的实施例,在根据机器的旋转安全半轴长确定起始点所在的起始层的第一缓冲区域之前,方法还包括:获取机器的旋转安全半轴长,其中,获取机器的旋转安全半轴长的步骤包括:确定机器的最长旋转半轴长与机器的转向安全缓冲距离之和为机器的旋转安全半轴长。
具体的,上述机器的最长旋转半轴长为机器的自身属性,是其转动时所能够接触到位置距离机器旋转轴心的长度。安全缓冲距离可以是预设的安全距离,用于在机器人发生倾斜等一些特殊情况时进行机器与障碍物之间的缓冲,进一步保证机器不会与障碍物发生碰撞。
在一种可选的实施例中,R表示机器的旋转安全半轴长,R=机器的最长旋转半轴长+机器的转向安全缓冲距离。
作为一种可选的实施例,根据机器的旋转安全半轴长确定起始点所在的起始层的第一缓冲区域,包括:将起始层的外边界向内收缩指定长度,得到起始层的第一缓冲区域,其中,指定长度为机器的旋转安全半轴长。
具体的,上述起始层的外边界可以表示起始层的外墙体,为了防止机器在移动中碰撞到外墙体,按照机器旋转安全半轴长对外边界进行收缩,得到的区域即为第一缓冲区域,主要机器在该第一缓冲区域中移动,就不会与外墙体发生碰撞。
建筑除了外墙体之外,还包括内墙体和室内的一些障碍物,内墙体和室内的障碍物同样会与机器发生碰撞,因此在将外边界向内收缩之后,还可以检测当前层是否具有内墙体和室内的障碍物,如果当前层存在内墙体和室内的障碍物,则还需要将内墙体和室内的障碍物向外膨胀上述指定长度,从而保证机器在移动过程中也不会与内墙体以及室内的障碍物发生碰撞。
在一种可选的实施例中,可以首先确定起始层的外边界、内边界以及室内障碍物,然后对外边界收缩旋转安全半轴长,并对内边界和室内障碍物膨胀旋转安全半轴长,最终得到的区域即为起始层的第一缓冲区域。
图2是根据本申请实施例的一种获取缓冲区域的示意图,结合图2所示,当前层包括外边界,将外边界收缩旋转安全半轴长后得到内部区域,该内部区域即为当前层的第一缓冲区域。
需要说明的是,获得第二缓冲区域的方式与获得第一缓冲区域的方式相同,此处不再赘述。
作为一种可选的实施例,获取起始点在第一缓冲区域内对应的第一邻近点,包括:判断起始点是否在第一缓冲区域内;如果起始点在第一缓冲区域内,确定第一邻近点为起始点本身;如果起始点不在第一缓冲区域内,在第一缓冲区域的子缓冲区域中查找与起始点距离最近的点,并确定查找到的点为第一邻近点,其中,子缓冲区域用于表示起始点所在的室内对应的缓冲区域。
具体的,上述第一缓冲区域的子缓冲区域用于表示第一缓冲区域中,与起始点处于同一室内的缓冲区域,从与起始点处于同一室内的子缓冲区域中选择第一邻近点,用于表征起始点和第一邻近点处于同一室内,机器从起始点移动至第邻近点时不需要穿墙。
在一种可选的实施例中,仍结合图2所示,起始点为S,终点为E,起始点不处于第一缓冲区域内,因此在第一缓冲区域的子缓冲区域(图2中的阴影区域)中查找与S最接近的点Nss,Nss即为起始点S对应的第一邻近点,而终点E处于第一缓冲区域内,因此终点E即为第二邻近点Nse。
需要说明的是,获得第二邻近点的方式与获得第一邻近点的方式相同,此处不再赘述。
作为一种可选的实施例,根据第一邻近点和第二邻近点确定机器在室内的路径,包括:在第一缓冲区域中查找与第一邻近点最近的第一路网节点,并在第二缓冲区域中查找与第二邻近点最近的第二路网节点;通过图的搜索算法获取第一路网节点和第二路网节点之间的候选路径,其中,候选路径通过多个路段构成;根据候选路径中的路段确定机器在室内的路径。
具体的,上述第一路网节点是在路网中距离第一邻近点最近的节点,第二路网节点是在路网中距离第二邻近点最近的节点。上述路网可以是建筑物中的立体路网,也即无论第一路网节点和第二路网节点是否处于同一楼层,均可以是基于该路网实现路径的规划。
在上述方案中,首先获取第一缓冲区域中的路网和第二缓冲区域中的路网,并在路网中获取与第一邻近点最近的第一路网节点和与第二邻近点最近的第二路网节点,然后通过图的搜索算法搜索得到两个路网节点之间的候选路径,从候选路径的所有路段中选择出允许机器移动到的路段,进而确定机器在室内的路径。
在一种可选的实施例中,找到与Nss的最近的第一网节点Vs,和与Nse最近的第二路网节点Ve。使用经典的图的搜索算法,在路网上求解Vs到Ve的路径。路径中的所有路段可以标记为:E1,E2,E3……
上述方案对于室内的移动机器路径规划和导航问题,结合室内路网、室内形状和移动机器的尺寸规格,既能利用路网路径规划方法的优点,求解大范围复杂路网形态的路径,又能利用开敞空间路径规划方法的优点,将移动机器尺寸规格与房间形状结合,进而并避免碰撞。
作为一种可选的实施例,根据候选路径中的路段确定机器在室内的路径,包括:根据所述多个路段确定出用于构成机器的路径的路段;确定所述起始点、所述第一邻近点、确定的路段、所述第二邻近点和所述终点构成所述机器在所述室内的路径。
具体的,用于构成机器的路径的路段用于表示完全属于缓冲区域内的路径。根据所述多个路段确定出用于构成机器的路径的路段,从而能够根据预先确定的起始点、第一邻近点、所确定的路段、第二邻近点和终点构成机器在室内的路径。
在一种可选的实施例中,仍结合图3所示,连接S->Nss->Fs->Es->Es+1->...->Ee->Fe->Nse->E(该示例中Nse与E为同一点)。即可得到机器在室内的路径规划的结果。
作为一种可选的实施例,机器的移动路径包括相互垂直或屏平行的直线,根据多个路段确定出用于构成机器的路径的路段,包括:从多个路段中选择第一目标路段,并确定第一邻近点为起点;通过第一目标路段向起点做垂足;如果起点通过垂足至第一目标路段的路线完全属于第一缓冲区域,确定起点通过垂足至第一目标路段的路线为用于构成机器的路径中的第一路段;将起点通过垂足至第一目标路段的路线的终点作为机器的路径中的第二路段的起点,并从多个路段中选择第二目标路段,以确定用于构成机器的路径中的第二路段;如果起点通过垂足至第一目标路段的路线不完全属于第一缓冲区域,则重新选择第一目标路段。
具体的,上述直线用于表示机器的移动路径之间相互平行或垂直,也即机器只允许直行或直角转弯,上述第一目标路段从候选路径的多个路段中选出。可以选择距离起点较远的路段,如果判断失败,即起点通过垂足至第一目标路段的路线不完全属于第一缓冲区域,则再重新进行选择,重新选择时,应选择与第一目标路段相比,距离起点较近的路段。
通过上述方式,确定出用于构成机器的路径的第一路段、第二路段……第N路段,最终达到第二路网节点,即可得到机器在室内的整体路径。
需要说明的是,每次选择的目标路段距离起点越远,机器的路径中的折线越少,直线越多,从而使得整体的机器路径越优良。
在上述方案中,通过由选择的目标路段向起点做垂足,并将起点和路段通过垂足进行连线,来判定起点通过垂足至目标路段的路线是否可用,从而从路径中查找到可用的路段。
在一种可选的实施例中,在靠近Nss的路径边中选一个边Ei,做垂足Fi,如果Nss->Fi->Ei的折线被完全包含在第一缓冲区域中,则判定Ei可用。找到离Nss最远且可用的边Es,垂足为Fs。同理得到Ee和Fe。
需要说明的是,上述方案假设机器只能横平竖直的移动,而如果机器可进行斜线或曲线移动,则可以采用对应的方法。
作为一种可选的实施例,机器的移动路径包括斜线,根据多个路段确定出用于构成机器的路径的路段,包括:确定第一邻近点为起点;从多个路段中获取距离起点最远且在第一缓冲区域内的斜线路段;确定斜线路段为构成机器的路径中的第一路段;以第一路段的终点作为第二路段的起点,获取距离起点最远且在第一缓冲区域内的斜线。
具体的,上述斜线用于表示机器的路径之间的夹角可以为任意夹角,也即机器可以按照任意角度转弯。从多个路段中获取距离起点最远且在第一缓冲区域内的斜线路段,可以减少机器的路径中的转弯数量,进而得到机器的最优路径。
在确定第一路段的终端作为第二路段的起点后所获取的距离起点最远且在第一缓冲区域内的斜线,是与上述第一路段相连的第二路段,在确定第二路段后,可以使用相同的方法确定第三路段、第四路段、第N路段,直至达到第二路网节点。
作为一种可选的实施例,机器的移动路径包括曲线,根据多个路段确定出用于构成机器的路径的路段,包括:确定第一邻近点为起点;从多个路段中获取距离起点最远且在第一缓冲区域内的曲线;确定曲线为构成机器的路径中的第一路段;以第一路段的终点作为第二路段的起点,获取距离起点最远且在第一缓冲区域内的曲线。
具体的,上述曲线用于表示机器可以按照任意路径移动。从多个路段中获取距离起点最远且在第一缓冲区域内的曲线路段,可以减少机器的路径中的转弯数量,进而得到机器的最优路径。
在确定第一路段的终端作为第二路段的起点后所获取的距离起点最远且在第一缓冲区域内的曲线,是与上述第一路段相连的第二路段,在确定第二路段后,可以使用相同的方法确定第三路段、第四路段、第N路段,直至达到第二路网节点。
实施例2
根据本发明实施例,提供了一种室内的路径获取装置的实施例,图4是根据本申请实施例的室内的路径获取装置的示意图,如图4所示,该装置包括:
第一确定模块402,用于根据机器的旋转安全半轴长确定起始点所在起始层的第一缓冲区域,以及终点所在终点层的第二缓冲区域。
获取模块404,用于获取起始点在第一缓冲区域内对应的第一邻近点,以及终点在第二缓冲区域内对应的第二邻近点。
第二确定模块406,用于根据第一邻近点和第二邻近点确定机器在室内的路径。
作为一种可选的实施例,在根据机器的旋转安全半轴长确定起始点所在的起始层的第一缓冲区域之前,上述装置还包括:第一获取模块,用于获取机器的旋转安全半轴长,其中,第一获取模块包括:第一确定子模块,用于确定机器的最长旋转半轴长与机器的转向安全缓冲距离之和为机器的旋转安全半轴长。
作为一种可选的实施例,第一确定模块包括:收缩子模块,用于将起始层的外边界向内收缩指定长度,得到起始层的第一缓冲区域,其中,指定长度为机器的旋转安全半轴长。
作为一种可选的实施例,获取模块包括:判断子模块,用于判断起始点是否在第一缓冲区域内;第二确定子模块,用于如果起始点在第一缓冲区域内,确定第一邻近点为起始点本身;第三确定子模块,用于如果起始点不在第一缓冲区域内,在第一缓冲区域的子缓冲区域中查找与起始点距离最近的点,并确定查找到的点为第一邻近点,其中,子缓冲区域用于表示起始点所在的室内对应的缓冲区域。
作为一种可选的实施例,第二确定模块包括:查找子模块,用于在第一缓冲区域中查找与第一邻近点最近的第一路网节点,并在第二缓冲区域中查找与第二邻近点最近的第二路网节点;获取子模块,用于通过图的搜索算法获取第一路网节点和第二路网节点之间的候选路径,其中,候选路径通过多个路段构成;第四确定子模块,用于根据候选路径中的路段确定机器在室内的路径。
作为一种可选的实施例,第四确定子模块包括:选择单元,用于根据多个路段确定出用于构成机器的路径的路段;确定单元,用于确定起始点、第一邻近点、确定的路段、第二邻近点和终点构成机器在室内的路径。
作为一种可选的实施例,选择单元包括:第一选择子单元,用于从多个路段中选择第一目标路段,并确定第一邻近点为起点;处理子单元,用于通过第一目标路段向起点做垂足;第一确定子单元,用于如果起点通过垂足至第一目标路段的路线完全属于第一缓冲区域,确定起点通过垂足至第一目标路段的路线为用于构成机器的路径中的第一路段;第二确定子单元,用于将起点通过垂足至第一目标路段的路线的终点作为机器的路径中的第二路段的起点,并从多个路段中选择第二目标路段,以确定用于构成机器的路径中的第二路段;第二选择子单元,用于如果起点通过垂足至第一目标路段的路线不完全属于第一缓冲区域,则重新选择第一目标路段。
作为一种可选的实施例,机器的移动路径包括斜线,选择单元包括:第三确定子单元,用于确定第一邻近点为起点;第一获取子单元,用于从多个路段中获取距离起点最远且在第一缓冲区域内的斜线路段;第四确定子单元,用于确定斜线路段为构成机器的路径中的第一路段;第二获取子单元,用于以第一路段的终点作为第二路段的起点,获取距离起点最远且在第一缓冲区域内的斜线。
作为一种可选的实施例,机器的移动路径包括曲线,选择单元包括:第五确定子单元,用于确定第一邻近点为起点;第三获取子单元,用于从多个路段中获取距离起点最远且在第一缓冲区域内的曲线;第六确定子单元,用于确定曲线为构成机器的路径中的第一路段;第四获取子单元,用于以第一路段的终点作为第二路段的起点,获取距离起点最远且在第一缓冲区域内的曲线。
实施例3
根据本发明实施例,提供了一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行实施例1中所述的室内的路径获取方法。
实施例4
根据本发明实施例,提供了一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行实施例1中所述的室内的路径获取方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (12)
1.一种室内的路径获取方法,其特征在于,包括:
根据机器的旋转安全半轴长确定起始点所在起始层的第一缓冲区域,以及终点所在终点层的第二缓冲区域;
获取所述起始点在所述第一缓冲区域内对应的第一邻近点,以及所述终点在所述第二缓冲区域内对应的第二邻近点;
根据所述第一邻近点和所述第二邻近点确定所述机器在所述室内的路径。
2.根据权利要求1所述的方法,其特征在于,在根据机器的旋转安全半轴长确定起始点所在的起始层的第一缓冲区域之前,所述方法还包括:获取所述机器的旋转安全半轴长,其中,获取所述机器的旋转安全半轴长的步骤包括:
确定所述机器的最长旋转半轴长与所述机器的转向安全缓冲距离之和为所述机器的旋转安全半轴长。
3.根据权利要求1所述的方法,其特征在于,根据机器的旋转安全半轴长确定起始点所在的起始层的第一缓冲区域,包括:
将所述起始层的外边界向内收缩指定长度,得到所述起始层的第一缓冲区域,其中,所述指定长度为所述机器的旋转安全半轴长。
4.根据权利要求1所述的方法,其特征在于,获取所述起始点在所述第一缓冲区域内对应的第一邻近点,包括:
判断所述起始点是否在所述第一缓冲区域内;
如果所述起始点在所述第一缓冲区域内,确定所述第一邻近点为所述起始点本身;
如果所述起始点不在所述第一缓冲区域内,在所述第一缓冲区域的子缓冲区域中查找与所述起始点距离最近的点,并确定查找到的点为所述第一邻近点,其中,所述子缓冲区域用于表示所述起始点所在的室内对应的缓冲区域。
5.根据权利要求1所述的方法,其特征在于,根据所述第一邻近点和所述第二邻近点确定所述机器在所述室内的路径,包括:
在所述第一缓冲区域中查找与所述第一邻近点最近的第一路网节点,并在所述第二缓冲区域中查找与所述第二邻近点最近的第二路网节点;
通过图的搜索算法获取所述第一路网节点和所述第二路网节点之间的候选路径,其中,所述候选路径通过多个路段构成;
根据所述候选路径中的所述路段确定所述机器在所述室内的路径。
6.根据权利要求5所述的方法,其特征在于,根据所述候选路径中的所述路段确定所述机器在所述室内的路径,包括:
根据所述多个路段确定出用于构成机器的路径的路段;
确定所述起始点、所述第一邻近点、确定的路段、所述第二邻近点和所述终点构成所述机器在所述室内的路径。
7.根据权利要求6所述的方法,其特征在于,所述机器的移动路径包括相互垂直或屏平行的直线,根据所述多个路段确定出用于构成机器的路径的路段,包括:
从所述多个路段中选择第一目标路段,并确定所述第一邻近点为起点;
通过所述第一目标路段向所述起点做垂足;
如果所述起点通过所述垂足至所述第一目标路段的路线完全属于所述第一缓冲区域,确定所述起点通过所述垂足至所述第一目标路段的路线为用于构成机器的路径中的第一路段;
将所述起点通过所述垂足至所述第一目标路段的路线的终点作为所述机器的路径中的第二路段的起点,并从所述多个路段中选择第二目标路段,以确定用于构成机器的路径中的第二路段;
如果所述起点通过所述垂足至所述第一目标路段的路线不完全属于所述第一缓冲区域,则重新选择所述第一目标路段。
8.根据权利要求6所述的方法,其特征在于,所述机器的移动路径包括斜线,根据所述多个路段确定出用于构成机器的路径的路段,包括:
确定所述第一邻近点为起点;
从所述多个路段中获取距离所述起点最远且在所述第一缓冲区域内的斜线路段;
确定所述斜线路段为构成所述机器的路径中的第一路段;
以所述第一路段的终点作为第二路段的起点,获取距离所述起点最远且在所述第一缓冲区域内的斜线。
9.根据权利要求6所述的方法,其特征在于,所述机器的移动路径包括曲线,根据所述多个路段确定出用于构成机器的路径的路段,包括:
确定所述第一邻近点为起点;
从所述多个路段中获取距离所述起点最远且在所述第一缓冲区域内的曲线;
确定所述曲线为构成所述机器的路径中的第一路段;
以所述第一路段的终点作为第二路段的起点,获取距离所述起点最远且在所述第一缓冲区域内的曲线。
10.一种室内的路径获取装置,其特征在于,包括:
第一确定模块,用于根据机器的旋转安全半轴长确定起始点所在起始层的第一缓冲区域,以及终点所在终点层的第二缓冲区域;
获取模块,用于获取所述起始点在所述第一缓冲区域内对应的第一邻近点,以及所述终点在所述第二缓冲区域内对应的第二邻近点;
第二确定模块,用于根据所述第一邻近点和所述第二邻近点确定所述机器在所述室内的路径。
11.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至9中任意一项所述的室内的路径获取方法。
12.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至9中任意一项所述的室内的路径获取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911368906.8A CN111121750B (zh) | 2019-12-26 | 2019-12-26 | 室内的路径获取方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911368906.8A CN111121750B (zh) | 2019-12-26 | 2019-12-26 | 室内的路径获取方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111121750A true CN111121750A (zh) | 2020-05-08 |
CN111121750B CN111121750B (zh) | 2022-04-22 |
Family
ID=70503378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911368906.8A Active CN111121750B (zh) | 2019-12-26 | 2019-12-26 | 室内的路径获取方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111121750B (zh) |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101126645A (zh) * | 2006-08-18 | 2008-02-20 | 三星电子株式会社 | 为机器人划分覆盖区域的方法及其装置 |
CN101738195A (zh) * | 2009-12-24 | 2010-06-16 | 厦门大学 | 基于环境建模与自适应窗口的移动机器人路径规划方法 |
US20110166737A1 (en) * | 2008-09-03 | 2011-07-07 | Murata Machinery, Ltd. | Route planning method, route planning device and autonomous mobile device |
CN102768736A (zh) * | 2011-05-04 | 2012-11-07 | 永泰软件有限公司 | 基于最佳路径的警力资源调度方法 |
CN106017492A (zh) * | 2016-05-13 | 2016-10-12 | 苏州东方智旅信息科技有限公司 | 一种景区内智能导航方法 |
CN106484955A (zh) * | 2016-09-14 | 2017-03-08 | 中国科学院计算技术研究所 | 一种基于Voronoi图的室内布局评价方法及系统 |
US20180017395A1 (en) * | 2016-07-12 | 2018-01-18 | Murata Machinery, Ltd. | Moving route creating method and moving route creating device |
US20180045523A1 (en) * | 2014-05-21 | 2018-02-15 | Google Inc. | Routing with Data Version Stitching |
CN107702723A (zh) * | 2017-11-27 | 2018-02-16 | 安徽工程大学 | 一种机器人路径规划方法、存储介质及设备 |
CN107990903A (zh) * | 2017-12-29 | 2018-05-04 | 东南大学 | 一种基于改进a*算法的室内agv路径规划方法 |
CN108344419A (zh) * | 2018-02-09 | 2018-07-31 | 弗徕威智能机器人科技(上海)有限公司 | 一种充电座的搜寻方法 |
CN108775902A (zh) * | 2018-07-25 | 2018-11-09 | 齐鲁工业大学 | 基于障碍物虚拟膨胀的伴随机器人路径规划方法及系统 |
CN108803586A (zh) * | 2017-04-26 | 2018-11-13 | 松下家电研究开发(杭州)有限公司 | 一种扫地机器人的工作方法 |
CN109238298A (zh) * | 2018-09-26 | 2019-01-18 | 上海联适导航技术有限公司 | 一种无人驾驶带避障的路径规划方法 |
CN109579854A (zh) * | 2019-02-01 | 2019-04-05 | 禾多科技(北京)有限公司 | 基于快速扩展随机树的无人车避障方法 |
CN110588266A (zh) * | 2019-10-22 | 2019-12-20 | 广东博智林机器人有限公司 | 一种驱动装置和agv底盘 |
-
2019
- 2019-12-26 CN CN201911368906.8A patent/CN111121750B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101126645A (zh) * | 2006-08-18 | 2008-02-20 | 三星电子株式会社 | 为机器人划分覆盖区域的方法及其装置 |
US20110166737A1 (en) * | 2008-09-03 | 2011-07-07 | Murata Machinery, Ltd. | Route planning method, route planning device and autonomous mobile device |
CN101738195A (zh) * | 2009-12-24 | 2010-06-16 | 厦门大学 | 基于环境建模与自适应窗口的移动机器人路径规划方法 |
CN102768736A (zh) * | 2011-05-04 | 2012-11-07 | 永泰软件有限公司 | 基于最佳路径的警力资源调度方法 |
US20180045523A1 (en) * | 2014-05-21 | 2018-02-15 | Google Inc. | Routing with Data Version Stitching |
CN106017492A (zh) * | 2016-05-13 | 2016-10-12 | 苏州东方智旅信息科技有限公司 | 一种景区内智能导航方法 |
US20180017395A1 (en) * | 2016-07-12 | 2018-01-18 | Murata Machinery, Ltd. | Moving route creating method and moving route creating device |
CN106484955A (zh) * | 2016-09-14 | 2017-03-08 | 中国科学院计算技术研究所 | 一种基于Voronoi图的室内布局评价方法及系统 |
CN108803586A (zh) * | 2017-04-26 | 2018-11-13 | 松下家电研究开发(杭州)有限公司 | 一种扫地机器人的工作方法 |
CN107702723A (zh) * | 2017-11-27 | 2018-02-16 | 安徽工程大学 | 一种机器人路径规划方法、存储介质及设备 |
CN107990903A (zh) * | 2017-12-29 | 2018-05-04 | 东南大学 | 一种基于改进a*算法的室内agv路径规划方法 |
CN108344419A (zh) * | 2018-02-09 | 2018-07-31 | 弗徕威智能机器人科技(上海)有限公司 | 一种充电座的搜寻方法 |
CN108775902A (zh) * | 2018-07-25 | 2018-11-09 | 齐鲁工业大学 | 基于障碍物虚拟膨胀的伴随机器人路径规划方法及系统 |
CN109238298A (zh) * | 2018-09-26 | 2019-01-18 | 上海联适导航技术有限公司 | 一种无人驾驶带避障的路径规划方法 |
CN109579854A (zh) * | 2019-02-01 | 2019-04-05 | 禾多科技(北京)有限公司 | 基于快速扩展随机树的无人车避障方法 |
CN110588266A (zh) * | 2019-10-22 | 2019-12-20 | 广东博智林机器人有限公司 | 一种驱动装置和agv底盘 |
Non-Patent Citations (2)
Title |
---|
GENE EU JAN 等: "A fast path planning algorithm for piano mover"s problem on raster", 《PROCEEDINGS, 2005 IEEE/ASME INTERNATIONAL CONFERENCE ON ADVANCED INTELLIGENT MECHATRONICS》 * |
陈若男 等: "改进A*算法在机器人室内路径规划中的应用", 《计算机应用》 * |
Also Published As
Publication number | Publication date |
---|---|
CN111121750B (zh) | 2022-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107913039B (zh) | 用于清洁机器人的区块选择方法、装置及机器人 | |
CN104548598B (zh) | 一种虚拟现实场景中寻路的方法 | |
CN106774347A (zh) | 室内动态环境下的机器人路径规划方法、装置和机器人 | |
CN101650189B (zh) | 行走路径规划方法与避开动态障碍物的导航方法 | |
CN104615138A (zh) | 一种划分移动机器人室内区域动态覆盖方法及其装置 | |
CN108268971B (zh) | 路径的搜索方法、装置、处理器和电子装置 | |
CN110772791A (zh) | 三维游戏场景的路线生成方法、装置和存储介质 | |
CN109341698B (zh) | 一种移动机器人的路径选择方法及装置 | |
CN113189988A (zh) | 一种基于Harris算法与RRT算法复合的自主路径规划方法 | |
CN114543815A (zh) | 基于基因调控网络的多智能体导航控制方法、设备及介质 | |
CN114690753A (zh) | 基于混合策略的路径规划方法、自主行进设备及机器人 | |
CN112833904A (zh) | 一种基于自由空间与快速搜索随机树算法的无人车动态路径规划方法 | |
CN111121750B (zh) | 室内的路径获取方法和装置 | |
CN112799393B (zh) | 一种面向泊车场景的地图简化系统 | |
CN102374866B (zh) | 基于走行方向的有损道路形状融合方法 | |
CN116958316B (zh) | 拓扑图生成方法、装置、计算机设备及存储介质 | |
CN115779424B (zh) | 一种导航网格寻路方法、装置、设备及介质 | |
CN117075607A (zh) | 一种适用于复杂环境的改进jps的无人车路径规划方法 | |
CN112231428A (zh) | 一种融合战场态势信息的车辆路径规划方法 | |
CN114407919B (zh) | 一种基于自动驾驶的碰撞检测方法及系统 | |
CN114397893B (zh) | 路径规划方法、机器人清扫方法及相关设备 | |
CN111412920B (zh) | 移动设备朝向转向路径的处理方法和装置 | |
CN106304231B (zh) | 一种多节点网络协同动态路径规划方法 | |
CN116540745B (zh) | 轨迹规划方法和装置、无人车和存储介质 | |
JP2010086015A (ja) | 自走式機器装置の走行ルート計画方法 |
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 |