欢迎来到学术参考网
当前位置:发表论文>论文发表

slam毕业论文

发布时间:2023-03-09 02:19

slam毕业论文

学视觉slam十四讲,把一些框架拿过来运行一下,再把框架之中的内容改成自己想要的即可。

机器人爆炸式增长的一个主要问题是不能在不同的机器人平台上重复使用代码。然而,ROS中的硬件抽象层及其消息服务允许创建可用于许多不同机器人平台的新代码。而且,ROS提供了一套稳定的机器人软件包,公认的SLAM评估方法都依赖于机器人社区可用的标准数据集。

所有SLAM的结果都使用占用网格作为最终输出,使用地图相似性的性能指标进行分析。 重点是放在地图质量,而不是姿态估计误差,因为映射输出受到本地化问题的高度影响。

SLAM的典型应用领域:

地图建模。SLAM可以辅助机器人执行路径规划、自主探索、导航等任务。国内的科沃斯、塔米以及最新面世的岚豹扫地机器人都可以通过用SLAM算法结合激光雷达或者摄像头的方法,让扫地机高效绘制室内地图,智能分析和规划扫地环境,从而成功让自己步入了智能导航的阵列。

国内思岚科技(SLAMTEC)为这方面技术的主要提供商,SLAMTEC的命名就是取自SLAM的谐音,其主要业务就是研究服务机器人自主定位导航的解决方案。

基于激光雷达的SLAM和路径规划算法研究与实现

本文仅供学习使用,并非商业用途,全文是针对哈尔滨工业大学刘文之的论文《移动机器人的路径规划与定位技术研究》进行提炼与学习。论文来源中国知网,引用格式如下: [1]刘文之. 基于激光雷达的SLAM和路径规划算法研究与实现[D].哈尔滨工业大学,2018.

相关坐标系转换原理已经在前一篇文章写完了,直接上转换方程。

这里他的运动模型选择的是基于里程计的运动模型,还有一种基于速度的运动模型,其实都差不多,整体思想都一样。里程计是通过计算一定时间内光电编码器输出脉冲数来估计机器人运动位移的装置,主要是使用光电码盘。根据光电码盘计算出此时轮子的速度,然后通过已知的轮子半径来获得单位时间 每个轮子 的位移增量。

高等数学可知单位时间位移增量就是速度,对速度在一定时间上进行积分就得到这一段时间所走过的路程。

根据上图,我们可以求出来机器人航向角角速度、圆弧运动半径和机器人角度变化量,由此可以解的机器人在当前时刻的位姿。

实际上也是有误差,所以单独依靠里程计会与实际结果产生较大误差,所以必须引入其他的外部传感器对外部环境的观测来修正这些误差,从而提高定位精度。

首先肯定需要将激光雷达所测得的端点坐标从极坐标、机器人坐标中转换到世界坐标中。

这张略过,暂时不需要看这个

路径规划算法介绍:

因为该算法会产生大量的无用临时途径,简单说就是很慢,所以有了其他算法。

了解两种代价之后,对于每一个方块我们采用预估代价与当前路径代价相加的方法,这样可以表示每一个路径点距离终点的距离。在BFS搜索过程的基础上,优先挑选总代价最低的那个路径进行搜索,就可以少走不少弯路。(算法讲解 )

在局部路径规划算法之中,我们选用DWA算法(dynamic window approach),又叫动态窗口法。动态窗口法主要是在速度(v, w)空间中采样多组速度,并模拟机器人在这些速度下一定时间内的轨迹。在得到多组轨迹后,对这些轨迹进行评价,选取最优的轨迹所对应的速度来驱动机器人运动。 state sampling就是按照之前给出的全局路径规划,无论是Dijkstra还是A* 都可以方便的得到state sampling,DWA算法所需要提前建立的action sampling有两种:

但是无论是什么情况,上述所做的工作就是把机器人的位移转化到世界坐标中来,而不是机器人坐标系。速度采样结束之后,只需要对小车的轨迹进行评判,就可以得到最优解了。下面介绍速度采样的办法。

对速度进行采样一般有以下三个限制:

当确定了速度范围之后,就需要根据速度分辨率来对小车速度离散化,在每一时刻将小车在不同直线速度角速度组合下所即将要行驶的距离都可视化出来。

其中每一条轨迹都是很多小直线连接起来的。

需要用评价函数来对上述轨迹进行选择,选择最适合的轨迹

最后为了让三个参数在评价函数里所发挥的作用均等,我们使用归一化处理来计算权重。

算法流程整体如下:

视觉检测控制系统毕业论文

之前也是为论文苦恼了半天,网上的范文和能搜到的资料,大都不全面,一般能有个正文就不错了,而且抄袭的东西肯定不行的,关键是没有数据和分析部分,我好不容易搞出来一篇,结果还过不了审。

还好后来找到文方网,直接让专业人士帮忙,效率很高,核心的部分帮我搞定了,也给了很多参考文献资料。哎,专业的事还是要找专业的人来做啊,建议有问题参考下文方网吧

下面是之前文方网王老师发给我的题目,分享给大家:

基于深度学习的无人机地面小目标算法研究

基于视觉的智能汽车面向前方车辆的运动轨迹预测技术研究

模拟射击训练弹着点检测定位技术研究

基于深度卷积神经网络的空中目标识别算法的研究

基于可见光图像的飞行器多目标识别及位置估计

无人驾驶车辆手势指令识别研究与实现

车载毫米波雷达目标检测技术研究

基于多传感融合的四足机器人建图方法

老年人群跌倒风险评估的数据采集系统

基于深度学习的视觉SLAM闭环检测方法研究

真实图片比较视觉搜索任务的年龄效应及对策研究

室内复杂场景下的视觉SLAM系统构建与研究

基于双目内窥镜的软组织图像三维重建

学习资源画面色彩表征影响学习注意的研究

毫米波雷达与机器视觉双模探测关键技术的研究

语义地图及其关键技术研究

多重影响因素下的语音识别系统研究

基于卷积神经网络的自主空中加油识别测量技术研究

基于视觉语义的深度估计、实例分割与重建

重复视觉危险刺激——本能恐惧反应的“二态型”调控机制研究

低成本视觉下的三维物体识别与位姿估计

面向非规则目标的3D视觉引导抓取方法及系统研究

基于物体识别地理配准的跨视频行人检测定位技术研究

基于结构光的非刚体目标快速三维重建关键技术研究

基于机器视觉的动物交互行为与认知状态分析系统

关于单目视觉实时定位与建图中的优化算法研究

动态场景下无人机SLAM在智慧城市中的关键技术研究

面向视觉SLAM的联合特征匹配和跟踪算法研究

基于深度学习的显著物体检测

基于平面波的三维超声成像方法与灵长类动物脑成像应用研究

基于物体检测和地理匹配的室内融合定位技术研究

基于多模态信息融合的人体动作识别方法研究

基于视觉惯性里程计的SLAM系统研究

基于语义信息的图像/点云配准与三维重建

基于种子点选取的点云分割算法研究

基于深度学习的场景文字检测与识别方法研究

基于运动上下文信息学习的室内视频烟雾预警算法研究

基于深度学习的垃圾分类系统设计与实现

面向手机部件的目标区域检测算法的设计与实现

电路板自动光照检测系统的设计与实现

基于机器视觉的工件识别与定位系统的设计与实现

基于深度学习的物件识别定位系统的设计与实现

基于视觉四旋翼无人机编队系统设计及实现

基于视觉惯导融合的四旋翼自主导航系统设计与实现

面向城市智能汽车的认知地图车道层生成系统

基于深度学习的智能化无人机视觉系统的设计与仿真

基于知识库的视觉问答技术研究

基于深度学习的火灾视频实时智能检测研究

结构化道路车道线检测方法研究

基于机器视觉的带式输送机动态煤量计量研究

基于深度学习的小目标检测算法研究

基于三维激光与视觉信息融合的地点检索算法研究

动态环境下仿人机器人视觉定位与运动规划方法研究

瓷砖铺贴机器人瓷砖空间定位系统研究

城市街景影像中行人车辆检测实现

基于无线信号的身份识别技术研究

基于移动机器人的目标检测方法研究

基于深度学习的机器人三维环境对象感知

基于特征表示的扩展目标跟踪技术研究

基于深度学习的目标检测方法研究

基于深度学习的复杂背景下目标检测与跟踪

动态扩展目标的高精度特征定位跟踪技术研究

掩模缺陷检测仪的图像处理系统设计

复杂场景下相关滤波跟踪算法研究

基于多层级联网络的多光谱图像显著性检测研究

基于深度结构特征表示学习的视觉跟踪研究

基于深度网络的显著目标检测方法研究

基于深度学习的电气设备检测方法研究

复杂交通场景下的视频目标检测

基于多图学习的多模态图像显著性检测算法研究

基于面部视频的非接触式心率检测研究

单幅图像协同显著性检测方法研究

轻量级人脸关键点检测算法研究

基于决策树和最佳特征选择的神经网络钓鱼网站检测研究

基于深度学习的场景文本检测方法研究

RGB-D图像显著及协同显著区域检测算法研究

多模态融合的RGB-D图像显著目标检测研究

基于协同排序模型的RGBT显著性检测研究

基于最小障碍距离的视觉跟踪研究

基于协同图学习的RGB-T图像显著性检测研究

基于图学习与标签传播优化模型的图像协同显著性目标检测

姿态和遮挡鲁棒的人脸关键点检测算法研究

基于多模态和多任务学习的显著目标检测方法研究

基于深度学习的交通场景视觉显著性区域目标检测

基于生物视觉机制的视频显著目标检测算法研究

基于场景结构的视觉显著性计算方法研究

精神分裂症患者初级视觉网络的磁共振研究

基于fMRI与TMS技术研究腹侧视觉通路中结构优势效应的加工

脑机接口游戏神经可塑性研究

基于YOLOV3算法的FL-YOLO多目标检测系统

基于深度与宽度神经网络显著性检测方法研究

基于深度学习的零件识别系统设计与研究

基于对抗神经网络的图像超分辨算法研究

基于深度学习复杂场景下停车管理视觉算法的研究与实现

镍电解状态视觉检测与分析方法研究

跨界训练对提升舞者静态平衡能力的理论与方法研究

施工现场人员类型识别方法的研究与实现

基于深度学习的自然场景文字检测方法研究

基于嵌入式的交通标志识别器的设计

基于视觉感知特性与图像特征的图像质量评价

激光雷达SLAM算法

机器人研究的问题包含许许多多的领域,我们常见的几个研究的问题包括:建图(Mapping)、定位(Localization)和路径规划(Path Planning),如果机器人带有机械臂,那么运动规划(Motion Planning)也是重要的一个环节,SLAM需要机器人在未知的环境中逐步建立起地图,然后根据地区确定自身位置,从而进一步定位。

ROS系统通常由大量节点组成,其中任何一个节点均可以通过发布/订阅的方式与其他节点进行通信。举例来说,机器人上的一个位置传感器如雷达单元就可以作为ROS的一个节点,雷达单元可以以信息流的方式发布雷达获得的信息,发布的信息可以被其他节点如导航单元、路径规划单元获得。

ROS的通信机制:

ROS(机器人操作系统)中SLAM的一些功能包,也就是一些常用的SLAM算法,例如Gmapping、Karto、Hector、Cartographer等算法。我们不会去关注算法背后的数学原理,而是更注重工程实现上的方法,告诉你SLAM算法包是如何工作的,怎样快速的搭建起SLAM算法。

地图 : ROS中的地图很好理解,就是一张普通的灰度图像,通常为pgm格式。这张图像上的黑色像素表示障碍物,白色像素表示可行区域,灰色是未探索的区域

地图在ROS中是以Topic的形式维护和呈现的,这个Topic名称就叫做 /map ,由于 /map 中实际上存储的是一张图片,为了减少不必要的开销,这个Topic往往采用锁存(latched)的方式来发布。地图如果没有更新,就维持着上次发布的内容不变,此时如果有新的订阅者订阅消息,这时只会收到一个 /map 的消息,也就是上次发布的消息;只有地图更新了(比如SLAM又建出来新的地图),这时 /map 才会发布新的内容。 这种方式非常适合变动较慢、相对固定的数据(例如地图),然后只发布一次,相比于同样的消息不定的发布,锁存的方式既可以减少通信中对带宽的占用,也可以减少消息资源维护的开销。

Gmapping ,Gmapping算法是目前基于激光雷达和里程计方案里面比较可靠和成熟的一个算法,它基于粒子滤波,采用RBPF的方法效果稳定,许多基于ROS的机器人都跑的是gmapping_slam。

gmapping的作用是根据激光雷达和里程计(Odometry)的信息,对环境地图进行构建,并且对自身状态进行估计。因此它得输入应当包括激光雷达和里程计的数据,而输出应当有自身位置和地图。

论文支撑:R-LINS: A Robocentric Lidar-Inertial State Estimator for Robust and Efficient Navigation

6轴 IMU:高频,聚焦自身运动,不采集外界环境数据 3D LiDAR:低频,聚焦车体运动,采集外界环境数据

R-LINS使用以上两种传感器来估计机器人的运动姿态, 对于任一传感器而言,单独的依靠自己的数据是很难实现地图构建的, 比如纯雷达模型使用的传感器是激光雷达,可以很好的探测到外界的环境信息。但是,同样的,也会受到这些信息的干扰,再长时间的运算中会产生一定的累计误差。为了防止这种误差干扰到后续的地图构建中,需要使用另一种传感器来矫正机器人自身的位姿信息, 即IMU传感器,IMU传感器由于是自身运动估计的传感器,所以,采集的都是自身运动的姿态信息。可以很好的矫正激光雷达里程计的位姿信息。所以,通常使用激光雷达和惯导来进行数据融合,实现姿态信息的矫正。

一共分为三大块:

自动驾驶是怎样工作的?SLAM介绍

SLAM是机器人或车辆建立当前环境的全局地图并使用该地图在任何时间点导航或推断其位置的过程。

SLAM常用于自主导航,特别是在GPS无信号或不熟悉的地区的导航。本文中我们将车辆或机器人称为“实体”。实体的传感器会实时获得周围环境的信息,并对信息进行分析然后做出决策。

SLAM是一种时间模型,它的目标是从复杂的信息中计算出一系列状态,包括预期环境,距离,以及根据之前的状态和信息得出的路径 。有许多种状态,例如,Rosales和Sclaroff(1999)使用状态作为行人边界框的3D位置来跟踪他们的移动。Davison 等人(2017)使用单目相机的相机位置,相机的4D方向,速度和角速度以及一组3D点作为导航状态。

SLAM一般包含两个步骤,预测和测量。为了准确表示导航系统,SLAM需要在状态之间以及状态和测量之间进行学习。SLAM最常用的学习方法称为 卡尔曼滤波 。

卡尔曼滤波是一种用于状态估计的贝叶斯滤波类型。它是一种递归算法,作为系统中不确定性的函数,使预测可以随着时间的推移进行校正。不确定性表示为当前状态估计和先前测量之间的权重,称为卡尔曼增益。该算法将实体先前的状态,观测和控制输入以及当前的观测和控制输入作为输入。过滤器包括两个步骤:预测和测量。预测过程使用运动模型,可以根据给定的先前位置和当前的输入估计当前位置。测量校正过程使用观察模型,该模型基于估计的状态,当前和历史观察以及不确定性来对当前状态进行最终估计。

第一步涉及了时间模型,该模型基于先前的状态和一些噪声生成预测。

公式1. 预测模型。μ表示状态的平均变化向量。ψ是状态数量的矩阵,将当前状态与先前的平均值相关联。ε是转换噪声,可以确定当前状态与前一个状态的紧密相关程度。

第二步是“校正”预测。传感器收集自主导航的测量值。有两类传感器:外传感器器和内传感器(proprioceptive)。外传感器从外部环境中收集信息,包括声纳,距离激光,相机和GPS。在SLAM中,这些是观察值。内传感器利用编码器,加速度计和陀螺仪等设备收集系统内部信息,如速度,位置,变化和加速度。在SLAM中,这些是单元控制,传感器结果输入到实体中进行计算。这些传感器各有利弊,但相互组合可以产生非常有效的反馈系统。

公式2. μₘ表示测量平均向量。Φ是状态数量的将测量的平均值与当前状态相关联。εₘ是测量噪声,通常以协方差Σₘ分布。

卡尔曼增益增强了测量的可信性。例如,如果相机失焦,我们就不会对拍摄内容的质量报太大期望。卡尔曼增益较小意味着测量对预测的贡献很小并且不可靠,而卡尔曼增益较大则正好相反。

公式 3.卡尔曼增益计算,Σ₊是预测的协方差。

更新过程如下:

公式4. 使用卡尔曼增益的卡尔曼滤波学习过程。图片来自Simon JD Prince(2012)。

虽然这种方法非常有用,但它还存在一些问题。卡尔曼滤波假定单模态分布可以用线性函数表示。解决线性问题的两种方法是扩展卡尔曼滤波器(EFK)和无迹卡尔曼滤波器(UFK)。EFK使用泰勒展开来逼近线性关系,而UFK使用一组质量点近似表示正态,这些质量点具有与原始分布相同的均值和协方差。一旦确定了质量点,算法就通过非线性函数传递质量点以创建一组新的样本,然后将预测分布设置为正态分布,均值和协方差等效于变换点。

由卡尔曼滤波强加的单模分布假设意味着不能表示其他状态假设。粒子滤波是解决这些问题的常用方法。

粒子滤波允许通过空间中的粒子来表示多个假设,高维度需要更多粒子。每个粒子都被赋予一个权重,该权重表示其所代表的状态假设中的置信度。预测从原始加权粒子的采样开始,并从该分布中采样预测状态。测量校正根据粒子与观测数据的一致程度(数据关联任务)来调整权重。最后一步是对结果权重进行归一化,使总和为1,因此它们是0到1的概率分布。

因为粒子的数量可以不断增多,因此对该算法的改进集中在如何降低采样的复杂性。重要性采样和Rao-Blackwellization分区是常用的两种方法。

下图来自Fuentes-Pacheco, J., Ruiz-Ascencio, J., & Rendón-Mancha, J. M. (2012)的论文“Visual simultaneous localization and mapping: a survey”,总结了到2010年的SLAM中的一些方法。他们的研究分为几个方面。核心方案是使用学习算法,其中一些在上文讨论过。地图的类型是捕获环境几何属性的度量图,或者是描述不同位置之间的连接的拓扑图。

在线跟踪中最常用的功能是显著特征和标记。标记是在环境中由3D位置和外观描述的区域(Frintrop和Jensfelt,2008)。显著特征是由2D位置和外观描述的图像区域。深度学习技术通常用于在每个时间点描述并检测这些显着特征,以向系统添加更多信息。检测是识别环境中的显著元素的过程,描述是将对象转换为特征向量的过程。

应用SLAM的方案有两种,一种是回环检测(loop closure),另一种是“机器人绑架(kidnapped robot)”。回环检测是识别已经访问过的任意长度的循环偏移,“机器人绑架”不使用先前的信息去映射环境。

SLAM是自主导航中常用的状态时间建模的框架。它主要基于概率原理,对状态和测量的后验和先验概率分布以及两者之间的关系进行推断。这种方法的主要挑战是计算复杂。状态越多,测量越多,计算量越大,在准确性和复杂性之间进行权衡。

[1] Fuentes-Pacheco, J., Ruiz-Ascencio, J., & Rendón-Mancha, J. M. (2012). Visual simultaneous localization and mapping: a survey. Artificial Intelligence Review, 43(1), 55–81.

[2] Durrant-Whyte, H., & Bailey, T. (2006). Simultaneous localization and mapping: Part I. IEEE Robotics and Automation Magazine, 13(2), 99–108.

[3] T. Bailey and H. Durrant-Whyte (2006). “Simultaneous localization and mapping (SLAM): part II,” in IEEE Robotics & Automation Magazine, vol. 13, no. 3, pp. 108–117. doi: 10.1109/MRA.2006.1678144

[4] Simon J. D. Prince (2012). Computer Vision: Models, Learning and Inference. Cambridge University Press.

[5] Murali, V., Chiu, H., & Jan, C. V. (2018). Utilizing Semantic Visual Landmarks for Precise Vehicle Navigation.

[6] Seymour, Z., Sikka, K., Chiu, H.-P., Samarasekera, S., & Kumar, R. (2019). Semantically-Aware Attentive Neural Embeddings for Long-Term 2D Visual Localization. (1).

[7] Fuentes-Pacheco, J., Ruiz-Ascencio, J., & Rendón-Mancha, J. M. (2012). Visual simultaneous localization and mapping: a survey. Artificial Intelligence Review, 43(1), 55–81.

上一篇:学术性论文答辩

下一篇:论文投稿哪些期刊