公开/公告号CN113129373A
专利类型发明专利
公开/公告日2021-07-16
原文格式PDF
申请/专利权人 南京航空航天大学;
申请/专利号CN202110361017.X
申请日2021-04-02
分类号G06T7/73(20170101);G01C21/00(20060101);G01C21/20(20060101);G06K9/62(20060101);G06N3/04(20060101);G06N3/08(20060101);G06T5/00(20060101);G06T7/55(20170101);
代理机构32204 南京苏高专利商标事务所(普通合伙);
代理人柏尚春
地址 210016 江苏省南京市秦淮区御道街29号
入库时间 2023-06-19 11:52:33
技术领域
本发明涉及自动驾驶与定位导航技术,尤其涉及一种基于卷积神经网络的室内移动机器人视觉定位方法。
背景技术
移动机器人,是一个集环境感知、动态决策与规划、行为控制与执行等多功能于一体的综合系统。它集中了传感器技术、信息处理、电子工程、计算机工程、自动化控制工程以及人工智能等多学科的研究成果,代表机电一体化的最高成就,是目前科学技术发展最活跃的领域之一。随着机器人性能不断地完善,移动机器人的应用范围大为扩展,不仅在工业、农业、医疗、服务等行业中得到广泛的应用,而且在城市安全、国防和空间探测领域等有害与危险场合得到很好的应用。但目前移动机器人仍有一定的局限性,最大的局限性就是不能向真正的人类那样对未知环境进行探索。如早期的扫地机器人,只能按照设定的路线进行清扫,碰到墙壁或物体边缘便转向,导致清扫线路杂乱无章、效率低下。移动机器人何时才能向真正的人类一样在不借助GPS的情况下在小范围的未知环境中(如室内)知道自己的位置,也就是移动机器人在未知环境中运行时如何进行定位导航与地图构建(SLAM,simultaneous localization and mapping),这引起了各界的广泛关注
早期的SLAM大多为激光SLAM,也就是用于此种SLAM的传感器是激光雷达。早在2005年的时候,激光SLAM就已经被研究的比较透彻,框架也已初步确定。激光SLAM,是目前最稳定、最主流的定位导航方法。但是,激光雷达相对昂贵,安装也有结构要求,而且受到探测范围的限制。而随着计算机视觉的迅速发展,视觉SLAM因为信息量大,适用范围广等优点受到广泛关注。视觉SLAM的传感器使用相机作为传感器,成本低,结构简单,适合大面积推广,但最大的缺点是受环境影响较大,随着地图的构建,会存在一些累计误差,而且运算负荷大。
发明内容
发明目的:针对现有技术存在的问题,本发明的提供了一种鲁棒性强、定位精度高的基于卷积神经网络的室内移动机器人视觉定位方法。
技术方案:本发明所采用的一种基于卷积神经网络的室内移动机器人视觉定位方法,包括以下步骤:
(1)机器人平台搭载有前视双目相机,所述双目相机每秒采集n帧图像;机载计算机开启线程,以n Hz的频率运行基于特征点法的视觉里程计;
定义k时刻获取双目相机中左边相机对应的图像
若上述基于特征点法的视觉里程计跟踪失败,则进入步骤(2)进行重定位,采用基于目标检测和相似度检测的方法确定图像位姿;否则,跳过步骤(2),直接进入步骤(3);
(2)定义k时刻获取所述提取特征点后的图像
(3)机载计算机将当前双目图像中左边相机图像的位姿变换矩阵T
进一步的,步骤(1)中,基于VGG卷积神经网络提取特征点,选取VGG的最后一个卷积层作为特征提取的输出,再经过Softmax层,输出图像上每个像素点是角点的概率;训练该神经网络的数据集拟采用自己构造的数据集,该数据集拟使用基于Opencv自动生成的在不同像素亮度下的各类有规则的几何形状,这些图像的角点位置已知,且在不同像素亮度下都有相应的图像。
采用卷积神经网络提取特征点的具体步骤如下:
(1.1.1)假设双目相机极线水平,首先获取双目相机中左边相机对应的图像
(1.1.2)把
(1.1.3)采取非极大值抑制算法,选取局部范围内概率最大的点作为角点,使角点均匀化;
(1.1.4)计算左图图像角点
进一步的,步骤(1)中,运行基于特征点法的视觉里程计的具体过程如下:
(1.2.1)首先进行运动估计,依据机器人匀速运动模型,估计左边相机当前帧图像相对于左边相机第一帧图像的位姿变换矩阵;定义上一帧图像和上上帧图像相对于第一帧图像的位姿变换矩阵分别T
(1.2.2)依据匀速运动模型,ΔT
(1.2.3)依据当前帧的预测位姿将局部地图中的所有关键帧对应的特征点投影至当前帧,选择投影的特征点数目最多的关键帧作为参考帧;获取参考帧的位姿变换矩阵T
(1.2.4)将当前帧左边相机图像中的特征点
(1.2.5)在得到了当前帧相对于参考帧的位姿变换矩阵T
(1.2.6)如果当前帧作为关键帧加入了局部地图,则对当前帧左边相机的图像
进一步的,步骤(2)具体包括如下内容:
(2.1)对步骤(1)中视觉里程计跟踪失败的当前帧的左边相机的图像
α为系数,S值越大,则代表两帧图像相似度越高。
(2.2)选取与当前帧相似度最高的关键帧作为当前帧的参考关键帧,按照步骤(1.2.4),计算当前帧相对于参考关键帧的位姿T
进一步的,步骤(3)具体包括如下内容:
(3.1)在得到了双目视觉里程计当前帧相对于参考关键帧的位姿变换矩阵T
(3.2)把当前帧相对于世界坐标系的位姿变化矩阵T
有益效果:
和现有技术相比,本发明具有如下显著进步:将深度学习、目标检测和SLAM进行有机结合,运算负荷小,且降低了视觉SLAM中定位精度易受环境条件变化(如光照条件变化)的影响,提高了移动机器人在室内定位的可靠性与鲁棒性,增强了移动机器人的应用范围。
附图说明
图1为本发明的流程示意图;
图2为本发明的系统模块框图;
图3为本发明特征提取中卷积神经网络模型图;
图4为本发明使用神经网络提取特征点流程图;
图5为本发明基于特征点法的双目视觉里程计的流程图;
图6为本发明基于YOLO的目标检测示意图;
图7为本发明重定位流程图。
具体实施方式
本发明的一种基于卷积神经网络的室内移动机器人视觉定位方法,通过双目摄像机采集双目图像,实现机器人的定位与控制;采用基于卷积神经网络的方法提取双目图像特征点,采用BA法进行图像跟踪,并在跟踪失败时使用目标检测算法确定图像位姿。把图像位姿作为机器人的控制信号,控制机器人的位置。本发明摆脱了图像对环境变化敏感(如光照条件变化)的缺陷,实现室内移动机器人在缺失GPS环境下的鲁棒定位与控制。
以下结合附图和具体实施例,详细阐述本发明的技术方案。
如图1、图2所示,一种基于卷积神经网络的室内移动机器人视觉定位方法,包括以下步骤:
步骤1、机器人平台搭载有前视双目相机,双目相机每秒采集10帧图像;机载计算机开启线程,以10Hz的频率运行基于特征点法的视觉里程计;假如k时刻获取双目相机的左右相机对应的图像
若基于特征点法的视觉里程计计算位姿失败,则进入步骤2,否则跳过步骤2,直接进入步骤3。
步骤2、假如k时刻获取左右相机已提取特征点后的图像
步骤3、机载计算机将得到的当前双目图像中的左边相机图像的位姿变换矩阵T
在VGG(Visual Geometry Group)卷积神经网络的基础上,构造如图3所示卷积神经网络。该神经网络采用VGG网络,选取VGG的最后一个卷积层作为特征提取的输出,再经过Softmax层,输出图像上像素点是角点的概率。训练该神经网络的数据集拟采用自己构造的数据集,该数据集拟使用基于Opencv自动生成的在不同像素亮度下的各类有规则的几何形状(如矩形,梯形等),这些图像已知角点位置,且在不同像素亮度下都有相应的图像。采用这样的数据集,极大降低了光照对图像特征提取的影响,提高了鲁棒性。
图4为本发明使用神经网络提取特征点流程图,具体阐述如下:
首先获取
图5为本发明基于特征点法的双目视觉里程计的流程图,具体阐述如下:
(1)首先进行运动估计,依据机器人匀速运动模型,估计左边相机当前帧图像相对于左边相机第一帧图像的位姿变换矩阵。假如上一帧图像和上上帧图像相对于第一帧图像的位姿变换矩阵分别T
ΔT
(2)依据匀速运动模型,ΔT
(3)依据当前帧的预测位姿将局部地图中的所有关键帧对应的特征点投影至当前帧,选择投影的特征点数目最多的关键帧作为参考帧。获取参考帧的位姿变换矩阵T
(4)将当前帧左边相机图像中的特征点
(5)在得到了当前帧相对于参考帧的位姿变换矩阵T
(6)如果当前帧作为关键帧加入了局部地图,则对当前帧左边相机的图像
图6为本发明基于YOLO的目标检测示意图。YOLO是现如今端到端物体检测做的最好的神经网络架构之一,YOLO有已在coco数据集上训练好的模型参数。对于一幅输入图像,YOLO会生成一个R*C*80输出向量,表示图像某块区域预先定义的80个种类可能出现的概率,其中R、C是为图像被分成R*C的子块,继而网络在这些分好的图像块中检测目标。目标检测具体过程如下:
把
图7为本发明重定位流程图,重定位采用基于YOLO的目标检测的方法提取图片的特征向量,并进行运动估计。具体过程如下:
对视觉里程计跟踪失败的当前帧的左边相机的图像
α为系数,S值越大,则代表两帧图像相似度越高。
选取与当前帧相似度最高的关键帧作为当前帧的参考关键帧,按照步骤1中“基于特征点法的视觉里程计”的方法,计算当前帧相对于参考关键帧的位姿T
机译: 室内视觉定位系统和移动机器人
机译: 室内视觉定位系统和移动机器人
机译: 用于基于多位卷积神经网络的基于多位卷积神经网络的存储单元的存储单元,用于基于多位卷积神经网络的基于存储的内存应用的存储器阵列结构及其计算方法