SLAM中的因子图

2023-05-16

最开始是看这个B站视频说到用因子图可以把整个SLAM问题表示得非常清楚。

https://www.bilibili.com/video/BV1gb411a7bh?from=search&seid=15057309362272648788

 

转载自:https://blog.csdn.net/weixin_37709708/article/details/101060746

SLAM中的因子图

chenying66 2019-09-20 15:12:10 1699 收藏 10

分类专栏: SLAM 文章标签: 因子图

最后发布:2019-09-20 15:12:10首次发布:2019-09-20 14:58:22

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/weixin_37709708/article/details/101060746

版权

看论文,发现很多SLAM方面的文章都涉及图优化,其中更包含有因子图。正好前段时间看了PRML,将其进行整理。

(诶,果然理论的内容就是得及时用起来,现在又记不太清楚了)

因子图

来自于PRML第八章“图模型”

  1. 有向图和无向图都使得若干个变量的一个全局函数能够表示为这些变量的子集上的因子的乘积。由因子图表示这个分解
  2. 因子图表示分解的方法:在表示变量的结点的基础上,引入额外的结点表示因子本身
  3. 将一组变量上的联合概率分布写成因子的乘积形式:其中xs表示变量的一个子集。每个因子fs是对应的变量集合xs的函数联合概率分布
  4. 因子图:在因子图中,概率分布中的每个变量都有一个结点(有向图、无向图的情形相同)。还存在其他结点,表示联合概率分布中的每个因子。最后,在每个因子结点和因子所依赖的变量结点之间,存在无向链接。因此,因子图能够表达出关于分解本身的更加细节的信息
    在这里插入图片描述
  5. 因子结点:对于因子结点,对应于最大团块xs,fs(xs)被设置为与团块势函数相等
  6. 将有向图转化为因⼦图:构造变量结点(有向图中的结点),然后构造因⼦结点(对应于条件概率分布),最后添加上合适的链接。与之前⼀样,同⼀个有向图可能对应于多个因⼦图。

SLAM中用到的因子图

来自于《视觉SLAM十四讲》第十一讲

  1. SLAM可以表示成一个动态的贝叶斯网络,SLAM中的运动和观测方程可以表示状态变量之间的条件概率
    在这里插入图片描述其中,箭头表示依赖关系,依赖也就代表着条件概率
  2. 后端优化的目标:在既有约束之上,通过调整贝叶斯网络中随机变量的取值,使整个后验概率达到最大
    在这里插入图片描述
  3. 将SLAM转化成为因子图:此时,优化变量只有相机位姿和路标,观测和输入是给定量,不需要对其进行优化
    在这里插入图片描述
  4. 对于因子图的优化,就是调整各变量的值,使它们的因子之乘积最大化,通常做法是将各因子的条件概率取高斯分布的形式,然后使用最小二乘法进行求解
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SLAM中的因子图 的相关文章

  • 坐标变换与基变换到底哪个左乘,哪个右乘??

    Version Date By Change Cost A 2020 3 18 AYZP First Version 三小时 前言 学习目的 1 坐标变换与基变换到底哪个左乘 哪个右乘 答案 根本就是由基和坐标的维数决定其到底左乘还是右乘
  • 大师兄!SLAM 为什么需要李群与李代数?

    from https mp weixin qq com s sVjy9kr 8qc9W9VN78JoDQ 作者 electech6 来源 计算机视觉life 编辑 Tony 很多刚刚接触SLAM的小伙伴在看到李群和李代数这部分的时候 都有点
  • 《视觉SLAM十四讲》学习笔记-第四讲部分习题的证明思路

    1 验证SO 3 SE 3 和Sim 3 关于乘法成群 证明 先看SO 3 定义为 SO 3 R R3 3 RR I det R 1 S O 3 R
  • Event-based Stereo Visual Odometry(双目事件相机里程计)论文学习

    本文详细介绍一篇双目事件相机里程计的论文 Event based Stereo Visual Odometry 港科大沈邵劼团队Yi Zhou和TU Berlin的Guillermo Gallego共同完成 并公布了代码 我准备在接下来一段
  • np.meshgrid()函数 以及 三维空间中的坐标位置生成 以及 numpy.repeat()函数介绍

    一 np meshgrid 函数 1 np meshgrid 介绍 X Y np meshgrid x y 代表的是将x中每一个数据和y中每一个数据组合生成很多点 然后将这些点的x坐标放入到X中 y坐标放入Y中 并且相应位置是对应的 下面是
  • Sophus使用记录

    sophus库是一个基于Eigen的C 李群李代数库 可以用来方便地进行李群李代数的运算 头文件 主要用到以下两个头文件 include
  • 对最小二乘法的一点理解 - slam学习笔记

    我对最小二乘法的理解 在给定参数个数和函数模型之后 根据测试数据 找出与所有测试数据的偏差的平方和最小的参数 这里面应该有两个问题 1 为什么选取与真实数据平方和最小的拟合函数 2 如何求参数 为什么选取与真实数据平方和最小的拟合函数 极大
  • vscode配置eigen3

    目录 1 头文件包含 2 c cpp properties json 3 CMakeList txt 4 完整代码 1 头文件包含 Eigen 核心部分 include
  • 图像匹配算法

    图像匹配算法分为3类 基于灰度的匹配算法 基于特征的匹配算法 基于关系的匹配算法 1 基于灰度的模板匹配算法 模板匹配 Blocking Matching 是根据已知模板图像到另一幅图像中寻找与模板图像相似的子图像 基于灰度的匹配算法也称作
  • 关于GPS、惯导、视觉里程计的几个定义

    1 首先写几个定义 惯性导航系统 Inertial Navigation System INS 全球定位卫星系统 Global Navigation Satellite System GNSS GNSS 包括全球定位系统 Global Po
  • IMU预积分的一些理解

    IMU预积分 算是比较简单的一个算法 无奈网上找到的资料都讲的晦涩难懂 看明白了也觉得不过如此 讲一下我的理解 整体流程 1 推导IMU离散运动方程 2 根据离散运动方程 进行预积分 并将预积分的误差项拆分出来 因为我们在定义误差的时候 有
  • PnP 问题

    欢迎访问我的博客首页 PnP 问题 1 DLT 2 P3P 3 G2O 求解 PnP 3 1 单目 3 2 双目 4 自定义顶点与边优化内参 4 1 二元边 4 2 三元边 4 3 总结 5 参考 PnP Perspective n Poi
  • Lego-LOAM IMU坐标系变换的详细记录

    Lego LOAM IMU坐标系变换的详细记录 0 基础知识 1 IMU 重力加速度消除 2 相机坐标系 camera 到初始坐标系 camera init 的转换 最近看了Lego LOAM 的IMU部分 没看懂IMU的坐标系变换 看其它
  • LeGO-LOAM代码详细注释版

    学习LeGO LOAM时 写的代码注释github代码链接 一部分注释来自github用户wykxwyc 一部分来自网上查阅 还有一部分是自己的理解 持续更新中
  • GMAPPING的参数设置

    二 运行gmapping 我总结了运行gmapping的两种方法 1 基于命令行 rosrun gmapping slam gmapping scan scan delta 0 1 maxUrange 4 99 xmin 5 0 ymin
  • ORB-SLAM2:基于可识别特征的自主导航与地图构建

    ORB SLAM2 基于可识别特征的自主导航与地图构建 ORB SLAM Tracking and Mapping Recognizable Features 转自 http blog csdn net cicibabe article d
  • LIO-SAM运行自己数据包遇到的问题解决--SLAM不学无数术小问题

    LIO SAM 成功适配自己数据集 注意本文测试环境 Ubuntu18 04 ROS melodic版本 笔者用到的硬件以简单参数 激光雷达 速腾聚创16线激光雷达 RS Lidar 16 IMU 超核电子CH110型 9轴惯导 使用频率1
  • ORB_SLAM2运行官方数据集/自己数据集

    官方数据集运行结果 WeChat 20230210194425 可以正常运行 自己数据集运行结果 自己的数据集 主要是用手机摄像头采集的实验室进行了一下简单的运行 可以成功运行 但是由于查看的相关程序的是死循环不能像运行官方数据集那样完整保
  • Todesk突然高速通道使用已结束

    今天使用Todesk直接报出如下错误 好像对于海外用户需要付费购买海外会员 大家有没有什么可以替换的远程控制软件的吗 能分享一下吗
  • 什么是深度学习的无监督学习与有监督学习

    无监督学习 深度学习中的无监督学习方法是一种训练算法 它在没有标注输出的情况下从输入数据中学习模式和特征 这种方法的核心是探索和理解数据的内在结构和分布 而不是通过已知的输出来指导学习过程 无监督学习在深度学习领域有许多不同的形式和应用 以

随机推荐