本发明涉及定位和导航技术领域,具体涉及一种基于激光slam的室内定位和导航方法。
背景技术
在结构复杂、功能分室众多的建筑物内部,人们很容易迷失方向,找不到自己想去的目的地。目前常用的定位和导航方法是利用卫星定位系统,如gps或北斗,但是因为gps或北斗在室内环境下所接收到的定位信号较弱,导致定位误差较大,有时甚至会失效,所以如何不依靠卫星定位系统完成人员在室内的精准定位成为一个难题。
激光slam(simultaneouslocalizationandmapping)是一种即时定位和地图构建的技术,利用激光雷达采集物体信息呈现出的一系列分散的、具有准确角度和距离信息的点(通常被称为点云),通过对不同时刻两片点云的匹配与比对,计算激光雷达相对运动的距离和姿态的改变,完成室内的定位。但是,建筑物内部的不同地方可能会相同,例如同一楼层的左右功能室分布是相同的、不同楼层的洗手间是相同的等等,会导致激光雷达在室内不同的地方采集到的点云是相同的,出现无法通过匹配与比对点云进行室内定位的情况。
技术实现要素:
本发明为了克服上述现有技术所述的至少一种缺陷(不足),提供一种基于激光slam的室内定位和导航方法,即使室内不同地方的建筑物结构、功能分室分布相同,也能实现精准的室内定位和导航。
为实现本发明的目的,采用以下技术方案予以实现:
一种基于激光slam的室内定位方法,包括以下步骤:
s1.采用激光slam技术构建室内的全局地图;
s2.将全局地图划分成互不重复的若干个子区域地图,根据所划分的子区域地图通过电子围栏将室内划分成若干个子区域;
s3.机器人在电子围栏内行走并采用激光slam技术构建局部地图,根据局部地图查找相匹配的子区域地图并获取当前位置。
将全局地图划分成互不重复的子区域地图,也即各个子区域地图都是唯一的。电子围栏根据所划分的子区域地图可以将室内划分成互不重复的子区域,机器人在定位过程中在电子围栏的作用下只能在其中一个子区域内行走并构建局部地图,使得机器人所构建的局部地图也是唯一的,将唯一的局部地图与唯一的子区域地图进行比对和匹配,可以唯一地确定机器人的当前位置,从而实现精准的室内定位。
进一步地,所述步骤s2具体包括以下步骤:
s21.根据预设的规则将全局地图按照预设的划分方式划分成若干个子区域地图;
s22.当所划分的子区域地图出现重复时,对重复的子区域地图分别按照不同的划分方式进行再次划分,直到所划分的子区域地图互不重复;
s23.根据所划分的子区域地图通过电子围栏将室内划分成若干个子区域。
当根据预设的规则并按照预设的划分方式初步划分出的子区域地图出现重复时,对重复的子区域地图分别按照不同的划分方式再次划分,由于划分方式不同,所以重复的子区域地图可以被划分成不重复的,从而划分出唯一的子区域地图以及唯一的子区域,实现精准的室内定位。
进一步地,所述步骤s22中,当所划分的子区域地图互不重复时,分析各个子区域地图之间的相似度,对相似度超过设定阈值的子区域地图分别按照不同划分方式进行再次划分,直到所划分的子区域地图之间的相似程度不超过设定阈值。
虽然各个子区域地图和子区域互不重复,可以唯一地确定当前位置,但是如果两个子区域地图相似度较高并超过设定阈值,机器人需要在对应的子区域内行走较长距离,构建较大面积的局部地图,才可以使构建出来的局部地图匹配到唯一的子区域地图。因此,将相似度超过设定阈值的子区域地图分别按照不同的划分方式再次划分,由于划分方式不同,所以相似的子区域地图可以被划分成不相似的,从而划分出相似度较低并不超过设定阈值的子区域地图以及子区域,减少定位过程所花费的时间成本和运算成本。
进一步地,所述规则包括面积限制、房间数目限制、路径距离限制的一种或多种。
面积限制包括最大面积限制和/或最小面积限制和/或面积等大;房间数目限制包括最多房间数目限制和/或最少房间数目限制和/或房间数目相等;路径距离限制包括最大路径距离限制和/或最小路径距离限制和/或路径距离相等。
进一步地,所述划分方式包括横向划分、竖向划分、对角划分、按不同路径长度划分、按不同面积大小划分、按不同形状划分的一种或多种。
进一步地,所述步骤s22中,室内每一楼层的每个垂直交通设施和/或每个洗手间单独划分为一个子区域。
由于垂直交通设施和洗手间是成为用户目的地频率最高的,所以将室内每一楼层的每个垂直交通设施和/或每个洗手间单独划分为一个子区域,可以提高定位的速度。
进一步地,所述步骤s3具体为:机器人选定一个方向在电子围栏内行走并开始采用激光slam技术构建局部地图,在一定时间间隔后或行走一定距离后,将已构建的局部地图查找相匹配的子区域地图;
当查找到相匹配的子区域地图时,机器人停止行走,并获取当前位置;
当机器人到达电子围栏时,机器人往其它方向继续行走并继续构建局部地图;
或所述电子围栏处设有无线通信设备,当机器人到达电子围栏或在电子围栏附近一定范围内时,机器人停止行走,并与无线通信设备建立通信连接,从无线通信设备中获取当前位置。
在定位过程中,机器人一边行走一边构建局部地图,并在一定时间间隔后或行走一定距离后,就进行一次局部地图与子区域地图的比对和匹配,可以提高机器人进行定位的效率,而无需机器人对整个子区域构建局部地图,只要匹配到对应的子区域地图,即可停止行走和构建局部地图。
当机器人在行走过程中遇到电子围栏,机器人可以选择转弯或者沿反方向继续行走,保证机器人在子区域内行走并构建局部地图。也可以在电子围栏处设置无线通信设备,当机器人在电子围栏或在电子围栏附近的时候,可以直接通过无线通信设备进行定位,避免机器人沿反方向再次行走已经行走过的路,从而进一步提高定位的效率。
进一步地,机器人在行走时采用贴边行走算法。
一种基于激光slam的室内导航方法,包括上述的所有步骤,还包括以下步骤:
s4.预先规划各个子区域之间合理的区域间路线、每个子区域内任意位置与该个子区域内各个目的地之间的区域内路线;
s5.机器人分析用户输入的目的地所在的子区域,并根据区域内路线或根据区域间路线和区域内路线从当前位置导航到目的地。
当用户输入的目的地的所在的子区域与当前位置所在的子区域是同一个时,机器人根据区域内路线从当前位置导航到目的地;当用户输入的目的地的所在的子区域与当前位置所在的子区域不是同一个时,机器人根据区域内路线和区域间路线从当前位置导航到目的地,从而实现精准的室内导航。
进一步地,所述步骤s5具体包括以下步骤:
s51.机器人分析当前位置所在的子区域与用户输入的目的地所在的子区域是否在同一楼层;
s52.如果当前位置所在的子区域与目的地所在的子区域是在同一楼层,则机器人根据区域内路线或根据区域间路线和区域内路线从当前位置导航到目的地;如果当前位置所在的子区域与目的地所在的子区域不是在同一楼层,则机器人根据区域间路线和区域内路线从当前位置导航到当前位置所在楼层的垂直交通设施,再从目的地所在楼层的垂直交通设施导航到目的地。
垂直交通设施包括楼梯、垂直电梯、扶手电梯。
优选地,用户可以选择上述其中一种垂直交通设施,机器人根据区域间路线和区域内路线从当前位置导航到当前位置所在楼层的用户所选择的垂直交通设施,再从目的地所在楼层的用户所选择的垂直交通设施导航到目的地。
与现有技术相比,本发明技术方案的有益效果是:
(1)将室内的全局地图划分成互不重复的子区域地图,并根据所划分的子区域地图通过电子围栏将室内划分成互不重复的子区域,机器人在定位过程中只能在其中一个子区域内行走并构建局部地图,使得机器人所构建的局部地图是唯一的,将唯一的局部地图与唯一的子区域地图进行比对和匹配,可以唯一地确定机器人的当前位置,从而实现精准的室内定位;
(2)降低子区域地图之间的相似程度,可以提高机器人的定位效率;
(3)在精准定位后,根据各个子区域之间合理的区域间路线、每个子区域内任意位置与该个子区域内各个目的地之间的区域内路线从当前位置导航到目的地,从而实现精准的室内导航。
附图说明
图1所示是本发明实施例的定位方法流程图。
图2所示是本发明实施例的初步划分子区域后的室内某楼层全局地图。
图3所示是本发明实施例的二次划分子区域后的室内某楼层全局地图。
图4所示是本发明实施例的三次划分子区域后的室内某楼层全局地图。
图5所示是本发明实施例的导航方法流程图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以是通过中间媒介间接连接,可以说两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明的具体含义。
下面结合附图和实施例对本发明的技术方案做进一步的说明。
实施例
如图1所示,一种基于激光slam的室内定位方法,包括以下步骤:
s1.采用激光slam技术构建室内的全局地图;
s2.将全局地图划分成互不重复的若干个子区域地图,根据所划分的子区域地图通过电子围栏将室内划分成若干个子区域;
s3.机器人在电子围栏内行走并采用激光slam技术构建局部地图,根据局部地图查找相匹配的子区域地图并获取当前位置。
将全局地图划分成互不重复的子区域地图,也即各个子区域地图都是唯一的。电子围栏根据所划分的子区域地图可以将室内划分成互不重复的子区域,机器人在定位过程中在电子围栏的作用下只能在其中一个子区域内行走并构建局部地图,使得机器人所构建的局部地图也是唯一的,将唯一的局部地图与唯一的子区域地图进行比对和匹配,可以唯一地确定机器人的当前位置,从而实现精准的室内定位。
在本实施例中,所述步骤s2具体包括以下步骤:
s21.根据预设的规则将全局地图按照预设的划分方式划分成若干个子区域地图;
s22.当所划分的子区域地图出现重复时,对重复的子区域地图分别按照不同的划分方式进行再次划分,直到所划分的子区域地图互不重复;
s23.根据所划分的子区域地图通过电子围栏将室内划分成若干个子区域。
当根据预设的规则并按照预设的划分方式初步划分出的子区域地图出现重复时,对重复的子区域地图分别按照不同的划分方式再次划分,由于划分方式不同,所以重复的子区域地图可以被划分成不重复的,从而划分出唯一的子区域地图以及唯一的子区域,实现精准的室内定位。
所述步骤s22中,当所划分的子区域地图互不重复时,分析各个子区域地图之间的相似度,对相似度超过设定阈值的子区域地图分别按照不同划分方式进行再次划分,直到所划分的子区域地图之间的相似程度不超过设定阈值。
虽然各个子区域地图和子区域互不重复,可以唯一地确定当前位置,但是如果两个子区域地图相似度较高并超过设定阈值,机器人需要在对应的子区域内行走较长距离,构建较大面积的局部地图,才可以使构建出来的局部地图匹配到唯一的子区域地图。因此,将相似度超过设定阈值的子区域地图分别按照不同的划分方式再次划分,由于划分方式不同,所以相似的子区域地图可以被划分成不相似的,从而划分出相似度较低并不超过设定阈值的子区域地图以及子区域,减少定位过程所花费的时间成本和运算成本。
在本实施例中,所述规则包括面积限制、房间数目限制、路径距离限制的一种或多种。
面积限制包括最大面积限制和/或最小面积限制;房间数目限制包括最多房间数目限制和/或最少房间数目限制;路径距离限制包括最大路径距离限制和/或最小路径距离限制。
在本实施例中,所述划分方式包括横向划分、竖向划分、对角划分、按不同路径长度划分、按不同面积大小划分、按不同形状划分的一种或多种。
所述步骤s22中,室内每一楼层的每个垂直交通设施和/或每个洗手间单独划分为一个子区域。
由于垂直交通设施和洗手间是成为用户目的地频率最高的,所以将室内每一楼层的每个垂直交通设施和/或每个洗手间单独划分为一个子区域,可以提高定位的速度。
如图2所示为采用激光slam技术构建的一个室内某楼层的全局地图,每一个目的地的用一个坐标点表示,星形坐标点为电梯所在的位置。坐标点与坐标点之间的连线形成室内路线拓扑图。在本实施例的具体实施过程中,采用面积相等、最大面积限制为20m2、最小面积限制为12m2且最多房间数目为3个的规则将全局地图划分成10个子区域地图,并进行编号1~10。
从图2中可以看到编号为2、7、8的子区域地图是重复的,对这三个子区域地图根据不同的划分方式进行再次划分。再次划分后的全局地图如图3所示。编号为2的子区域地图采用横向划分,成为编号分别为2a和2b的两个子区域地图;编号为7的子区域地图采用竖向划分,成为编号分别为7a和7b的两个子区域地图;编号为8的子区域地图采用对角划分,成为编号分别为7a和7b的两个子区域地图。再次划分之后的全局地图没有出现相互重复的子区域地图。
从图3中可以看到编号为1和5的子区域地图相似度较高且相似度超过设定阈值,对这两个子区域地图根据不同的划分方式进行再次划分。再次划分后的全局地图如图4所示。编号为1和5的子区域地图按不同面积大小进行横向划分,成为编号分别为1a、1b、5a、5b的四个子区域地图。再次划分之后的全局地图既没有出现相互重复的子区域地图,也没有出现相似度较高的子区域地图。
如图4所示,电梯单独划分为一个子区域,该子区域编号为9a,可以优化区域间的路线规划。
在本实施例中,所述步骤s3具体为:机器人选定一个方向在电子围栏内行走并开始采用激光slam技术构建局部地图,在一定时间间隔后或行走一定距离后,将已构建的局部地图查找相匹配的子区域地图;
当查找到相匹配的子区域地图时,机器人停止行走,并获取当前位置;
当机器人到达电子围栏时,机器人往其它方向继续行走并继续构建局部地图;
或所述电子围栏处设有无线通信设备,当机器人到达电子围栏或在电子围栏附近一定范围内时,机器人停止行走,并与无线通信设备建立通信连接,从无线通信设备中获取当前位置。
在定位过程中,机器人一边行走一边构建局部地图,并在一定时间间隔后或行走一定距离后,就进行一次局部地图与子区域地图的比对和匹配,可以提高机器人进行定位的效率,而无需机器人对整个子区域构建局部地图,只要匹配到对应的子区域地图,即可停止行走和构建局部地图。
当机器人在行走过程中遇到电子围栏,机器人可以选择转弯或者沿反方向继续行走,保证机器人在子区域内行走并构建局部地图。也可以在电子围栏处设置无线通信设备,当机器人在电子围栏或在电子围栏附近的时候,可以直接通过无线通信设备进行定位,避免机器人沿反方向再次行走已经行走过的路,从而进一步提高定位的效率。
在本实施例中,机器人在行走时采用贴边行走算法。
如图3所示,一种基于激光slam的室内导航方法,包括上述的步骤s1-s3,还包括以下步骤:
s4.预先规划各个子区域之间合理的区域间路线、每个子区域内任意位置与该个子区域内各个目的地之间的区域内路线;
s5.机器人分析用户输入的目的地所在的子区域,并根据区域内路线或根据区域间路线和区域内路线从当前位置导航到目的地。
当用户输入的目的地的所在的子区域与当前位置所在的子区域是同一个时,机器人根据区域内路线从当前位置导航到目的地;当用户输入的目的地的所在的子区域与当前位置所在的子区域不是同一个时,机器人根据区域内路线和区域间路线从当前位置导航到目的地,从而实现精准的室内导航。
在本实施例中,所述步骤s5具体包括以下步骤:
s51.机器人分析当前位置所在的子区域与用户输入的目的地所在的子区域是否在同一楼层;
s52.如果当前位置所在的子区域与目的地所在的子区域是在同一楼层,则机器人根据区域内路线或根据区域间路线和区域内路线从当前位置导航到目的地;如果当前位置所在的子区域与目的地所在的子区域不是在同一楼层,则机器人根据区域间路线和区域内路线从当前位置导航到当前位置所在楼层的垂直交通设施,再从目的地所在楼层的垂直交通设施导航到目的地。
垂直交通设施包括楼梯、垂直电梯、扶手电梯。
优选地,用户可以选择上述其中一种垂直交通设施,机器人根据区域间路线和区域内路线从当前位置导航到当前位置所在楼层的用户所选择的垂直交通设施,再从目的地所在楼层的用户所选择的垂直交通设施导航到目的地。
相同或相似的标号对应相同或相似的部件;
附图中描述位置关系的仅用于示例性说明,不能理解为对本专利的限制;
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。