1.本发明涉及一种定位技术,尤其是涉及一种基于循环神经网络和粒子滤波的机器人定位方法。
背景技术:2.现有的基于粒子滤波的定位方法存在计算复杂度大和粒子退化的问题,改进的粒子滤波算法仍然存在瓶颈。kwok等人在计算资源有限的情况下提出了自适应实时粒子滤波器,在有限的计算资源下提高粒子滤波的性能,但是现在计算资源已经满足更复杂和性能更好的算法。yang等人提出了一种新的基于运动方向估计的粒子滤波定位算法,其性能优于典型的粒子滤波算法和目前最先进的确定性方法。然而这些方法的局限性在于它们需要系统的概率模型,都是基于特定模型公式的算法,不能适应比较复杂的环境。随着深度学习的飞速发展,最近涌现了一系列新兴技术将算法结构集成到深度神经网络中,并以端到端的方式学习模型,逐步解决从数据中学习构建概率系统模型的问题,从而规避了传统模型学习的困难。karkus等人引入一个粒子滤波网络(pf-net),它将系统模型和粒子滤波算法编码在一个神经网络中,利用二维地图、观测图像和里程计信息作为模型的输入,并且允许端到端进行训练,解决了学习复杂概率系统模型的关键挑战。当大多数粒子远离真实状态时,使用重采样可以提高准确度,但当接近真实状态的粒子被消除时,就会产生伤害,通常发生在学习的早期阶段。综上,现有的基于粒子滤波的定位技术中学习传统概率系统模型难构建,在高度不确定环境中进行机器人定位需要大量粒子才能准确定位。
技术实现要素:3.本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于循环神经网络和粒子滤波的机器人定位方法,准确性高,适用范围广。
4.本发明的目的可以通过以下技术方案来实现:
5.一种基于循环神经网络和粒子滤波的机器人定位方法,包括:
6.使用粒子状态表示机器人位置,根据贝叶斯规则周期性更新粒子的状态信念,所述的状态信念的表达式为:
[0007][0008]
其中,bk(h)表示状态信念,n表示粒子数,表示第i个粒子在k时刻的粒子状态,表示第i个粒子在k时刻的粒子权重;
[0009]
通过计算加权平均值估计机器人定位,计算公式为:
[0010][0011]
其中,所述的贝叶斯规则包括:
[0012]
根据机器人的里程计信息,通过运动模型更新粒子状态,所述的运动模型为循环
神经网络,所述的粒子状态为循环神经网络的隐藏状态;
[0013]
根据粒子状态以及全局地图,通过空间转换网络模型进行仿射变换,获得局部地图;
[0014]
根据观测模型从局部地图和机器人的观测图像中提取特征,获得粒子似然度;
[0015]
根据粒子似然度更新粒子权重;
[0016]
对粒子进行自适应软重采样,具体过程包括:
[0017]
计算有效采样尺度,判断有效采样尺度是否小于有效采样尺度设定阈值,若是则执行重采样,否则不执行重采样。
[0018]
进一步地,所述的运动模型的表达式为:
[0019][0020]
其中,f
trans
为运动模型,为第i个粒子在k-1时刻的粒子状态,u
′k为机器人在全局坐标系下的里程计信息,通过机器人在机器人坐标系下的里程计信息uk转换获取,ψ(0;i)为标准多元高斯函数的噪声输入,σ
t
、σr分别为平移和旋转的标准差。
[0021]
进一步地,所述的观测模型包括卷积神经网络cnn1、卷积神经网络cnn2、卷积层、局部全连接层和全连接层,所述的观测图像作为cnn1的输入,所述的局部地图作为cnn2的输入,所述的cnn1和cnn2的输出作为卷积层的输入,所述的卷积层、局部全连接层和全连接层依次连接,由全连接层输出粒子似然度。
[0022]
进一步地,所述的粒子权重的更新公式为:
[0023][0024][0025]
其中,为第i个粒子在k时刻的粒子似然度,为第i个粒子在k-1时刻的粒子权重,η表示归一化因子,n为粒子总数。
[0026]
进一步地,所述的有效采样尺度的计算公式为:
[0027][0028]
其中,n
eff
表示有效采样尺度。
[0029]
进一步地,所述的有效采样尺度设定阈值的计算公式为:
[0030]nthreshold
=an
particle
[0031]
其中,n
threshold
为有效采样尺度设定阈值,n
particle
为粒子个数,a为设定值,0<a<1。
[0032]
进一步地,在采样粒子时从软提议分布q(i)中进行采样,所述的q(i)的表达式为:
[0033][0034]
其中,α为平衡参数,α∈(0,1],n为粒子总数,为第i个粒子在k时刻的粒子权重。
[0035]
进一步地,重采样后粒子的权重的计算公式为:
[0036][0037]
其中,为重采样后的粒子权重。一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器调用所述程序指令能够执行所述的机器人定位方法。
[0038]
一种计算机可读存储介质,包括计算机程序,所述计算机程序能够被处理器执行以实现所述的机器人定位方法。
[0039]
与现有技术相比,本发明具有以如下有益效果:
[0040]
(1)本发明将传统的贝叶斯算法和神经网络相结合,在一个循环神经网络中嵌入粒子滤波算法,构成一个学习端到端的时序状态估计的概率神经网络模型,使用粒子状态表示机器人位置,根据贝叶斯规则周期性更新粒子的状态信念,以近似机器人定位的后验分布,状态信念即加权粒子的概率分布,通过计算加权平均值估计机器人定位,贝叶斯规则中,通过观测模型学习观测图像信息和地图信息,更好地提取观测信息和地图信息,有效降低学习的复杂性,提高了粒子权重的准确性,进而提高了定位的准确性;
[0041]
(2)本发明在重采样过程中加入决策,提出自适应软重采样方法,使之能够判断是否需要进行重采样,从而减少粒子数量、减缓粒子集退化以及提高机器人定位精度的目的,解决了现有技术中学习传统概率系统模型难构建和在高度不确定环境中进行机器人定位需要大量粒子才能准确定位的问题;
[0042]
(3)本发明可以将应用于任意地图大小基于粒子滤波的定位方法中,并且可以正确和充分地学习观测信息和地图信息,对观测图像特征和地图特征进行高效提取,提高粒子权重的准确性,适用范围广;
[0043]
(4)本发明在重采样过程中加入决策,保证在需要的时候才进行重采样操作,并且使用软重采样将不可微分变成了可微分,使整个过程实现了端到端,可以进行反馈优化与梯度下降。
附图说明
[0044]
图1为循环神经网络的图模型示意图;
[0045]
图2为贝叶斯规则流程图;
[0046]
图3为观测模型的结构示意图;
[0047]
图4为cnn1的结构示意图;
[0048]
图5为cnn2的结构示意图;
[0049]
图6为局部全连接层的结构示意图;
[0050]
图7为五种方法在初始信念n=1时的定位成功率关于粒子数的曲线图;
[0051]
图8为五种方法在初始信念n=2时的定位成功率关于粒子数的曲线图;
[0052]
图9为五种方法在初始信念n=all时的定位成功率关于粒子数的曲线图;
[0053]
图10为t=1时机器人全局定位效果图;
[0054]
图11为t=10时机器人全局定位效果图;
[0055]
图12为t=20时机器人全局定位效果图;
[0056]
图13为t=40时机器人全局定位效果图;
[0057]
图14为t=60时机器人全局定位效果图;
[0058]
图15为t=80时机器人全局定位效果图;
[0059]
图16为t=90时机器人全局定位效果图;
[0060]
图17为最终的机器人全局定位效果图。
具体实施方式
[0061]
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
[0062]
实施例1
[0063]
一种基于循环神经网络和粒子滤波的机器人定位方法,将传统的贝叶斯算法和神经网络相结合,在一个循环神经网络中编码一个粒子滤波算法用来学习端到端的时序状态估计的模型,
[0064]
方法包括:
[0065]
一种基于循环神经网络和粒子滤波的机器人定位方法,包括:
[0066]
使用粒子状态表示机器人位置,根据贝叶斯规则周期性更新粒子的状态信念,以近似机器人定位的后验分布,状态信念即加权粒子的概率分布,表达式为:
[0067][0068]
其中,bk(h)表示状态信念,n表示粒子数,表示第i个粒子在k时刻的粒子状态,表示第i个粒子在k时刻的粒子权重;粒子集可以有效逼近任意分布,例如连续、多峰和非高斯分布,潜在信念在贝叶斯滤波处理下自然地捕捉真实世界数据地随机性质;
[0069]
通过计算加权平均值估计机器人定位,计算公式为:
[0070][0071]
如图2,贝叶斯规则包括以下步骤:
[0072]
1)根据机器人的里程计信息uk,通过运动模型f
trans
更新粒子状态,所述的运动模型为循环神经网络,粒子状态为循环神经网络的隐藏状态;
[0073]
2)根据粒子状态以及全局地图,通过空间转换网络模型进行仿射变换,获得局部地图;
[0074]
3)根据观测模型从局部地图和机器人的观测图像中提取特征,获得粒子似然度;
[0075]
4)根据粒子似然度更新粒子权重;
[0076]
5)对粒子进行自适应软重采样,具体过程包括:
[0077]
计算有效采样尺度,判断有效采样尺度是否小于有效采样尺度设定阈值,若是则执行重采样,否则不执行重采样。
[0078]
如图2所示,本实施例以循环神经网络(rnn)为基础框架进行设计,构建一个概率神经网络,在网络结构中嵌入粒子滤波算法,利用循环神经网络的强大近似能力,将粒子状态作为循环神经网络的隐藏状态,将传统的贝叶斯算法和神经网络相结合,在一个循环神经网络中编码一个粒子滤波算法用来学习端到端的时序状态估计的模型,同时将运动模
型、观测模型、空间转换网络模型和自适应软重采样模型融合到一个rnn单元中,概率神经网络是一种先验可微的rnn算法,即序列状态估计特有的结构。
[0079]
步骤1)中,运动模型f
trans
根据获取的运动信息uk进行采样来移动每个粒子,运动模型将当前时刻运动信息以及前一时刻粒子状态作为输入,输出当前时刻粒子的新状态,并且通过添加噪声使得模拟环境更加逼真,由于里程计信息uk是在机器人坐标系中定义的相对运动,该方法将uk转换为可以在全局坐标系中使用的u
′k,并将其与高斯噪声一起添加到机器人先前的位姿,因此,可以从以下微函数中采样新的粒子状态:
[0080][0081]
其中ψ(0;i)为标准多元高斯函数的噪声输入,σ
t
、σr分别为平移和旋转的标准差。
[0082]
如图1所示,假设在k时刻所有包含在o
1:k
的来自过去的相关信息,都可以用一个确定性的潜在变量hk来概括,k时刻隐藏层hk的输入不仅来自k时刻输入层的输出ok,还有k-1时刻隐藏层的输出h
k-1
,隐藏层间的循环机制可以将当前时刻的状态传递到下一时刻,以此来获取序列信息中的依赖关系,使得循环神经网络(recurrent neural network,简称rnn)拥有一定的记忆能力,循环神经网络被用来训练预测序列的下一个输出,并使用反向传播算法的时间扩展来计算梯度。标准循环神经网络通过维护一个确定性的潜在状态处理序列预测,该状态捕获输入历史的足够统计数据,并在给定新输入的情况下顺序更新。
[0083]
具体来说,循环神经网络使用从数据中学习到的确定性非线性函数来更新hk,为了处理高度可变、有噪声的真实世界的数据,基于循环神经网络和粒子滤波的定位方法中一个关键的思想是通过在hk上形成多个假设,在潜在信念bk(h)中捕获输入历史的足够统计数据。
[0084]
步骤2)中,空间转换网络模型根据粒子状态和地图m进行仿射变换,获得粒子状态的局部地图,具体来说,为每个粒子计算出一个仿射变换矩阵ai,因此转换后的地图是来自的局部视图。
[0085]
步骤3)基于局部地图和观测图像的特征,通过基于卷积神经网络的观测模型来定义粒子的似然度;
[0086]
如图3,观测模型使用f
obs
表示,用于采用具有特定结构的卷积神经网络(cnn1、cnn2)对局部地图信息和观测图像信息进行高效提取,为每一个粒子计算似然度,根据似然度更新每个粒子权重,最终输出的是其表示为粒子似然度。
[0087]
经过卷积神经网络后所提取到的特征连接成14
×
14
×
24的卷积层,反馈给局部全连接层,将信息转化为矢量传输给最终的全连接层。
[0088]
如图4,cnn1输入大小为56
×
56
×
3的观测图像,采用cnn1提取观测图像特征,经过五层卷积层、两层池化层和一次拼接,具体包括:第一层卷积层具有128个3
×
3的卷积核,第二层具有128个5
×
5的卷积核,第三层和第四层具有64个5
×
5的卷积核,第五层具有16个3
×
3的卷积层,在第四层卷积层后进行一次拼接操作,再经过步幅为2尺寸的3
×
3的池化层,在第五层卷积层后,经过步幅为2尺寸的3
×
3的池化层,最后输出尺寸为14
×
14
×
16的特征图。
[0089]
如图5,cnn2输入大小为28
×
28的局部视图,采用cnn2提取局部视图特征,经过七层
卷积层、一层池化层和两次拼接,具体包括:
[0090]
第一层卷积层具有24个3
×
3的卷积核,第二层卷积层具有16个5
×
5的卷积核,第三层卷积层和第五层卷积层具有8个7
×
7的卷积核,第六层具有4个3
×
3的卷积层,第七层具有4个5
×
5的卷积层。
[0091]
在所述的第五层卷积层后进行一次拼接操作,再经过步幅为2尺寸的3
×
3的池化层。在所述的第七层卷积层后进行一次拼接操作。
[0092]
最后输出尺寸为14
×
14
×
8的特征图。
[0093]
局部全连接层的结构如图6所示,它输入大小为14
×
14
×
24,局部全连接层将信息转化为矢量传输给最终的全连接层,经过两层卷积层、一层池化层和一次拼接,具体包括:
[0094]
第一层卷积层具有8个12
×
12的卷积核,第二层具有8个8
×
8的卷积核,在第二层卷积层后进行一次拼接操作,再经过步幅为2尺寸的3
×
3的池化,最后输出结果的尺寸为5
×5×
16。
[0095]
本实施例的信念更新具有与标准粒子滤波器相似的结构,但与传统的基于重采样方法的观测模型不同,本实施例没有将(循环神经网络)建模为一个生成观测模型,而是使用更丰富的函数来替换运动模型和观测模型,直接将其近似为一个以观测信息zk、粒子状态和地图m作为输入的学习函数根据观测模型f
obs
计算每个粒子的似然度。
[0096]
步骤4)根据粒子的似然度,通过以下公式更新粒子权重:
[0097][0098][0099][0100]
其中,为第i个粒子在k时刻的粒子似然度,为第i个粒子在k-1时刻的粒子权重,η表示归一化因子,n为粒子总数。
[0101]
是所有可能图像的条件分布,很难学习,并且可能包含与任务无关的特征,相比之下,观测模型f
obs
只学习与任务相关的特征,规避学习传统复杂概率系统模型难构建的问题。
[0102]
为了避免粒子退化,即大多数粒子具有接近零的权重,粒子滤波器通常对粒子进行重采样,然而重采样是不可微的,这阻止了使用反向传播来训练概率神经网络,导致模型在训练过程中不能利用粒子变化的梯度信息。
[0103]
步骤5)通过结合粒子滤波标准技术,采用自适应重采样原理,提出自适应软重采样方法,加入决策机制,根据当前的有效粒子数目来判断是否要执行重采样操作,其中判断机制的有效粒子数n
eff
表示粒子的退化程度,n
eff
值越小,意味着退化现象越严重,需要进行重采样操作。
[0104]
计算判断机制的有效采样尺度n
eff
,确定粒子退化程度,n
eff
定义为:
[0105][0106]
其中,n表示粒子数目,表示粒子的归一化权重。
[0107]
为避免出现高权重粒子占的比重过小的情况,算法需要对n
eff
设立相应的阈值,设定有效样本数n
threshold
=an
particle
作为阈值,其中,n
particle
为粒子个数,0<a<1。
[0108]
当n
eff
<n
threshold
时,进行重采样步骤,这样就实现自适应地根据样本情况判断是否进行重采样,在一定程度上降低算法的复杂度,若判定为需要进行重采样操作,采用软重采样方法,根据自适应软重采样模型,在采样粒子时不从期望分布中进行采样,而是从软提议分布q(i)中进行采样,q(i)是期望分布和均匀分布的组合,q(i)是期望分布和均匀分布的组合,表达式为:
[0109][0110]
其中,α是一个平衡参数,α∈(0,1],新的权重通过重要性采样计算得出。
[0111][0112]
当α≠1时,软重采样提供非零梯度,软重采样在期望的采样分布(α≠1)和均匀采样分布(α=0)之间进行权衡,它通过保持对先前粒子权重的依赖性来提供非零梯度。
[0113]
最终粒子信念表示为:
[0114][0115]
自适应软重采样方法通过实时计算有效粒子个数和评判粒子退化程度,保证只在有必要时基于循环神经网络和粒子滤波的定位方法才实施重采样操作,有效减少重采样次数,改善频繁重采样所导致的样本枯竭的影响,缓解粒子消除现象,提高算法的鲁棒性。
[0116]
使用tensorflow框架在python中实现本实施例提出的定位方法,并在nvidia geforce gtx 1080ti的计算机上进行测试,为了验证该方法在端到端训练的优势和在不同的不确定性水平下该方法的定位有效性,在house3d模拟器中进行仿真实验,使用的是suncg数据集,该数据集是有大量人类设计、真实的住宅建筑数据。数据集中平均住宅面积为206平方米,房间的面积为37平方米。对于一个新的、未被看见过的和充满家具的环境,通过学习复杂环境中的信息,机器人同时利用语义信息将三维世界的丰富视觉特征与示意性二维地图相匹配,进行自身定位。并且为验证该方法在全局定位任务上的有效性,还在deepmind lab的虚拟环境中进行实验,通过让模拟机器人在迷宫中漫步来收集数据,并使用收集数据作为训练数据.通过机器人随机在迷宫中行走获得的1000条轨迹,机器人每一步都通过相机获得当前位置的图像,对于每个迷宫,使用机器人在迷宫中的1000条运动轨迹进行训练。
[0117]
为了验证本实施例提出的定位方法在机器人定位性能上的准确性,在47个以前未见过的建筑中的820条固定的轨迹上,将该方法与其他方法在house3d仿真环境中进行对比实验,其他方法包括pf-net网络,直方图滤波网络,和lstm网络,在实验中,还添加了只使用里程计信息更新信念,不使用传感器作为信息输入的情况下的odometry-nf模式,本实施例
使用两种性能评估指标,在实验中使用平均均方根误差(rmse)进行评估,rmse值越小则定位越准确,在实验中使用定位成功率进行评估,根据定位成功的轨迹数占全部轨迹数中所占比例,可以计算出算法定位结果的成功率。实验中使用100步长轨迹的定位成功率,如果轨迹的最后25步的估计误差小于1m,则定位成功。
[0118]
五种方法使用rgb传感器下的跟踪的实验结果如表1所示:
[0119]
表1五种方法的跟踪rmse
[0120][0121]
在定位任务中,初始信念在一个或者多个房间是一致的。因此,粒子数目和初始信念的不同也会影响模型的定位效果。初始信念设置为一个房间的初始信念一致(n=1)和两个房间的初始信念一致(n=2)以及在所有房间的初始信念一致(n=all)三种参数,粒子数目设置为500、1000、2000和3000。图7为五种方法在初始信念n=1时的定位成功率关于粒子数的曲线图,图8为五种方法在初始信念n=2时的定位成功率关于粒子数的曲线图,图9为五种方法在初始信念n=all时的定位成功率关于粒子数的曲线图;
[0122]
可以看出,当把所有房间的初始信念设置为一致的时候定位成功率较低,定位效果最差,因为当所有房间的初始信念设置为一致时,机器人可能需要进行更多的判断才能精准定位。在不同初始信念和粒子数目情况下,与pf-net、hf network、lstm network以及odometry-nf模型相比,本实施例提出的定位方法的定位成功率都是最高的。当粒子数目相同时,实验表明当初始信念在一个房间内一致时,甚至当在整个房间内一致时,不确定性水平增加的该方法也可以成功定位,并且其定位精度也是最高的。具体来说,当初始信念设置为n=1时,本实施例提出的定位方法的定位成功率最高,当初始信念设置为n=all时,在初始不确定性较高的情况下,本实施例提出的定位方法使用更少的粒子达到更好的定位效果。
[0123]
使用本实施例提出的定位方法对机器人进行全局定位,在deepmind lab中的模拟环境maze1中测试全局定位任务,测试轨迹每一个时间步长绘制一张图。实验中设置粒子数目为1000,并且使用rgb相机作为输入。
[0124]
图10为t=1时机器人全局定位效果图,图11为t=10时机器人全局定位效果图,图12为t=20时机器人全局定位效果图,图13为t=40时机器人全局定位效果图,图14为t=60时机器人全局定位效果图,图15为t=80时机器人全局定位效果图,图16为t=90时机器人全局定位效果图,
[0125]
图10~图16显示应用本实施例提出的定位方法进行全局定位的过程。从实验结果可以看出,在最初的时候,整个环境中都充满粒子,其中圆圈所在位置是机器人在最初的位置。每个环境中使用1000个粒子进行预测,粒子颜色越深,权重越大。开始训练时,每个粒子的权重都是一样的,随着该方法的训练,与真实状态差异很大的粒子将被去除,而更接近真实状态的粒子会增大权重,这些粒子参与下一步的训练,有利于机器人下一步的预测。粒子
权重的变化主要通过重采样过程来实现的,采用自适应软重采样,在训练中可以传播梯度信息,使本实施例提出的定位方法可以在下一次训练中使用这些信息,加快训练速度,并在有需要的时候启动重采样,使训练结果可以更快的接近真实状态。
[0126]
在模拟环境maze1的最终定位效果如图17所示,其中一条路径分别代表机器人运动的实际路径,另一条路径表示模型对机器人运动的预测。可见,在初始时刻,机器人定位的效果并不是很好,但是随着模型训练的进行,粒子越来越接近真实状态,最后所有粒子都在同一处,本实施例提出的定位方法的定位精度越来越高,最后的定位效果已经基本接近机器人的实际位置。
[0127]
实施例2
[0128]
本实施例提出了一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器调用所述程序指令能够执行实施例1所述的机器人定位方法。
[0129]
实施例3
[0130]
本实施例提出了一种计算机可读存储介质,包括计算机程序,所述计算机程序能够被处理器执行以实现实施例1所述的机器人定位方法。
[0131]
实施例1、实施例2和实施例3提供一种基于循环神经网络和粒子滤波的定位方法、电子设备及介质,不同于现有技术直接应用粒子滤波网络模型的预测结果,而是采用基于卷积神经网络的观测模型正确和充分地学习观测信息和地图信息,并在重采样过程中加入决策,提出自适应软重采样模块,采用卷积神经网络学习观测图像信息和地图信息,能够有效降低学习的复杂性,提高粒子权重的准确性;通过结合粒子滤波标准技术,提出自适应软重采样模块,加入决策,减少重采样的步骤,缓解粒子退化的问题,使用更少数量的粒子,提高定位准确性,并且在全局定位任务方面,有着更好的定位性能。
[0132]
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
技术特征:1.一种基于循环神经网络和粒子滤波的机器人定位方法,包括:使用粒子状态表示机器人位置,根据贝叶斯规则周期性更新粒子的状态信念,所述的状态信念的表达式为:其中,b
k
(h)表示状态信念,n表示粒子数,表示第i个粒子在k时刻的粒子状态,表示第i个粒子在k时刻的粒子权重;通过计算加权平均值估计机器人定位,计算公式为:其中,所述的贝叶斯规则包括:根据机器人的里程计信息,通过运动模型更新粒子状态,所述的运动模型为循环神经网络,所述的粒子状态为循环神经网络的隐藏状态;根据粒子状态以及全局地图,通过空间转换网络模型进行仿射变换,获得局部地图;根据观测模型从局部地图和机器人的观测图像中提取特征,获得粒子似然度;根据粒子似然度更新粒子权重;对粒子进行自适应软重采样,具体过程包括:计算有效采样尺度,判断有效采样尺度是否小于有效采样尺度设定阈值,若是则执行重采样,否则不执行重采样。2.根据权利要求1所述的一种基于循环神经网络和粒子滤波的机器人定位方法,其特征在于,所述的运动模型的表达式为:其中,f
trans
为运动模型,为第i个粒子在k-1时刻的粒子状态,u
′
k
为机器人在全局坐标系下的里程计信息,通过机器人在机器人坐标系下的里程计信息u
k
转换获取,ψ(0;i)为标准多元高斯函数的噪声输入,σ
t
、σ
r
分别为平移和旋转的标准差。3.根据权利要求1所述的一种基于循环神经网络和粒子滤波的机器人定位方法,其特征在于,所述的观测模型包括卷积神经网络cnn1、卷积神经网络cnn2、卷积层、局部全连接层和全连接层,所述的观测图像作为cnn1的输入,所述的局部地图作为cnn2的输入,所述的cnn1和cnn2的输出作为卷积层的输入,所述的卷积层、局部全连接层和全连接层依次连接,由全连接层输出粒子似然度。4.根据权利要求1所述的一种基于循环神经网络和粒子滤波的机器人定位方法,其特征在于,所述的粒子权重的更新公式为:权重的更新公式为:其中,为第i个粒子在k时刻的粒子似然度,为第i个粒子在k-1时刻的粒子权重,η表示归一化因子,n为粒子总数。5.根据权利要求1所述的一种基于循环神经网络和粒子滤波的机器人定位方法,其特
征在于,所述的有效采样尺度的计算公式为:其中,n
eff
表示有效采样尺度。6.根据权利要求1所述的一种基于循环神经网络和粒子滤波的机器人定位方法,其特征在于,所述的有效采样尺度设定阈值的计算公式为:n
threshold
=an
particle
其中,n
threshold
为有效采样尺度设定阈值,n
particle
为粒子个数,a为设定值,0<a<1。7.根据权利要求1所述的一种基于循环神经网络和粒子滤波的机器人定位方法,其特征在于,在采样粒子时从软提议分布q(i)中进行采样,所述的q(i)的表达式为:其中,α为平衡参数,α∈(0,1],n为粒子总数,为第i个粒子在k时刻的粒子权重。8.根据权利要求7所述的一种基于循环神经网络和粒子滤波的机器人定位方法,其特征在于,重采样后粒子的权重的计算公式为:其中,为重采样后的粒子权重。9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器调用所述程序指令能够执行如权利要求1至8任一所述的机器人定位方法。10.一种计算机可读存储介质,其特征在于,包括计算机程序,所述计算机程序能够被处理器执行以实现如权利要求1-8任一所述的机器人定位方法。
技术总结本发明涉及一种基于循环神经网络和粒子滤波的机器人定位方法,包括:使用粒子状态表示机器人位置,根据贝叶斯规则周期性更新粒子的状态信念,通过计算加权平均值估计机器人定位,所述的贝叶斯规则包括:根据机器人的里程计信息,通过运动模型更新粒子状态,所述的运动模型为循环神经网络,所述的粒子状态为循环神经网络的隐藏状态;根据粒子状态以及全局地图,通过空间转换网络模型进行仿射变换,获得局部地图;根据观测模型从局部地图和机器人的观测图像中提取特征,获得粒子似然度;根据粒子似然度更新粒子权重;对粒子进行自适应软重采样。与现有技术相比,本发明具有准确性高、适用范围广等优点。用范围广等优点。用范围广等优点。
技术研发人员:张恒 刘艳丽 尹慧君 蔡骋 陈思亦 李亚伟 刘昆山 王营州
受保护的技术使用者:上海电机学院
技术研发日:2022.06.30
技术公布日:2022/11/1