CN113932825B - 机器人导航路径宽度获取系统、方法、机器人及存储介质 - Google Patents
机器人导航路径宽度获取系统、方法、机器人及存储介质 Download PDFInfo
- Publication number
- CN113932825B CN113932825B CN202111165820.2A CN202111165820A CN113932825B CN 113932825 B CN113932825 B CN 113932825B CN 202111165820 A CN202111165820 A CN 202111165820A CN 113932825 B CN113932825 B CN 113932825B
- Authority
- CN
- China
- Prior art keywords
- point
- pixel
- width
- obstacle
- real
- 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 abstract description 70
- 238000013507 mapping Methods 0.000 claims abstract description 48
- 238000012360 testing method Methods 0.000 claims description 78
- 230000003068 static effect Effects 0.000 claims description 43
- 238000001514 detection method Methods 0.000 claims description 33
- 230000008569 process Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 7
- 238000004891 communication Methods 0.000 claims description 5
- 238000011897 real-time detection Methods 0.000 claims description 2
- 230000004888 barrier function Effects 0.000 abstract description 5
- 230000008859 change Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 235000012054 meals Nutrition 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
-
- 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
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/28—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
- G01C21/30—Map- or contour-matching
- G01C21/32—Structuring or formatting of map data
Abstract
本发明公开了一种机器人导航路径宽度获取系统、方法、机器人及存储介质,通过获取机器人在导航路径中的实时位置信息,所述导航路径包含至少一条拓扑路段;将实时位置信息映射到场景地图中;所述场景地图上标注有障碍物区域;将实时位置信息所在的拓扑路段记录为实时拓扑路段,并在实时拓扑路段上的每一个预设位置点生成与实时拓扑路段垂直的一条像素生长线段;每一条像素生长线段均为不触及障碍物区域的最长线段;获取各像素生长线段的线段长度,并根据线段长度最短的像素生长线段,采用预设宽度映射方法计算出实时拓扑路段所属的导航路径的宽度。本发明通过像素点位拓展的方法提高了行驶宽度确定的准确性以及效率,以及机器人行驶的灵活性。
Description
技术领域
本发明涉及机器人导航技术领域,尤其涉及一种机器人导航路径宽度获取系统、方法、机器人及存储介质。
背景技术
随着科学技术的发展,越来越多领域中采用机器人代替人工的方式进行工作,提高了工作效率以及便捷性。在机器人运行过程中,机器人所处道路的宽度信息对机器人的运行策略尤为重要。在不同的道路宽度上,机器人的运行速度、避障策略以及路径规划策略等可能不同。
现有技术中,一般通过人为方式手动设置机器人的运行道路宽度,但是在机器人的实际运行路径中,可能会随时加入或减少障碍物或者存在如行人等动态障碍物等,因此机器人运行过程中的道路宽度是不断变化的,若通过人为方式手动设置机器人的运行道路宽度,无法真实反应实际的道路宽度变化,会导致机器人的运行效率降低。
发明内容
本发明实施例提供一种机器人导航路径宽度获取系统、方法、机器人及存储介质,以解决机器人运行时不能实时在线提取道路宽度的问题。
一种机器人导航路径宽度获取系统,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序计算机可读指令,所述处理器执行所述计算机可读指令时实现如下步骤:
获取机器人在导航路径中的实时位置信息,所述导航路径包含至少一条拓扑路段;
将所述实时位置信息映射到场景地图中;所述场景地图上标注有障碍物区域;
将所述实时位置信息所在的所述拓扑路段记录为实时拓扑路段,在所述实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条像素生长线段,每一条所述像素生长线段均为不触及所述障碍物区域的最长线段;
比较各所述像素生长线段的线段长度以获取线段长度最短的一条像素生长线段,根据线段长度最短的所述像素生长线段,采用预设宽度映射方法计算出所述实时拓扑路段所属的所述导航路径的宽度。
一种机器人,包括上述机器人导航路径宽度获取系统。
一种机器人导航路径宽度获取方法,包括:
获取机器人在导航路径中的实时位置信息,所述导航路径包含至少一条拓扑路段;
将所述实时位置信息映射到场景地图中;所述场景地图上标注有障碍物区域;
将所述实时位置信息所在的所述拓扑路段记录为实时拓扑路段,在所述实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条像素生长线段,每一条所述像素生长线段均为不触及所述障碍物区域的最长线段;
比较各所述像素生长线段的线段长度以获取线段长度最短的一条像素生长线段,根据线段长度最短的所述像素生长线段,采用预设宽度映射方法计算出所述实时拓扑路段所属的所述导航路径的宽度。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述机器人导航路径宽度获取方法。
上述机器人导航路径宽度获取系统、方法、机器人及存储介质,该系统通过像素点位拓展的方法在实时拓扑路段上的每一个预设位置点位上生成与实时拓扑路段垂直的像素生长线段,且每一个预设位置点位上的像素生长线段均不触及障碍物区域,以根据最短的像素生长线段确定机器人在导航路径上行驶的宽度,提高了行驶宽度确定的准确性以及效率,进而通过实时为机器人提供行驶范围,使得机器人根据实时提供的行驶宽度,可以在导航路径上行驶更加顺畅,提高了机器人行驶的灵活性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中机器人导航路径宽度获取系统的一示意图;
图2是本发明一实施例中机器人导航路径宽度获取方法的一流程图;
图3是本发明一实施例中像素点位拓展的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在一个实施例中,提供了一种机器人导航路径宽度获取系统,该机器人导航路径宽度获取系统的内部结构图可以如图1所示。该机器人导航路径宽度获取系统包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该机器人导航路径宽度获取系统的处理器用于提供计算和控制能力。该机器人导航路径宽度获取系统的存储器包括可读存储介质、内存储器。该可读存储介质存储有操作系统、计算机可读指令和数据库。该内存储器为可读存储介质中的操作系统和计算机可读指令的运行提供环境。该机器人导航路径宽度获取系统的数据库用于存储与其对应的机器人导航路径宽度获取方法所使用到的数据。该机器人导航路径宽度获取系统的网络接口用于与外部的终端通过网络连接通信。该计算机可读指令被处理器执行时以实现一种机器人导航路径宽度获取方法。本实施例所提供的可读存储介质包括非易失性可读存储介质和易失性可读存储介质。进一步地,机器人导航路径宽度获取系统还可以包括输入装置以及显示屏,该输入装置用于接收其它设备发送的信号、文本等;该显示屏可以用于显示机器人的导航路径的宽度以及行驶方向等。
在一实施例中,提供一种机器人导航路径宽度获取系统,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序计算机可读指令,如图2所示,所述处理器执行所述计算机可读指令时实现如下步骤:
S10:获取机器人在导航路径中的实时位置信息,所述导航路径包含至少一条拓扑路段。
可以理解地,导航路径可以为工作人员(如机器人进行快递分拣时的负责人、机器人场景布设的人员)预先设定的机器人行驶线路,当机器人在导航路径中行驶时,为了避免机器人与该导航路径上的障碍物发生碰撞,进而需要确定机器人在导航路径中行驶时的实时宽度。进一步地,导航路径中包含至少一条拓扑路段,该拓扑路段即为对导航路径进行分解之后得到的。实时位置信息指的是机器人当前所处导航路径上的位置,该实时位置信息可以通过如卫星定位系统,或者存储在机器人内的地图并结合定位信息获取。
S20:将所述实时位置信息映射到场景地图中;所述场景地图上标注有障碍物区域;
可以理解地,场景地图指的是与机器人当前行驶的导航路径对应的场景地图,该场景地图中包含了预先标记的障碍物区域。障碍物区域指的是包含静态障碍物(例如分拣机器人场景下的快递、货柜架子等不可自行移动的障碍物,又如配送机器人工作场景中的餐桌)的区域。
在一实施例中,步骤S20之前,也即将所述实时位置信息映射到场景地图中之前,所述处理器执行所述计算机可读指令时还实现如下步骤:
在控制机器人按照测试拓扑路径行驶时,通过所述图像获取装置获取所述机器人在所述测试拓扑路径的多个测试图像;一个所述测试图像具有一个位置坐标。
可以理解地,本实施例中的机器人可以为步骤S10中提及的机器人,也可以为用于生成场景地图的测试机器人;当该机器人为步骤S10提及的机器人时,生成的场景地图可以直接存储在该机器人上,以供机器人直接获取;当该机器人为测试机器人(不为步骤S10中提及的机器人)时,可以通过该测试机器人将场景地图导入至步骤S10中提及的机器人中,以令该机器人可以获取到场景地图。
进一步地,当本实施例的机器人为测试机器人时,通过控制该测试机器人按照各测试拓扑路径行驶,以完成对测试拓扑路径对应的场景的描绘从而得到场景地图,进而将该场景地图导入至步骤S10中提及的机器人中。图像获取装置可以为RGBD相机,该图像获取装置安装在机器人上,且与处理器通信连接,并在机器人行驶过程中拍摄多组测试图像,一个测试图像具有一个位置坐标。其中,位置坐标包含了机器人拍摄测试图像时所处位置的横向位置信息、纵向位置信息以及位置深度;位置深度即为机器人拍摄测试图像时所处的位置的深度。
具体地,在控制机器人按照测试拓扑路径行驶时,通过图像获取装置获取所述机器人在所述测试拓扑路径上不同位置的测试图像,根据各测试图像中的位置深度、横向位置信息以及纵向位置信息,确定与各测试图像对应的三维位置信息。其中,三维位置信息表征机器人在拍摄对应的测试图像时的位置信息,可以理解地,每一个测试图像均为机器人在测试拓扑路径上不同位置拍摄得到的。
进一步地,可以通过下述表达式确定与各测试图像的位置坐标对应的横向位置信息以及纵向位置信息:
其中,X为与各测试图像对应的横向位置;Y为与各测试图像对应的纵向位置信息;Z为测试图像的位置深度;(x,y)为测试图像的像素位置(x为测试图像的横向像素位置;y为测试图像的纵向像素位置);cx与cy为图像获取装置的光心;fx与fy为图像获取装置的焦距。
根据各所述测试图像的位置坐标,将各所述测试图像拼接为三维点云地图,所述三维点云地图包含三维障碍物区域。
进一步地,在生成与各测试图像对应的三维位置信息之后,由于测试图像会采集到测试拓扑路径上或者周围的障碍物信息(如静态障碍物或者动态障碍物等),确定各所述测试图像中是否包含静态障碍物,在所述测试图像中包含静态障碍物时,确定测试图像中静态障碍物与机器人所属位置之间的距离,进而根据三维位置信息以及该距离确定静态位置信息。如此,即可避免动态障碍物对于后续步骤中障碍物区域的确定(由于动态障碍物是会不断移动的,因此将动态障碍物纳入障碍物区域,可能会导致障碍物区域出现偏差)。
进一步地,在根据三维位置信息以及该距离确定静态位置信息之后,由于同一个静态障碍物可能在不同的测试图像中存在,因此可以根据各所述静态位置信息确定各所述静态障碍物所属的三维障碍物区域,并对各所述三维位置信息以及各所述三维障碍物区域进行位置拼接,得到与所述场景地图对应的三维点云地图;该三维点云地图包含了该场景下的测试拓扑路径的三维位置信息以及障碍物区域的三维位置信息。
对所述三维点云地图进行二维投影,得到二维场景地图;所述二维场景地图中包含所述三维障碍物区域投影之后与所述测试拓扑路径对应的二维障碍物区域。
具体地,在根据各所述测试图像的位置坐标,将各所述测试图像拼接为三维点云地图,所述三维点云地图包含三维障碍物区域之后,对三维点云地图进行二维投影,得到包含三维障碍物区域投影之后与测试拓扑路径对应的二维障碍物区域的二维场景地图。可以理解地,二维投影即为将三维点云地图中的三维位置信息转换为二维位置信息的方法。
进一步地,在上述说明书中指出三维位置信息包含横向坐标信息,纵向坐标信息以及位置深度,进而只需要将纵向坐标信息设定为0之后,即完成对三维点云地图进行二维投影的步骤,进而得到包含三维障碍物区域投影之后与测试拓扑路径对应的二维障碍物区域的二维场景地图。
将所述测试拓扑路径映射至所述二维场景地图中得到所述场景地图,并将所述二维障碍物区域记录为所述测试拓扑路径在所述场景地图中的障碍物区域。
具体地,在对所述三维点云地图进行二维投影,得到二维场景地图之后,将所述测试拓扑路径映射至所述二维场景地图中,得到所述场景地图,并将所述二维障碍物区域记录为所述测试拓扑路径在所述场景地图中的障碍物区域。
在一实施例中,所述机器人拓扑地图中的所述测试拓扑路径映射至所述二维场景地图中,得到所述场景地图,包括:
获取与所述测试拓扑路径对应的路径坐标系;所述路径坐标系表征所述测试拓扑路径上任意一个路径点的二维坐标信息。
可以理解地,路径坐标系指的是拓扑路径在机器人拓扑地图中的位置信息;路径点指的是测试拓扑路径上任意一个点。
获取与所述二维场景地图对应的预设地图尺度因子,并根据各所述路径点的二维坐标信息以及所述预设地图尺度因子,得到与各所述路径点对应的场景地图坐标信息之后,根据所述场景地图坐标信息生成所述场景地图。
可以理解地,预设地图尺度因子指的是从机器人拓扑地图与二维场景地图之间的图像比例。
具体地,在获取与所述拓扑路径对应的路径坐标系之后,获取与所述二维场景地图对应的预设地图尺度因子,并根据各所述路径点的二维坐标信息以及所述预设地图尺度因子,得到与各所述路径点对应的场景地图坐标信息之后,得到所述场景地图。进一步地,在得到场景地图之后,可以对该场景地图进行图像滤波,以去除场景地图中的噪点,以防止场景地图中的噪点对导航路径的宽度的获取产生影响,提高导航路径的宽度获取的准确率。
示例性地,假设其中一个路径点的二维坐标信息为P(a,b),将该路径点的横向坐标a,以及纵向坐标b同除以一个预设地图尺度因子,得到该路径点在场景地图中的二维坐标信息为P1(a/scale,b/scale)(scale即为预设地图尺度因子)。
S30:将所述实时位置信息所在的所述拓扑路段记录为实时拓扑路段,并在所述实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条像素生长线段,每一条所述像素生长线段均为不触及所述障碍物区域的最长线段。
可以理解地,在本实施例中会在实时拓扑路段上设置多个预设位置点,并从每一个预设位置点开始,向预设位置点的左右两侧依次进行像素点位拓展,进而在预设位置点生成与实时拓扑路段垂直的像素生长线段。其中,像素生长线段是指在预设位置点上生成的不触及障碍物区域的最长线段;可以理解地,在一个预设位置点上不触及障碍物区域的线段存在多个,而像素生长线段则是在该预设位置点上不触及障碍物区域的多条线段中最长的线段。
进一步地,像素点位拓展是指预先设定一个像素间隔(可以根据需求进行设定,如设定为1个像素、2个像素等),进而在预设位置点的左侧的像素间隔处生成一个左像素点,并在该左像素点未触及障碍物区域时,继续在该左像素点的左侧的像素间隔处生成另一个左像素点,直至生成的左像素点触及障碍物区域时停止;同理,还需要在预设位置点的右侧的像素间隔处生成一个右像素点,并在该右像素点未触及障碍物区域时,继续在该右像素点的右侧的像素间隔处生成另一个右像素点,直至生成的右像素点触及障碍物区域时停止。其中,在机器人自实时拓扑路段的起始端朝向终点端行驶过程中,机器人的左方即为上述定义的左侧,机器人的右方即为上述定义的右侧。
在一实施例中,步骤S30中,也即所述在所述实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条像素生长线段,包括:
在所述实时拓扑路段的两个端点之间生成间隔位置点,并将所述实时拓扑路段的两个端点以及各所述间隔位置点记录为所述预设位置点。
可以理解地,针对每一个实时拓扑路段其存在两个端点(也即一个起始端点以及一个钟点端点)。进一步地,间隔位置点可以通过预设选取间隔进行选取,其中,预设选取间隔可以根据需求进行选定,示例性地,预设选取间隔可以为一个像素,也即每间隔一个像素生成一个间隔位置点;进而在实时拓扑路段的两个端点之间生成间隔位置点之后,将实时拓扑路段的两个端点以及各间隔位置点记录为预设位置点。
自所述预设位置点开始,向相对两侧远离所述预设位置点的方向进行像素点位拓展,生成与所述预设位置点对应的像素生长线段。
具体地,在将所述实时拓扑路段的两个端点以及各所述间隔位置点记录为所述预设位置点之后,自预设位置点开始,向相对两侧远离该预设位置点的方向进行像素点位拓展;如在机器人从实时拓扑路段的起始端(如图3中的A1)朝向终点端(如图3中的A5)行驶时,机器人的左侧即为在实时拓扑路段上的预设位置点的左侧,机器人的右侧即为在实时拓扑路段上的预设位置点的右侧;如此,像素点位拓展也即在预设位置点的正左侧(正左侧即为在预设位置点的左侧且与预设位置点平行的方向)进行像素取点,以及在预设位置点的正右侧(正右侧即为在预设位置点的右侧且与预设位置点平行的方向)进行像素取点,进而生成与预设位置点对应的像素生长线段。
在一实施例中,所述自所述预设位置点开始,向相对两侧远离所述预设位置点的方向进行像素点位拓展,生成与所述预设位置点对应的像素生长线段,包括:
根据预设拓展距离自所述预设位置点开始,向相对两侧远离所述预设位置点的方向进行像素点位拓展,得到左像素点以及右像素点。
可选地,预设拓展距离可以根据拓展需求进行选取,示例性地,预设拓展距离可以为一个像素点、两个像素点等。
具体地,在将所述实时位置信息所在的所述拓扑路段记录为实时拓扑路段之后,根据预设拓展距离自所述预设位置点开始,向相对两侧远离所述预设位置点的方向进行像素点位拓展,也即向预设位置点的左侧进行像素点位拓展(如在预设位置点左侧的预设拓展距离生成一个左侧点位,在该左侧点位左侧的预设拓展距离生成又一个点位),以及向预设位置点的右侧进行像素点位拓展(如在预设位置点右侧的预设拓展距离生成一个右侧点位,在该右侧点位右侧的预设拓展距离生成又一个点位),从而得到左像素点和右像素点。
检测所述左像素点是否触及所述障碍物区域,在所述左像素点触及所述障碍物区域时,停止对所述预设位置点向左侧进行像素点位拓展并将触及所述障碍物区域的左像素点记录为左重叠像素点,将在所述左重叠像素点之前且相邻的左像素点记录为左宽度点。
可以理解地,在实时拓扑路段的左侧和右侧均可能存在障碍物区域,因此需要检测左像素点是否触及障碍物区域;本实施例中判定左像素点是否触及障碍物区域包括:其一:左像素点是否处于障碍物区域内;其二:左像素点是否与障碍物区域的边界重叠;若左像素点处于障碍物区域内,或左像素点与障碍物区域的边界重叠,则判定左像素点触及障碍物区域,进而在检测到左像素点触及障碍物区域时,停止对预设位置点向左侧进行像素点位拓展,并将触及障碍物区域的左像素点记录为左重叠像素点,将在左重叠像素点之前且相邻的左像素点记录为左宽度点,该左宽度点没有触及障碍物区域。
检测所述右像素点是否触及所述障碍物区域,在所述右像素点触及所述障碍物区域时,停止对所述预设位置点向右侧进行像素点位拓展并将触及所述障碍物区域的右像素点记录为右重叠像素点,将在所述右重叠像素点之前且相邻的右像素点记录为右宽度点。
可以理解地,在实时拓扑路段的左侧和右侧均可能存在障碍物区域,因此需要检测右像素点是否触及障碍物区域;本实施例中判定右像素点是否触及障碍物区域包括:其一:右像素点是否处于障碍物区域内;其二:右像素点是否与障碍物区域的边界重叠;若右像素点处于障碍物区域内,或右像素点与障碍物区域的边界重叠,则判定右像素点触及障碍物区域,进而在检测到右像素点触及障碍物区域时,停止对预设位置点向右侧进行像素点位拓展,并将触及障碍物区域的右像素点记录为右重叠像素点,将在右重叠像素点之前且相邻的右像素点记录为右宽度点,该右宽度点没有触及障碍物区域。
将所述左宽度点和右宽度点之间的连线记录为与所述预设位置点对应的像素生长线段。
具体地,在确定左宽度点和右宽度点之后,将左宽度点和右宽度点之间的连线记录为与预设位置点对应的像素生长线段。
示例性地,如图3所示,L1为实时拓扑路段,T为机器人,A1和A5为实时拓扑路段的两端(其中,A1为起始端,A5为终点端),D为障碍物区域;A2为在实时拓扑路段的两个端点之间生成的其中一个间隔位置点,也即其中一个预设位置点,以该预设位置点A2为例,对其向左右两侧进行像素点位拓展,得到左像素点(如图3中预设位置点A2左侧的像素点,A3即为最后一个不触及障碍物区域D的左像素点)以及右像素点(如图3中预设位置点A2右侧的像素点,A4即为最后一个不触及障碍物区域D的右像素点)。其中,A3即为左宽度点,A4即为右宽度点(如图3中所示,若A3继续向左侧进行像素点位拓展,则拓展后的像素点处于障碍物区域内,也即为左重叠像素点;若A4继续向右侧进行像素点位拓展,则拓展后的像素点也处于障碍物区域内,也即为右重叠像素点);进而左宽度点A3以及右宽度点A4之间的连接为L2,也即L2为像素生长线段。
在一实施例中,所述将在所述左重叠像素点之前一个左像素点记录为左宽度点之后,所述处理器执行所述计算机可读指令时还实现如下步骤:
获取所述左宽度点与所述障碍物区域之间的第一间距,并将所述第一间距与预设最小拓展距离阈值进行比较。
可以理解地,第一间距实质是指左宽度点与障碍物区域的边界之间的线段的长度。在上述实施例中指出通过预设拓展距离进行像素点位拓展,可能由于预设拓展距离设置较大(如预设拓展距离设置为三个像素时),进而导致左宽度点与障碍物区域之间的第一间距还比较宽(如第一间距为大于两个像素且小于三个像素时),进而导致最终生成的像素生长线段准确率较低,因此本实施例中将第一间距与预设最小拓展距离阈值进行比较。其中,预设最小拓展距离阈值可以根据需求进行设定,示例性地,预设最小拓展距离阈值可以设定为1个像素等。
在所述第一间距大于或等于所述预设最小拓展距离阈值时,将所述预设拓展距离调整为所述最小拓展距离阈值。
根据所述最小拓展距离阈值对所述左宽度点向左侧进行像素拓展,得到更新后的左宽度点,并根据更新后的左宽度点更新所述像素生长线段。
具体地,在将所述第一间距与预设最小拓展距离阈值进行比较之后,若第一间距大于或等于预设最小拓展距离阈值,则将预设拓展距离调整为所述最小拓展距离阈值,并根据最小拓展距离阈值对左宽度点向左侧进行像素点位拓展,得到更新后的左宽度点(该更新后的左宽度点仍不触及障碍物区域),并根据更新后的左宽度点更新像素生长线段(也即将更新后的左宽度点与右宽度点之间的连线记录为更新的像素生长线段)。
进一步地,若第一间距小于预设最小拓展距离阈值,则不更新所述左宽度点;在更新左宽度点之后还可以继续确定是否可以继续更新,其更新步骤与上述步骤相同,也即后续还可能对左宽度点继续进行更新,在此不再赘述。
在一实施例中,所述将在所述右重叠像素点之前一个右像素点记录为右宽度点之后,所述处理器执行所述计算机可读指令时还实现如下步骤:
获取所述右宽度点与所述障碍物区域之间的第二间距,并将所述第二间距与预设最小拓展距离阈值进行比较。
可以理解地,第二间距实质是指右宽度点与障碍物区域的边界之间的线段的长度。在上述实施例中指出通过预设拓展距离进行像素点位拓展,可能由于预设拓展距离设置较大(如预设拓展距离设置为三个像素时),进而导致右宽度点与障碍物区域之间的第二间距还比较宽(如第二间距为大于两个像素且小于三个像素时),进而导致最终生成的像素生长线段准确率较低,因此本实施例中将第二间距与预设最小拓展距离阈值进行比较。
在所述第二间距大于或等于所述预设最小拓展距离阈值时,将所述预设拓展距离调整为所述最小拓展距离阈值。
根据所述最小拓展距离阈值对所述右宽度点向右侧进行像素点位拓展,得到更新后的右宽度点,并根据更新后的右宽度点更新所述像素生长线段。
具体地,在将所述第二间距与预设最小拓展距离阈值进行比较之后,若第二间距大于或等于预设最小拓展距离阈值,则将预设拓展距离调整为所述最小拓展距离阈值,并根据最小拓展距离阈值对右宽度点向左侧进行像素点位拓展,得到更新后的右宽度点(该更新后的右宽度点仍不触及障碍物区域),并根据更新后的右宽度点更新像素生长线段(也即将更新后的右宽度点与左宽度点之间的连线记录为更新的像素生长线段)。
进一步地,若第二间距小于预设最小拓展距离阈值,则不更新右宽度点;若左宽度点和右宽度点均存在更新,则根据更新后的左宽度点和更新后的右宽度点更新像素生长线段;在更新左宽度点之后还可以继续确定是否可以继续更新,其更新步骤与上述步骤相同,也即后续还可能对左宽度点继续进行更新,在此不再赘述。
S40:比较各所述像素生长线段的线段长度以获取线段长度最短的一条像素生长线段,根据线段长度最短的所述像素生长线段,采用预设宽度映射方法计算出所述实时拓扑路段所属的所述导航路径的宽度。
可以理解地,导航路径的宽度即为机器人在实时位置信息处可以在导航路径上的行驶范围,不可以超出导航路径宽度,如此可以提前为机器人确定出不与障碍物发生碰撞的行驶范围,提高了机器人行驶的安全性。预设宽度映射方法用于将最短的像素生长线段映射为机器人实际运行过程中的导航路径的宽度。
具体地,在实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条像素生长线段之后,获取各像素生长线段的线段长度,并将各像素生长线段的线段长度进行排序,从而确定出线段长度最短的像素生长线段,并根据该线段长度最短的像素生长线段采用预设宽度映射方法计算出实时拓扑路段所属的导航路径的宽度,以令机器人在该导航路径的宽度行驶以安全通过导航路径;进一步地,在机器人以导航路径的宽度行驶过程中,若检测到存在障碍物时,该机器人可以执行障碍物避让策略,以确保机器人的行驶安全性。
在本实施例中,通过像素点位拓展的方法在实时拓扑路段上的每一个预设位置点位上生成与实时拓扑路段垂直的像素生长线段,且每一个预设位置点位上的像素生长线段均不触及障碍物区域,以根据最短的像素生长线段确定机器人在导航路径上行驶的宽度,提高了行驶宽度确定的准确性以及效率,进而通过实时为机器人提供行驶范围,使得机器人根据实时提供的行驶宽度,可以在导航路径上行驶更加顺畅,提高了机器人行驶的灵活性。
在一实施例中,所述根据所述最大像素拓展区域采用预设宽度映射方法计算出所述导航路径的宽度之后,所述处理器执行所述计算机可读指令时还实现如下步骤:
控制所述机器人在所述导航路径的宽度内行驶,并实时检测是否存在新障碍物区域。
可以理解地,新障碍物区域可以为障碍物区域的位置信息发生变更,例如障碍物区域中的障碍物的位置信息发生变更,或者障碍物区域之外的其它区域产生新的障碍物,亦或者障碍物区域中的障碍物消失等,均表明存在新障碍物区域。示例性地,存在新障碍物区域可能包括如下可能性:其一:障碍物区域中添加了新的障碍物,使得障碍物区域扩大;其二:障碍物区域中存在障碍物的位置移动,使得障碍物区域缩小或者位置发生变化。
在一具体实施例中,所述机器人导航路径宽度获取系统还包括安装于机器人上的障碍物检测装置,所述障碍物检测装置与所述处理器通信连接,所述实时检测所述拓扑路段中是否存在新障碍物区域,包括:
通过障碍物检测装置,在所述机器人行驶过程中实时探测静态障碍物和动态障碍物。
可以理解地,障碍物检测装置用于机器人行驶过程中对当前行驶的道路前方亦或者周围的障碍物进行探测的装置,该障碍物检测装置可以基于光学视觉感知技术,或者基于超声波传感器等构建。
在所述障碍物检测装置探测到静态障碍物时,将与所述静态障碍物对应的区域映射至场景地图中并记录为静态障碍物区域。
可以理解地,静态障碍物指的是如送餐机器人场景下的桌子,椅子,储物柜等不可自行移动的障碍物。静态障碍物区域即为机器人在拓扑路段的行驶宽度范围内行驶时,检测到的静态障碍物在场景地图中所属的区域,该静态障碍物区域可以为一个也可以为多个。
具体地,在通过安装于所述机器人本体的障碍物检测装置,在所述机器人行驶过程中进行障碍物探测之后,若障碍物检测装置探测到静态障碍物,则将与静态障碍物对应的区域映射至场景地图中,也即将实际中静态障碍物所属的区域映射至场景地图中,得到静态障碍物在场景地图中所属的静态障碍物区域。其中,将与静态障碍物对应的区域映射至场景地图中可以通过尺度因子转换的方式,也即获取场景地图与实际场景(也即机器人拓扑地图)之间的尺度转换因子,进而将静态障碍物对应的区域除以该尺度转换因子,即可得到静态障碍物在场景地图中的静态障碍物区域。
在所述障碍物检测装置探测到动态障碍物时,将与所述动态障碍物对应的区域映射至场景地图中并记录为无障碍物区域。
具体地,障碍物检测装置除了可以检测静态障碍物之外还可以检测到动态障碍物(如行人,其它机器人等可自行移动的物体),将与动态障碍物对应的区域映射至场景地图中,并在场景地图中将包含动态障碍物的区域设置为无障碍物区域,并且由于动态障碍物占用道路宽度只是暂时的,并不会一直占用道路,因此本实施例中即使检测到动态障碍物该无障碍物区域在场景地图中也不会影响导航路径的宽度的计算。
根据所述无障碍物区域以及所述静态障碍物区域确定障碍物检测区域。
将所述障碍物检测区域与所述障碍物区域进行像素位置比对,在所述障碍物检测区域与所述障碍物区域之间的像素位置不一致时,确定存在新障碍物区域。
具体地,在根据所述无障碍物区域以及所述静态障碍物区域确定障碍物检测区域之后,将障碍物检测区域与障碍物区域进行像素位置比对,在障碍物检测区域与障碍物区域之间的像素位置不一致时,例如发生了静态障碍物的移动,或者无障碍物区域取代了障碍物区域等,即可确定存在新障碍物区域。
进一步地,如步骤S40所述,本发明是通过距离拓扑路段最近的左像素区域以及右像素区域与障碍物区域之间的重叠部分确定导航路径宽度,因此在将障碍物检测区域与障碍物区域进行位置比对时,可以通过确认距离拓扑路段最近,且与左像素区域和/或右像素区域具有重叠部分的障碍物区域,与障碍物检测区域之间是否发生更新。示例性地,假设障碍物区域与第二个左像素区域存在重叠部分,且该障碍物区域是距离拓扑路段左侧最近的区域,若障碍物检测区域与第三个左像素区域存在重叠部分,且该障碍物检测区域是距离拓扑路段左侧最近的区域,则可以确定存在新障碍物区域,可以提高数据处理效率。
在存在新障碍物区域时,根据所述新障碍物区域在所述场景地图中更新所述拓扑路段对应的障碍物区域。
具体地,在实时检测所述拓扑路段中是否存在新障碍物区域之后,若存在新障碍物区域,则根据新障碍物区域在场景地图中更新障碍物区域。
在所述实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条更新后的像素生长线段;每一条所述像素生长线段均为所述预设位置点上生成且不触及更新后的障碍物区域的最长线段。
具体地,在根据所述新障碍物区域在所述场景地图中更新所述拓扑路段对应的障碍物区域之后,在所述实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条更新后的像素生长线段。
根据更新后且最短的所述像素生长线段,采用预设宽度映射方法计算出所述实时拓扑路段所属的所述导航路径的更新宽度。
具体地,在所述实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条更新后的像素生长线段之后,将更新后的像素生长线段进行比较,并根据更新后且最短的所述像素生长线段,采用预设宽度映射方法计算出所述实时拓扑路段所属的所述导航路径的更新宽度。
在一实施例中,提供一种机器人,包括上述机器人导航路径宽度获取系统。所述机器人包括壳体,机器人导航路径宽度获取系统中的存储器以及处理器安装在壳体内部,以保护存储器以及处理器,进而提高存储器以及处理器的使用寿命;机器人导航路径宽度获取系统中的障碍物检测装置安装在壳体上,以在机器人行驶过程中进行障碍物探测,且障碍物检测装置与处理器通信连接;机器人导航路径宽度获取系统中的图像获取装置安装在壳体上,以在机器人行驶过程中获取测试图像,以根据测试图像生成场景地图,且图像获取装置与处理器通信连接。
在一实施例中,如图2所示,提供一种机器人导航路径宽度获取方法,该机器人导航路径宽度获取方法与上述实施例中机器人导航路径宽度获取系统一一对应,并该机器人导航路径宽度获取方法应用在机器人导航路径宽度获取系统中,该机器人导航路径宽度获取方法包括如下步骤:
S10:获取机器人在导航路径中的实时位置信息;所述导航路径包含至少一条拓扑路段;
S20:将所述实时位置信息映射到场景地图中;所述场景地图上标注有障碍物区域;
S30:将所述实时位置信息所在的所述拓扑路段记录为实时拓扑路段,在所述实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条像素生长线段,每一条所述像素生长线段均为不触及所述障碍物区域的最长线段;
S40:比较各所述像素生长线段的线段长度以获取线段长度最短的一条像素生长线段,根据线段长度最短的所述像素生长线段,采用预设宽度映射方法计算出所述实时拓扑路段所属的所述导航路径的宽度。
在本实施例中,通过像素点位拓展的方法在实时拓扑路段上的每一个预设位置点位上生成与实时拓扑路段垂直的像素生长线段,且每一个预设位置点位上的像素生长线段均不触及障碍物区域,以根据最短的像素生长线段确定机器人在导航路径上行驶的宽度,提高了行驶宽度确定的准确性以及效率进而通过实时为机器人提供行驶范围,使得机器人根据实时提供的行驶宽度,可以在导航路径上行驶更加顺畅,提高了机器人行驶的灵活性。
在一实施例中,所述在所述实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条像素生长线段,包括:
在所述实时拓扑路段的两个端点之间生成间隔位置点,并将所述实时拓扑路段的两个端点以及各所述间隔位置点记录为所述预设位置点;
自所述预设位置点开始,向相对两侧远离所述预设位置点的方向进行像素点位拓展,生成与所述预设位置点对应的像素生长线段。
在一实施例中,所述自所述预设位置点开始,向相对两侧远离所述预设位置点的方向进行像素点位拓展,生成与所述预设位置点对应的像素生长线段,包括:
根据预设拓展距离自所述预设位置点开始,向相对两侧远离所述预设位置点的方向进行像素点位拓展,得到左像素点以及右像素点;
检测所述左像素点是否触及所述障碍物区域,在所述左像素点触及所述障碍物区域时,停止对所述预设位置点向左侧进行像素点位拓展并将触及所述障碍物区域的左像素点记录为左重叠像素点,将在所述左重叠像素点之前且相邻的左像素点记录为左宽度点;
检测所述右像素点是否触及所述障碍物区域,在所述右像素点触及所述障碍物区域时,停止对所述预设位置点向右侧进行像素点位拓展并将触及所述障碍物区域的右像素点记录为右重叠像素点,将在所述右重叠像素点之前且相邻的右像素点记录为右宽度点;
将所述左宽度点和右宽度点之间的连线记录为与所述预设位置点对应的像素生长线段。
在一实施例中,所述将在所述左重叠像素点之前一个左像素点记录为左宽度点之后,还包括:
获取所述左宽度点与所述障碍物区域之间的第一间距,并将所述第一间距与预设最小拓展距离阈值进行比较;
在所述第一间距大于或等于所述预设最小拓展距离阈值时,将所述预设拓展距离调整为所述最小拓展距离阈值;
根据所述最小拓展距离阈值对所述左宽度点向左侧进行像素点位拓展,得到更新后的左宽度点,并根据更新后的左宽度点更新所述像素生长线段。
在一实施例中,所述将在所述右重叠像素点之前一个右像素点记录为右宽度点之后,还包括:
获取所述右宽度点与所述障碍物区域之间的第二间距,并将所述第二间距与预设最小拓展距离阈值进行比较;
在所述第二间距大于或等于所述预设最小拓展距离阈值时,将所述预设拓展距离调整为所述最小拓展距离阈值;
根据所述最小拓展距离阈值对所述右宽度点向右侧进行像素点位拓展,得到更新后的右宽度点,并根据更新后的右宽度点更新所述像素生长线段。
在一实施例中,所述根据最短的所述像素生长线段,采用预设宽度映射方法计算出所述实时拓扑路段所属的所述导航路径的宽度,包括:
获取与最短的所述像素生长线段对应的所述左宽度点并记录为最短左宽度点,以及与最短的所述像素生长线段对应的右宽度点并记录为最短右宽度点;
将最短的所述像素生长线段包含的预设位置点记录为最短位置点,并确定所述最短左宽度点距离所述最短位置点的左像素值,以及所述最短右宽度点距离所述最短位置点的右像素值;
将所述左像素值与所述右像素值之和记录为宽度像素值,并根据所述宽度像素值采用预设宽度映射方法计算出所述导航路径的宽度。
在一实施例中,所述将所述实时位置信息映射到场景地图中之前,还包括如下步骤:
在控制机器人按照测试拓扑路径行驶时,通过图像获取装置获取所述机器人在所述测试拓扑路径的多个测试图像;一个所述测试图像具有一个位置坐标;
根据各所述测试图像的位置坐标,将各所述测试图像拼接为三维点云地图,所述三维点云地图包含三维障碍物区域;
对所述三维点云地图进行二维投影,得到二维场景地图;所述二维场景地图中包含所述三维障碍物区域投影之后与所述测试拓扑路径对应的二维障碍物区域;
将所述测试拓扑路径映射至所述二维场景地图中得到所述场景地图,并将所述二维障碍物区域记录为所述测试拓扑路径在所述场景地图中的障碍物区域。
在一实施例中,所述通过预设路径映射方法,将所述测试拓扑路径映射至所述二维场景地图中,得到所述场景地图,包括:
获取与所述测试拓扑路径对应的路径坐标系;所述路径坐标系表征所述测试拓扑路径上任意一个路径点的二维坐标信息;
获取与所述二维场景地图对应的预设地图尺度因子,并根据各所述路径点的二维坐标信息以及所述预设地图尺度因子,得到与各所述路径点对应的场景地图坐标信息之后,根据所述场景地图坐标信息生成所述场景地图。
在一实施例中,所述根据最短的所述像素生长线段,采用预设宽度映射方法计算出所述实时拓扑路段所属的所述导航路径的宽度之后,还包括:
控制所述机器人在所述导航路径的宽度内行驶,并实时检测是否存在新障碍物区域;
在存在新障碍物区域时,根据所述新障碍物区域在所述场景地图中更新所述障碍物区域;
在所述实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条更新后的像素生长线段;每一条所述像素生长线段均为所述预设位置点上生成且不触及更新后的障碍物区域的最长线段;
根据更新后且最短的所述像素生长线段,采用预设宽度映射方法计算出所述实时拓扑路段所属的所述导航路径的更新宽度。
在一实施例中,所述实时检测所述实时拓扑路段中是否存在新障碍物区域,包括:
通过所述障碍物检测装置,在所述机器人行驶过程中实时探测静态障碍物和动态障碍物;
所述障碍物检测装置探测到静态障碍物时,将与所述静态障碍物对应的区域映射至所述场景地图中并记录为静态障碍物区域;
所述障碍物检测装置探测到动态障碍物时,将与所述动态障碍物对应的区域映射至所述场景地图中并记录为无障碍物区域;
根据所述无障碍物区域以及所述静态障碍物区域确定障碍物检测区域;
将所述障碍物检测区域与所述障碍物区域进行像素位置比对,在所述障碍物检测区域与所述障碍物区域之间的像素位置不一致时,确定存在新障碍物区域。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例中机器人导航路径宽度获取方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (14)
1.一种机器人导航路径宽度获取系统,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序计算机可读指令,其特征在于,所述处理器执行所述计算机可读指令时实现如下步骤:
获取机器人在导航路径中的实时位置信息,所述导航路径包含至少一条拓扑路段;
将所述实时位置信息映射到场景地图中;所述场景地图上标注有障碍物区域;
将所述实时位置信息所在的所述拓扑路段记录为实时拓扑路段,在所述实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条像素生长线段,每一条所述像素生长线段均为不触及所述障碍物区域的最长线段;
比较各所述像素生长线段的线段长度以获取线段长度最短的一条像素生长线段,根据线段长度最短的所述像素生长线段,采用预设宽度映射方法计算出所述实时拓扑路段所属的所述导航路径的宽度;
所述根据线段长度最短的所述像素生长线段,采用预设宽度映射方法计算出所述实时拓扑路段所属的所述导航路径的宽度,包括:
获取与线段长度最短的所述像素生长线段对应的左宽度点并记录为最短左宽度点,以及与线段长度最短的所述像素生长线段对应的右宽度点并记录为最短右宽度点;
将线段长度最短的所述像素生长线段包含的预设位置点记录为最短位置点,并确定所述最短左宽度点距离所述最短位置点的左像素值,以及所述最短右宽度点距离所述最短位置点的右像素值;
将所述左像素值与所述右像素值之和记录为宽度像素值,并根据所述宽度像素值采用预设宽度映射方法计算出所述导航路径的宽度。
2.如权利要求1所述的机器人导航路径宽度获取系统,其特征在于,所述在所述实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条像素生长线段,包括:
在所述实时拓扑路段的两个端点之间生成间隔位置点,并将所述实时拓扑路段的两个端点以及各所述间隔位置点记录为所述预设位置点;
自所述预设位置点开始,向相对两侧远离所述预设位置点的方向进行像素点位拓展,生成与所述预设位置点对应的像素生长线段。
3.如权利要求2所述的机器人导航路径宽度获取系统,其特征在于,所述自所述预设位置点开始,向相对两侧远离所述预设位置点的方向进行像素点位拓展,生成与所述预设位置点对应的像素生长线段,包括:
根据预设拓展距离,自所述预设位置点开始,向相对两侧远离所述预设位置点的方向进行像素点位拓展,得到左像素点以及右像素点;
检测所述左像素点是否触及所述障碍物区域,在所述左像素点触及所述障碍物区域时,停止对所述预设位置点向左侧进行像素点位拓展并将触及所述障碍物区域的左像素点记录为左重叠像素点,将在所述左重叠像素点之前且相邻的左像素点记录为左宽度点;
检测所述右像素点是否触及所述障碍物区域,在所述右像素点触及所述障碍物区域时,停止对所述预设位置点向右侧进行像素点位拓展并将触及所述障碍物区域的右像素点记录为右重叠像素点,将在所述右重叠像素点之前且相邻的右像素点记录为右宽度点;
将所述左宽度点和右宽度点之间的连线记录为与所述预设位置点对应的像素生长线段。
4.如权利要求3所述的机器人导航路径宽度获取系统,其特征在于,所述将在所述左重叠像素点之前一个左像素点记录为左宽度点之后,所述处理器执行所述计算机可读指令时还实现如下步骤:
获取所述左宽度点与所述障碍物区域之间的第一间距,并将所述第一间距与预设最小拓展距离阈值进行比较;
在所述第一间距大于或等于所述预设最小拓展距离阈值时,将所述预设拓展距离调整为所述最小拓展距离阈值;
根据所述最小拓展距离阈值对所述左宽度点向左侧进行像素点位拓展,得到更新后的左宽度点,并根据更新后的左宽度点更新所述像素生长线段。
5.如权利要求3所述的机器人导航路径宽度获取系统,其特征在于,所述将在所述右重叠像素点之前一个右像素点记录为右宽度点之后,所述处理器执行所述计算机可读指令时还实现如下步骤:
获取所述右宽度点与所述障碍物区域之间的第二间距,并将所述第二间距与预设最小拓展距离阈值进行比较;
在所述第二间距大于或等于所述预设最小拓展距离阈值时,将所述预设拓展距离调整为所述最小拓展距离阈值;
根据所述最小拓展距离阈值对所述右宽度点向右侧进行像素点位拓展,得到更新后的右宽度点,并根据更新后的右宽度点更新所述像素生长线段。
6.如权利要求1所述的机器人导航路径宽度获取系统,其特征在于,所述机器人导航路径宽度获取系统还包括安装于机器人上的图像获取装置;所述图像获取装置与所述处理器通信连接;
所述将所述实时位置信息映射到场景地图中之前,所述处理器执行所述计算机可读指令时还包括如下步骤:
在控制机器人按照测试拓扑路径行驶时,通过所述图像获取装置获取所述机器人在所述测试拓扑路径的多个测试图像;一个所述测试图像具有一个位置坐标;
根据各所述测试图像的位置坐标,将各所述测试图像拼接为三维点云地图,所述三维点云地图包含三维障碍物区域;
对所述三维点云地图进行二维投影,得到二维场景地图;所述二维场景地图中包含所述三维障碍物区域投影之后与所述测试拓扑路径对应的二维障碍物区域;
将所述测试拓扑路径映射至所述二维场景地图中得到所述场景地图,并将所述二维障碍物区域记录为所述测试拓扑路径在所述场景地图中的障碍物区域。
7.如权利要求6所述的机器人导航路径宽度获取系统,其特征在于,所述将所述测试拓扑路径映射至所述二维场景地图中得到所述场景地图,包括:
获取与所述测试拓扑路径对应的路径坐标系;所述路径坐标系表征所述测试拓扑路径上任意一个路径点的二维坐标信息;
获取与所述二维场景地图对应的预设地图尺度因子,并根据各所述路径点的二维坐标信息以及所述预设地图尺度因子,得到与各所述路径点对应的场景地图坐标信息之后,根据所述场景地图坐标信息生成所述场景地图。
8.如权利要求1所述的机器人导航路径宽度获取系统,其特征在于,根据最短的所述像素生长线段,采用预设宽度映射方法计算出所述实时拓扑路段所属的所述导航路径的宽度之后,所述处理器执行所述计算机可读指令时还包括如下步骤:
控制所述机器人在所述导航路径的宽度内行驶,并实时检测是否存在新障碍物区域;
在存在新障碍物区域时,根据所述新障碍物区域在所述场景地图中更新所述障碍物区域;
在所述实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条更新后的像素生长线段;每一条所述像素生长线段均为所述预设位置点上生成且不触及更新后的障碍物区域的最长线段;
根据更新后且所述线段长度最短的所述像素生长线段,采用预设宽度映射方法计算出所述实时拓扑路段所属的所述导航路径的更新宽度。
9.如权利要求8所述的机器人导航路径宽度获取系统,其特征在于,所述机器人导航路径宽度获取系统还包括安装于机器人上的障碍物检测装置;所述障碍物检测装置与所述处理器通信连接;
所述实时检测所述实时拓扑路段中是否存在新障碍物区域,包括:
通过所述障碍物检测装置,在所述机器人行驶过程中实时探测静态障碍物和动态障碍物;
所述障碍物检测装置探测到静态障碍物时,将与所述静态障碍物对应的区域映射至所述场景地图中并记录为静态障碍物区域;
所述障碍物检测装置探测到动态障碍物时,将与所述动态障碍物对应的区域映射至所述场景地图中并记录为无障碍物区域;
根据所述无障碍物区域以及所述静态障碍物区域确定障碍物检测区域;
将所述障碍物检测区域与所述障碍物区域进行像素位置比对,在所述障碍物检测区域与所述障碍物区域之间的像素位置不一致时,确定存在新障碍物区域。
10.一种机器人,其特征在于,包括如权利要求1至9任一项所述机器人导航路径宽度获取系统。
11.一种机器人导航路径宽度获取方法,其特征在于,包括:
获取机器人在导航路径中的实时位置信息,所述导航路径包含至少一条拓扑路段;
将所述实时位置信息映射到场景地图中;所述场景地图上标注有障碍物区域;
将所述实时位置信息所在的所述拓扑路段记录为实时拓扑路段,在所述实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条像素生长线段,每一条所述像素生长线段均为不触及所述障碍物区域的最长线段;
比较各所述像素生长线段的线段长度以获取线段长度最短的一条像素生长线段,根据线段长度最短的所述像素生长线段,采用预设宽度映射方法计算出所述实时拓扑路段所属的所述导航路径的宽度;
所述根据线段长度最短的所述像素生长线段,采用预设宽度映射方法计算出所述实时拓扑路段所属的所述导航路径的宽度,包括:
获取与线段长度最短的所述像素生长线段对应的左宽度点并记录为最短左宽度点,以及与线段长度最短的所述像素生长线段对应的右宽度点并记录为最短右宽度点;
将线段长度最短的所述像素生长线段包含的预设位置点记录为最短位置点,并确定所述最短左宽度点距离所述最短位置点的左像素值,以及所述最短右宽度点距离所述最短位置点的右像素值;
将所述左像素值与所述右像素值之和记录为宽度像素值,并根据所述宽度像素值采用预设宽度映射方法计算出所述导航路径的宽度。
12.如权利要求11所述的机器人导航路径宽度获取方法,其特征在于,所述在所述实时拓扑路段上的每一个预设位置点生成与所述实时拓扑路段垂直的一条像素生长线段,包括:
在所述实时拓扑路段的两个端点之间生成间隔位置点,并将所述实时拓扑路段的两个端点以及各所述间隔位置点记录为所述预设位置点;
自所述预设位置点开始,向相对两侧远离所述预设位置点的方向进行像素点位拓展,生成与所述预设位置点对应的像素生长线段。
13.如权利要求12所述的机器人导航路径宽度获取方法,其特征在于,所述自所述预设位置点开始,向相对两侧远离所述预设位置点的方向进行像素点位拓展,生成与所述预设位置点对应的像素生长线段,包括:
根据预设拓展距离,自所述预设位置点开始,向相对两侧远离所述预设位置点的方向进行像素点位拓展,得到左像素点以及右像素点;
检测所述左像素点是否触及所述障碍物区域,在所述左像素点触及所述障碍物区域时,停止对所述预设位置点向左侧进行像素点位拓展并将触及所述障碍物区域的左像素点记录为左重叠像素点,将在所述左重叠像素点之前且相邻的左像素点记录为左宽度点;
检测所述右像素点是否触及所述障碍物区域,在所述右像素点触及所述障碍物区域时,停止对所述预设位置点向右侧进行像素点位拓展并将触及所述障碍物区域的右像素点记录为右重叠像素点,将在所述右重叠像素点之前且相邻的右像素点记录为右宽度点;
将所述左宽度点和右宽度点之间的连线记录为与所述预设位置点对应的像素生长线段。
14.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求11至13任一项所述机器人导航路径宽度获取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111165820.2A CN113932825B (zh) | 2021-09-30 | 2021-09-30 | 机器人导航路径宽度获取系统、方法、机器人及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111165820.2A CN113932825B (zh) | 2021-09-30 | 2021-09-30 | 机器人导航路径宽度获取系统、方法、机器人及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113932825A CN113932825A (zh) | 2022-01-14 |
CN113932825B true CN113932825B (zh) | 2024-04-09 |
Family
ID=79277862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111165820.2A Active CN113932825B (zh) | 2021-09-30 | 2021-09-30 | 机器人导航路径宽度获取系统、方法、机器人及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113932825B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116540776B (zh) * | 2023-06-05 | 2023-11-07 | 深圳市华赛睿飞智能科技有限公司 | 一种无人机视觉避障方法及系统 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000230834A (ja) * | 1999-02-10 | 2000-08-22 | Daihatsu Motor Co Ltd | 道路地図情報の更新装置及びその制御方法 |
JP2001022934A (ja) * | 1999-07-07 | 2001-01-26 | Tokai Rika Co Ltd | 車両における走行路認識方法及び走行路認識装置 |
CN106092102A (zh) * | 2016-07-20 | 2016-11-09 | 广州极飞电子科技有限公司 | 一种无人机路径规划方法及装置 |
CN109074668A (zh) * | 2018-08-02 | 2018-12-21 | 深圳前海达闼云端智能科技有限公司 | 路径导航方法、相关装置及计算机可读存储介质 |
CN109427062A (zh) * | 2017-08-30 | 2019-03-05 | 深圳星行科技有限公司 | 道路特征标记方法、装置、计算机设备以及可读存储介质 |
CN109947109A (zh) * | 2019-04-02 | 2019-06-28 | 北京石头世纪科技股份有限公司 | 机器人工作区域地图构建方法、装置、机器人和介质 |
CN109974725A (zh) * | 2017-12-28 | 2019-07-05 | 北京三快在线科技有限公司 | 一种路网拓扑构建方法、导航路径计算方法及装置 |
CN109978925A (zh) * | 2017-12-27 | 2019-07-05 | 深圳市优必选科技有限公司 | 一种机器人位姿的识别方法及其机器人 |
CN110146090A (zh) * | 2019-06-26 | 2019-08-20 | 张收英 | 机器人靠右行走导航方法和机器人 |
CN111220157A (zh) * | 2020-01-10 | 2020-06-02 | 重庆康爵特智能科技有限公司 | 基于区域分割的导航路径规划方法及计算机可读存储介质 |
CN111595356A (zh) * | 2020-04-27 | 2020-08-28 | 珠海市一微半导体有限公司 | 一种激光导航机器人的工作区域构建方法 |
CN112020461A (zh) * | 2018-04-27 | 2020-12-01 | 图森有限公司 | 用于确定汽车到车道距离的系统和方法 |
JP2021105963A (ja) * | 2019-12-27 | 2021-07-26 | アマノ株式会社 | 自律走行作業装置 |
-
2021
- 2021-09-30 CN CN202111165820.2A patent/CN113932825B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000230834A (ja) * | 1999-02-10 | 2000-08-22 | Daihatsu Motor Co Ltd | 道路地図情報の更新装置及びその制御方法 |
JP2001022934A (ja) * | 1999-07-07 | 2001-01-26 | Tokai Rika Co Ltd | 車両における走行路認識方法及び走行路認識装置 |
CN106092102A (zh) * | 2016-07-20 | 2016-11-09 | 广州极飞电子科技有限公司 | 一种无人机路径规划方法及装置 |
CN109427062A (zh) * | 2017-08-30 | 2019-03-05 | 深圳星行科技有限公司 | 道路特征标记方法、装置、计算机设备以及可读存储介质 |
CN109978925A (zh) * | 2017-12-27 | 2019-07-05 | 深圳市优必选科技有限公司 | 一种机器人位姿的识别方法及其机器人 |
CN109974725A (zh) * | 2017-12-28 | 2019-07-05 | 北京三快在线科技有限公司 | 一种路网拓扑构建方法、导航路径计算方法及装置 |
CN112020461A (zh) * | 2018-04-27 | 2020-12-01 | 图森有限公司 | 用于确定汽车到车道距离的系统和方法 |
CN109074668A (zh) * | 2018-08-02 | 2018-12-21 | 深圳前海达闼云端智能科技有限公司 | 路径导航方法、相关装置及计算机可读存储介质 |
CN109947109A (zh) * | 2019-04-02 | 2019-06-28 | 北京石头世纪科技股份有限公司 | 机器人工作区域地图构建方法、装置、机器人和介质 |
CN110146090A (zh) * | 2019-06-26 | 2019-08-20 | 张收英 | 机器人靠右行走导航方法和机器人 |
JP2021105963A (ja) * | 2019-12-27 | 2021-07-26 | アマノ株式会社 | 自律走行作業装置 |
CN111220157A (zh) * | 2020-01-10 | 2020-06-02 | 重庆康爵特智能科技有限公司 | 基于区域分割的导航路径规划方法及计算机可读存储介质 |
CN111595356A (zh) * | 2020-04-27 | 2020-08-28 | 珠海市一微半导体有限公司 | 一种激光导航机器人的工作区域构建方法 |
Non-Patent Citations (2)
Title |
---|
"利用邻域质心投票从分类后影像提取道路中心线";丁磊 等;《中国图象图形学报》;20151231(第11期);正文第1526-1534页 * |
"基于视觉的AGV转向模型和控制研究";艾青;《信息科技辑》;20120315(第3期);正文10-48页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113932825A (zh) | 2022-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11530924B2 (en) | Apparatus and method for updating high definition map for autonomous driving | |
US11415994B2 (en) | Method and apparatus for planning travelling path, and vehicle | |
RU2713958C2 (ru) | Способ и устройство содействия при парковке | |
EP3950235B1 (en) | Self-propelled robot path planning method, self-propelled robot and storage medium | |
CN111813101B (zh) | 机器人路径规划方法、装置、终端设备及存储介质 | |
US20220412770A1 (en) | Map construction method for autonomous driving and related apparatus | |
CN109765902B (zh) | 无人车驾驶参考线处理方法、装置及车辆 | |
CN111830979A (zh) | 一种轨迹优化方法和装置 | |
CN112539749B (zh) | 机器人导航方法、机器人、终端设备及存储介质 | |
CN109186618B (zh) | 地图构建方法、装置、计算机设备及存储介质 | |
CN111762519B (zh) | 引导拣选机器人作业的方法、系统和调度装置 | |
CN113190010B (zh) | 一种沿边绕障路径规划方法、芯片及机器人 | |
JP6863027B2 (ja) | 立体物検出処理装置 | |
KR102475039B1 (ko) | 지도 정보 갱신 장치, 방법 및 시스템 | |
CN110550030A (zh) | 无人车的变道控制方法、装置、计算机设备和存储介质 | |
CN113932825B (zh) | 机器人导航路径宽度获取系统、方法、机器人及存储介质 | |
CN113607161B (zh) | 机器人导航路径宽度获取系统、方法、机器人及存储介质 | |
JP2021123178A (ja) | 経路計画装置、経路計画方法、経路計画プログラム | |
CN116342745A (zh) | 车道线数据的编辑方法、装置、电子设备及存储介质 | |
CN113033267B (zh) | 车辆定位方法、装置、计算机设备和存储介质 | |
JP7095559B2 (ja) | 区画線検出装置及び区画線検出方法 | |
JP6936673B2 (ja) | 地図データ更新システムおよび地図データ更新プログラム | |
KR102009479B1 (ko) | 이동 로봇 제어 장치 및 방법 | |
CN113031006B (zh) | 一种定位信息的确定方法、装置及设备 | |
CN115562296A (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 |