1.odom

2.updata_odom

3.updata_laser

updata_landmark

4.resample  pf.c

相机的位姿转换是基于世界坐标系的,观察到的路标也会在世界坐标系中不断收敛,若不是计算错误,基本上不会产生漂移。而IMU是自身坐标系标定的,在转换到世界坐标系时候一定会产生误差,时序累积必定产生漂移。两种方式的优缺点互补,这就引发视觉SLAM的融合思想,既是SensorFusion。

闭环检测一般使用词袋模型作为场景匹配方法。而作为一个场景识别问题,闭环检测可以看做是一个视觉系统的模式识别问题。所以可以使用各种机器学习的方法来做,比如什么决策树/SVM,也可以试试Deep Learning。不过实际当中要求实时检测,没有那么多时间训练分类器。所以SLAM更侧重在线的学习方法。

无论使用什么混合权重,权重加总应该等于1。

odom_model_type是"diff",那么使用sample_motion_model_odometry算法,这种模型使用噪声参数odom_alpha_1到odom_alpha4。 如果是"omni" 模型用于全向底座,使用噪声参数odom_alpha_1到odom_alpha_5。前4个参数类似于“diff”模型,第5个参数用于捕获机器人在垂直于前进方向的位移(没有旋转)趋势。

运用高斯分布表达噪声模型,则运动模型算法流程如下:

采用采样方式表达运动模型,主要运用于粒子滤波算法中(学习重点):

描述机器人制图Mapping(占用概率栅格地图和cost-map)的时候做如下假设:机器人的位姿已知。这样制图问题就变成了单纯地图更新的过程。

描述机器人定位问题的时候假设:环境地图Map已知。

地图可以分为如下几种类型:度量地图Metric Map、拓扑地图、语义地图

占用概率栅格地图是一种栅格地图,栅格中的值通常为概率值。主要使用栅格地图,简单来说就是占据的地方变黑,障碍物为白,不使用的地方为灰。

cost地图主要用于路径规划,用于描述环境中的障碍物和自由空间。通常也用栅格地图表示,常见的整体代价地图和分层代价地图。

https://zhuanlan.zhihu.com/p/21738718

发现一个牛逼的东西:https://github.com/yhexie/ROS-Academy-for-Beginners

有中国大学的各种仿真demo

Beam Model叫做测量光束模型。完全的物理模型,只针对激光发出的测量光束建模。将一次测量误差分解为四个误差。

phhit,测量本身产生的误差,符合高斯分布。phxx,由于存在运动物体产生的误差。

Likehood field,似然场模型,和测量光束模型相比,考虑了地图的因素。不再是对激光的扫描线物理建模,而是考虑测量到的物体的因素。似然比模型本身是一个传感器观测模型,之所以可以实现扫描匹配,是通过划分栅格,步进的方式求的最大的Score,将此作为最佳的位姿。

https://github.com/yhexie

www.cnblogs.com/yhlx125/

牛逼的博客。

调用Global_localization服务虽然可以完成小车的自主初始化位姿,但是粒子收敛时间很长,平均在90s左右,如果减少相对粒子数min_particles,max_particles,收敛时间会相对减小。Amcl中默认的最小,最大粒子数分别为500,5000。

粒子的数量是粒子滤波器发挥较好作用的关键环节。当粒子数量较多的时候,能够降低粒子飘移带来的不良影像。但是这样会增加计算负荷,进而影响滤波的效果。对于例子数量增多带来的计算量大的问题,使用KLD采样方法。

KLD采样产生是通过观测两个概率分布不同的KL距离。KL距离是用于表示概率分布p和概率分布q之间的逼近误差。

逼近误差定义:
在AMCL当中采用KLD采样算法可以动态调整粒子的数量

2DSLAM问题通常被认为是后验概率估计问题。其解决方案大多数是基于贝叶斯滤波器的概率模型方法。根据随机估计可知,整个SLAM问题可以描述成求解如下分布:

递归的贝叶斯估计方法主要分成预测和更新两步,

https://blog.csdn.net/David_Han008/article/details/68926189

A*算法博客 : theory.stanford.edu/~amitp/GameProgramming/AStarComparison.html

路径规划博客:https://blog.csdn.net/changbaohua/article/details/3860307

https://blog.csdn.net/hulizhi321/article/details/79631008

实习:slam算法的学习整理相关推荐

  1. SLAM算法工程师学习方向

    https://www.cnblogs.com/xtl9/p/8053331.html https://zhuanlan.zhihu.com/p/28565563 1.编程基础 <Effecti ...

  2. SLAM算法实习生-实习面试准备篇(1)

    SLAM算法实习生-实习面试准备篇(1) 实习之前投了简历,在简历上介绍了自己掌握的一些知识和技能 这些东西面试是可能问到的,不妨把之前学过的知识认真梳理一下 既然是面试SLAM算法实习生,那就先从& ...

  3. 深度学习slam算法工程师

    打算以后从事slam+深度学习方向的工作,整理一些招聘网站上的工作要求,作为自己的工作目标. 1.50%配合深度学习算法工程师,集成现有的物体识别框架和贝叶斯方法,构建包含物体标签的地图,用于家用机器 ...

  4. 【ROS】中级操作学习整理-激光SLAM

    系列文章目录 ·[ROS]中级操作学习整理-gazebo机器人仿真 ·[ROS]中级操作学习整理-TF坐标变换 ·[ROS]中级操作学习整理-传感器建模 ·[ROS]中级操作学习整理-激光SLAM 文 ...

  5. 25~50K|云视科技SLAM算法工程师/机器人算法软件工程师招聘(社招+实习)

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 深圳市云视机器人有限公司成立于2019年11月,是一家专注于服务型机器人技术开发及大规模制造的高科技公 ...

  6. 排序算法学习整理一(冒泡)

    排序算法顾名思义,给元素排序,无论是从小到大也好还是从大到小也罢,都归属于排序,作为一个刚入坑但又在能力上有所欠缺的萌新来说排序算法是简直难以逾越的天坑,我曾经见过一个朋友冒泡排序敲了一周QAQ,勉强 ...

  7. 20~50K|智驾科技SLAM算法总监、深度学习、感知定位、高精地图等多个岗位

    公司介绍 上海智驾汽车科技有限公司(智驾科技 MAXIEYE),是一家智能驾驶和智慧出行领域的核心技术服务商.我们为客户及合作伙伴提供全工况.多场景.跨平台的辅助驾驶(ADAS)和自动驾驶(ADS)系 ...

  8. 2021年十大开源SLAM算法整理

    2021年底盘点:十大最佳开源SLAM算法 1.TANDEM 该方法由慕尼黑工业大约Daniel Cremers团队提出来的纯视觉SLAM,该框架在圣诞节前开源.视频中使用的事RealsenseD45 ...

  9. 激光SLAM算法学习(三)——3D激光SLAM

    3D激光SLAM 1.3D激光SLAM的介绍 3D激光SLAM的输入: IMU数据 3D激光雷达数据 里程计数据 3D激光SLAM的输出: 3D点云地图 机器人的轨迹 or PoseGraph 2.3 ...

最新文章

  1. 核爆rpg手机版_好嗨游戏:不玩吃亏 ,20款全世界最佳移动RPG角色扮演游戏(上)...
  2. 一个几何不等式的最佳常数
  3. iPhoneX延迟这么久预订,真实原因连库克也没料到
  4. “中文版GPT-3”来了:会算术、可续写红楼梦,用64张V100训练了3周
  5. jQuery动态操作表单
  6. Oracle数据库ORA-12516:“listener could not find available handler with matching protocol stack!“问题解决方法
  7. MFC全局函数开局——AfxGetApp解剖
  8. [转]游戏中各种性能优化方法(不断更新)
  9. 撒花!算法岗必须复现的上百篇经典论文代码完结啦! | 附下载链接
  10. 2018-2019-2 20175204 张湲祯 实验五《网络编程与安全》实验报告
  11. ipconfig /flushdns 解释
  12. 算法导论-用于不相交集合的数据结构
  13. 重大调整!余承东兼任华为云与计算 BG 总裁
  14. 《『若水新闻』客户端开发教程》——16.添加广告
  15. 不做单元测试的6大借口
  16. 拓端tecdat|R语言ISLR工资数据进行多项式回归和样条回归分析
  17. ms17-010 php版本,HOWTO: 解决 MS17-010 安全更新安装失败的故障问题
  18. 解决“虚拟机使用的是此版本 VMware Workstation 不支持的硬件版本”的问题。
  19. 华为 36 岁工程师猝死,曾 22 月无休:比挣钱更重要的是活着
  20. 到底什么是CE、C++、C+L波段?

热门文章

  1. sap进阶系列(3):第一篇:财务总览之总账、应收和应付
  2. 元宇宙NFT游戏开发成本 元宇宙NFT游戏开发公司
  3. java秒表_Java实现的计时器【秒表】功能示例
  4. python opencv教程pdf_机器学习 使用OpenCV和Python进行智能图像处理.pdf
  5. ForeSpider数据采集系统
  6. 高级语言程序设计——从C语言到c++(西安电子科技大学出版社)
  7. 酷睿i513400参数 i5 13400功耗 i5 13400属于什么水平档次级别
  8. 学生用计算机app,大学生计算器app
  9. 笔记:Java中Map集合的基本功能及遍历方式
  10. 教你用晨曦记账本记账,设置多功能打印账目