考虑到概率算法的缺点,考虑到大比例尺地图的计算复杂度,我们将介绍一种新的仿生技术来解决SLAM问题,重点关注水下环境。
最近,研究人员正在利用动物神经元行为的发现来开发新的算法和方法,应用于机器人等领域的计算解决方案。在SLAM的背景下提出了一个名为RatSLAM的算法,该算法模拟了老鼠大脑的导航机制。这种方法着重于模拟在哺乳动物大脑中发现的与导航目的相关的网格细胞。这种方法的一个特点是建立环境的拓扑地图,因为它是强制对大鼠和蝙蝠的神经实验。该算法已应用于水下环境,取得了良好的效果。系统分为局部视图单元、位姿单元和经验图三个模块。
A. 位姿单元
此单元是算法的的核心。它由CANN(Continuous Attractor Neural Network)组成,被设计去模拟大脑导航机制的行为。在该方法中,扩展了RatSLAM的位姿单元,并在神经网络中增加了另一层,来进行四自由度的位置估计。从现在开始,它是由一个4D CANN估计姿态xyz和偏航方向yaw。
B. 局部视图单元
路径整合过程中累积的错误通过学习位姿单元活动和局部视图单元活动之间的关联来重置,同时回忆以前的关联。局部视图用向量V表示,向量的每个元素表示每个局部视图单元的活动。在一次回环事件中,熟悉的视觉场景激活局部视图单元与位姿单元学习的连接,代表这是视觉场景是第一次遇到的姿态。由于位姿单元的吸引子动力学(attractor dynamics),单一的视觉场景不足以促使位姿的立即改变,更新姿态需要几个连续一致的视图。数据关联问题是用的Bag of Features(BoF)算法解决的,流程的每个阶段将在下文中解释。
提取和识别位置:针对机器人在环境中所访问的位置的学习和识别任务,开发了一种基于视觉特征词袋模型的算法。该算法扮演了视觉特征字典的角色,从环境中的摄像机图像中提取。第一步是创建字典,它对应于图像中每个特征点的集合。采用鲁棒性的加速算法进行关键点提取特征算法(SURF),一种鲁棒的局部特征检测器。聚类算法需要从训练数据中采样的数百万(或数十亿)局部特征中构建一个离散的词汇表。一般采用K-Means算法对相似特征进行分组。每个集群区域在字典中形成一个单词。这个字典是训练阶段的最终结果,当一个环境特性的“a-先验”数据库。图中描述了利用视觉特征来表示和识别环境位置的一般过程。
在识别阶段,首先利用SURF算法提取关键点。然后,我们创建一个直方图的特征,表示每个组的特征在图像中的数量。然后,将直方图归一化,并与已经存储的每个模板(直方图)进行比较。当一个模板与另一个已经创建的模板匹配时,将能量注入到与该位姿单元的CANN的局部视图模板相关的神经元中,如果能量足够移动网络的活动包,则导致闭环。否则,当直方图与所创建的模板不匹配时,将创建一个新的模板并分配给姿态单元CANN中的某个神经元。
C. 经验图
经验地图模块的变化最大,因为现在需要创建一个三维地图。为此,创建、更新经验和闭环的过程被修改。
经验仍然是一个元组。
其中三维姿态表示的位置 的变化,如公式所示。该姿态有原点和方向,最后一个由四元数表示。
两种位姿之间可以互相转换,如下:
新经验的位置将由当前经验的位置乘以在两者之间进行的转换实验来计算:
这种方法非常适用于环境具有一定程度的模糊性和相当多的地标性的长期地图。算法复杂度与拓扑映射中的节点数呈线性关系。
ratslam代码仓库:
RatSLAM : a hippocampal model for simultaneous localization and mapping. In: Proceedings of IEEE International Conference on Robotics and Automation
评论(1)
您还未登录,请登录后发表或查看评论