CN117826776A - 基于地图轮廓的区域分界线搜索方法 - Google Patents
基于地图轮廓的区域分界线搜索方法 Download PDFInfo
- Publication number
- CN117826776A CN117826776A CN202211171762.9A CN202211171762A CN117826776A CN 117826776 A CN117826776 A CN 117826776A CN 202211171762 A CN202211171762 A CN 202211171762A CN 117826776 A CN117826776 A CN 117826776A
- Authority
- CN
- China
- Prior art keywords
- target
- line
- area
- scanning line
- point
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 230000035772 mutation Effects 0.000 claims abstract description 115
- 230000008569 process Effects 0.000 claims abstract description 25
- 230000008859 change Effects 0.000 claims description 51
- 238000005192 partition Methods 0.000 claims description 35
- 238000004364 calculation method Methods 0.000 description 10
- 238000004140 cleaning Methods 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000004888 barrier function Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本发明公开基于地图轮廓的区域分界线搜索方法,所述区域分界线搜索方法包括:在机器人通过测距传感器获得室内环境的轮廓点后,机器人按照目标搜索方向遍历目标扫描线;其中,机器人将每条目标扫描线配置为由两个轮廓点连成的线段,并将每条目标扫描线都配置为与目标搜索方向垂直设置;在所述目标扫描线中,所述目标扫描线的两个端点之间是属于可通行区域;在按照目标搜索方向遍历目标扫描线的过程中,逐条检测目标扫描线的端点;若在其中一条目标扫描线中检测到第一突变位置点且在对应一条目标扫描线中检测到第二突变位置点,则连接第一突变位置点和第二突变位置点,获得区域分界线。
Description
技术领域
本发明涉及地图区域划分的技术领域,尤其涉及基于地图轮廓的区域分界线搜索方法。
背景技术
用户可以为清洁机器人指定清洁分区,控制清洁机器人移动至指定清洁分区进行清洁。当用户为清洁机器人指定多个清洁分区时,会区分出走廊和房间区域;机器人通常在连接走廊和房间区域的通道区域处,选择间距最小的两个边界点的连线所在位置作为门框位置,以分割出走廊和房间区域。
但是由于经常受到家具杂物以及门开关状态的影响,间距最小的两个边界点的连线没有与门框所在位置重合,而且一般是呈水平和竖直分布,则形成的分界线不能适应各种户型方位中的门框位置或区域入口位置,需要进一步优化调整现有技术中设置出的分界线。
发明内容
为了解决房间与长廊之间的分界线规划的准确性问题,本发明公开基于地图轮廓的区域分界线搜索方法,具体的技术方案如下:
基于地图轮廓的区域分界线搜索方法,所述区域分界线搜索方法包括:在机器人通过测距传感器获得室内环境的轮廓点后,机器人按照目标搜索方向遍历目标扫描线;其中,机器人将每条目标扫描线配置为由两个轮廓点连成的线段,并将每条目标扫描线都配置为与目标搜索方向垂直设置;在所述目标扫描线中,所述目标扫描线的两个端点之间是属于可通行区域;在按照目标搜索方向遍历目标扫描线的过程中,逐条检测目标扫描线的端点;若在其中一条目标扫描线中检测到第一突变位置点且在对应一条目标扫描线中检测到第二突变位置点,则连接第一突变位置点和第二突变位置点,获得区域分界线,其中,第一突变位置点不同于第二突变位置点,第一突变位置点和第二突变位置点都属于目标扫描线的端点。
进一步地,在其中一条目标扫描线中检测到第一突变位置点的方法包括:每当按照所述目标搜索方向遍历到目标扫描线,则计算该目标扫描线的第一端点与第一预设边界的距离,并将该距离标记为该目标扫描线的第一端点的参考距离,并将该目标扫描线的第一端点的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第一端点的参考比值;然后将上一次遍历到的目标扫描线的第一端点的参考比值减去当前遍历到的目标扫描线的第一端点的参考比值,获得参考比值的差值,再将参考比值的差值配置为相邻两条目标扫描线的第一端点的参考比值的变化值;若检测到相邻两条目标扫描线的第一端点的参考比值的变化值是处于第一参考阈值范围,则将当前遍历到的目标扫描线的第一端点设置为第一突变位置点;或者,按照所述目标搜索方向遍历完所有的目标扫描线的第一端点后,在第一端点的参考比值的变化值最大的相邻两条目标扫描线中,将长度相对小的目标扫描线的第一端点设置为第一突变位置点。
进一步地,在其中一条目标扫描线中检测到第一突变位置点的方法包括:每当按照所述目标搜索方向遍历到目标扫描线,则计算该目标扫描线的第一端点与第一预设边界的距离,并将该距离标记为该目标扫描线的第一端点的参考距离,将该目标扫描线的第一端点的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第一端点的参考比值;若当前遍历到的目标扫描线的第一端点的参考比值是处于第二参考阈值范围,则将当前遍历到的目标扫描线的第一端点设置为第一突变位置点;或者,按照所述目标搜索方向遍历完所有的目标扫描线的第一端点后,将参考比值最大的第一端点设置为第一突变位置点。
进一步地,在对应一条目标扫描线中检测到第二突变位置点的方法包括:每当按照所述目标搜索方向遍历到目标扫描线,则计算该目标扫描线的第二端点与第二预设边界的距离,并将该距离标记为该目标扫描线的第二端点的参考距离,将该目标扫描线的第二端点的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第二端点的参考比值;然后将上一次遍历到的目标扫描线的第二端点的参考比值减去当前遍历到的目标扫描线的第二端点的参考比值,获得参考比值的差值,并将参考比值的差值配置为相邻两条目标扫描线的第二端点的参考比值的变化值;若检测到相邻两条目标扫描线的第二端点的参考比值的变化值是处于第一参考阈值范围,则将当前遍历到的目标扫描线的第二端点设置为第二突变位置点;或者,按照所述目标搜索方向遍历完所有的目标扫描线的第二端点后,在第二端点的参考比值的变化值最大的相邻两条目标扫描线中,将长度相对小的目标扫描线的第二端点设置为第二突变位置点。
进一步地,在对应一条目标扫描线中检测到第二突变位置点的方法包括:每当按照所述目标搜索方向遍历到目标扫描线,则计算该目标扫描线的第二端点与第二预设边界的距离,并将该距离标记为该目标扫描线的第二端点的参考距离,将该目标扫描线的第二端点的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第二端点的参考比值;若当前遍历到的目标扫描线的第二端点的参考比值是处于第二参考阈值范围,则将当前遍历到的目标扫描线的第二端点设置为第二突变位置点;或者,按照所述目标搜索方向遍历完所有的目标扫描线的第二端点后,将参考比值最小的第二端点设置为第二突变位置点。
进一步地,机器人按照所述目标搜索方向遍历目标扫描线的过程中,计算出的目标扫描线的每个端点的参考比值是变大;所述目标搜索方向是被配置为从长廊区域内的一个搜索起点指向待遍历的工作分区内对应的位置;预设轮廓线长度是长廊区域内的最长轮廓线的长度、或待遍历的工作分区内的指定的轮廓线长度;长廊区域内的可通行区域在所述目标搜索方向的垂直方向上的长度大于待遍历的工作分区内的可通行区域在所述目标搜索方向的垂直方向上的长度;待遍历的工作分区相对于长廊区域的方位关系是预先获得;其中,所述目标扫描线的两个端点分别是可通行区域的两侧轮廓线上的轮廓点。
进一步地,所述第一突变位置点和所述第二突变位置点分别是同一条目标扫描线的两个端点;或者所述第一突变位置点和所述第二突变位置点的连线与目标扫描线相交,其中,所述其中一条目标扫描线与所述对应一条目标扫描线是不同的目标扫描线。
进一步地,长廊区域和工作分区都被标记在同一平面地图区域内的状态下,存在以下情况:若所述目标搜索方向是竖直朝向时,所述第一预设边界是配置为长廊区域的左侧的轮廓线,所述第二预设边界是配置为长廊区域的右侧的轮廓线,所述目标扫描线的第一端点是所述目标扫描线的左端点,所述目标扫描线的第二端点是所述目标扫描线的右端点;若所述目标搜索方向是水平朝向时,所述第一预设边界是配置为长廊区域的上侧的轮廓线,所述第二预设边界是配置为长廊区域的下侧的轮廓线,所述目标扫描线的第一端点是所述目标扫描线的上端点,所述目标扫描线的第二端点是所述目标扫描线的下端点。
进一步地,所述目标扫描线的遍历方式包括:每当按照所述目标搜索方向遍历到预设扫描线时,判断当前遍历到的预设扫描线是否被不可通行区域分割为至少两条线段,是则将偏离对应方位处的待遍历的房间区域最近的线段标记为目标扫描线,否则将该预设扫描线标记为目标扫描线;然后从当前标记的目标扫描线开始,按照所述目标搜索方向,在当前标记的目标扫描线的所述目标搜索方向上的可通行区域内继续遍历所述预设扫描线,以标记出新的目标扫描线,其中,当前标记的目标扫描线的所述目标搜索方向上的可通行区域的覆盖范围是小于或等于所述当前遍历到的一条预设扫描线的所述目标搜索方向上的可通行区域的覆盖范围。
进一步地,所述目标搜索方向是配置为地图的纵坐标轴正方向或地图的纵坐标轴负方向时,在室内环境内设置出平行于横坐标轴的预设扫描线,其中,每条预设扫描线是在处于同一纵坐标的前提下,横坐标的差值的绝对值最大的两个轮廓点连成的线段;以使得每条目标扫描线都是分布为平行于地图的横坐标轴,则每次遍历的目标扫描线上的各个点的纵坐标相同;或者,所述目标搜索方向是配置为地图的横坐标轴正方向或地图的横坐标轴负方向时,在室内环境内设置出平行于纵坐标轴的预设扫描线,其中,每条预设扫描线是在处于同一横坐标的前提下,纵坐标的差值的绝对值最大的两个轮廓点连成的线段;以使得每条目标扫描线都是分布为平行于地图的纵坐标轴,则每次遍历的目标扫描线上的各个点的横坐标相同。
进一步地,当前遍历到的预设扫描线被不可通行区域分割为至少两条线段时,若检测到存在至少一条线段相对于一个方位处的待遍历的工作分区的轮廓线或中心位置的距离最近,则将当前检测到的线段标记为所述目标扫描线,并形成偏离对应方位处的待遍历的工作分区最近的线段。
进一步地,从预设扫描线的一个端点开始,按照所述预设扫描线向该预设扫描线的另一个端点遍历,除了预设扫描线的两个端点之外,当检测到存在障碍物点时,确定所述预设扫描线被不可通行区域分割,且分割出的其中两条线段分别位于障碍物点的两侧,然后将距离其中一个方位处的待遍历的工作分区距离最近的线段设置为目标扫描线,并将目标扫描线在扫描方向的相反方向上的端点设置为目标扫描线的扫描起点,其中,扫描方向是所述预设扫描线的一个端点向该预设扫描线的另一个端点的延伸方向;从预设扫描线的一个端点开始,按照所述预设扫描线向该预设扫描线的另一个端点遍历的过程中,除了预设扫描线的两个端点之外,若没有检测到障碍物点,则将所述预设扫描线设置为目标扫描线,并将所述预设扫描线中最先被遍历的端点设置为目标扫描线的扫描起点;其中,不可通行区域是由障碍物点组成,轮廓点是属于障碍物点。
进一步地,当室内环境的轮廓点、工作分区以及长廊区域都标记到栅格地图内时,每条预设扫描线在室内环境内的限定地图区域内占据一行栅格,相邻两条预设扫描线是配置为连续排布在地图区域内或按照预设间隔排布在地图区域内;在按照所述目标搜索方向遍历目标扫描线的过程中,当前遍历到的目标扫描线是位于当前遍历的一行,上一次遍历到的目标扫描线是位于上一次遍历的一行;或当前遍历到的目标扫描线是位于当前遍历的一列,上一次遍历到的目标扫描线是位于上一次遍历的一列。
本发明的技术效果在于,基于预先获知相对位置关系的长廊区域和房间区域,机器人朝着既定的搜索方向搜索相对的两侧轮廓线上的突变位置点以连接出长廊区域和房间区域之间的分界线,能够准确地确定房间区域与长廊区域之间的边界位置,更精确灵活地找到分界线,实现对机器人在室内环境内划分的各个工作分区(对应为房间区域)和最大连通区域(对应为长廊区域)之间的各种角度方向的分界线,包括斜边界、水平设置的边界和竖直设置的边界。也减少各个区域内的杂物的干扰、长廊区域和房间区域之间的门框位置附近的活动门的影响。
其中,工作分区(房间区域)内的可通行区域是小于最大连通区域(长廊区域),使得最大连通区域作为搜索起点,并将既定的搜索方向配置为由长廊区域指向其中一个待遍历的房间区域,减少房间区域内的家具和杂物等干扰;作为由两个轮廓点连成的目标扫描线选择与目标搜索方向垂直设置以匹配上地图的坐标系的坐标轴方向,并贯穿可通行区域,让目标扫描线上扫描覆盖过的位置点具有通行意义,则按照目标搜索方向逐条地遍历目标扫描线或连续遍历多条目标扫描线,有利于获取可通行区域宽度突变的位置区域、以及左右两侧的边界线上的位置突变的轮廓点(位置相向靠近的两个轮廓点)。
特别地,每当在当前遍历的目标扫描线上确定出一个第一突变位置点,则确定该第一突变位置点相对于上一次遍历(上一行)的目标扫描线的第一端点所在的轮廓线出现较大的位置偏离,偏离程度大于在先遍历的任意相邻位置处的两条目标扫描线的第一端点的偏离程度;为了获取相互靠拢的两个突变点,则设置目标扫描线的一端点与对应一侧的边界线(轮廓线)的距离都在变大,以从左右侧轮廓点当中分别搜索出距离突然变小的两个突变位置点;同理地,每当在当前遍历的目标扫描线上确定出一个第二突变位置点,则确定该第二突变位置点相对于上一次遍历(上一行)的目标扫描线的第二端点所在的轮廓线出现较大的位置偏离,偏离程度大于在先遍历的任意相邻位置处的两条目标扫描线的第二端点的偏离程度。
附图说明
图1是本发明一种实施例公开的一种基于地图轮廓的区域分界线搜索方法的流程图。
图2是本发明另一种实施例公开搜索区域分界线I1F2的示意图。
图3是本发明又一种实施例公开搜索目标扫描线E5E6的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行详细描述。为进一步说明各实施例,本发明提供有附图。这些附图为本发明揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理。配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本发明的优点。
本发明一种实施例公开一种基于地图轮廓的区域分界线搜索方法,该区域分界线搜索方法的执行主体是移动导航机器人,这个移动导航机器人上可以设置激光传感器或视觉传感器,激光传感器或视觉传感器在本发明中可以归属于测距传感器;激光传感器或视觉传感器可以检测障碍物的位姿信息,包括方向信息和距离信息,依此扫描出机器人所在的环境内的可探测区域的轮廓线及轮廓点(比如激光传感器采集的点云和视觉传感器采集的路标位置点)并标记到内建的栅格地图中,形成各个工作分区的轮廓线,包括孤立的障碍物的边缘线、墙的轮廓线等,机器人还可以在行走遍历可探测区域的过程中,按照预设的形状规则、面积大小、边缘走向、连通区域的形态等技术要素,将可探测区域划分为多个不同的工作分区,包括长廊区域和房间区域,其中,长廊区域是在一个坐标轴方向上具有最长可通行区域(最长连通区域)的工作区域;各个区域具体的划分方式可以参考中国专利CN111681250A公开的基于激光栅格地图的分割方法,但不局限于此分割方法及其背景技术提及的依据房间区域的中心位置进行区域分割的算法,甚至通过连接两侧轮廓点来划分出不同的工作分区之间的规整分界线,以形成房间封闭区域并确定各个房间区域的中心位置,但是由于活动的门、杂物干扰和小的封闭区域的干扰,这些规整的分界线尚不能与真实环境或所需遍历房间区域的有效方向上门框位置相适应。
为了解决上述技术问题,本发明实施例公开一种基于地图轮廓的区域分界线搜索方法,如图1所示,区域分界线搜索方法包括:
在机器人通过测距传感器获得室内环境的轮廓点后,机器人在地图区域内标记出房间区域和长廊区域的位置信息,房间区域可以记为机器人的工作分区,房间区域可以是居室、卫生间、客厅、餐厅、书房等,其中,客厅和餐厅都没有门框;在本实施例中房间区域可以标记为工作分区;长廊区域是具有最长连通区域(在一方向上长度最大的可通行区域),房间区域的位置信息至少包括房间区域的各个方向的轮廓线、划分出房间区域和长廊区域的原始分界线、房间区域的中心位置、长廊区域的各个方向的轮廓线和长廊区域的中心位置,对应为图2和图3当中黑白相间的边缘线,用于描述出不同工作分区的轮廓特征,地图区域内还包括不同工作区域之间的连通区域,并能够依据坐标轴方向或墙面延伸方向分别在各个工作分区内设置目标扫描线;则机器人按照目标搜索方向遍历目标扫描线,以遍历房间区域内的目标扫描线与长廊区域内的目标扫描线,具体是可以逐条地遍历目标扫描线,以目标扫描线的搜索数量优势来克服噪点的干扰。
在本实施例中,室内环境的轮廓点包括工作分区的轮廓点和长廊区域的轮廓点,可以属于相应位置的墙线上的点;机器人将每条目标扫描线都配置为由两个轮廓点连成的线段,并将每条目标扫描线都配置为与目标搜索方向垂直设置,在所述目标扫描线中,所述目标扫描线的两个端点之间是属于可通行区域,使得目标扫描线能够与其两侧的墙壁相接触,便于搜索室内环境下的特定工作分区内的相对两侧的墙壁之间的可通行区域。机器人将工作分区与长廊区域配置为按照目标搜索方向依次分布在同一室内环境中,主要是确定工作分区的中心位置与长廊区域的中心位置配置为按照目标搜索方向依次分布在同一室内环境中,具体可以将房间区域按照目标搜索方向设置在长廊区域的上方,或者将房间区域按照目标搜索方向设置在长廊区域的下方,或者将房间区域按照目标搜索方向设置在长廊区域的左侧,或者将房间区域按照目标搜索方向设置在长廊区域的右侧,其中,工作分区(房间区域)和长廊区域之间存在原始分界线,是预先确定下来的较为粗糙的分界线,起到对区域大致的划分作用,容易受到杂物的干扰,后续需要进行优化调整。
机器人在按照目标搜索方向遍历目标扫描线的过程中,逐条检测目标扫描线的端点,可以是一次遍历检测一个端点,也可以是一次遍历检测同一条目标扫描线的两个端点;若在其中一条目标扫描线中检测到第一突变位置点且在对应一条目标扫描线中检测到第二突变位置点,则将第一突变位置点和第二突变位置点连接成区域分界线,以形成长廊区域和房间区域(工作分区)之间的分界线,其中,第一突变位置点和第二突变位置点不同,第一突变位置点和第二突变位置点都属于目标扫描线的端点,但不一定是同一条目标扫描线上的两个端点,且搜索的时间也不一定相同。当存在原始分界线时,将区域分界线更新为所述长廊区域和所述房间区域(工作分区)之间的分界线;并确定同一连通区域的左右两侧轮廓线上的轮廓点的位置出现突变,具体是朝着相反坐标轴方向突变,相对于同一侧轮廓线上在先遍历的轮廓点都出现突变,以突然缩小左右两侧轮廓线上的轮廓点之间的距离,即二者相互靠拢,但不一定在同一目标扫描线上,第一突变位置点和第二突变位置点的连线可以形成与目标扫描线成一定斜角的线段,即斜边界,以适应实际环境的房间区域布局特征。优选地,第一突变位置点是其中一条目标扫描线的左端点时,第二突变位置点是对应一条目标扫描线的右端点;或者,第一突变位置点是其中一条目标扫描线的上端点时,第二突变位置点是对应一条目标扫描线的下端点;具体的表现形式与目标搜索方向在地图区域内的具体朝向相关联。可选地,使用阈值参与判断左右两侧轮廓线上的轮廓点出现突变,克服杂物干扰和小的封闭区域的干扰,能够过滤图2或图3的白色大区域内的极小的黑色区域和离散分布的黑色孤立点的干扰。
在一些实施例中,机器人可以将待遍历的房间区域设置为待遍历的工作分区,同时将一个户型朝向上最长的连通区域设置为长廊区域,该户型朝向是设置为与所述目标搜索方向相垂直设置,优选地,房间区域内的可通行区域的面积是小于长廊区域内的可通行区域的面积,且各个房间区域的中心位置与一个长廊区域的中心位置是机器人提前扫描确定下来的基本区域位置信息。由于长廊区域较为空旷,所以机器人可以将长廊区域的中心位置或长廊区域的轮廓点作为搜索起点,按照目标搜索方向开始遍历对应区域内的目标扫描线;优选地将所述目标搜索方向配置为由长廊区域指向其中一个待遍历的工作分区,且可以平行于坐标轴方向,减少房间区域内的家具和杂物等干扰;因而,作为由两个轮廓点连成的目标扫描线选择与目标搜索方向垂直设置以匹配上地图的坐标系的坐标轴方向,并贯穿可通行区域,让目标扫描线扫描覆盖过的位置点具有通行意义,则按照目标搜索方向逐条地遍历目标扫描线或连续遍历多条目标扫描线,有利于获取可通行区域宽度突变的位置区域、以及左右两侧的轮廓线上的位置突变的轮廓点(位置相向靠近的两个轮廓点)。
在一些实施例中,一开始将机器人启动位置设置在图2所示的地图的区域#2的中心位置、区域#2和区域#1的连通区域的下方,机器人在这个启动位置处启动激光传感器扫描周围环境,用以构建激光地图,并获取标记室内环境下的各个方位区域的轮廓线,包括墙壁轮廓、障碍物的外围边缘;然后计算激光地图中标记墙壁轮廓或障碍物的外围边缘的黑色轮廓点连成的线段的长度,即对应的激光线段长度或轮廓线的长度,在此基础上,可以获得与当前遍历位置距离最近的障碍物处标记的轮廓点(使用图2和图3的黑色像素点表示)对应的位置信息、和室内工作环境的墙壁的轮廓点的位置信息,有利于后续计算目标扫描线的两个端点的位置信息和目标扫描线实际覆盖的区域的位置信息,有效地反映出周围环境的可通行区域的轮廓特征,尤其是不存在门框的房间区域(比如客厅或餐厅)与长廊区域之间的连通区域、或门框位置所在的连通区域。
需要说明的是,工作分区可以是半闭合区域;对于门,根据房间门框的标准宽度和标准厚度信息,按照划分标准转化成轮廓点的位置信息;在使用所述目标扫描线进行遍历扫描时门被认为是可穿越的,属于可通行区域,位于一个房间区域和一个长廊区域的连通区域内,也构成以户为单位的室内通道区域。当将建筑平面图中门和窗所在位置的墙线进行连贯,且门框位置上的门是闭合时使房间转变成以各房间墙线为轮廓线的闭合区域;针对建筑平面图中所有门,每个门分别连通一个房间区域(可以是闭合区域)和一个长廊区域。
综上,本实施例基于预先获知相对位置关系的长廊区域和房间区域,机器人朝着既定的搜索方向搜索相对的两侧轮廓线上的突变位置点以连接出长廊区域和房间区域之间的分界线,减少各个区域内的杂物的干扰、长廊区域和房间区域之间的门框位置附近的活动门的影响,更精确灵活地找到分界线,实现对机器人在室内环境内划分的各个工作分区(对应为房间区域)和最大连通区域(对应为长廊区域)之间的各种角度方向的分界线,包括斜边界、水平设置的边界和竖直设置的边界。
作为依据比值的变化值搜索第一突变位置点的实施例,在其中一条目标扫描线中检测第一突变位置点的方法包括:
每当机器人按照所述目标搜索方向遍历到一条目标扫描线,则计算该目标扫描线的第一端点与第一预设边界的距离,并将该距离标记为该目标扫描线的第一端点的参考距离,并将该目标扫描线的第一端点的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第一端点的参考比值;优选地,机器人使用所述目标扫描线对垂直于所述目标搜索方向的方向所指向区域进行位置点的扫描检测时,比如检测相应一行栅格区域内的每个栅格标记的障碍物信息或可通行区域时,选择第一端点作为所述目标扫描线的扫描起始点,相应地,在按照所述目标搜索方向检测每条目标扫描线的第一端点的位置变化时,需要计算该目标扫描线的第一端点偏离一条固定的第一预设边界的距离。在本实施例中,所述目标扫描线中,所述目标扫描线的两个端点之间是属于可通行区域,以使所述目标扫描线的两个端点分别是可通行区域的两侧轮廓线上的轮廓点。然后,本实施例将上一次遍历到的目标扫描线的第一端点的参考比值减去当前遍历到的目标扫描线的第一端点的参考比值,获得参考比值的差值,再将参考比值的差值配置为相邻两条目标扫描线的第一端点的参考比值的变化值。结合图2可知,长廊区域的左侧轮廓线是第一预设边界,该目标扫描线的第一端点是该目标扫描线的左端点,所述目标搜索方向是由区域#2按照竖直方向指向区域#1,并选择区域#2的左侧轮廓线A1H1作为第一预设边界。然后将上一次遍历到的目标扫描线的第一端点的参考比值减去当前遍历到的目标扫描线的第一端点的参考比值,获得参考比值的差值,并将参考比值的差值配置为相邻两条目标扫描线的第一端点的参考比值的变化值。结合图2可知,机器人按照所述目标搜索方向遍历的第一条目标扫描线是点A1和点A2的连线并确定点A1是第一条目标扫描线的第一端点,然后机器人计算点A1偏离第一预设边界A1H1的距离并将计算结果标记为该目标扫描线的第一端点A1的参考距离,然后将点A1的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第一端点A1的参考比值,由于图2中的点A1偏离第一预设边界A1H1的距离为0,所以第一条目标扫描线的第一端点A1的参考比值为0。然后机器人按照所述目标搜索方向遍历的第二条目标扫描线是点B1和点B2的连线,即遍历到目标扫描线B1B2,并确定目标扫描线B1B2的第一端点是点B1,然后机器人计算点B1偏离第一预设边界A1H1的距离并将计算结果标记为该目标扫描线的第一端点B1的参考距离,然后将点B1的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第一端点B1的参考比值,由于图2中的点B1处于第一预设边界A1H1上,所以点B1偏离第一预设边界A1H1的距离为0,所以第二条目标扫描线的第一端点B1的参考比值为0。在本实施例中,计算参考比值可以将每条目标扫描线的第一端点相对于同一边界线的偏离距离的比较转换为基于同一预设轮廓线长度下的比率进行比较,缩小比较的数值范围,简化计算机的运算资源。优选地,机器人将所述预设轮廓线长度设置为长廊区域内的最长轮廓线的长度、或设置为待遍历的房间区域内的指定的轮廓线长度,一般形成室内环境内的最长的墙线的长度,或者一种参考户型房间的一个方向上的最长边界线的长度。然后比较相邻两次遍历的目标扫描线的第一端点的参考比值之间的大小,从而以比值变化的形式反映相邻两次遍历的目标扫描线的第一端点偏离同一边界线的距离之间的变化,能够在较小数量级范围内进行比较,节省计算资源。
在上述实施例的基础上,依次重复搜索新的目标扫描线并计算相邻两条目标扫描线的(相邻两次遍历的目标扫描线)的第一端点的参考比值的差值,具体是上一次遍历到的目标扫描线的第一端点的参考比值减去当前遍历到的目标扫描线的第一端点的参考比值而获得的差值,可以反映出相邻两条目标扫描线的第一端点的参考比值的变化值。对应到图2的实施例中,每条目标扫描线的左端点是其第一端点;机器人依次遍历到目标扫描线B1B2的左端点B1、目标扫描线C1C2的左端点C1、目标扫描线D1D2的左端点D1、目标扫描线E1E2的左端点E1、目标扫描线F1F2的左端点F1、目标扫描线G1G2的左端点G1、目标扫描线H1H2的左端点H1、目标扫描线I1I2的左端点I1;优选地,在前述任意两条目标扫描线可以存在其余未在图2中显示出来的目标扫描线,所以,上一次遍历到的目标扫描线的第一端点的参考比值与当前遍历到的目标扫描线的第一端点的参考比值的差值不一定是目标扫描线B1B2的端点B1的参考比值与目标扫描线C1C2的端点C1的参考比值的差值、或目标扫描线C1C2的左端点C1的参考比值与目标扫描线D1D2的左端点D1的参考比值的差值、或目标扫描线D1D2的左端点D1的参考比值与目标扫描线E1E2的左端点E1的参考比值的差值、或目标扫描线E1E2的左端点E1的参考比值与目标扫描线F1F2的左端点F1的参考比值的差值。其中,点A1、B1、C1、D1、E1、F1、G1、H1都在区域#2的左侧的轮廓线上且在横轴上的坐标(横坐标)都相等,点I1在区域#2和区域#1的连通区域(可以归属到区域#2或区域#1)的左侧的轮廓线上且与点H1的横坐标出现较大的差距。
在一些实施例中,机器人将所述目标搜索方向配置为由长廊区域指向待遍历的房间区域,所述目标搜索方向是被配置为从长廊区域内的一个搜索起点指向待遍历的房间区域内对应的位置;当机器人将长廊区域设置为区域#2(区域#2的连通区域比较长)且将待遍历的房间区域设置为区域#1时,所述目标搜索方向可以配置为从区域#2延伸向区域#1的方向,此时区域#2和区域#1之间存在预先确定的原始分界线,但受到存在杂物干扰和小的封闭区域的干扰,是不准确的分界线,需要引导机器人从区域#2内的一个搜索起点逐条目标扫描线地搜索至区域#1的入口或区域#1的内部以期获取所述第一突变位置点。在本实施例中,长廊区域内的可通行区域的面积大于待遍历的房间区域内的可通行区域的面积,对应到图2中,区域#2内的可通行区域(白色区域)的面积大于区域#1内的可通行区域(白色区域)的面积,机器人在图2中遍历每条目标扫描线的第一端点之前是已经确定出的待遍历的房间区域相对于长廊区域的方位关系以及房间区域与长廊区域的原始分界线,即在图2中预先确定出区域#1的中心位置以及区域#2的中心位置,区域#1的轮廓线和区域#2的轮廓线之间的相对位置关系。
作为其中一种搜索实施方式,若机器人连续遍历到的相邻两条目标扫描线(相邻两次遍历的目标扫描线)的第一端点的参考比值的变化值是处于第一参考阈值范围,则将当前遍历到的目标扫描线的第一端点设置为第一突变位置点,然后,优选地,机器人可以停止按照所述目标搜索方向继续遍历目标扫描线的第一端点,即停止按照所述目标搜索方向遍历左侧轮廓线上的轮廓点,并确定当前遍历到的目标扫描线的第一端点相对于上一次遍历到的目标扫描线的第一端点出现位置突变,在本实施例中转换为其中一种坐标轴方向上的相邻两个坐标值之间的较大数值的变化;优选地,第一参考阈值范围可以根据标准门框的边界点、餐厅的入口的边界点和/或客厅的入口的边界点到预先确定的长廊区域在一侧的边界线的距离与预先确定的长廊区域的最长墙边界线的长度的比值共同决定;第一参考阈值范围可以用于描述相邻两条目标扫描线的第一端点的位置偏移变化情况;此时,机器人可以是按照所述目标搜索方向第一次遍历到参考比值的变化值处于第一参考阈值范围的两个第一端点,是属于相邻两条目标扫描线的第一端点,在遍历时间上可以是相邻,或者在所述目标搜索方向上的排列位置上是相邻,但是同一坐标轴方向上的坐标差距比较大,大于一定的墙线阈值,可以视为机器人所遍历到的目标扫描线的第一端点(比如左端点)按照一个长廊区域的连续的横向墙壁跳跃至一个房间区域的入口的一侧的边界点处(比如一个狭窄的门框的一侧的边界点处),则机器人搜索至长廊区域与房间区域的连通区域内的符合门框宽度或餐厅的入口宽度或客厅的入口宽度的边界区域,在本实施例中,机器人搜索点和线段、以机器人遍历点和线段都是在地图区域内进行,机器人在室内环境中没有出现位移,即在执行所述区域分界线搜索方法的过程中没有在所处的室内环境中行走。优选地,如图2所示,所述目标搜索方向可以配置为从区域#2延伸向区域#1的方向,机器人在区域#2和区域#1之间的连通区域的左侧轮廓线中搜索到有效的突变点位置,对应为图2的目标扫描线I1I2的左端点I1,机器人将左端点I1标记为所述第一突变位置点;显然左端点I1相对于其下方的已遍历的所有目标扫描线的左端点出现坐标位置上的突变,具体是横坐标出现较大的变化,图2的点I1相对于点A1、B1、C1、D1、E1、F1、G1、H1的横坐标都出现较大的变化,其中,点A1、B1、C1、D1、E1、F1、G1、H1都在区域#2的左侧的轮廓线上且在横轴上的坐标(横坐标)都相等,则最新遍历到的端点I1在室内环境下比较接近房间的门框位置、餐厅的入口或客厅的入口的边界点位置特征。
作为另一种搜索实施方式,若机器人按照所述目标搜索方向遍历完所有的目标扫描线的第一端点后,可以遍历完目标扫描线I1I2的上下方的所有目标扫描线的第一端点,包括所有目标扫描线在区域#1左侧轮廓线中的端点和所有目标扫描线在区域#2的左侧轮廓线中的端点,其中,所述目标扫描线的两个端点分别是可通行区域的两侧轮廓线上的轮廓点;然后,在第一端点的参考比值的变化值最大的相邻两条目标扫描线(相邻两次遍历的目标扫描线)中,将长度相对小的一条目标扫描线的第一端点设置为第一突变位置点,作为区域分界线在所述第一预设边界所处的轮廓线中的一个端点,所述第一预设边界所处的轮廓线为室内环境的连通区域的一侧的连续的轮廓线,所述目标搜索方向配置为竖直向上以从区域#2延伸向区域#1的方向时,对应为图2的区域#1和区域#2的连通区域的左侧的轮廓线,并确定所选择的长度相对小的一条目标扫描线的第一端点相对于长度相对大的一条目标扫描线出现位置突变,具体是在所述目标搜索方向的垂直方向上的位置差距较大,所述目标搜索方向配置为竖直向上以从区域#2延伸向区域#1的方向时,第一突变位置点对应为图2的目标扫描线I1I2的左端点I1,相对于点A1、B1、C1、D1、E1、F1、G1、H1的横坐标都出现较大的变化;优选地,目标扫描线I1I2和目标扫描线H1H2可能是机器人按照所述目标搜索方向第一次搜索出的第一端点的参考比值的变化值处于第一参考阈值范围的相邻两条目标扫描线,其中的目标扫描线I1I2可以表示机器人遍历到的长度合理的一条目标扫描线,但不一定是长度最小的一条目标扫描线。
作为依据比值搜索第一突变位置点的实施例,在其中一条目标扫描线中检测到第一突变位置点的方法包括:
每当机器人按照所述目标搜索方向遍历到一条目标扫描线,则计算该目标扫描线的第一端点与第一预设边界的距离,并将该距离标记为该目标扫描线的第一端点的参考距离,将该目标扫描线的第一端点的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第一端点的参考比值;在一些实施例中,机器人使用所述目标扫描线对与所述目标搜索方向相垂直的方向所指向的区域进行位置点的扫描检测时,比如检测相应一行栅格区域内的每个栅格标记的障碍物信息或可通行区域时,选择第一端点作为所述目标扫描线的扫描起始点,相应地,在按照所述目标搜索方向检测每条目标扫描线的第一端点的位置变化情况的过程中,需要计算该目标扫描线的第一端点偏离一条固定的第一预设边界的距离,再将其与预设轮廓线长度作比值,获得该目标扫描线的第一端点的参考比值,形成本实施例中具有判断意义的比值量;其中,所述目标扫描线中,所述目标扫描线的两个端点之间是属于可通行区域,以使所述目标扫描线的两个端点分别是可通行区域的两侧轮廓线上的轮廓点。
结合图2可知,长廊区域的左侧轮廓线是第一预设边界,该目标扫描线的第一端点是该目标扫描线的左端点,所述目标搜索方向是由区域#2按照竖直方向指向区域#1,并选择区域#2的左侧轮廓线A1H1作为第一预设边界。具体地,机器人按照所述目标搜索方向遍历的第一条目标扫描线是点A1和点A2的连线并确定点A1是第一条目标扫描线的第一端点,然后机器人计算点A1偏离第一预设边界A1H1的距离并将计算结果标记为该目标扫描线的第一端点A1的参考距离,然后将点A1的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第一端点A1的参考比值,由于图2中的点A1偏离第一预设边界A1H1的距离为0,所以第一条目标扫描线的第一端点A1的参考比值为0。然后机器人按照所述目标搜索方向遍历的第二条目标扫描线是点B1和点B2的连线,即遍历到目标扫描线B1B2,并确定目标扫描线B1B2的第一端点是点B1,然后机器人计算点B1偏离第一预设边界A1H1的距离并将计算结果标记为该目标扫描线的第一端点B1的参考距离,然后将点B1的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第一端点B1的参考比值,由于图2中的点B1处于第一预设边界A1H1上,所以点B1偏离第一预设边界A1H1的距离为0,所以第二条目标扫描线的第一端点B1的参考比值是设置为0。在本实施例中,计算参考比值可以将每条目标扫描线的第一端点相对于同一边界线的偏离距离的比较转换为基于同一预设轮廓线长度下的比率进行比较,缩小比较的数值范围,简化计算机的运算资源。优选地,机器人将所述预设轮廓线长度设置为长廊区域内的最长轮廓线的长度、或设置为待遍历的房间区域内的指定的轮廓线长度,一般形成室内环境内的最长的墙线的长度,或者一种参考户型房间的一个方向上的最长边界线的长度。从而以比值变化的形式反映每次遍历的目标扫描线的第一端点偏离同一边界线的距离,能够在较小数量级范围内进行比较,节省计算资源。
对应到图2的实施例中,所述目标搜索方向是优选为竖直向上,每条目标扫描线的左端点是其第一端点;机器人依次遍历到目标扫描线B1B2的左端点B1、目标扫描线C1C2的左端点C1、目标扫描线D1D2的左端点D1、目标扫描线E1E2的左端点E1、目标扫描线F1F2的左端点F1、目标扫描线G1G2的左端点G1、目标扫描线H1H2的左端点H1、目标扫描线I1I2的左端点I1;优选地,在前述任意两条目标扫描线可以存在其余未在图2中显示出来的目标扫描线;其中,点A1、B1、C1、D1、E1、F1、G1、H1都在区域#2的左侧的轮廓线上且在横轴上的坐标(横坐标)都相等,即偏离第一预设边界A1H1的距离都相等;点I1在区域#2和区域#1的连通区域(可以归属到区域#2或区域#1)的左侧的轮廓线上且与点H1的横坐标出现较大的差距。
在一些实施例中,机器人将所述目标搜索方向配置为由长廊区域指向待遍历的房间区域,所述目标搜索方向是被配置为从长廊区域内的一个搜索起点指向待遍历的房间区域内对应的位置;当机器人将长廊区域设置为区域#2(区域#2的连通区域比较长)且将待遍历的房间区域设置为区域#1时,所述目标搜索方向可以配置为从区域#2延伸向区域#1的方向,此时区域#2和区域#1之间存在预先确定的原始分界线,但受到存在杂物干扰和小的封闭区域的干扰,是不准确的分界线,需要引导机器人从区域#2内的一个搜索起点逐条目标扫描线地搜索至区域#1的入口或区域#1的内部以期获取所述第一突变位置点。在本实施例中,长廊区域内的可通行区域的面积大于待遍历的房间区域内的可通行区域的面积,对应到图2中,区域#2内的可通行区域(白色区域)的面积大于区域#1内的可通行区域(白色区域)的面积,机器人在图2中遍历每条目标扫描线的第一端点之前是已经确定出的待遍历的房间区域相对于长廊区域的方位关系以及房间区域与长廊区域的原始分界线,即在图2中预先确定出区域#1的中心位置以及区域#2的中心位置,区域#1的轮廓线和区域#2的轮廓线之间的相对位置关系。
作为其中一种搜索实施方式,若机器人当前遍历到的目标扫描线的第一端点的参考比值是处于第二参考阈值范围,则将当前遍历到的目标扫描线的第一端点设置为第一突变位置点,然后,优选地,机器人停止按照所述目标搜索方向继续遍历目标扫描线的第一端点,即停止按照所述目标搜索方向遍历左侧轮廓线上的轮廓点,并确定当前遍历到的目标扫描线的第一端点相对于上一次遍历到的目标扫描线的第一端点出现位置突变,在本实施例中转换为其中一种坐标轴方向上的相邻两个坐标值之间的较大数值的变化;优选地,第二参考阈值范围可以根据标准门框的边界点、餐厅的入口的边界点和/或客厅的入口的边界点到预先确定的长廊区域在一侧的边界线的距离与预先确定的长廊区域的最长墙边界线的长度的比值决定,当标准门框的边界点、餐厅的入口的边界点或客厅的入口的边界点到预先确定的长廊区域在同一侧的边界线的距离与预先确定的长廊区域的最长墙边界线的长度的比值越大,则第二参考阈值范围的下限值被设置得越大,否则设置得越小;此时,机器人按照所述目标搜索方向第一次遍历到参考比值处于第二参考阈值范围的第一端点,可以表示机器人当前遍历到的一条目标扫描线的第一端点相对于在先遍历到的目标扫描线的第一端点出现位置突变,即按照一个长廊区域的连续的横向墙壁跳跃至一个房间区域的入口的一侧的边界点处(比如一个狭窄的门框的一侧的边界点处),机器人在区域#2和区域#1之间的连通区域内搜索到有效的一个边界点,对应为图2的目标扫描线I1I2的左端点,然后,优选地,机器人停止按照所述目标搜索方向继续遍历目标扫描线的第一端点,即停止在区域#2和区域#1之间的连通区域内遍历左侧轮廓线上的轮廓点;显然左端点I1相对于其下方的已遍历的所有目标扫描线的左端点出现坐标位置上的突变,具体是横坐标出现较大的变化,如图2的点I1相对于点A1、B1、C1、D1、E1、F1、G1、H1的横坐标都出现较大的变化,其中,点A1、B1、C1、D1、E1、F1、G1、H1都在区域#2的左侧的轮廓线上且在横轴上的坐标(横坐标)都相等,则最新遍历到的端点I1在室内环境下比较接近房间的门框位置的边界点、餐厅的入口的边界点或客厅的入口的边界点的位置特征。
作为另一种搜索实施方式,若机器人按照所述目标搜索方向遍历完所有的目标扫描线的第一端点后,已经遍历完目标扫描线I1I2的上下方的所有目标扫描线的第一端点,对应到图2中,机器人已遍历完所有目标扫描线在区域#1左侧轮廓线中的端点和所有目标扫描线在区域#2的左侧轮廓线中的端点,其中,所述目标扫描线的两个端点分别是可通行区域的两侧轮廓线上的轮廓点;然后机器人将参考比值最大的第一端点设置为第一突变位置点,并确定参考比值最大的第一端点相对于其余已遍历过的目标扫描线的第一端点出现比较明显的位置突变;所述目标搜索方向配置为竖直向上以从区域#2延伸向区域#1的方向时,对应为图2中,参考比值最大的第一端点是目标扫描线I1I2的左端点I1,相对于点A1、B1、C1、D1、E1、F1、G1、H1的横坐标都出现较大的变化,其中,点A1、B1、C1、D1、E1、F1、G1、H1都在区域#2的左侧的轮廓线上且在横轴上的坐标(横坐标)都相等,则最新遍历到的端点I1在室内环境下比较接近房间的门框位置的边界点、餐厅的入口的边界点或客厅的入口的边界点的位置特征。
优选地,机器人在前述搜索第一突变位置点的实施例中,按照所述目标搜索方向遍历目标扫描线的过程中,计算出的目标扫描线的第一端点的参考比值是变大,具体是在图2中按照所述目标搜索方向从区域#2遍历至区域#1与区域#2之间的连通区域的过程中,计算出的目标扫描线的第一端点(对应为图2的左端点)的参考比值是变大,在从目标扫描线A1A2开始自下向上遍历目标扫描线的过程中,目标扫描线的第一端点的参考比值的变大趋势至少维持至机器人遍历到目标扫描线I1I2的左端点I1。需要说明的是,长廊区域和房间区域都被标记在同一平面地图区域内的状态下,存在以下情况:若所述目标搜索方向是竖直朝向时,所述第一预设边界是配置为长廊区域的左侧的轮廓线,所述目标扫描线的第一端点是所述目标扫描线的左端点;若所述目标搜索方向是水平朝向时,所述第一预设边界是配置为长廊区域的上侧的轮廓线,所述目标扫描线的第一端点是所述目标扫描线的上端点。
在搜索第一突变位置点的实施例的基础上,同理地,作为依据比值的变化值搜索第二突变位置点的实施例,在其中一条目标扫描线中检测第二突变位置点的方法包括:
每当机器人按照所述目标搜索方向遍历到一条目标扫描线,则计算该目标扫描线的第二端点与第二预设边界的距离,并将该距离标记为该目标扫描线的第二端点的参考距离,并将该目标扫描线的第二端点的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第二端点的参考比值;优选地,机器人使用所述目标扫描线对垂直于所述目标搜索方向的方向所指向区域进行位置点的扫描检测时,比如检测相应一行栅格区域内的每个栅格标记的障碍物信息或可通行区域时,按照所述目标搜索方向检测对应一条目标扫描线的第二端点的位置变化时,需要计算该目标扫描线的第二端点偏离一条固定的第二预设边界的距离。然后,本实施例将上一次遍历到的目标扫描线的第二端点的参考比值减去当前遍历到的目标扫描线的第二端点的参考比值,获得参考比值的差值,再将参考比值的差值配置为相邻两条目标扫描线的第二端点的参考比值的变化值。结合图2可知,长廊区域的右侧轮廓线是第二预设边界,该目标扫描线的第二端点是该目标扫描线的右端点,所述目标搜索方向是由区域#2按照竖直方向指向区域#1,并选择区域#2的右侧轮廓线A2B2作为第二预设边界。然后将上一次遍历到的目标扫描线的第二端点的参考比值减去当前遍历到的目标扫描线的第二端点的参考比值,获得参考比值的差值,并将参考比值的差值配置为相邻两条目标扫描线的第二端点的参考比值的变化值。结合图2可知,机器人按照所述目标搜索方向遍历的第一条目标扫描线是点A1和点A2的连线并确定点A2是第一条目标扫描线的第二端点,然后机器人计算点A2偏离第二预设边界A2B2的距离并将计算结果标记为该目标扫描线的第二端点A2的参考距离,然后将点A2的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第二端点A2的参考比值,由于图2中的点A2偏离第二预设边界A2B2的距离为0,所以第一条目标扫描线的第二端点A2的参考比值为0。然后机器人按照所述目标搜索方向遍历的第二条目标扫描线是点B1和点B2的连线,即遍历到目标扫描线B1B2,并确定目标扫描线B1B2的第二端点是点B2,然后机器人计算点B2偏离第二预设边界A2B2的距离并将计算结果标记为该目标扫描线的第二端点B2的参考距离,然后将点B2的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第二端点B2的参考比值,由于图2中的点B2处于第二预设边界A2B2上,所以点B2偏离第二预设边界A2B2的距离为0,所以第二条目标扫描线的第二端点B2的参考比值为0。在本实施例中,计算参考比值可以将每条目标扫描线的第二端点相对于同一边界线的偏离距离的比较转换为基于同一预设轮廓线长度下的比率进行比较,缩小比较的数值范围,简化计算机的运算资源。优选地,机器人将所述预设轮廓线长度设置为长廊区域内的最长轮廓线的长度、或设置为待遍历的房间区域内的指定的轮廓线长度,一般形成室内环境内的最长的墙线的长度,或者一种参考户型房间的一个方向上的最长边界线的长度。然后比较相邻两次遍历的目标扫描线的第二端点的参考比值之间的大小,从而以比值变化的形式反映相邻两次遍历的目标扫描线的第二端点偏离同一边界线的距离之间的变化,能够在较小数量级范围内进行比较,节省计算资源。
在上述实施例的基础上,依次重复搜索新的目标扫描线并计算相邻两条目标扫描线的(相邻两次遍历的目标扫描线)的第二端点的参考比值的差值,具体是上一次遍历到的目标扫描线的第二端点的参考比值减去当前遍历到的目标扫描线的第二端点的参考比值而获得的差值,可以反映出相邻两条目标扫描线的第二端点的参考比值的变化值。对应到图2的实施例中,每条目标扫描线的右端点是其第二端点;机器人依次遍历到目标扫描线B1B2的右端点B2、目标扫描线C1C2的右端点C2、目标扫描线D1D2的右端点D2、目标扫描线E1E2的右端点E2、目标扫描线F1F2的右端点F2等;优选地,在前述任意两条目标扫描线可以存在其余未在图2中显示出来的目标扫描线,所以,上一次遍历到的目标扫描线的第二端点的参考比值与当前遍历到的目标扫描线的第二端点的参考比值的差值不一定是目标扫描线B1B2的端点B2的参考比值与目标扫描线C1C2的端点C2的参考比值的差值、或目标扫描线C1C2的端点C2的参考比值与目标扫描线D1D2的端点D2的参考比值的差值、或目标扫描线D1D2的端点D2的参考比值与目标扫描线E1E2的端点E2的参考比值的差值、或目标扫描线E1E2的端点E2的参考比值与目标扫描线F1F2的端点F2的参考比值的差值,特别是在目标扫描线C1C2的端点C2与目标扫描线D1D2的端点D2之间还存在多个被遍历到的目标扫描线的右端点。其中,点A2、B2、C2、D2、E2、F2都在区域#2的右侧的轮廓线上且部分点在横轴上的坐标(横坐标)相等。
作为其中一种搜索实施方式,若机器人连续遍历到的相邻两条目标扫描线(相邻两次遍历的目标扫描线)的第二端点的参考比值的变化值是处于第一参考阈值范围,则将当前遍历到的目标扫描线的第二端点设置为第二突变位置点,优选地,机器人可以停止按照所述目标搜索方向继续遍历目标扫描线的第二端点,即停止按照所述目标搜索方向遍历右侧轮廓线上的轮廓点,并确定当前遍历到的目标扫描线的第二端点相对于上一次遍历到的目标扫描线的第二端点出现位置突变,在本实施例中转换为其中一种坐标轴方向上的相邻两个坐标值之间的较大数值的变化;优选地,第一参考阈值范围可以根据标准门框的边界点、餐厅的入口的边界点或客厅的入口的边界点到预先确定的长廊区域在一侧的边界线的距离与预先确定的长廊区域的最长墙边界线的长度的比值决定;第一参考阈值范围也可以用于描述相邻两条目标扫描线的第二端点的位置偏移变化情况;此时,机器人可以是按照所述目标搜索方向第一次遍历到参考比值的变化值处于第一参考阈值范围的相邻两个第二端点,是属于相邻两条目标扫描线的第二端点,在遍历时间上可以是相邻,或者在所述目标搜索方向上的排列位置上是相邻,但是同一坐标轴方向上的坐标差距比较大,大于一定的墙线阈值,可以视为机器人所遍历到的目标扫描线的第二端点(比如右端点)按照一个长廊区域的连续的横向墙壁跳跃至一个房间区域的入口的一侧的边界点处(比如一个狭窄的门框的一侧的边界点处),则机器人搜索至长廊区域与房间区域的连通区域内的符合门框宽度、餐厅的入口宽度或客厅的入口宽度的边界区域。如图2所示,所述目标搜索方向可以配置为从区域#2延伸向区域#1的方向,机器人在区域#2和区域#1之间的连通区域的左侧轮廓线中搜索到有效的突变点位置,对应为图2的目标扫描线F1F2的右端点F2,机器人将右端点F2标记为所述第一突变位置点;显然右端点F2相对于其下方的已遍历的所有目标扫描线的右端点出现坐标位置上的突变,具体是横坐标出现较大的变化,图2的点F2相对于点A2、B2、C2、D2、E2的横坐标都出现较大的变化,则遍历到的端点F2在室内环境下比较接近房间的门框位置、餐厅的入口或客厅的入口的边界点位置特征。
作为另一种搜索实施方式,若机器人按照所述目标搜索方向遍历完所有的目标扫描线的第二端点后,可以遍历完目标扫描线I1I2的上下方的所有目标扫描线的第一端点,包括所有目标扫描线在区域#1右侧轮廓线中的端点和所有目标扫描线在区域#2的右侧轮廓线中的端点,其中,所述目标扫描线的两个端点分别是可通行区域的两侧轮廓线上的轮廓点;然后,在第二端点的参考比值的变化值最大的相邻两条目标扫描线(相邻两次遍历的目标扫描线)中,将长度相对小的一条目标扫描线的第二端点设置为第二突变位置点,作为区域分界线在所述第二预设边界所处的轮廓线中的一个端点,所述第二预设边界所处的轮廓线为室内环境的连通区域的一侧的连续的轮廓线,所述目标搜索方向配置为竖直向上以从区域#2延伸向区域#1的方向时,对应为图2的区域#1和区域#2的连通区域的左侧的轮廓线,并确定所选择的长度相对小的一条目标扫描线的第二端点相对于长度相对大的一条目标扫描线出现位置突变,具体是在所述目标搜索方向的垂直方向上的位置差距较大,所述目标搜索方向配置为竖直向上以从区域#2延伸向区域#1的方向时,第二突变位置点对应为图2的目标扫描线F1F2的右端点F2;优选地,目标扫描线F1F2和目标扫描线E1E2可能是机器人按照所述目标搜索方向第一次搜索出的第二端点的参考比值的变化值处于第一参考阈值范围的相邻两条目标扫描线,其中的目标扫描线F1F2可以表示机器人遍历到的长度合理的一条目标扫描线,但不是长度最小的一条目标扫描线。
作为依据比值搜索第二突变位置点的实施例,在其中一条目标扫描线中检测到第二突变位置点的方法包括:
每当机器人按照所述目标搜索方向遍历到一条目标扫描线,则计算该目标扫描线的第二端点与第二预设边界的距离,并将该距离标记为该目标扫描线的第二端点的参考距离,将该目标扫描线的第二端点的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第二端点的参考比值;在一些实施例中,机器人使用所述目标扫描线对与所述目标搜索方向相垂直的方向所指向的区域进行位置点的扫描检测时,比如检测相应一行栅格区域内的每个栅格标记的障碍物信息或可通行区域时,按照所述目标搜索方向检测每条目标扫描线的第二端点的位置变化情况,则需要计算该目标扫描线的第二端点偏离一条固定的第二预设边界的距离,再将其与预设轮廓线长度作比值,获得该目标扫描线的第二端点的参考比值,形成本实施例中具有判断意义的比值量。
优选地,结合图2可知,长廊区域的右侧轮廓线是第二预设边界,该目标扫描线的第二端点是该目标扫描线的右端点,所述目标搜索方向是由区域#2按照竖直方向指向区域#1,并选择区域#2的右侧轮廓线A2B2作为第二预设边界。具体地,机器人按照所述目标搜索方向遍历的第一条目标扫描线是点A1和点A2的连线并确定点A2是第一条目标扫描线的第二端点,然后机器人计算点A2偏离第一预设边界A2B2的距离并将计算结果标记为该目标扫描线的第二端点A2的参考距离,然后将点A2的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第二端点A2的参考比值,由于图2中的点A2偏离第二预设边界A2B2的距离为0,所以第一条目标扫描线的第二端点A2的参考比值为0。然后机器人按照所述目标搜索方向遍历的第二条目标扫描线是点B1和点B2的连线,即遍历到目标扫描线B1B2,并确定目标扫描线B1B2的第二端点是点B2,然后机器人计算点B2偏离第二预设边界A2B2的距离并将计算结果标记为该目标扫描线的第二端点B2的参考距离,然后将点B2的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第二端点B2的参考比值,由于图2中的点B2处于第二预设边界A2B2上,所以点B2偏离第二预设边界A2B2的距离为0,所以第二条目标扫描线的第二端点B2的参考比值是设置为0。在本实施例中,计算参考比值可以将每条目标扫描线的第二端点相对于同一边界线的偏离距离的比较转换为基于同一预设轮廓线长度下的比率进行比较,缩小比较的数值范围,简化计算机的运算资源。优选地,机器人将所述预设轮廓线长度设置为长廊区域内的最长轮廓线的长度、或设置为待遍历的房间区域内的指定的轮廓线长度,一般形成室内环境内的最长的墙线的长度,或者一种参考户型房间的一个方向上的最长轮廓线的长度。从而以比值变化的形式反映每次遍历的目标扫描线的第二端点偏离同一边界线的距离,能够在较小数量级范围内进行比较,节省计算资源。
对应到图2的实施例中,所述目标搜索方向是优选为竖直向上,每条目标扫描线的右端点是其第二端点;机器人依次遍历到目标扫描线B1B2的右端点B2、目标扫描线C1C2的右端点C2、目标扫描线D1D2的右端点D2、目标扫描线E1E2的右端点E2、目标扫描线F1F2的右端点F2;优选地,在前述任意两条目标扫描线可以存在其余未在图2中显示出来的目标扫描线;其中,点A2、B2、C2、D2、E2、F2都在区域#2的右侧的轮廓线上,相比之下,点F2的横坐标相对于第二预设边界A2B2出现较大的差距,即偏离第一预设边界A1H1的距离相对于在先遍历计算出的距离变得比较大。
作为其中一种搜索实施方式,若机器人当前遍历到的目标扫描线的第二端点的参考比值是处于第二参考阈值范围,则将当前遍历到的目标扫描线的第二端点设置为第二突变位置点,然后,优选地,机器人停止按照所述目标搜索方向继续遍历目标扫描线的第二端点,即停止按照所述目标搜索方向遍历右侧轮廓线上的轮廓点,并确定当前遍历到的目标扫描线的第二端点相对于上一次遍历到的目标扫描线的第二端点出现位置突变,在本实施例中转换为其中一种坐标轴方向上的相邻两个坐标值之间的较大数值的变化;优选地,第二参考阈值范围可以根据标准门框的边界点、餐厅的入口的边界点或客厅的入口的边界点到预先确定的长廊区域在一侧的边界线的距离与预先确定的长廊区域的最长墙边界线的长度的比值决定,当标准门框的边界点、餐厅的入口的边界点或客厅的入口的边界点到预先确定的长廊区域在同一侧的边界线的距离与预先确定的长廊区域的最长墙边界线的长度的比值越大,则第二参考阈值范围的下限值被设置得越大,否则设置得越小;此时,机器人按照所述目标搜索方向第一次遍历到参考比值处于第二参考阈值范围的第二端点,可以表示机器人当前遍历到的一条目标扫描线的第二端点相对于在先遍历到的目标扫描线的第二端点出现位置突变,即按照一个长廊区域的连续的横向墙壁跳跃至一个房间区域的入口的一侧的边界点处(比如一个狭窄的门框的一侧的边界点处),机器人在区域#2和区域#1之间的连通区域内搜索到有效的一个边界点,对应为图2的目标扫描线F1F2的右端点F2,显然右端点F2相对于其下方的已遍历的所有目标扫描线的右端点出现坐标位置上的突变,具体是横坐标出现较大的变化,如图2的点F2相对于点A2、B2、C2、D2、E2的横坐标都出现较大的变化,其中,点A2、B2、C2、D2、E2、F2、G2、H2都在区域#2的右侧的轮廓线上,则遍历到的端点F2在室内环境下比较接近房间的门框位置的边界点、餐厅的入口的边界点或客厅的入口的边界点的位置特征。
作为另一种搜索实施方式,若机器人按照所述目标搜索方向遍历完所有的目标扫描线的第二端点后,已经遍历完目标扫描线I1I2的上下方的所有目标扫描线的第二端点,对应到图2中,机器人已遍历完所有目标扫描线在区域#1右侧轮廓线中的端点和所有目标扫描线在区域#2的右侧轮廓线中的端点,其中,所述目标扫描线的两个端点分别是可通行区域的两侧轮廓线上的轮廓点;然后机器人将参考比值最大的第二端点设置为第二突变位置点,并确定参考比值最大的第二端点相对于其余已遍历过的目标扫描线的第二端点出现比较明显的位置突变;所述目标搜索方向配置为竖直向上以从区域#2延伸向区域#1的方向时,对应为图2中,参考比值最大的第二端点是目标扫描线F1F2的右端点F2,相对于点A2、B2、C2、D2、E2的横坐标都出现较大的变化,其中,遍历到的端点F2在室内环境下比较接近房间的门框位置的边界点、餐厅的入口的边界点或客厅的入口的边界点的位置特征。
优选地,机器人在前述搜索第二突变位置点的实施例中,按照所述目标搜索方向遍历目标扫描线的过程中,计算出的目标扫描线的第二端点的参考比值是变大,具体是在图2中按照所述目标搜索方向从区域#2遍历至区域#1与区域#2之间的连通区域的过程中,计算出的目标扫描线的第二端点(对应为图2的右端点)的参考比值是变大,在从目标扫描线A1A2开始自下向上遍历目标扫描线的过程中,目标扫描线的第二端点的参考比值的变大趋势至少维持至机器人遍历到目标扫描线F1F2的右端点F2。需要说明的是,长廊区域和房间区域都被标记在同一平面地图区域内的状态下,存在以下情况:若所述目标搜索方向是竖直朝向时,所述第二预设边界是配置为长廊区域的右侧的轮廓线,所述目标扫描线的第二端点是所述目标扫描线的右端点;若所述目标搜索方向是水平朝向时,所述第二预设边界是配置为长廊区域的下侧的轮廓线,所述目标扫描线的第二端点是所述目标扫描线的下端点。
在前述搜索第一突变位置点和第二突变位置点的实施例的基础上,所述第一突变位置点和所述第二突变位置点可以是同时获得,也可以是在不同目标扫描线上获得且是在不同时刻获得,所述第一突变位置点的数量可以为1个;所述第一突变位置点和所述第二突变位置点分别是同一条目标扫描线的两个端点;或者所述第一突变位置点和所述第二突变位置点的连线不与任意一条目标扫描线平行,其中,所述其中一条目标扫描线与所述对应一条目标扫描线是不同的目标扫描线,则所述第一突变位置点和所述第二突变位置点的连线与目标扫描线相交,有利于搜索出多种角度方向分布的门框位置,适应各种布局特征的房间区域的入口。对应地,所述第二突变位置点的数量也可以是1个;然后将一个所述第一突变位置点和一个所述第二突变位置点连接形成所述区域分界线,
参考图2可知,所述第一突变位置点是点I1,所述第二突变位置点是点F2,按照所述目标搜索方向自下而上地对比左右两侧的轮廓线上的能够连成目标扫描线的一对轮廓点的相对位置关系,可知,在遍历至目标扫描线I1I2之前或线段I1F2之前,能够连成目标扫描线的一对轮廓点之间呈靠近的趋势,依次获得位置相向靠近的两个轮廓点,则确定出点I1和点F2之间的靠近程度相对于其余能够连成目标扫描线的一对轮廓点是出现最为明显的变化。则连接出的区域分界线是线段I1F2,形成区域#1和区域#2的最新分界线,以实现对房间区域(区域#1)和长廊区域(区域#2)的分割,可以在室内环境内划分出新的工作区域,或相对于在同一长廊区域的上方划分出一个新的工作分区,即房间区域#1,其中,区域分界线I1F2是倾斜设置且与目标扫描线G1G2相交。
优选地,所述第一突变位置点和所述第二突变位置点的连线长度与长廊区域内的最长轮廓线的长度的比值小于或等于预设参考阈值,区域分界线的长度与长廊区域内的最长轮廓线的长度的比值是配置为小于或等于预设参考阈值,预设参考阈值可以根据餐厅的入口宽度或客厅的入口宽度、门框的标准宽度或更小的边界入口宽度(比如,比机器人的机身宽度稍大的宽度,且门口摆放杂物)与预先确定的长廊区域的最长墙边界线的长度的比值决定,第一参考阈值可以与该比值建立正相关关系;用于定位出狭窄的门框位置以作为长廊区域与房间区域的分割线。
综上,每当机器人在当前遍历的目标扫描线上确定出一个第一突变位置点,则确定该第一突变位置点相对于上一次遍历(上一行)的目标扫描线的第一端点所在的轮廓线出现较大的位置偏离,偏离程度大于在先遍历的任意相邻位置处的两条目标扫描线的第一端点的偏离程度;为了获取相互靠拢的两个突变点,则设置目标扫描线的一端点与对应一侧的边界线(轮廓线)的距离都在变大,以从左右侧轮廓点当中分别搜索出距离突然变小的两个突变位置点;同理地,每当在当前遍历的目标扫描线上确定出一个第二突变位置点,则确定该第二突变位置点相对于上一次遍历(上一行)的目标扫描线的第二端点所在的轮廓线出现较大的位置偏离,偏离程度大于在先遍历的任意相邻位置处的两条目标扫描线的第二端点的偏离程度。因此,通过比较所遍历到的目标扫描线的不同方向端点的位置变化,来在长廊区域和房间区域之间的连通区域的两侧分别确定出第一突变位置点和第二突变位置点,再连接出区域分界线,可以是平行于目标扫描线,也可以相对于目标扫描线倾斜设置,更加贴近实际环境的房间的门框、餐厅的入口的边界点或客厅的入口的边界点的位置特征,对于各种户型场景的适应性较强。
作为一种实施例,所述目标扫描线的遍历方式包括:每当机器人按照所述目标搜索方向遍历到预设扫描线时,判断当前遍历到的预设扫描线是否被不可通行区域分割为至少两条线段,是则将偏离对应方位处的待遍历的房间区域最近的线段标记为目标扫描线,使得目标扫描线成为与所述对应方位处的待遍历的房间区域相连通的区域内,两个轮廓点连成的线段且该线段平行于预设坐标轴方向;否则直接将该预设扫描线标记为目标扫描线,其中,预设扫描线平行于预设坐标轴方向。然后机器人从当前标记的目标扫描线开始,按照所述目标搜索方向,在当前标记的目标扫描线的所述目标搜索方向上的可通行区域内继续遍历所述预设扫描线,依此重复判断遍历到的预设扫描线是否被不可通行区域分割为至少两条线段,以标记出新的目标扫描线,将目标扫描线设置到靠近预先确定的房间区域的附近或与房间区域相连通的区域内。其中,机器人每当获得一条目标扫描线后,则按照前述相关实施例执行:在按照目标搜索方向遍历目标扫描线的过程中,若在其中一条目标扫描线中检测到第一突变位置点且在对应一条目标扫描线中检测到第二突变位置点,则连接第一突变位置点和第二突变位置点,获得区域分界线,则区域分界线不一定与所述预设扫描线平行。需要说明的是,在依次遍历预设扫描线的过程中,从一条预设扫描线中划分并标记出的目标扫描线在目标搜索方向上的可通行区域的覆盖范围是小于或等于该预设扫描线的所述目标搜索方向上的可通行区域的覆盖范围,因为预设扫描线的所述目标搜索方向上的可通行区域包括障碍物的两侧的可通行区域,标记出的目标扫描线在目标搜索方向上的可通行区域可能只是障碍物的其中一侧的可通行区域。
需要说明的是,预设坐标轴方向垂直于所述目标搜索方向,待遍历的房间区域是预先确定下来的工作分区,至少获得房间区域的各个方向的轮廓线、房间区域和长廊区域的原始分界线、房间区域的中心位置及其大致的覆盖范围,但是由于活动的门、杂物干扰和小的封闭区域的干扰,房间区域和长廊区域的原始分界线不能与真实环境或所需遍历的有效房间区域的门框位置相适应,即还不能转换为房间区域的入口位置,需要按照前述实施例重新调整已确定的原始分界线,且能够在搜索目标扫描线之前确定出原来规划出的待遍历的各个房间区域的中心位置及其分布区域,其中,所述对应方位处的待遍历的房间区域能够用于比较其与目标扫描线的距离远近关系。结合图3可知,当机器人将长廊区域设置为区域#4(区域#4的连通区域比较长)且将待遍历的房间区域设置为区域#3时,所述目标搜索方向可以配置为从区域#4延伸向区域#3的方向,引导机器人在区域#4与区域#3的连通区域内,从区域#4内的一个搜索起点逐条目标扫描线地搜索至区域#3的入口或区域#3的内部。在本实施例中,长廊区域内的可通行区域的面积大于待遍历的房间区域内的可通行区域的面积,相应地,在图3中,区域#4内的可通行区域(白色区域)的面积大于区域#3内的可通行区域(白色区域)的面积;机器人在图3中遍历每条目标扫描线之前是预先确定出的待遍历的房间区域相对于长廊区域的方位关系,即在图3中预先确定出区域#3的中心位置以及区域#4的中心位置,区域#3的轮廓线和区域#4的轮廓线之间的相对位置关系。
需要说明的是,在设置出目标扫描线之前,先设置预设扫描线,目标扫描线可以视为从预设扫描线中分割出来的线段;在本实施例中,室内环境的轮廓点包括房间区域的轮廓点和长廊区域的轮廓点,可以属于相应位置的墙线上的点;机器人将每条预设扫描线都配置为由两个轮廓点连成的线段,并将每条预设扫描线都与目标搜索方向垂直设置,在所述预设扫描线中,所述预设扫描线的两个端点之间不一定都是可通行区域,还包括不可通行区域,即被障碍物阻断,使得预设扫描线的端点不仅能够与其两侧的墙壁相接触,而且还可以用以扫描遍历障碍物的覆盖区域。
作为一种实施例,如图3所示,按照预设坐标轴方向设置出垂直于所述目标搜索方向的预设扫描线,为图3所示的虚线部分;则从区域#4内的一个搜索起点开始,机器人按照所述目标搜索方向遍历的第一条预设扫描线是点A3和点A4的连线,并确定预设扫描线A3A4覆盖可通行区域(图示的白色区域),则将预设扫描线A3A4直接标记为所述目标扫描线。然后,机器人按照所述目标搜索方向遍历的新预设扫描线是点B3和点B4的连线,即遍历到预设扫描线B3B4,预设扫描线B3B4中,除了两个端点是处于区域#4的左右两侧的轮廓线上,其它部分都是处于连通区域,覆盖可通行区域(图示的白色区域),则将预设扫描线B3B4直接标记为新的目标扫描线;同理地,依次将预设扫描线C3C4标记为目标扫描线C3C4,将预设扫描线D3D4标记为目标扫描线D3D4。然后,遍历到预设扫描线E3E6时,预设扫描线E3E6覆盖的区域中存在不可通行区域,即图3的位置点E4和位置点E5之间的向内凹的黑色区域,该向内凹的黑色区域将预设扫描线E3E6分割为线段E3E4和线段E5E6,因此,当前遍历到的预设扫描线E3E6被不可通行区域分割为两条线段,其中,机器人基于预先划分出的区域#3的分布区域和区域#3的中心位置,可以确定线段E5E6最接近区域#3,相对于线段E3E4,线段E5E6的中心与区域#3的中心位置距离更小,且线段E5E6的中心与区域#3的左侧轮廓线的中心的距离更小;而且线段E5E6处于区域#3和区域#4的连通区域内,线段E3E4位于区域#3和区域#4的连通区域之外,而且线段E3E4的上方的可通行区域(空白区域)没有与区域#3连通。因此,机器人可以检测到线段E5E6相对于其上方的待遍历的房间区域#3的一条轮廓线或中心位置的距离最近,则将当前检测到的线段E5E6标记为所述目标扫描线,并线段E5E6确定形成偏离对应方位处的待遍历的房间区域最近的线段,进而确定当前标记的目标扫描线E5E6的所述目标搜索方向上(上方)的可通行区域(包括区域#3及其与区域#4的连通区域)的覆盖范围是小于所述当前遍历到的预设扫描线E3E6的所述目标搜索方向上的可通行区域的覆盖范围(包括区域#4内的位于线段E3E4的上方在可通行区域、区域#3及其与区域#4的连通区域),以缩小后续遍历的目标扫描线的范围。
值得注意的是,在本实施例中,区域#3与区域#4的连通区域被限定在区域#3与区域#4之间的细小的通道区域,区别于区域#4的左右两侧的空旷区域,所述目标搜索方向是优选为竖直向上。优选地,在前述任意两条预设扫描线可以存在其余未在图2中显示出来的预设扫描线;其中,点A3、B3、C3、D3、E3都在区域#4的左侧的轮廓线上,点A4、B4、C4、D4都在区域#4的右侧的轮廓线上;在一些实施例中,点E4归属于区域#4的右侧的轮廓线上,但线段E3E4在所述目标搜索方向上的可通行区域没有与区域#3连通,则不被配置为目标扫描线,不能参与区域#3和区域#4之间的区域分界线的识别。
在一些实施例中,当所述目标搜索方向是配置为纵坐标轴正方向或纵坐标轴负方向时,机器人在室内环境内设置出平行于横坐标轴的预设扫描线;其中,每条预设扫描线是在处于同一纵坐标的前提下,横坐标的差值的绝对值最大的两个轮廓点连成的线段,对应到图3中,在线段E3E6所在的一行当中,线段E3E6、线段E3E4以及线段E5E6经过的位置点的纵坐标都相等,其中,点E3、点E4、点E5和点E6都属于轮廓点,即障碍物点;在这些轮廓点当中,点E3的横坐标和点E6的横坐标的差值的绝对值最大,则轮廓点E3和E6的连线是预设扫描线。以使得每条目标扫描线都是分布为平行于横坐标轴,则每次遍历的目标扫描线上的各个点的纵坐标相同,便于在地图区域内按照竖直方向计算预设扫描线所扫描覆盖过的两个位置点之间的距离信息及其覆盖区域。同理地,当所述目标搜索方向是配置为横坐标轴正方向或横坐标轴负方向时,机器人在室内环境内设置出平行于纵坐标轴的预设扫描线,其中,每条预设扫描线是在处于同一横坐标的前提下,纵坐标的差值的绝对值最大的两个轮廓点连成的线段;以使得每条目标扫描线都是分布为平行于纵坐标轴,则每次遍历的目标扫描线上的各个点的横坐标相同,便于在地图区域内按照水平方向计算预设扫描线所扫描覆盖过的两个位置点之间的距离信息及其覆盖区域。
在上述实施例的基础上,机器人在遍历预设扫描线或目标扫描线的过程中,会从预设扫描线或目标扫描线的一个端点开始对其内部覆盖的点位置进行扫描,比如可以检测每个覆盖过的位置点对应标记的位置信息和障碍物占据信息。一般地,机器人会从预设扫描线的一个端点开始,按照所述预设扫描线向该预设扫描线的另一个端点遍历,其中,开始遍历的端点可以记为当前遍历的预设扫描线的扫描起始点,此时机器人将所述预设扫描线的扫描起始点向另一个端点延伸的方向设置为扫描方向;若当前遍历的预设扫描线是配置为目标扫描线,则将开始遍历的端点标记为目标扫描线的扫描起始点;然后,除了预设扫描线的两个端点(属于墙线类型,即障碍物点)之外,当检测到存在障碍物点时,确定所述预设扫描线被不可通行区域分割,且分割出的其中两条线段分别位于障碍物点的两侧,然后将距离其中一个方位处的待遍历的房间区域距离最近的线段设置为目标扫描线,并将目标扫描线在所述扫描方向的相反方向上的端点设置为目标扫描线的扫描起点,在一些实施例中,可以等效于将目标扫描线的远离所述其中一个方位处的待遍历的房间区域的一端的端点设置为目标扫描线的扫描起点。如图3所示,所述目标搜索方向是优选为竖直向上,预设扫描线E3E6被障碍物占据的区域分割为线段E5E6和线段E3E4;其中,线段E5E6是距离其上方(所述目标搜索方向上)的待遍历的房间区域#3距离最近的线段,线段E5E6被进一步地标记为目标扫描线;其中,所述扫描方向是点E5直线指向点E6的方向,则目标扫描线E5E6在所述扫描方向的相反方向上的端点是点E5,记为目标扫描线E5E6的扫描起点。另一方面,从预设扫描线的一个端点开始,按照所述预设扫描线向该预设扫描线的另一个端点遍历的过程中,除了预设扫描线的两个端点(属于墙线类型,即障碍物点)之外,若自始至终都没有检测到障碍物点,则将所述预设扫描线设置为目标扫描线,并将所述预设扫描线中最先被遍历的端点设置为目标扫描线的扫描起点;对应到图3中,可以将预设扫描线A3A4标记为所述目标扫描线并确定点A3是目标扫描线A3A4的扫描起点,再将预设扫描线B3B4直接标记为目标扫描线并确定点B3是目标扫描线B3B4的扫描起点,再将预设扫描线C3C4标记为目标扫描线C3C4并确定点C3是目标扫描线C3C4的扫描起点,再将预设扫描线D3D4标记为目标扫描线D3D4并确定点D3是目标扫描线D3D4的扫描起点。其中,不可通行区域是由障碍物点组成,轮廓点是属于障碍物点。
综上,若机器人在同一方向上被障碍物分割出两段扫描线,则选择距离预先确定的房间区域最近的扫描线作为参与搜索判断的目标扫描线,以确保目标扫描线能进入每个房间区域扫描,并且每个可连续的目标扫描线只有一个起始点,比如目标扫描线的第一端点(对应为图3的左端点);这里的预先确定的房间区域至少能够从房间区域的一条轮廓线或中心位置确定其方位信息,但该房间区域与长廊区域之间的分界线即使预先被确定出来,也是粗略的带有误差的划分结果,需要前述实施例进入与该目标扫描线距离最近的房间区域连通的区域(可以是长廊区域的局部区域,也是该目标扫描线所覆盖的可通行区域)内确定出较为准确的区域分界线,即在确定出每一行的目标扫描线后,在按照目标搜索方向遍历目标扫描线的过程中,且逐条检测目标扫描线的端点的位置信息的过程中,若在其中一条目标扫描线中检测到第一突变位置点且在对应一条目标扫描线中检测到第二突变位置点,则连接第一突变位置点和第二突变位置点,获得区域分界线,减少障碍物的干扰,提高搜索效率。
需要说明的是,当室内环境的轮廓点、房间区域以及长廊区域都标记到栅格地图内时,每条预设扫描线在室内环境的限定地图区域内只占据一行栅格,这里限定地图区域可以只包括一个长廊区域及其相连通的一个房间区域,或者一个长廊区域及其至少两个不同方位上相连通的房间区域(形成连通于同一长廊区域的多个房间区域)。在前述实施例中,相邻两条预设扫描线是配置为连续排布在地图区域内或按照预设间隔排布在地图区域内,预设间隔可以是一个或多个栅格,以使得预设扫描线有序排列在室内环境的限定地图区域内。
具体地,所述目标搜索方向平行于地图的纵坐标轴以平行于竖直方向时,在机器人按照所述目标搜索方向遍历目标扫描线的过程中,当前遍历到的目标扫描线是位于当前遍历的一行,上一次遍历到的目标扫描线是位于上一次遍历的一行。当所述目标搜索方向平行于地图的横坐标轴以平行于水平方向时,在机器人按照所述目标搜索方向遍历目标扫描线的过程中,当前遍历到的目标扫描线是位于当前遍历的一列,上一次遍历到的目标扫描线是位于上一次遍历的一列。
优选地,所述第一突变位置点和所述第二突变位置点在同一预设坐标轴方向上的坐标值的差值的绝对值,小于其它已遍历的目标扫描线的两个端点在同一预设坐标轴方向上的坐标值的差值的绝对值;一般地,所述第一突变位置点和所述第二突变位置点的连线处于与所述对应方位处的待遍历的房间区域相连通的区域内。其中,预设坐标轴方向垂直于所述目标搜索方向;所述长廊区域是所述室内环境中的具有最长轮廓线的可通行区域,且所述长廊区域与待遍历的房间区域相邻接。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
上述实施例只为说明本发明的技术构思及特点,其目的是让熟悉该技术领域的技术人员能够了解本发明的内容并据以实施,并不能以此来限制本发明的保护范围。凡根据本发明精神实质所作出的等同变换或修饰,都应涵盖在本发明的保护范围之内。
Claims (13)
1.基于地图轮廓的区域分界线搜索方法,其特征在于,所述区域分界线搜索方法包括:
在机器人通过测距传感器获得室内环境的轮廓点后,机器人按照目标搜索方向遍历目标扫描线;其中,机器人将每条目标扫描线配置为由两个轮廓点连成的线段,并将每条目标扫描线都配置为与目标搜索方向垂直设置;在所述目标扫描线中,所述目标扫描线的两个端点之间是属于可通行区域;
在按照目标搜索方向遍历目标扫描线的过程中,逐条检测目标扫描线的端点;若在其中一条目标扫描线中检测到第一突变位置点且在对应一条目标扫描线中检测到第二突变位置点,则连接第一突变位置点和第二突变位置点,获得区域分界线,其中,第一突变位置点不同于第二突变位置点,第一突变位置点和第二突变位置点都属于目标扫描线的端点。
2.根据权利要求1所述区域分界线搜索方法,其特征在于,在其中一条目标扫描线中检测到第一突变位置点的方法包括:
每当按照所述目标搜索方向遍历到目标扫描线,则计算该目标扫描线的第一端点与第一预设边界的距离,并将该距离标记为该目标扫描线的第一端点的参考距离,并将该目标扫描线的第一端点的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第一端点的参考比值;然后将上一次遍历到的目标扫描线的第一端点的参考比值减去当前遍历到的目标扫描线的第一端点的参考比值,获得参考比值的差值,再将参考比值的差值配置为相邻两条目标扫描线的第一端点的参考比值的变化值;
若检测到相邻两条目标扫描线的第一端点的参考比值的变化值是处于第一参考阈值范围,则将当前遍历到的目标扫描线的第一端点设置为第一突变位置点;或者,按照所述目标搜索方向遍历完所有的目标扫描线的第一端点后,在第一端点的参考比值的变化值最大的相邻两条目标扫描线中,将长度相对小的目标扫描线的第一端点设置为第一突变位置点。
3.根据权利要求1所述区域分界线搜索方法,其特征在于,在其中一条目标扫描线中检测到第一突变位置点的方法包括:
每当按照所述目标搜索方向遍历到目标扫描线,则计算该目标扫描线的第一端点与第一预设边界的距离,并将该距离标记为该目标扫描线的第一端点的参考距离,将该目标扫描线的第一端点的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第一端点的参考比值;
若当前遍历到的目标扫描线的第一端点的参考比值是处于第二参考阈值范围,则将当前遍历到的目标扫描线的第一端点设置为第一突变位置点;或者,按照所述目标搜索方向遍历完所有的目标扫描线的第一端点后,将参考比值最大的第一端点设置为第一突变位置点。
4.根据权利要求1所述区域分界线搜索方法,其特征在于,在对应一条目标扫描线中检测到第二突变位置点的方法包括:
每当按照所述目标搜索方向遍历到目标扫描线,则计算该目标扫描线的第二端点与第二预设边界的距离,并将该距离标记为该目标扫描线的第二端点的参考距离,将该目标扫描线的第二端点的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第二端点的参考比值;然后将上一次遍历到的目标扫描线的第二端点的参考比值减去当前遍历到的目标扫描线的第二端点的参考比值,获得参考比值的差值,并将参考比值的差值配置为相邻两条目标扫描线的第二端点的参考比值的变化值;
若检测到相邻两条目标扫描线的第二端点的参考比值的变化值是处于第一参考阈值范围,则将当前遍历到的目标扫描线的第二端点设置为第二突变位置点;或者,按照所述目标搜索方向遍历完所有的目标扫描线的第二端点后,在第二端点的参考比值的变化值最大的相邻两条目标扫描线中,将长度相对小的目标扫描线的第二端点设置为第二突变位置点。
5.根据权利要求1所述区域分界线搜索方法,其特征在于,在对应一条目标扫描线中检测到第二突变位置点的方法包括:
每当按照所述目标搜索方向遍历到目标扫描线,则计算该目标扫描线的第二端点与第二预设边界的距离,并将该距离标记为该目标扫描线的第二端点的参考距离,将该目标扫描线的第二端点的参考距离与预设轮廓线长度的比值标记为该目标扫描线的第二端点的参考比值;
若当前遍历到的目标扫描线的第二端点的参考比值是处于第二参考阈值范围,则将当前遍历到的目标扫描线的第二端点设置为第二突变位置点;或者,按照所述目标搜索方向遍历完所有的目标扫描线的第二端点后,将参考比值最小的第二端点设置为第二突变位置点。
6.根据权利要求2至5任一项所述区域分界线搜索方法,其特征在于,机器人按照所述目标搜索方向遍历目标扫描线的过程中,计算出的目标扫描线的每个端点的参考比值是变大;
所述目标搜索方向是被配置为从长廊区域内的一个搜索起点指向待遍历的工作分区内对应的位置;
预设轮廓线长度是长廊区域内的最长轮廓线的长度、或待遍历的工作分区内的指定的轮廓线长度;长廊区域内的可通行区域在所述目标搜索方向的垂直方向上的长度大于待遍历的工作分区内的可通行区域在所述目标搜索方向的垂直方向上的长度;待遍历的工作分区相对于长廊区域的方位关系是预先获得;
其中,所述目标扫描线的两个端点分别是可通行区域的两侧轮廓线上的轮廓点。
7.根据权利要求6所述区域分界线搜索方法,其特征在于,所述第一突变位置点和所述第二突变位置点分别是同一条目标扫描线的两个端点;或者所述第一突变位置点和所述第二突变位置点的连线与目标扫描线相交,其中,所述其中一条目标扫描线与所述对应一条目标扫描线是不同的目标扫描线。
8.根据权利要求7所述区域分界线搜索方法,其特征在于,长廊区域和工作分区都被标记在同一平面地图区域内的状态下,存在以下情况:
若所述目标搜索方向是竖直朝向时,所述第一预设边界是配置为长廊区域的左侧的轮廓线,所述第二预设边界是配置为长廊区域的右侧的轮廓线,所述目标扫描线的第一端点是所述目标扫描线的左端点,所述目标扫描线的第二端点是所述目标扫描线的右端点;
若所述目标搜索方向是水平朝向时,所述第一预设边界是配置为长廊区域的上侧的轮廓线,所述第二预设边界是配置为长廊区域的下侧的轮廓线,所述目标扫描线的第一端点是所述目标扫描线的上端点,所述目标扫描线的第二端点是所述目标扫描线的下端点。
9.根据权利要求2至5任一项所述区域分界线搜索方法,其特征在于,所述目标扫描线的遍历方式包括:
每当按照所述目标搜索方向遍历到预设扫描线时,判断当前遍历到的预设扫描线是否被不可通行区域分割为至少两条线段,是则将偏离对应方位处的待遍历的房间区域最近的线段标记为目标扫描线,否则将该预设扫描线标记为目标扫描线;
然后从当前标记的目标扫描线开始,按照所述目标搜索方向,在当前标记的目标扫描线的所述目标搜索方向上的可通行区域内继续遍历所述预设扫描线,以标记出新的目标扫描线,其中,当前标记的目标扫描线的所述目标搜索方向上的可通行区域的覆盖范围是小于或等于所述当前遍历到的一条预设扫描线的所述目标搜索方向上的可通行区域的覆盖范围。
10.根据权利要求9所述区域分界线搜索方法,其特征在于,所述目标搜索方向是配置为地图的纵坐标轴正方向或地图的纵坐标轴负方向时,在室内环境内设置出平行于横坐标轴的预设扫描线,其中,每条预设扫描线是在处于同一纵坐标的前提下,横坐标的差值的绝对值最大的两个轮廓点连成的线段;以使得每条目标扫描线都是分布为平行于地图的横坐标轴,则每次遍历的目标扫描线上的各个点的纵坐标相同;
或者,所述目标搜索方向是配置为地图的横坐标轴正方向或地图的横坐标轴负方向时,在室内环境内设置出平行于纵坐标轴的预设扫描线,其中,每条预设扫描线是在处于同一横坐标的前提下,纵坐标的差值的绝对值最大的两个轮廓点连成的线段;以使得每条目标扫描线都是分布为平行于地图的纵坐标轴,则每次遍历的目标扫描线上的各个点的横坐标相同。
11.根据权利要求10所述区域分界线搜索方法,其特征在于,当前遍历到的预设扫描线被不可通行区域分割为至少两条线段时,若检测到存在至少一条线段相对于一个方位处的待遍历的工作分区的轮廓线或中心位置的距离最近,则将当前检测到的线段标记为所述目标扫描线,并形成偏离对应方位处的待遍历的工作分区最近的线段。
12.根据权利要求11所述区域分界线搜索方法,其特征在于,从预设扫描线的一个端点开始,按照所述预设扫描线向该预设扫描线的另一个端点遍历,除了预设扫描线的两个端点之外,当检测到存在障碍物点时,确定所述预设扫描线被不可通行区域分割,且分割出的其中两条线段分别位于障碍物点的两侧,然后将距离其中一个方位处的待遍历的工作分区距离最近的线段设置为目标扫描线,并将目标扫描线在扫描方向的相反方向上的端点设置为目标扫描线的扫描起点,其中,扫描方向是所述预设扫描线的一个端点向该预设扫描线的另一个端点的延伸方向;
从预设扫描线的一个端点开始,按照所述预设扫描线向该预设扫描线的另一个端点遍历的过程中,除了预设扫描线的两个端点之外,若没有检测到障碍物点,则将所述预设扫描线设置为目标扫描线,并将所述预设扫描线中最先被遍历的端点设置为目标扫描线的扫描起点;
其中,不可通行区域是由障碍物点组成,轮廓点是属于障碍物点。
13.根据权利要求9所述区域分界线搜索方法,其特征在于,当室内环境的轮廓点都标记到栅格地图内时,每条预设扫描线在室内环境内的限定地图区域内占据一行栅格,相邻两条预设扫描线是配置为连续排布在地图区域内或按照预设间隔排布在地图区域内;
在按照所述目标搜索方向遍历目标扫描线的过程中,当前遍历到的目标扫描线是位于当前遍历的一行,上一次遍历到的目标扫描线是位于上一次遍历的一行;或当前遍历到的目标扫描线是位于当前遍历的一列,上一次遍历到的目标扫描线是位于上一次遍历的一列。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211171762.9A CN117826776A (zh) | 2022-09-26 | 2022-09-26 | 基于地图轮廓的区域分界线搜索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211171762.9A CN117826776A (zh) | 2022-09-26 | 2022-09-26 | 基于地图轮廓的区域分界线搜索方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117826776A true CN117826776A (zh) | 2024-04-05 |
Family
ID=90508275
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211171762.9A Pending CN117826776A (zh) | 2022-09-26 | 2022-09-26 | 基于地图轮廓的区域分界线搜索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117826776A (zh) |
-
2022
- 2022-09-26 CN CN202211171762.9A patent/CN117826776A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021248846A1 (zh) | 一种机器人沿边行走的区域清扫规划方法、芯片及机器人 | |
EP3985469A1 (en) | Cleaning subarea planning method for robot walking along edge, chip and robot | |
CN111897334A (zh) | 一种基于边界的机器人区域划分方法、芯片及机器人 | |
CN111631642B (zh) | 一种基于激光地图的工作区域拓展方法、芯片及机器人 | |
CN107997690B (zh) | 室内区域划分方法及扫地机器人 | |
CN111027118A (zh) | 一种实测实量任务点搜索与任务派发方法及系统 | |
CN111595356B (zh) | 一种激光导航机器人的工作区域构建方法 | |
CN109683619A (zh) | 一种基于图形参数化的机器人路径规划方法及系统 | |
CN112327879A (zh) | 一种基于深度信息的沿边避障方法 | |
CN111857156B (zh) | 一种基于激光的机器人区域划分方法、芯片及机器人 | |
CN111681250B (zh) | 一种基于激光栅格地图的分割方法 | |
CN111505652A (zh) | 一种地图建立方法、装置及作业设备 | |
CN109615679B (zh) | 一种户型构件的识别方法 | |
WO2024037262A1 (zh) | 一种机器人通过窄道的导航方法、芯片及机器人 | |
CN117826776A (zh) | 基于地图轮廓的区域分界线搜索方法 | |
WO2023231757A1 (zh) | 基于地图区域轮廓的设置方法与机器人沿边结束控制方法 | |
CN111240322B (zh) | 机器人移动限制框的工作起点确定方法及运动控制方法 | |
CN117826775A (zh) | 一种区域分界线搜索方法及机器人 | |
CN111897336B (zh) | 一种机器人沿边行为结束的判断方法、芯片及机器人 | |
CN116465404A (zh) | 基于预设探测距离范围内的最优碰撞点搜索方法 | |
WO2023071922A1 (zh) | 地图优化方法、装置、电子设备和存储介质 | |
CN117948984B (zh) | 移动作业机器人在可变宽度通行域的路径规划方法 | |
CN116466695A (zh) | 一种最优障碍物碰撞点搜索方法 | |
CN115424124A (zh) | 一种基于图像识别的门框定位方法及机器人 | |
CN116466694A (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 |