本发明属于移动机器人自主导航领域,特别是一种基于卷积神经网络多层特征融合的闭环检测方法。
背景技术:
同时定位与构图(simultaneouslocalizationandmapping,slam)是机器人在未知环境中确定自身位姿信息并实现自主移动的关键技术。闭环检测是视觉slam的关键部分之一,该模块对构建全局一致性的地图具有重要意义。目前,视觉闭环检测可认为是图像匹配问题,算法主要对当前位置图像与已访问过的位置图像进行匹配,因此闭环检测模块包含图像描述和相似性计算两部分。
当前视觉slam中闭环检测的方法主要分为两类:基于视觉词袋模型、基于深度学习。视觉词袋(bovw)将图像的局部特征聚类成视觉单词以表征图像。mark等人提出基于surf特征的闭环检测框架fab-map,将提取的特征聚类构成视觉字典,用单词描述图像。dbow2是使用brief描述符和fast算子提取特征生成二进制词袋。在基于orb-slam2系统的闭环检测模块中,视觉词袋是利用orb提取的特征描述子构建。视觉词袋模型由于依赖人工设计的特征,只能在相对稳定的室内才有较好的检测效果,当在光照变化明显的环境下闭环检测的准确性会下降。因此,随着深度学习技术的快速发展及广泛应用,自2015年,研究者首次将深度学习引入闭环检测模块。hou等人提出使用places-cnn模型提取中间各层的特征用于测试,选取特征性能最好的一层作为最终网络的输出。实验结果表明在光照变化下该方法明显优于传统视觉词袋的方法。2017年,gao等人提出了一种基于堆叠式降噪自动编码器(sda)的新颖方法,它以无监督的方式从原始输入数据中自主学习特征以表示图像。qiang等人提出使用alexnet网络获取图像特征,对cnn每个通道激活聚类,其聚类中心代表一个视觉单词,创建基于cnn单词的单词对,用于对空间信息进行编码。以上研究方案仅采用cnn的深层语义特征表示图像信息,受光照变化影响特征对图像细节的表征能力问题尚需继续研究。
本发明主要解决的是解决受光照变化影响特征对图像细节的表征不足,思路是采用融合卷积特征替代卷积特征提高图像表征能力。
技术实现要素:
本发明旨在解决以上现有技术的问题。提出了一种基于卷积神经网络多层特征融合的闭环检测方法。本发明的技术方案如下:
一种基于卷积神经网络多层特征融合的闭环检测方法,其包括以下步骤:
s1、将移动机器人搭载的传感器采集的当前位置图像与历史关键图像进行缩放预处理,采用最邻近插值算法对图像进行缩放后输入预训练卷积神经网络;
s2、利用卷积神经网络作为特征提取器,选择overfeat网络提取当前位置图像与历史关键图像不同卷积层的特征图;
s3、设计并建立浅层几何特征与深层语义特征的融合模块,浅层几何特征与深层语义特征融合模块用于对图像更好的表征,将不同层特征进行加权融合;
s4、将融合特征进行l2归一化后采用主成分分析pca降维处理;
s5、为检测是否产生闭环,将当前位置图像与历史关键图像的融合特征降维处理后进行相似性评分,得到最终闭环检测的结果。
进一步的,所述步骤s1将获取到的当前位置图像与历史关键图像进行最邻近插值算法对图像进行缩放预处理,历史关键图像指的是机器人之前访问过的位置生成的关键图,将图像传递给预训练卷积神经网络,预训练卷积神经网络指的是本文选择的overfeat,需要先对网络进行预先的学习训练,学习后的网络才能应用于图像检索,具体原始图像尺寸为640×480,通过以下公式缩小为221×221:
式中w,h为原图像的像素大小,w,h缩小后图像的像素大小,假设缩小前的一个像素点为(x,y),缩小后的像素点为(x,y),因此缩放后像素点的像素值如下:
最邻近插值算法使用的方法就是四舍五入法,式中表示为[.]。
进一步的,所述步骤s2利用卷积神经网络作为特征提取器,选择overfeat网络提取图像不同卷积层的特征图,具体包括:
将图像输入给overfeat网络提取图像不同卷积层的特征图,overfeat网络由卷积层、最大池层、全连接层组成,并整流线性单元(relu),对网络进行修改,将全连接层改为卷积层,其卷积核大小为5×5,步长为1卷积核个数为4096,具体功能如下:
卷积层用于提取图像的特征;最大池化层保持特征的位置和旋转不变性以增强检测的鲁棒性;relu作为非线性激活函数,由下式表示:
relu(x)=max(0,x)
relu的使用,使得网络可以自行引入稀疏性,同时大大地提高了训练速度;
训练网络参数设置:训练的min-batchs选择128,神经网络学习是从训练数据中选择一批数据称为min-batchs,小批量,然后对每个min-batchs进行学习;
权重初始化选择高斯分布的随机初始化:
(μ,σ2)=(0.1×10-2)
μ,σ分别表示高斯分布的期望值、标准差。采用随机梯度下降法,进行优化更新,动量项参数大小选择0.6,l2权重衰减系数大小选择10-5次方,学习率η初始选择0.05,随着迭代次数的增加,η逐渐减小到0.01。
进一步的,所述步骤s3中建立浅层几何特征与深层语义特征融合模块,将不同层特征进行加权融合,具体包括:为将不同层的特征图调整到同一尺度和通道数目,设计调整网络模块,该模块用于调整特征图尺寸,由下采样(subsampled)和卷积层(conv)组成,下采样通过max-pooling来实现,将浅层特征图的尺寸降为5×5;
其中调整网络模块的输出大小可通过下式计算得出下采样及卷积层的参数设置:
式中(h,w)为输入大小,h、w分别表示特征图的高和宽,滤波器大小为fh×fw,输出大小为(oh,ow),步幅为s;
卷积层参数设置为:滤波器大小为1×1,卷积核个数为4096,该卷积层是为了改变特征图的通道数;
采用加权求和的方式对多层特征进行融合,计算公式如下:
v=ω1v1+ω2v2+ω3v3
式中v为overfeat网络提取的每个融合后的特征向量,ω1,ω2,ω3为各层对应的权重,最终得到融合特征大小为1024×5×5。
进一步的,所述步骤s4将融合特征进行l2归一化后采用主成分分析pca降维处理,具体包括:
上式d表示向量的维度,预处理后假设获得n个归一化融合特征向量,并且组成矩阵x,其中i表示输入图像:
对融合特征矩阵进行pca降维处理,步骤为:
(1)将原始特征零中心化:
(2)计算数据的协方差矩阵cov,并对其进行奇异值分解(svd),以便可以得到列为特征向量的矩阵u,矩阵s的对角项是cov的奇异值:
cov=xtx
[u,s,w]=svd(cov)
(3)根据下式将矢量投影到较低维空间,最终将维度减小到500:
进一步的,所述步骤s5为检测是否产生闭环,将当前位置图像与历史关键图像的融合特征降维处理后进行相似性评分,得到最终闭环检测的结果,具体包括:
定义不同图像的融合特征之间的欧几里得距离为闭环检测的相似性评分体系,公式如下:
式中d(i,j)是帧i和j之间的距离,||·||2是向量l2范数,帧间的相似性评分定义为:
使用归一化后计算距离来获得的得分值位于[0,1]中,以判断是否检测到闭环。
本发明的优点及有益效果如下:
本发明提供了一种基于卷积神经网络多层特征融合的闭环检测方法,在光照变化的环境下,本文闭环检测的算法相较于其他算法,不仅保证了输出特征图的细节信息和语义信息,而且本算法在实现实时性的同时具有更强的鲁棒性和较高的准确性。针对目前主流算法使用cnn直接提取全连接输出向量来计算相似性得分无法在光照变化条件下获得图像的细节信息,导致闭环检测的准确性较低。现有技术人员由于利用深层语义特征应对光照变化,而忽略了光照变化下的细节信息。因此本发明采用多层特征融合,将浅层细节特征与深层语义特征经过特征融合模块提取各层特征,通过设计调整网络模块对特征图进行调整后加权融合,使融合特征包含更多的原始图像的细节信息,提高闭环检测在光照变化下的准确性。
附图说明
图1是本发明提供优选实施例基于卷积神经网络多层特征融合的闭环检测方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、详细地描述。所描述的实施例仅仅是本发明的一部分实施例。
本发明解决上述技术问题的技术方案是:
如图1所示,本发明提供了一种一种基于卷积神经网络多层特征融合的闭环检测方法,其包括以下步骤:
s1、将移动机器人搭载的传感器采集的当前位置图像与历史关键图像进行缩放预处理,采用最邻近插值算法对图像进行缩放后输入预训练卷积神经网络;
s2、利用卷积神经网络作为特征提取器,选择overfeat网络提取当前位置图像与历史关键图像不同卷积层的特征图;
s3、设计并建立浅层几何特征与深层语义特征的融合模块,浅层几何特征与深层语义特征融合模块用于对图像更好的表征,将不同层特征进行加权融合;
s4、将融合特征进行l2归一化后采用主成分分析pca降维处理;
s5、为检测是否产生闭环,将当前位置图像与历史关键图像的融合特征降维处理后进行相似性评分,得到最终闭环检测的结果。
进一步的,所述步骤s1将获取到的当前位置图像与历史关键图像进行最邻近插值算法对图像进行缩放预处理,历史关键图像指的是机器人之前访问过的位置生成的关键图,将图像传递给预训练卷积神经网络,预训练卷积神经网络指的是本文选择的overfeat,需要先对网络进行预先的学习训练,学习后的网络才能应用于图像检索,具体原始图像尺寸为640×480,通过以下公式缩小为221×221:
式中w,h为原图像的像素大小,w,h缩小后图像的像素大小,假设缩小前的一个像素点为(x,y),缩小后的像素点为(x,y),因此缩放后像素点的像素值如下:
最邻近插值算法使用的方法就是四舍五入法,式中表示为[.]。
进一步的,所述步骤s2利用卷积神经网络作为特征提取器,选择overfeat网络提取图像不同卷积层的特征图,具体包括:
将图像输入给overfeat网络提取图像不同卷积层的特征图,overfeat网络由卷积层、最大池层、全连接层组成,并整流线性单元(relu),对网络进行修改,将全连接层改为卷积层,其卷积核大小为5×5,步长为1卷积核个数为4096,具体功能如下:
卷积层用于提取图像的特征;最大池化层保持特征的位置和旋转不变性以增强检测的鲁棒性;relu作为非线性激活函数,由下式表示:
relu(x)=max(0,x)
relu的使用,使得网络可以自行引入稀疏性,同时大大地提高了训练速度;
训练网络参数设置:训练的min-batchs选择128,神经网络学习是从训练数据中选择一批数据称为min-batchs,小批量,然后对每个min-batchs进行学习;
权重初始化选择高斯分布的随机初始化:
(μ,σ2)=(0.1×10-2)
μ,σ分别表示高斯分布的期望值、标准差。采用随机梯度下降法,进行优化更新,动量项参数大小选择0.6,l2权重衰减系数大小选择10-5次方,学习率η初始选择0.05,随着迭代次数的增加,η逐渐减小到0.01。
进一步的,所述步骤s3中建立浅层几何特征与深层语义特征融合模块,将不同层特征进行加权融合,具体包括:为将不同层的特征图调整到同一尺度和通道数目,设计调整网络模块,该模块用于调整特征图尺寸,由下采样(subsampled)和卷积层(conv)组成,下采样通过max-pooling来实现,将浅层特征图的尺寸降为5×5;
其中调整网络模块的输出大小可通过下式计算得出下采样及卷积层的参数设置:
式中(h,w)为输入大小,h、w分别表示特征图的高和宽,滤波器大小为fh×fw,输出大小为(oh,ow),步幅为s;
卷积层参数设置为:滤波器大小为1×1,卷积核个数为4096,该卷积层是为了改变特征图的通道数;
采用加权求和的方式对多层特征进行融合,计算公式如下:
v=ω1v1+ω2v2+ω3v3
式中v为overfeat网络提取的每个融合后的特征向量,ω1,ω2,ω3为各层对应的权重,最终得到融合特征大小为1024×5×5。
进一步的,所述步骤s4将融合特征进行l2归一化后采用主成分分析pca降维处理,具体包括:
上式d表示向量的维度,预处理后假设获得n个归一化融合特征向量,并且组成矩阵x,其中i表示输入图像:
对融合特征矩阵进行pca降维处理,步骤为:
(4)将原始特征零中心化:
(5)计算数据的协方差矩阵cov,并对其进行奇异值分解(svd),以便可以得到列为特征向量的矩阵u,矩阵s的对角项是cov的奇异值:
cov=xtx
[u,s,w]=svd(cov)
(6)根据下式将矢量投影到较低维空间,最终将维度减小到500:
进一步的,所述步骤s5为检测是否产生闭环,将当前位置图像与历史关键图像的融合特征降维处理后进行相似性评分,得到最终闭环检测的结果,具体包括:
定义不同图像的融合特征之间的欧几里得距离为闭环检测的相似性评分体系,公式如下:
式中d(i,j)是帧i和j之间的距离,||·||2是向量l2范数,帧间的相似性评分定义为:
使用归一化后计算距离来获得的得分值位于[0,1]中,以判断是否检测到闭环。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。