本发明涉及机器人技术领域,尤其涉及一种复杂室内环境(即存在大范围玻璃的环境,如教学楼、写字楼等复杂室内环境)移动机器人导航地图构建方法。
背景技术:
近年来,随着“工业4.0”、“智能制造”及“中国制造2025”等概念的提出,机器人领域取得了长足的进步与蓬勃的发展。在服务机器人领域,室内移动机器人的研究成为了一个热点问题。当前,对室内移动机器人的研究主要围绕地图构建、定位、导航等方面展开,即解决移动机器人的“我是谁”、“我在哪儿”及“我要去哪儿”的问题。目前机器人在未知环境中利用激光雷达和里程计信息进行同步定位建图技术已相对成熟,基于粒子滤波算法的gmapping就是当中表现较好的一种。但是这些方法在特殊环境中出现了一些难以克服的问题,需要进行改进。
现有的gmapping算法在建图过程中由于激光雷达发出的激光经镜面反射出去,设备无法接收足够强度的激光导致无法对玻璃等物体进行检测,最终使机器人无法在含玻璃环境下建立正确的环境地图在目前已有的玻璃检测建图方法中,2020年重大鲜晓东等提出一种多传感器融合的玻璃识别系统,该系统使用激光雷达对一般障碍物进行检测,使用rgb相机对玻璃进行检测,使用声纳设备获取玻璃的位置信息,从而实现对环境中的玻璃进行检测的目的,该系统中选用了多个设备进行综合检测,系统结构复杂,不同设备获得的信息之间需要匹配校准,玻璃位置识别过程运算复杂。
针对存在大范围玻璃的复杂室内环境,如教学楼、写字楼等,亟需提供一种成本低、系统结构简单、匹配运算简单的导航地图构建方法。
技术实现要素:
本发明为解决传统的移动机器人建图方法存在的无法识别环境中的玻璃物体(如玻璃幕墙)的问题,提供一种复杂室内环境移动机器人导航地图构建方法,包括:
步骤a1:利用激光雷达、里程计、深度相机同时工作获取机器人自身位姿信息和环境信息,深度相机设于不同角度且深度相机的个数为多个;
步骤a2:利用激光雷达信息和里程计信息进行初次slam并建立原地图;
步骤a3:处理所述激光雷达信息,获得强度数据,基于所述强度数据筛选疑似玻璃存在区域;
步骤a4:根据筛选出的所述疑似玻璃存在区域的角度信息,从多个深度相机中选取与所述疑似玻璃存在区域的角度信息对应角度处的深度相机,获取被选取的深度相机的rgb图像;
步骤a5:基于所述被选取的深度相机的rgb图像,利用深度学习算法实现复杂环境内玻璃检测,复杂环境为包括多个玻璃的环境;
步骤a6:由步骤a5的检测结果确定对应区域栅格的状态;
步骤a7:gmapping算法更新地图并提供包含室内玻璃的可供后续导航直接使用的移动机器人导航地图,从而基于激光信息与视觉信息融合获得移动机器人导航地图。
优选的,所述步骤a1具体包括:
在ros环境利用激光雷达向外射出激光并接收返回激光获得周围除玻璃外的障碍物信息;利用里程计获取移动平台速度、位置和转角信息;利用深度相机获取环境的rgb图像信息,发布话题并将话题汇总成rosbag,从而完成对机器人自身位姿和环境信息的采集。
优选的,所述步骤a2具体包括:
获取步骤a1中获得的激光雷达信息和里程计信息,以时间戳为横坐标,将信息离散化后采用粒子滤波算法进行实时定位建图。
优选的,所述粒子滤波算法的条件概率如下:
其中,
优选的,所述步骤a3具体包括:
基于所述激光雷达信息获得强度数据,对激光雷达返回的强度信号进行分析,利用激光雷达扫描玻璃时的强度特点筛选疑似玻璃存在区域,所述强度特点包括强度、变化率和高峰持续时间。
优选的,所述疑似玻璃存在区域的筛选过程具体包括:
步骤a31:设定筛选条件,筛选条件包括与强度相关的第一预设条件、与变化率相关的第二预设条件和与高峰持续时间相关的第三预设条件;
步骤a32:以时间戳为横坐标,逐步筛选出返回的强度信号的强度满足第一预设条件的信号段,用s1表示;
步骤a33,在步骤a32获得的s1中,逐步筛选出返回的强度信号的强度变化率满足第二条件的信号段,用s2表示;
步骤a34,在步骤a33获得的s2中,逐步筛选出返回的强度信号的高强度持续时间是否满足第三预设条件的信号段,用s3表示,获得疑似玻璃存在区域,高强度是指大于一预设值的强度。
优选的,所述步骤a4具体包括:
针对步骤a3获得的信号段的角度和信号段的时间戳来选取不同角度的深度相机拍摄的图像,平台按照圆形围绕设置了
优选的,所述步骤a5具体包括:
采用基于深度学习的玻璃检测网络对步骤a4选出来的每一张rgb图像进行检测,以确定对应的疑似玻璃存在区域玻璃是否存在;
玻璃检测网络核心为lcfi模块,用于在给定输入特征的情况下,提取和集成多尺度大范围上下文特征,以检测不同大小的玻璃。
优选的,所述玻璃检测网络用于执行如下步骤:
步骤a51,信息送入舵机特征提取器,以获取不同级别的特征;
步骤a52,将获取的特征分级送入
步骤a53,最后
步骤a54,高层底层信息融合,得到检测结果并输出。
优选的,步骤a6将栅格值为1的段的所有信息汇总,以s5表示;
步骤a7之前,将s5中各点的栅格坐标转换到全局坐标,计算每一时刻玻璃的栅格点与机器人在全局坐标系下的相对位置,相对位置包括以机器人为原点计算二者之间的距离值和角度,每一时刻对应的角度下,距离计算值和激光雷达返回距离信息的大小,若激光雷达返回距离值大于返回预设值,用相对位置中的距离值替换激光雷达返回距离值。
本发明提供的一种复杂室内环境移动机器人导航地图构建方法针对已有的gmapping方法进行了改进,对激光雷达返回强度数据进行处理获得疑似玻璃存在区域,然后根据疑似玻璃存在区域角度信息,从多个相机中选取对应角度的相机rgb图像,利用基于深度学习算法的玻璃检测网络对环境中的玻璃进行检测,再根据检测结果判断玻璃是否存在并确定对应区域栅格的状态,最终更新地图,输出含有玻璃信息的地图,从而实现对环境中玻璃的检测。本发明只使用激光雷达和rgb相机两种设备对玻璃的检测,根据激光雷达扫描玻璃时返回的强度特征筛选疑似玻璃存在区域,再利用深度学习算法对rgb相机图像进行处理以验证这些疑似区域玻璃是否真实存在,再根据激光雷达返回的距离信息中获得的玻璃位置信息进行导航地图构建,该方法具有使用设备较少,系统结构较简单的优点。
附图说明
图1为复杂室内环境移动机器人导航地图构建方法流程图;
图2为实施例中提供的实施复杂室内环境移动机器人导航地图构建方法的平台组成示意图;
图3为实施例中教学楼办公环境示意图;
图4为实施例中筛选疑似玻璃存在区域的步骤图;
图5为实施例中lcfi模块的工作流程图;
图6为实施例中更新地图的步骤图;
图7为采用复杂室内环境移动机器人导航地图构建方法获得的建图结果。
具体实施方式
下面结合附图对本申请实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
实施例一
本发明的第一实施方式涉及一种复杂室内环境移动机器人导航地图构建方法,其流程如图1所示,
本实施例是利用移动平台在教学楼办公环境下实施,平台组成如图2所示,教学楼办公环境如图3所示,教学楼办公环境主要由走廊和玻璃构成,其中一圈走廊由于靠近教学楼外墙,故一侧为墙壁,另一侧为玻璃围栏,移动平台在该走廊进行建图作业时,激光雷达发出的激光由于受到玻璃围栏的镜面反射,仅在很小的角度范围内可以回到激光雷达,因而无法获得玻璃的距离信息,所以仅利用激光雷达和里程计信息不能建立该走廊完整的地图信息。
一种复杂室内环境移动机器人导航地图构建方法具体如下:
步骤a1:利用激光雷达、里程计、深度相机同时工作获取机器人自身位姿信息和环境信息,深度相机设于不同角度且深度相机的个数为多个;
步骤a2:利用激光雷达信息和里程计信息进行初次slam并建立原地图;
步骤a3:处理激光雷达信息,获得强度数据,基于强度数据筛选疑似玻璃存在区域;
步骤a4:根据筛选出的疑似玻璃存在区域的角度信息从多个深度相机中选取与疑似玻璃存在区域的角度信息对应角度处的深度相机,获取被选取的深度相机的rgb图像;
步骤a5:基于被选取的深度相机的rgb图像,利用深度学习算法实现复杂环境内玻璃检测,复杂环境为包括多个玻璃的环境;
本发明只使用激光雷达和rgb相机两种设备实现对玻璃的检测,根据激光雷达扫描玻璃时返回的强度特征信息筛选疑似玻璃存在区域,再利用深度学习算法对深度相机的rgb图像进行处理以验证这些疑似区域玻璃是否真实存在,系统结构简单,且基于疑似、确定是否真实存在两个环节,降低运算量的同时提高了玻璃检测的准确度。
步骤a6:由步骤a5的检测结果确定对应区域栅格的状态;
步骤a7:gmapping算法更新地图并提供包含室内玻璃的可供后续导航直接使用的移动机器人导航地图,从而基于激光信息与视觉信息融合获得移动机器人导航地图。
本发明实施例提供的一种复杂室内环境移动机器人导航地图构建方法只使用激光雷达和rgb相机两种设备检测玻璃,根据激光雷达扫描玻璃时返回的强度特征筛选疑似玻璃存在区域,再利用深度学习算法对rgb相机图像进行处理以验证这些疑似区域玻璃是否真实存在,再根据激光雷达返回的距离信息获得玻璃的位置信息进行导航地图构建,该方法具有使用设备较少,系统结构较简单的优点。
实施例二
进一步的,本发明的第二实施方式涉及一种复杂室内环境移动机器人导航地图构建方法,具体包括如下步骤:
步骤a1:利用激光雷达、里程计、深度相机同时工作获取机器人自身位姿信息和环境信息,深度相机设于不同角度且深度相机的个数为多个;
具体来说,在ros环境利用激光雷达向外射出激光并接收返回激光获得周围除玻璃外的障碍物的障碍物信息;利用里程计获取移动平台速度、位置和转角信息;利用深度相机获取环境的rgb图像信息,发布话题并将话题汇总成rosbag,从而完成对机器人自身位姿和环境信息的采集。
更进一步的,激光雷达数据类型包括:
std_msgs/headerheader(信息头)
float32angle_min(最小角度)
float32angle_max(最大角度)
float32angle_increment(角度增量)
float32time_increment(时间增量)
float32scan_time(扫描时间)
float32range_min(最小距离)
float32range_max(最大距离)
float32[]ranges
float32[]intensities
其中float32[]ranges和float32[]intensities分别为返回的障碍物距离和激光强度信息。
步骤a2:利用激光雷达信息和里程计信息进行初次slam并建立原地图;
获取步骤a1中获得的激光雷达信息和里程计信息,以时间戳为横坐标,将信息离散化后采用粒子滤波算法进行实时定位建图。
进一步的,粒子滤波算法的条件概率如下:
其中,
步骤a3:处理激光雷达信息,获得强度数据,基于强度数据筛选疑似玻璃存在区域;
基于激光雷达信息获得强度数据,对激光雷达返回的强度信号进行分析,利用激光雷达扫描玻璃时的强度特点筛选疑似玻璃存在区域,强度特点包括强度、变化率和高峰持续时间,从而以激光雷达返回数据强度大、变化剧烈并且持续时间短来筛选疑似玻璃存在的区域。
进一步的,疑似玻璃存在区域的筛选过程如图4所示,具体来说,包括如下步骤:
步骤a31:设定筛选条件,筛选条件包括与强度相关的第一预设条件、与变化率相关的第二预设条件和与高峰持续时间相关的第三预设条件。
具体来说,设定筛选阈值,筛选阈值包括强度阈值、变化率阈值和高峰持续时间阈值,设定第一预设条件为强度信号的强度大于强度阈值,设定第二预设条件为强度信号的变化率大于变化率阈值;设定第三预设条件为强度信号的高峰持续时间大于高峰持续时间阈值。例如,设定强度阈值为
步骤a32:以时间戳为横坐标,逐步筛选出返回的强度信号的强度满足第一预设条件的信号段,即
步骤a33,在步骤a32获得的s1中,逐步筛选出返回的强度信号的强度变化率满足第二条件的信号段,即
步骤a34,在步骤a33获得的s2中,逐步筛选出返回的强度信号的高强度持续时间是否满足第三预设条件的信号段,即
基于强度信号的强度特征获得的疑似玻璃存在区域仅适用了激光雷达的信息,无法排除由于平台振动,系统震荡以及噪声产生的干扰段,所以在下一步骤中进一步引入深度相机的rgb图像检测步骤,以确认玻璃是否存在,提高了玻璃检测的准确性,另一方面,基于疑似存在区域的初步筛选,减少了基于rgb图像检测识别的工作量,加快了玻璃检测的运算速度。
步骤a4:根据筛选出的疑似玻璃存在区域的角度信息从多个深度相机中选取与疑似玻璃存在区域的角度信息对应角度处的深度相机,获取被选取的深度相机的rgb图像;
针对步骤a3获得的信号段的角度和信号段的时间戳来选取不同角度的深度相机拍摄的图像,平台按照圆形围绕设置了
例如,取
如果
如果
如果
根据所选取的相机和信号段的时间戳获取已选取的相机拍摄的图像。
步骤a5:基于被选取的深度相机的rgb图像,利用深度学习算法实现复杂环境内玻璃检测,复杂环境为包括多个玻璃的环境;
对步骤a4选出来的每一张rgb图像进行检测,以确定对应的疑似玻璃存在区域玻璃是否存在玻璃;
步骤a5中检测采用的是基于深度学习的玻璃检测网络,网络核心为lcfi模块,lcfi模块用于在给定输入特征的情况下,高效、有效地提取和集成多尺度大范围上下文特征,以检测不同大小的玻璃;
主要包括以下步骤:
步骤a51,信息送入舵机特征提取器,以获取不同级别的特征;
步骤a52,将获取的特征分级送入
步骤a53,最后
步骤a54,高层底层信息融合,得到检测结果并输出。
步骤a5中,假定
步骤a6:由步骤a5的检测结果确定对应区域栅格的状态;
根据上述步骤a5输出的结果对栅格网点进行赋值,当检测网络检测到玻璃存在时,将角度和距离点的栅格值置为1;否则玻璃不存在,说明该位置强度异常变化是因为由于平台振动,系统震荡以及噪声产生干扰段,将栅格网点置为0。将栅格值为1的段的所有信息汇总,以s5表示。
步骤a7:gmapping算法更新地图并提供包含室内玻璃的可供后续导航直接使用的移动机器人导航地图,从而基于激光信息与视觉信息融合获得移动机器人导航地图。
步骤a7之前,将s5中各点的栅格坐标转换到全局坐标并记录到数组中,然后计算每一时刻玻璃的栅格点与机器人在全局坐标系下的相对位置,即以机器人为原点计算二者之间的距离值和角度,判断每一时刻对应的角度下距离计算值和激光雷达返回距离信息的大小,若激光雷达返回距离值大于返回预设值,说明激光雷达发出的射线经玻璃被镜面反射掉,未返回激光雷达,用相对位置中的距离值替换激光雷达返回距离值,最后再进行gmapping操作。
利用自动清扫机器人平台进行了实验,移动平台带有一个里程计和一个单线激光雷达,将带有改进建图算法的移动平台置于上述实施例一提及的包含一侧为玻璃,另一侧为墙壁的走廊的教学办公室环境中进行建图实验,实验过程中没有任何如照明、标记等限制或控制。最终建图方法生成了带有正确玻璃板标记的栅格地图,建图效果如图7所示。
由实验结果可知,本发明提供的导航地图构建方法具有较高的玻璃识别率和较快的运算速度。原有的建图方法在对含玻璃走廊建图时,在玻璃一侧只能显示出均匀的点,原因是这些位置有金属边框和柱子以及一些花盆,当激光照射时能将激光反射回激光雷达,所以可以在建图结果中显示出来。这种情况在激光雷达照射玻璃时并不适用,而使用本发明提供的改进的方法建图则可以将玻璃区域大部分显示出来。
通过对玻璃的检测,机器人能够在教学楼、办公楼等包含玻璃物体的环境中获得更有效的定位数据点,从而改善机器人的同步定位能力,进而提高了移动机器人在存在玻璃的环境中工作的安全性,有效地解决传统的移动机器人建图方法存在的无法识别环境中的玻璃物体(如玻璃幕墙)的问题。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
上述实例仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉此技术领域的技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
1.一种复杂室内环境移动机器人导航地图构建方法,其特征在于,包括:
步骤a1:利用激光雷达、里程计、深度相机同时工作获取机器人自身位姿信息和环境信息,深度相机设于不同角度且深度相机的个数为多个;
步骤a2:利用激光雷达信息和里程计信息进行初次slam并建立原地图;
步骤a3:处理所述激光雷达信息,获得强度数据,基于所述强度数据筛选疑似玻璃存在区域;
步骤a4:根据筛选出的所述疑似玻璃存在区域的角度信息从多个深度相机中选取与所述疑似玻璃存在区域的角度信息对应角度处的深度相机,获取被选取的深度相机的rgb图像;
步骤a5:基于所述被选取的深度相机的rgb图像,利用深度学习算法实现复杂环境内玻璃检测,复杂环境为包括多个玻璃的环境;
步骤a6:由步骤a5的检测结果确定对应区域栅格的状态;
步骤a7:gmapping算法更新地图并提供包含室内玻璃的可供后续导航直接使用的移动机器人导航地图,从而基于激光信息与视觉信息融合获得移动机器人导航地图。
2.根据权利要求1所述的一种复杂室内环境移动机器人导航地图构建方法,其特征在于,所述步骤a1具体包括:
在ros环境利用激光雷达向外射出激光并接收返回激光获得周围除玻璃外的障碍物信息;利用里程计获取移动平台速度、位置和转角信息;利用深度相机获取环境的rgb图像信息,发布话题并将话题汇总成rosbag,从而完成对机器人自身位姿和环境信息的采集。
3.根据权利要求1所述的一种复杂室内环境移动机器人导航地图构建方法,其特征在于,所述步骤a2具体包括:
获取步骤a1中获得的激光雷达信息和里程计信息,以时间戳为横坐标,将信息离散化后采用粒子滤波算法进行实时定位建图。
4.根据权利要求3所述的一种复杂室内环境移动机器人导航地图构建方法,其特征在于,所述粒子滤波算法的条件概率如下:
其中,
5.根据权利要求1所述的一种复杂室内环境移动机器人导航地图构建方法,其特征在于,所述步骤a3具体包括:
基于所述激光雷达信息获得强度数据,对激光雷达返回的强度信号进行分析,利用激光雷达扫描玻璃时的强度特点筛选疑似玻璃存在区域,所述强度特点包括强度、变化率和高峰持续时间。
6.根据权利要求5所述的一种复杂室内环境移动机器人导航地图构建方法,其特征在于,所述疑似玻璃存在区域的筛选过程具体包括:
步骤a31:设定筛选条件,筛选条件包括与强度相关的第一预设条件、与变化率相关的第二预设条件和与高峰持续时间相关的第三预设条件;
步骤a32:以时间戳为横坐标,逐步筛选出返回的强度信号的强度满足第一预设条件的信号段,用s1表示;
步骤a33,在步骤a32获得的s1中,逐步筛选出返回的强度信号的强度变化率满足第二条件的信号段,用s2表示;
步骤a34,在步骤a33获得的s2中,逐步筛选出返回的强度信号的高强度持续时间是否满足第三预设条件的信号段,用s3表示,获得疑似玻璃存在区域,高强度是指大于一预设值的强度。
7.根据权利要求1所述的一种复杂室内环境移动机器人导航地图构建方法,其特征在于,所述步骤a4具体包括:
针对步骤a3获得的信号段的角度和信号段的时间戳来选取不同角度的深度相机拍摄的图像,平台按照圆形围绕设置了
8.根据权利要求1所述的一种复杂室内环境移动机器人导航地图构建方法,其特征在于,所述步骤a5具体包括:
采用基于深度学习的玻璃检测网络对步骤a4选出来的每一张rgb图像进行检测,以确定对应的疑似玻璃存在区域玻璃是否存在玻璃;
玻璃检测网络核心为lcfi模块,用于在给定输入特征的情况下,提取和集成多尺度大范围上下文特征,以检测不同大小的玻璃。
9.根据权利要求8所述的一种复杂室内环境移动机器人导航地图构建方法,其特征在于,所述玻璃检测网络用于执行如下步骤:
步骤a51,信息送入舵机特征提取器,以获取不同级别的特征;
步骤a52,将获取的特征分级送入
步骤a53,最后
步骤a54,高层底层信息融合,得到检测结果并输出。
10.根据权利要求1所述的一种复杂室内环境移动机器人导航地图构建方法,其特征在于:
步骤a6将栅格值为1的段的所有信息汇总,以s5表示;
步骤a7之前,将s5中各点的栅格坐标转换到全局坐标,计算每一时刻玻璃的栅格点与机器人在全局坐标系下的相对位置,相对位置包括以机器人为原点计算二者之间的距离值和角度,每一时刻对应的角度下,距离计算值和激光雷达返回距离信息的大小,若激光雷达返回距离值大于返回预设值,用相对位置中的距离值替换激光雷达返回距离值。
技术总结