滑窗优化——边缘化

2023-11-03

文章目录

一、从高斯分布到信息矩阵

1.1 SLAM 问题概率建模

在这里插入图片描述

1.2 SLAM 问题求解

在这里插入图片描述

1.3 高斯分布和协方差矩阵

在这里插入图片描述因为一般可以假设 x i 和 x j x_{i}和 x_{j} xixj是相互独立的:
Σ i j = E ( x i x j ) = E ( x i ) E ( x j ) = ( x − u ) T ( x − u ) \Sigma_{i j}=E\left(x_{i} x_{j}\right)=E(x_i)E(x_j)=(x-u)^T(x-u) Σij=E(xixj)=E(xi)E(xj)=(xu)T(xu)

1.4 样例

1.4.1 样例1

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述因为实际过程中是协方差矩阵里面各个值是一个数,已经没有办法单独去掉某一部分。

1.4.2 样例2

在这里插入图片描述在这里插入图片描述在这里插入图片描述

二、舒尔补应用:边际概率, 条件概率

2.1 舒尔补的概念

在这里插入图片描述更多定义参见:Wiki. Schur Complement.

2.2 舒尔补的来由

在这里插入图片描述

2.3 使用舒尔补分解的好处

在这里插入图片描述

2.4 舒尔补应用于多元高斯分布

在这里插入图片描述在这里插入图片描述

2.5 关于 P(a), P(b|a) 的协方差矩阵

在这里插入图片描述

2.6 关于 P(a), P(b|a) 的信息矩阵

在这里插入图片描述在这里插入图片描述

2.7 回顾样例

在这里插入图片描述

2.8 总结

在这里插入图片描述

三、滑动窗口算法

3.1 最小二乘用图表示

在这里插入图片描述

3.2 最小二乘问题信息矩阵的构成

在这里插入图片描述

3.3 信息矩阵的稀疏性

在这里插入图片描述

3.4 信息矩阵组装过程的可视化

在这里插入图片描述

3.5 基于边际概率的滑动窗口算法

在这里插入图片描述在这里插入图片描述公式表示:
假设要被边缘化的状态是 δ x a \delta x_a δxa
在这里插入图片描述
因为在实际滑窗中 δ x a \delta x_a δxa的状态已经被移出去了,所以不会再产生约束,所以只展开矩阵第二行。
可以看到新的方程只和 δ x b \delta x_b δxb相关,但是 δ x a \delta x_a δxa的信息又被保留了下来。接下来只需把最后的公式重写分解成以下形式就又形成了常见后端中的边缘化约束
J ⊤ J ⏟ H  or  Λ δ ξ = − J ⊤ r ⏟ b \underbrace{\mathbf{J}^{\top} \mathbf{J}}_{\mathbf{H} \text { or } \boldsymbol{\Lambda}} \delta \boldsymbol{\xi}=\underbrace{-\mathbf{J}^{\top} \mathbf{r}}_{\mathbf{b}} H or Λ JJδξ=b Jr
对H矩阵作特征值分解 H = V Σ V T H = V\Sigma V^T H=VΣVT. V 是 特 征 向 量 , Σ 是 特 征 值 构 成 的 对 角 矩 阵 V是特征向量,\Sigma是特征值构成的对角矩阵 V,Σ 同时又 H = J T J H = J^TJ H=JTJ,所以 J = Σ V T J = \sqrt{\Sigma}V^T J=Σ VT
同理 r = − ( J T ) − 1 ∗ b r = -(J^T)^{-1}*b r=(JT)1b

3.6 样例

在这里插入图片描述详细步骤如下:
左边为因子图,右边为其对应的H矩阵
在这里插入图片描述如果边缘化掉pose1会发生什么?
在这里插入图片描述在这里插入图片描述在这里插入图片描述

四、滑动窗口中的 FEJ 算法

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

4.1 新测量信息和旧测量信息构建新的系统

在这里插入图片描述

4.2 信息矩阵的零空间变化

在这里插入图片描述
在这里插入图片描述

4.3 可观性的一种定义

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

滑窗优化——边缘化 的相关文章

  • Alluxio介绍

    Alluxio介绍 Alluxio是什么 Alluxio是世界上第一个用于云分析和人工智能的开源数据编排技术 它弥合了数据驱动应用程序和存储系统之间的鸿沟 使存储层的数据更接近数据驱动应用程序 并使其易于访问 使应用程序能够通过一个通用接口
  • 2021美赛C题解题思考+参考文献+部分git开源代码

    解题思路 关于蜜蜂扩散的模型建立 标签方面 报告类型 数据集2021MCM ProblemC DataSet xlsx可以看出 在每次报告中Positive ID 有14 份 而 Negative ID 有 2069 份 Unverifie
  • 光纤收发器tx和rx是什么意思?二者有什么区别?

    现如今 在视频监控工程的高清视频图像传输中 一般都会使用光纤收发器 光纤收发器也被称之为光电转换器 Fiber Converter 可以将短距离的双绞线 网线 电信号和长距离的光信号 光纤 进行互换的以太网传输媒体转换设备 这样就能延长信号
  • 百度编辑器UEditor,怎样禁止用户粘贴??

    editor a addListener beforepaste myEditor paste function myEditor paste o html html html alert 只能录入不能粘贴
  • INFO BRAINPAN: 1

    INFO BRAINPAN 1 About Release Back to the Top Name Brainpan 1 Date release 20 Mar 2013 Author superkojiman Series Brainp

随机推荐

  • iOS应用添加第三方支付

    最简单明了的教程还是官方文档 以下是我给应用添加支付功能 记录下 1 微信支付 官方文档 https pay weixin qq com wiki doc api app php chapter 8 5 假设你的应用在微信开放平台已经创建
  • activeMQ的学习

    原来一直在使用activeMQ 没有对它进行整理 现在看到一个不错的activeMQ详细介绍 http www itpub net tree index 312 1
  • 遇到问题之-LNMP编译安装Redis构建高速Redis缓存

    LNMP编译安装Redis构建高速Redis缓存 前面已经讲过LNMP编译Memc和Srcache构建高速Memcached缓存 这次换另一种被广泛应用的缓存 Redis Redis实际上是一个高性能的key value数据库 他可以代替M
  • 如何使用java的String.split()方法分割话单,方便查看

    工作中 想要快速查到话单中某一列的值 可以使用String split 方法 但是如果直接使用就会变成如下图 那么怎么办呢 原因是 是转义字符 必须得加 如下图 是不是很明显就看出某一列的数值啦 代码片段 public static voi
  • mysql查询最近三个月数据方法

    select from t user where time gt DATE SUB CURDATE INTERVAL 1 WEEK 一周 select from t user where time gt DATE SUB CURDATE I
  • jQuery-两次基础了解总结-引入-选择器-选择集转移

    作者 芝士小熊饼干 系列专栏 数据结构 蓝桥杯 算法 坚持天数 17天
  • C++ 实现RSA加密

    背景 因项目需要 要做一个调用短信接口发送短信的功能 需要实现一个功能是 给定一个字符串 给定一个密钥对 实现RSA公钥加密 Base64加密 然后将加密后的字符串发给服务器 服务器返回通过私钥和Base64加密后的字符串 然后我这边要实现
  • 版本号大小比较算法

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 版本号大小比较算法 版本号之间比较大小 本质上是比较字符串之间的关系 这里给定两个版本号 你一定能迅速地区分出大小 0 0 2 0 0 3 想要让计算机程序分辨她们的关系
  • 云开发推送订阅消息报错 47003 rid ***

    小程序云开发推送订阅消息一直出现类似的问题 推送失败 errcode 47003 errmsg argument invalid data thing9 value is invalid rid 5f3a7906 0c594b15 6792
  • cisco VoIP软电话配置实验

    cisco VoIP软电话配置实验 2010 12 21 14 53 40 标签 语音通信 cisco 软电话 休闲 VoIP 职场 原创作品 允许转载 转载时请务必以超链接形式标明文章 原始出处 作者信息和本声明 否则将追究法律责任 ht
  • hdu 1022 简单的栈应用

    本题链接 点击打开链接 Train Problem I Time Limit 2000 1000 MS Java Others Memory Limit 65536 32768 K Java Others Total Submission
  • 基于Paddle Serving&百度智能边缘BIE的边缘AI解决方案

    Paddle Serving作为飞桨 PaddlePaddle 开源的服务化部署服务化方案 提供了C Serving和Python Pipeline两套框架 旨在帮助深度学习开发者和企业提供高性能 灵活易用的工业级在线推理服务 助力人工智能
  • unable to read project file....不能读取项目文件的解决方法

    我直接把整个解决方案和项目的源文件拷贝到另外的磁盘或者另外的文件夹和另外的电脑上 则有可能出现这个问题 解决方案 针对不同的问题可能有不同的解决方法 下面仅列举几种 删除解决方案中的 suo文件 这个与 sln一个目录下 一般为隐藏的 需要
  • 内存中有两个4字节以压缩的bcd_微机原理课后习题答案

    第1章 进制及码元 1 进制转换 129 81H 10000001B 201Q 298 12AH 100101010B 452Q 1000 3E8H 1111101000B 1750Q 5DH 1011101 B 135 Q 93 D 3E
  • stm32f407启动代码分析

    stm32f407启动代码分析 官方资料 Cortex M3内核怎么开始执行一个程序 启动文件做什么 1 初始化堆栈大小 2 初始化中断向量表 3 初始化堆栈指针 SP initial sp PC 指针 Reset Handler 4 配置
  • Zookeeper、Nacos、Dubbo、Kafka之间的关系

    文章目录 1 Zookeeper 2 Nacos 3 Dubbo 4 Kafka Zookeeper与Nacos 1 配置中心 2 注册中心 Zookeeper与kafka Zookeeper与dubbo的关系 Spring Cloud 和
  • 请一定要使用枚举和常量

    1 魔法值和硬编码 在代码编写的场景中 会遇到提示避免去使用 魔法值 magic numbers 和硬编码 hardcoding 魔法值就是在代码中直接使用的 没有提供任何注释或解释说明其用途和含义的常数值 硬编码指的是在程序中直接使用特定
  • python爬虫学习:第二章:requests模块

    第二章 requests模块 1 基于请求的两个模块 urllib模块 urllib模块比较古老 封装的关于爬虫的相关操作比较麻烦 繁琐 requests模块代替了urllib模块 requests模块 重点 概念 Python中原生一款基
  • Vue这些修饰符节省20%的开发时间

    Vue这些修饰符帮我节省20 的开发时间 作者 李大雷 https segmentfault com a 1190000016786254 为了方便大家写代码 vue js给大家提供了很多方便的修饰符 比如我们经常用到的取消冒泡 阻止默认事
  • 滑窗优化——边缘化

    文章目录 一 从高斯分布到信息矩阵 1 1 SLAM 问题概率建模 1 2 SLAM 问题求解 1 3 高斯分布和协方差矩阵 1 4 样例 1 4 1 样例1 1 4 2 样例2 二 舒尔补应用 边际概率 条件概率 2 1 舒尔补的概念 2