位置: IT常识 - 正文

slam原理介绍和经典算法(slam方法)

编辑:rootadmin
slam原理介绍和经典算法 1.传统slam局限性

推荐整理分享slam原理介绍和经典算法(slam方法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:slam实现,slam算法 入门,slam算法 入门,slam的,slam的,slam算法,slam的,slam实现,内容如对您有帮助,希望把文章链接给更多的朋友!

        slam算法假设的环境中的物体都是处于静态或者低运动状态的,然而,现实世界是复杂多变的,因此这种假设对于应用 环境有着严格的限制,同时影响视觉slam系统在实际场景中的应用性。当环境中存在动态物体时,会给系统带来错误的观测数据,同时降低系统的精度和鲁棒性。通过RANSAC算法(随机采样一致性)的外点处理机制能够解决部分异常点对于算法的影响。但是当动态物体占据空间的大部分时,依然会影响位姿跟踪,所以需要检测运动的物体、剔除动态区域的特征点,亦或者是降低在优化位姿的权重,减少对视觉定位的影响。

 人身上为动态特征点,要尽可能的去除。

2.常用算法:

开源的系统(DS-SLAM、Dyna-SLAM、Co-Fusion)目前大部分的动态SLAM系统都是在ORB-SLAM2或者KinectFusion基础上改进得到的,很少部分会涉及到边缘SLAM的方法。

用于检测动态区域或者特征点的常用方法有以下几种:

2.1基于深度学习的分割方法

利用深度学习技术能够很好地识别图像中特定的物体,结合运动物体的先验知识(汽车、行人、动物),能够很好的去除潜在的动态区域。 需要注意的是,对于移动的椅子、停在路边的汽车,该方法往往会做出错误的判断。

深度学习在动态SLAM中的应用有两种形式:目标检测与实例分割(语义分割)。

2.1.1目标检测(Object Detection)

目标检测的目标是找到图像中所有的待检测物体,并用边界框标出该物体的位置,该方法的优点是检测速度快,但是缺点也很明显,其只能用方框标出物体大概位置,不能实现精确分割,如果直接将方框内的特征点去掉,会因特征点过少而影响定位精度。为了克服此问题,会通过图割法对方框中的图像进行进一步修剪,以得到更加准确的物体区域。yolo和SSD

2.1.2语义分割(INstance Segmentation)

语义分割的目标是对物体进行像素级别的分割,该方法的优点在于精度较高,但是分割速度并不高,一般来说达不到实时的要求。为了解决效率问题,一些论文提到只在关键帧中进行实例分割,然后通过传播模型得到普通帧的结果。SegNet、Mask-RCNN

2.2基于多视图几何的方法

检测动态特征点的原理是用多帧图像的位姿约束,剔除误差较大的特征点。

极线约束:需要注意的是,当物体沿着极线的方向运动时,该方法会失效。

2.3基于光流/场景流的方法2.3.1光流方法slam原理介绍和经典算法(slam方法)

对于两张图像,稠密光流很好地描述了每个像素在二维平面中运动的情况,是检测运动区域很好的方法,一般来说运动物体的区域所产生的光流会远高于静态的背景区域。但是除了物体本身运动会产生光流,相机的运动也会产生光流,为了消除相机运动的影响,通常会采用以下两种方案:

1.通过特征匹配计算二者之间的仿射变换,对第一张图像进行校正,用校正后的图像与第二张图像计算稠密光流。

2.结合语义信息得到初始静态背景的区域;计算两张图像之间的光流场;计算初始背景区域光流场的平均运动方向;光流场减去背景光流场得到最后的光流结果。

OpenCV有很多关于稠密光流的函数,如DeepFlow。

2.3.2场景流方法

所谓场景流(Scene Flow),就是光流(Optical Flow)的三维版本,表述了图像点云中每个点在前后两帧的变化情况。光流由两帧图像即可得到,场景流则需要两帧双目图像或者RGBD图像来得到。目前对场景流的研究还局限在实验室阶段,由于缺乏实际数据(打标成本太高)以及客观的评价指标,离工程应用还有不小的距离。

 正如论文FlowFusion中所介绍的,场景流反映了世界坐标系下物体点云的3D运动情况,也就是我们想要检测的东西;光流是二维图像中像素运动产生的,并不简单是场景流投影至二维平面的结果,其还受相机运动(Ego motion)的影响,也就是说,相机运动产生的Ego Flow和物体本身运动产生的Secne Flow叠加,并投影至相机图像平面上,便得到了我们观测的Optical Flow。

OpticalFlow=SceneFlow+EgoFlow

Secne Flow反应了物体的真实运动情况,求得场景流便知道了运动的物体。具体方法为:

1.计算两帧图像的初始位置,并进一步计算Ego Flow(相机)

2.计算两帧图像的光流场

3.二者相减得到3D场景流,投影至2D图像平面即得到了运动区域

2.4基于残差的方法

        最朴素的想法是计算每个点的误差大小(光度、重投影误差等)。可以应用在特征点上也可以应用在整个图像上,因为要计算误差,所以需要计算一个初始的位姿,计算位姿时一般会将当前图像与所维护的静态地图进行比较,因为每一帧图像都会对静态地图进行更新和维护,所以位姿计算也是比较准确地。

首先计算整张图像的残差,然后通过自适应阈值分割即可得到大致的动态区域,最后经过形态学处理去除噪声影响即可。

 3.性能比较

 传统SLAM算法与动态SLAM算法的轨迹对比。

作者:Mr Qin。如若转载,请注明出处:古月居 https://www.guyuehome.com/34296

本文链接地址:https://www.jiuchutong.com/zhishi/289066.html 转载请保留说明!

上一篇:海恩斯章克申附近克鲁瓦尼国家公园中冰川和山脉的鸟瞰图,加拿大育空 (© Robert Postma/plainpicture)(海恩斯科普简介)

下一篇:在windows下安装nnUnet,并制作数据集以及运行(让隔壁奶奶也能学会的教程)(在windows中安装应用程序的途径)

  • 佳能怎么退出短片模式(佳能相机怎么退出)

    佳能怎么退出短片模式(佳能相机怎么退出)

  • 抖音一天可以关注上限是多少(恢复原来的抖音)

    抖音一天可以关注上限是多少(恢复原来的抖音)

  • 苹果手机怎么解决相机模糊(苹果手机怎么解绑银行卡)

    苹果手机怎么解决相机模糊(苹果手机怎么解绑银行卡)

  • 淘宝退款理由选择其他对卖家有影响么(淘宝退款理由选择缺货对卖家有影响么)

    淘宝退款理由选择其他对卖家有影响么(淘宝退款理由选择缺货对卖家有影响么)

  • 怎样让钉钉和其他应用同时使用(怎样让钉钉和其他人同步)

    怎样让钉钉和其他应用同时使用(怎样让钉钉和其他人同步)

  • 9v2a和5v4.5a哪个充电快(9v2a和5v4.5a哪个伤电池)

    9v2a和5v4.5a哪个充电快(9v2a和5v4.5a哪个伤电池)

  • 钉钉作业交错如何取消(钉钉作业交错如何撤回)

    钉钉作业交错如何取消(钉钉作业交错如何撤回)

  • 苹果11不贴膜屏幕容易花吗(苹果11不贴膜屏幕有指纹吗)

    苹果11不贴膜屏幕容易花吗(苹果11不贴膜屏幕有指纹吗)

  • 微信删除账单每次都要验证(微信删除账单每次都要面部识别吗)

    微信删除账单每次都要验证(微信删除账单每次都要面部识别吗)

  • 苹果为啥静音还有声音(苹果为啥静音还会震动)

    苹果为啥静音还有声音(苹果为啥静音还会震动)

  • 艺术字文本效果怎么设置(艺术字文本效果转换弯曲波形1)

    艺术字文本效果怎么设置(艺术字文本效果转换弯曲波形1)

  • 局域网的英文缩写是(局域网的英文缩写为什么)

    局域网的英文缩写是(局域网的英文缩写为什么)

  • ctrl b是什么快捷键(ctrl b快捷键的作用)

    ctrl b是什么快捷键(ctrl b快捷键的作用)

  • 手机通讯录怎么备份到微信(手机通讯录怎么导入到电脑)

    手机通讯录怎么备份到微信(手机通讯录怎么导入到电脑)

  • 抖音一音浪等于多少钱(抖音一音浪等于好多钱)

    抖音一音浪等于多少钱(抖音一音浪等于好多钱)

  • 怎么把u盘文件编号(怎么把u盘文件夹的东西拖到根目录)

    怎么把u盘文件编号(怎么把u盘文件夹的东西拖到根目录)

  • 企业抖音号设置联系电话(企业抖音号怎么设置)

    企业抖音号设置联系电话(企业抖音号怎么设置)

  • vue怎么一段一段加字幕(vue怎么加边框)

    vue怎么一段一段加字幕(vue怎么加边框)

  • 微软输入法中文模式打出来是字母解决方法(微软输入法中文输入卡顿)

    微软输入法中文模式打出来是字母解决方法(微软输入法中文输入卡顿)

  • Linux中文件与目录对应的硬链接与软链接方式总结(linux中的文件)

    Linux中文件与目录对应的硬链接与软链接方式总结(linux中的文件)

  • 电脑学习网首发cdnfly-cdn系统通过改hosts破解授权方法,随时可能失效,抓紧下载-电脑学习网破解(网上学电脑的软件)

    电脑学习网首发cdnfly-cdn系统通过改hosts破解授权方法,随时可能失效,抓紧下载-电脑学习网破解(网上学电脑的软件)

  • 注册资本印花税怎么交?什么时候交?
  • 委托加工的增值税纳税人是谁
  • 金蝶eas怎么用
  • 纳税调整会计处理
  • 500元以内的商品都有哪些
  • 金融服务费进项可以抵扣吗
  • 境内企业向境外放款额度最长放款期限为两年
  • 什么发票可以冲销
  • 建筑企业预缴增值税计算
  • 内控制度包括哪些制度
  • 企业购买饮水机滤芯会计分录
  • 父母的股权给子女可以怎样认证
  • 开办公用品发票需要清单吗
  • 三证合一后章要换吗
  • 单位参加城镇职工基本养老保险缴费基数怎么填写
  • 外汇汇率在其中扮演什么角色?
  • 公积金超过本地怎么办
  • 应交税金增值税明细账怎么登记
  • 居间合同怎么签才算有效
  • 接受政府无偿划拨固定资产税务处理
  • 滴滴开票是专票还是普票
  • 主营业务收入多计跨年调整
  • win10如何设置右键
  • 收到稳岗补贴计入哪个科目
  • php文件类型码
  • thinkphp6调用模型的方法
  • 笔记本如何打开无线网络开关
  • 高新技术企业研发费用归集
  • win10 累积更新
  • wrme.exe是什么
  • unity导出webgl报错
  • php的session
  • php如何实现
  • 进项税额的账务处理
  • 什么是重大会计事务所
  • 进项票留底怎么做分录
  • mysql框架有哪些
  • php缩进
  • php抽象类可以多继承吗
  • 增删改查功能实现
  • js去除属性
  • 个体工商户一年要交多少税
  • 技术咨询费属于
  • 增值税发票的认证
  • python怎么过滤多余空格
  • 甲供材料增值税规定
  • 己经认证的发票怎么作废
  • 小规模超过30万怎么交增值税
  • 房产税从租和从价都要交吗
  • 长期股权投资为什么不是金融资产
  • 印花税怎么交,在哪里交
  • sql-server
  • 非财政补助结余分配属于什么科目
  • 国际货运代理一个月大概有多少收入
  • SQLite Delete详解及实例代码
  • 纳税调整调减有哪些
  • 注册公司注册公司
  • 租单位的房子怎么办营业执照
  • 车辆etc设备
  • 公司赞助学校
  • 贷款转入账号
  • 印花税的计算公式应纳税所得额包含增值税吗
  • 电子汇票接收后怎么操作
  • 应付账款增值税如何挂账
  • 主营业务成本的增加在哪一方
  • mysql常见报错
  • win10系统浏览器在哪
  • mac上怎么取消itunes自动续费
  • redhat gui
  • centos双网卡配置
  • linux查看sh
  • fdreader.exe是什么程序
  • win7安装显卡驱动显示未知错误
  • win8鼠标右键无法弹出菜单
  • 深入剖析kubernetes pdf
  • 关于javascript
  • js 正则replace
  • 企业获得的保险公司保险赔偿款收入
  • 水上公安分局
  • 金三系统企业所得税如何变更所得税缴纳方式?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设