一种基于深度学习的机器人视觉定位方法与流程

未命名 09-13 阅读:125 评论:0


1.本发明涉及视觉定位领域,尤其涉及一种基于深度学习的机器人视觉定位方法。


背景技术:

2.现有的机器人定位技术利用激光点云与图像中的相似特征进行匹配配准定位。
3.现有技术中存在的问题为:需要激光雷达与相机模型的内外参数进行辅助配准;特征寻找不明显,难以正确匹配;整体结构复杂。


技术实现要素:

4.鉴于上述问题,提出了本发明以便提供克服上述问题或者至少部分地解决上述问题的一种基于深度学习的机器人视觉定位方法。
5.根据本发明的一个方面,提供了一种基于深度学习的机器人视觉定位方法,所述视觉定位方法包括:
6.采集环境图像;
7.按照时间戳对齐图像,获得图像数据;
8.对所述图像数据进行数据预处理;
9.构建神经网络模型;
10.设计损失函数定位机器人。
11.可选的,所述采集环境图像具体包括:
12.环境数据集根据实际工程中需要的环境自行采集,用网络公开数据集对所述环境数据集进行验证。
13.可选的,所述按照时间戳对齐图像,获得图像数据具体包括:将图像中存在的七维位姿标签与时间戳对齐。
14.可选的,所述按照时间戳对齐图像具体包括:
15.当采用rgb-d相机采集的环境图像数据集;
16.分别读取数据集中的真实轨迹和rgb信息的时间戳,并分别生成列表;
17.将最大时间误差设定为候选人生成的搜索半径,并计算两个列表之间的时间偏移;
18.在两个列表中找到搜索半径内最接近的匹配数据;
19.在真实轨迹中具有最佳匹配项时间戳的数据被添加到rgb信息中,生成具有gb名称、rgb时间戳、真实姿势和姿势时间戳的文件。
20.可选的,所述对所述图像数据进行数据预处理具体包括:
21.在训练开始前将图像进行重新缩放,缩放后图像较短边的长度为256像素;
22.将缩放的图片的像素随机裁剪为224
×
224作为姿态预测网络输入进行训练。
23.可选的,所述将缩放的图片的像素随机裁剪为224
×
224作为姿态预测网络输入进行训练之后还包括:
24.分别计算每个数据集图片中的像素强度的平均值和标准偏差;
25.采用所述平均值和所述标准偏差规范输入图像中每个像素的强度值。
26.可选的,所述构建神经网络模型具体包括:
27.神经网络模型采用resnet50和lstm的叠加网络,resnet进行对图像进行特征点提取,匹配环境图像;
28.引入lstm在全连接层上进行结构降维,并选择最优特征进行相机位姿估计以及运动轨迹记忆任务。
29.本发明提供的一种基于深度学习的机器人视觉定位方法,所述视觉定位方法包括:采集环境图像;按照时间戳对齐图像,获得图像数据;对所述图像数据进行数据预处理;构建神经网络模型;设计损失函数定位机器人。仅利用图像便可以进行机器人定位;结构简单,实现方便,速度快。
30.上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
31.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
32.图1为本发明实施例提供的一种基于深度学习的机器人视觉定位方法的流程图;
33.图2为本发明实施例提供的图像裁剪流程图;
34.图3为本发明实施例提供的机器人定位网络的体系结构;
35.图4为本发明实施例提供的修改后的resnet-50整体结构示意图。
具体实施方式
36.下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
37.本发明的说明书实施例和权利要求书及附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元。
38.下面结合附图和实施例,对本发明的技术方案做进一步的详细描述。
39.本发明是一个基于深度学习的端到端的移动机器人视觉定位算法。利用残差网络(resnet50)和长短时记忆网络(lstm)提高姿态估计的定位精度并且能够记忆全局路径。解决了传统定位方式感知混淆的部分问题,相对于视觉slam,通过预训练的网络模型能够获取更好的定位效果,抵抗运动过程中遮挡或视野范围内的运动物体的干扰,且在运动速度快或场景纹理单一的环境中,机器人定位精度不受机器人前一时刻运动的影响更具鲁棒性,提高了定位精度。
40.(1)数据集最初被预处理并输入到前面提到的网络模型中,然后对模型进行训练,输出要预测的图像姿态。这样,机器人的定位就完成了。如图1所示,将算法分为环境图像采集;按时间戳对齐图像;数据预处理;神经网络模型;设计损失函数定位机器人五部分。第一部分环境数据集可根据实际工程中需要的环境自行采集,也用网络公开数据集对环境数据集进行验证。
41.(2)按时间戳对齐图像的本质就是将图像中存在的七维位姿标签与时间戳对齐。如果使用的是rgb-d相机采集的环境图像数据集,需要进行以下步骤。
42.首先,分别读取数据集中的真实轨迹和rgb信息的时间戳,并分别生成列表。其次,将最大时间误差设定为候选人生成的搜索半径,并计算两个列表之间的时间偏移。接下来,在两个列表中找到搜索半径内最接近的匹配数据。最后,在真实轨迹中具有最佳匹配项时间戳的数据被添加到rgb信息中,生成一个具有gb名称、rgb时间戳、真实姿势和姿势时间戳的文件。只有所需的rgb信息和真实位姿被提取出来。
43.(3)数据预处理部分主要是用来加快网络对数据集的预处理的速度。由于不同数据集的图像像素不一样,为了使用所发明的网络能够训练不同的数据集,在训练开始前将图像进行重新缩放,缩放后图像较短边的长度为256像素,然后将缩放的图片的像素随机裁剪为224
×
224作为姿态预测网络输入进行训练。在测试集上我们使用中心裁剪的方式将图片裁剪为224
×
224像素,裁剪流程如图2所示。除此之
44.外,分别计算每个数据集图片中的像素强度的平均值和标准偏差,并使用它们来规范输入图像中每个像素的强度值,这样节省了预处理时间。
45.(4)第三部分神经网络模型主要目的是提取所输入的单个数据集中图像的特征进行位姿的预测,整个网络采用resnet50和lstm的叠加网络,resnet可以进行对图像进行较好的特征点提取从而匹配环境图像,在此基础上引入lstm在全连接层上进行结构降维,并选择最有用的特征进行相机位姿估计以及运动轨迹记忆任务。图1是所提出机器人定位网络的体系结构。
46.图3中res1-res4为resnet-50的残差块。整个cnn模型从原始的resnet-50模型中保留了初始的7x7卷积层和3x3的最大池化层,删除了最有一层的平均池化层。主体结构由4个残差单元块组成,每个残差块具有一个瓶颈体系结构,也就是图4中的btnk1和btnk2,主要由三个不同尺寸的卷积层组成,大小分别为:[1
×
1、3
×
3、1
×
1]。每个卷积之后进行批量归一化和修正线性单位(relu)。该专利使用标准线性单位(elus)替换relus来修改标准的残差块结构。elus有助于减少神经元的偏移,同时避免了梯度的消失,产生更快的收敛。
[0047]
修改后的resnet-50细节如图4所示,大概结构可划分为图4中的三大部分,三者内容分别是resnet-50整体结构、resnet-50残差层(res1-res4)的具体组成和瓶颈体系结构的具体组成。
[0048]
最后使用全局平均池化层替换最后一个平均池化层,然后添加1个全连接层dense1,dense1的维度为1024,dense1输出的高维度使网络容易对训练数据过度拟合,为了解决过拟合的问题,我们dense1后插入了四个维度为128的long short term memory networks(lstm)层,最后添加两个全连接层,它们的维度为3和4,分别用于回归三维平移x和四维角度q。
[0049]
通过cnn来估计机器人位置,所有的位置是完全独立地为不同的带标签的图像生
成的并不能生成完整的轨迹。但是,当使用具有时间连续性的图像流时,可以通过利用时间规律获得大量的姿势信息从而预测整个图像流的轨迹。在完整的图像流中,上下时间戳相邻的图像共享一部分图像特征,通过这个可以提高某个特定位置定位的置信度。所以在resnet50后加入了长短期记忆(long short-term memory,lstm)网络。lstm网络是在rnn网络基础的扩展网络,通过遗忘门、
[0050]
更新门和输出门以及存储单元来实现本研究中图像信息对时间的长期依赖性。进入和离开存储单元的信息流由遗忘门和更新门调节,通过使用sigmoid激活函数让遗忘门值控制在(0,1)之间,当选择接近1时遗忘门的状态则会趋于饱和,解决了本发明提出的网络梯度消失的问题,当选择值接近0时,遗忘门则会关闭使得上一时刻的信息在此截断无法往后作用。lstm的输入是上一层全连接层输出的一系列特征向量x
t
组成的。lstm将序列输入进两个全连接层中转换为七维向量的输出序列,y
t
则是由三维的平移向量和四维的方向四元数组成。
[0051]
lstm的激活是通过在每个时间步上交互来计算的,计算过程如式(1)所示:
[0052][0053]
其中f
t
,i
t
,o
t
分别是遗忘门、更新门和输出门向量,σg为非线性激活函数,h
t
为lstm的隐式激活,w和b是lstm中需要进行的学习更新参数。遗忘门的作用就是将存储单元中的信息选择性地遗忘,即丢掉旧的特征信息,左侧的输入h
t-1
和下方的输入x
t
通过连接、线性单元、σ(sigmoid)激活函数等步骤得到了0-1之间的输出。更新门则由σg(sigmoid)和更新存储单元的c
t
两部分组成,其中ct使用双曲正切函数(tanh)作为激活函数。最后是输出门单元o
t
,o
t
基于存储单元的状态决定确定输出到同层中的下一个单元中还是下一层的单元上。具体过程是通过σ门来确定存储单元中的输出部分,再将其通过双曲正切函数tanh进行处理得到-1~1之间的值,最终将其与σ门的输出相乘输出。
[0054]
(5)损失函数设计的合理性直接影响到计算神经网络每次迭代的前向计算结果与真实值的差距,从而指导下一步的训练向正确的方向进,所以本发明首先定义了位置和旋转角度的损失,最后定义了其联合损失从而平衡位置和旋转角度之间的误差。
[0055]
在预测网络通过输入图像中的姿势标签p=[x,q],并输出位置和方向的估计值[p,r],标签值是通过相机的运动或者其它方式获得的。其中x为3d相机的位置,为3d相机的方向,[p,r]为估计的位置-方向对。以通过在欧氏空间中形成一个光滑的、连续的和内射的回归损失来估计摄像机的位置,其位置损失误差用l2范数表示。
[0056]
由于图像中位姿标签由四元数代替欧拉角来记录机器人的姿态,所以本发明通过将四元数空间中的四维向量值通过求逆的过程归一化为单位长度从而更好地表示旋转角度。
[0057]
最后的位置和方向的加权和线性损失函数如式(2)所示:
[0058][0059]
损失函数能够同时学习相机的位置和方向,其中β为超参数用来保持位置和方向误差的期望值平衡。单个神经网络分别回归位置和方向信息时效果很差,这是因为单个网络缺少了分离位置和方向回归因子的信息,所以采用了式(2)来耦合方向和位置的回归模型。通过测试发现室外场景由于位置误差相对较大所以β的值取较大,相对的室内场景β取值则较小。具体的β值通过网格搜索的方法进行调整。使用以深度学习为基础的resnet+lstm结构的神经网络模型代替传统的slam方法进行机器人的定位,能够抵抗运动过程中遮挡或视野范围内的运动物体的干扰,且在运动速度快或场景纹理单一的环境中,机器人定位精度不受机器人前一时刻运动的影响更具鲁棒性,提高了定位精度。
[0060]
有益效果:本发明提出了基于深度学习的机器人视觉定位方法,仅依靠单张图像就能够回归出机器人的当前位姿,在大环境场景定位中不需要储存的大量的连续视觉关键帧特征,占用较小的计算资源和存储空间,并且可以根据实际工程项目建立所需的环境数据集库,不仅对复杂环境中的外部干扰具有一定的抵抗性还能够记忆机器人的全局路径,拥有更高的定位精度。
[0061]
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:
1.一种基于深度学习的机器人视觉定位方法,其特征在于,所述视觉定位方法包括:采集环境图像;按照时间戳对齐图像,获得图像数据;对所述图像数据进行数据预处理;构建神经网络模型;设计损失函数定位机器人。2.根据权利要求1所述的一种基于深度学习的机器人视觉定位方法,其特征在于,所述采集环境图像具体包括:环境数据集根据实际工程中需要的环境自行采集,用网络公开数据集对所述环境数据集进行验证。3.根据权利要求1所述的一种基于深度学习的机器人视觉定位方法,其特征在于,所述按照时间戳对齐图像,获得图像数据具体包括:将图像中存在的七维位姿标签与时间戳对齐。4.根据权利要求3所述的一种基于深度学习的机器人视觉定位方法,其特征在于,所述按照时间戳对齐图像具体包括:当采用rgb-d相机采集的环境图像数据集;分别读取数据集中的真实轨迹和rgb信息的时间戳,并分别生成列表;将最大时间误差设定为候选人生成的搜索半径,并计算两个列表之间的时间偏移;在两个列表中找到搜索半径内最接近的匹配数据;在真实轨迹中具有最佳匹配项时间戳的数据被添加到rgb信息中,生成具有gb名称、rgb时间戳、真实姿势和姿势时间戳的文件。5.根据权利要求1所述的一种基于深度学习的机器人视觉定位方法,其特征在于,所述对所述图像数据进行数据预处理具体包括:在训练开始前将图像进行重新缩放,缩放后图像较短边的长度为256像素;将缩放的图片的像素随机裁剪为224
×
224作为姿态预测网络输入进行训练。6.根据权利要求5所述的一种基于深度学习的机器人视觉定位方法,其特征在于,所述将缩放的图片的像素随机裁剪为224
×
224作为姿态预测网络输入进行训练之后还包括:分别计算每个数据集图片中的像素强度的平均值和标准偏差;采用所述平均值和所述标准偏差规范输入图像中每个像素的强度值。7.根据权利要求1所述的一种基于深度学习的机器人视觉定位方法,其特征在于,所述构建神经网络模型具体包括:神经网络模型采用resnet50和lstm的叠加网络,resnet进行对图像进行特征点提取,匹配环境图像;引入lstm在全连接层上进行结构降维,并选择最优特征进行相机位姿估计以及运动轨迹记忆任务。

技术总结
本发明提供的一种基于深度学习的机器人视觉定位方法,所述视觉定位方法包括:采集环境图像;按照时间戳对齐图像,获得图像数据;对所述图像数据进行数据预处理;构建神经网络模型;设计损失函数定位机器人。利用图像便进行机器人定位;结构简单,实现方便,速度快。速度快。速度快。


技术研发人员:许召辉 王宏程 饶蕾 陈年生
受保护的技术使用者:中航华东光电(上海)有限公司
技术研发日:2023.05.11
技术公布日:2023/9/12
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐