VINS笔记1——滤波与优化

2023-05-16

1.滤波

1.1.什么是滤波

这里的卡尔曼滤波实际上和信号处理里面的滤波有很大的不同。

信号处理里面的滤波,假设一个正弦信号有很多毛刺,想要对其进行滤波滤除毛刺。信号处理里面的做法是把信号进行FFT变换到频域,然后用一个低通滤波器滤掉高频信号,然后再用IFFT变换到时域,就完成了滤波过程。如下图所示:
在这里插入图片描述而状态估计中的滤波,更属于是一种状态的融合,使用卡尔曼滤波。

1.2.卡尔曼滤波的例子

一个例子:现在一个人玩荒野求生需要确定自己的位置,他手上有一个GPS传感器,定位的可信度是±2m,但是这个GPS的信号发送频率比较低。同时这个人每次走一步可以自己估计出自己这一步走了多远,并且估计的可信度是±0.1m。

假设这个人从开始走了四步,每一步估计自己走了多远的可信度是0.1m,注意这是每一步的,那么他走了四步之后估计出的自己的最终位置的置信度肯定是要比0.1m高的,因为误差在这个过程中是会传递的。假设最终对位置的这个估计是 x a x_a xa状态转移),置信度是0.8m(实际计算需要严格的推导,这里只是距离)。此时来了一个GPS信号定位的位置是 x b x_b xb观测),置信度是2m,那么这个时候就需要使用卡尔曼滤波融合这两个结果,比如最后得到的结果是 x c x_c xc,并且融合的结果的置信度一定比之前两个的置信度都要高,假设是0.6m。整个过程如下图所示:
在这里插入图片描述

1.3.卡尔曼滤波方程

1.3.1.使用条件

注意普通的卡尔曼滤波的使用条件是系统是线性的,并且状态方程和观测方程的噪声都服从高斯分布。

在这里插入图片描述

1.3.2.五大方程

在这里插入图片描述

1.4.非线性的EKF

扩展卡尔曼滤波EKF本质上还是KF,他是在工作点附近对状态方程和观测方程都进行了线性化,从而得到线性KF中的A和H。

但是这样存在的一个问题是我们求的偏导都是在预测的 x k x_k xk处的结果,并非最后真正的 x k x_k xk,所以如果预测的结果和真值差的比较远的话,那么线性化不成立,这样EKF的效果自然也就不好了。
在这里插入图片描述

2.优化

优化的思想和滤波不同之处在于,滤波只是在上一个状态的基础上考虑当前状态的最佳估计,而不考虑之前的其他状态。但是优化是考虑当前状态和之间的所有状态,以及之前的所有观测,同时优化所有的状态让总的误差最小,也就是寻找在所有观测下的所有状态最大后验估计。

使用贝叶斯公式可以知道,优化的求的最大后验估计其实可以转化为求最大似然估计。原来的最大后验估计问题的描述是找到 x i x_i xi使得 P ( x i ∣ z i ) P(x_i|z_i) P(xizi)最大,而转成最大似然估计后问题的描述变成找到一个 x i x_i xi使得最可能产生当前的观测值 z i z_i zi。比如在高中物理测电阻的实验中,得到一组数据 ( I i , U i ) (I_i, U_i) (Ii,Ui),据此拟合一条直线得到电阻 R R R。实际上这个过程就是一个最大似然估计,就是寻找一个电阻 R R R,使得物理系统的电阻阻值为 R R R时最可能产生得到的这些数据 ( I i , U i ) (I_i, U_i) (Ii,Ui)

PS:在这里我好像还是没有特别理解最大似然和最大后验的区别,如果按照上面的说法,对电阻测量的这个实验来说,最大似然估计很好解释的通,那么最大后验估计使得后验概率最大是什么意思

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

VINS笔记1——滤波与优化 的相关文章

  • Realsense D435i 运行 Vins-fusion

    无人机控制和规划都需要定位信息 xff0c 飞控输出的位置信息一是精度低 xff0c 二是室内环境无法使用 xff0c 三是本身有漂移 港科大高飞博士在其最近的路径规划文章中均使用d435i跑vins来提供位置和姿态信息 xff0c 本文记
  • VINS-Fuison调试笔记

    最近一直在断断续续的调试vins fuison xff0c odometry总是各种飘 xff0c 令人头大 记录一下调试过程 xff0c 供以后学习参考 首先选用一组可靠的视觉惯导传感器 xff0c 如Realsense D435i xf
  • bmi055 标定_Ubuntu16.04+RealsenseT265跑通VINS-Fusion

    1 提早条件 系统版本 xff1a ubuntu16 04 43 ROS kinetic 默认已经掌握了ubuntu系统下的基本命令以及ROS的基本操做node 2 realsenseT265的SDK测试 3 realsenseT265的标
  • VINS-Mono运行与评测

    VINS Mono运行与评测 1 修改VINS mono轨迹保存代码1 1 修改 visualization cpp1 2 修改 pose graph cpp1 3 修改VINS mono运行参数 2 EVO 显示轨迹2 1 分析单条轨迹2
  • vins-fusion代码解读[二] 惯性视觉里程结果与GPS松耦合

    感谢 slam萌新 xff0c 本篇博客部分参考 xff1a https blog csdn net weixin 41843971 article details 86748719 欢迎讨论 惯性视觉里程结果与GPS松耦合 xff1a g
  • 【SLAM】VINS-MONO解析——综述

    目前网上有很多分析文章 xff0c 但是都只是一些比较基础的原理分析 xff0c 而且很多量 xff0c 虽然有推倒 xff0c 但是往往没有讲清楚这些量是什么 xff0c 为什么要有这些量 xff0c 这些量是从哪来的 xff0c 也没有
  • 【学习SLAM】vins笔记

    VINS ROS source catkin ws devel setup bash 3 1 1 Open three terminals launch the vins estimator rviz and play the bag fi
  • VINS-Mono 加rgbd

    通过对比VINS Mono与其RGBD版本 xff0c 分析其改动思路 一 feature tracker feature tracker node cpp 头文件加入了ros的多传感器时间戳 include lt message filt
  • VINS-Mono跑Kitti数据集

    参考文章 xff1a VINS Mono KITT00 测试 知乎 如何在kitti raw data上跑起vins mono 知乎 实际上我参考的是LIO SAM里将KITTI转化为bag的方法 Debug https blog csdn
  • ubuntu18.04 安装ros与运行vins-mono

    Ubuntu18 04 安装环境及运行Vins mono xff08 2022年 xff09 AI技术聚合 安装 sudo apt get install ros melodic desktop full 正在解包 ros melodic
  • Ubuntu 18.04 运行PL-VINS

    代码地址 https span class token operator span span class token comment github com cnqiangfu PL VINS span 安装过程出错参考 PL VINS配置
  • VINS-Fusion跑kitti stereo及stereo+GPS数据

    Stereo source vfusion devel setup bash roslaunch vins vins rviz launch source vfusion devel setup bash rosrun loop fusio
  • 在ubuntu20.04上配置VINS_Fusion(亲测有效,一应俱全)

    最近在做科研训练的时候配置了HKUST Aerial Robotics实验室的VINS Fusion代码项目 xff0c 经历了一些编译报错的问题 xff0c 在网上查找的时候博客内容良莠不齐 xff0c 且实质针对性意见不多 xff0c
  • VINS-mono 解析 新特征

    在17 12 29 xff0c VINS更新了代码加入了新的特征 xff0c 包括map merge 地图合并 pose graph reuse 位姿图重利用 online temporal calibration function 在线时
  • vins中的坐标系变换及g2r函数

    slam中经常会需要表示一个刚体的位姿 例如imu的位姿 xff0c 相机的位姿 首先我们需要在一个刚体上架上一个坐标系 这个坐标系为本体坐标系 怎么架一个坐标系 xff1f imu本身就有规定其本身的x y z轴的方向 相机一般认为 xf
  • D435i运行VINS-mono以及Kalib标定

    D435i运行VINS mono以及Kalib标定 系统说明 xff1a Ubuntu 18 04 内核版本 xff1a 5 4 0 1 运行VINS mono 参考博客VINS xff08 D435i xff09 测试 问题 xff1a
  • vins运行1

    vins fusion 运行笔记 安装code utils 1 fatal error elfutils libdw h 没有那个文件或目录 没有安装 sudo apt get install libdw dev 2 fatal error
  • VINS-Mono学习(二)——松耦合初始化

    初始化 xff1a 如何当好一个红娘 xff1f 图解SfM 视觉和IMU的羁绊 怎么知道发生了闭环 xff1f 位姿图优化与滑窗优化都为哪般 xff1f 闭环优化 xff1a 拉扯橡皮条 整体初始化流程如下 xff1a 1 SFM纯视觉估
  • Ubuntu 18.04 ———(Intel RealSense D435i)运行VINS-Mono

    Intel RealSense D435i 一 准备工作二 修改参数rs camera launchrealsense color config yaml 参考文献 一 准备工作 1 Intel Realsense D435i Ubuntu
  • VINS问题整理

    VINS的初始化过程 xff1f 首先进行纯视觉SfM xff1a 把滑窗填满 xff0c 然后选择枢纽帧 xff08 和最后一帧有足够的视野重叠保证计算的位姿精度 xff0c 并且和最后一帧有足够的视差保证三角化地图点的精度 xff09

随机推荐

  • 通俗易懂理解朴素贝叶斯分类的拉普拉斯平滑

    点击上方 小白学视觉 xff0c 选择加 34 星标 34 或 置顶 重磅干货 xff0c 第一时间送达 这个男生的四个特征是长相不帅 xff0c 性格不好 xff0c 身高矮 xff0c 不上进 xff0c 我们最终得出的结论是女生不嫁
  • 综述 | 激光与视觉融合SLAM

    点击上方 小白学视觉 xff0c 选择加 34 星标 34 或 置顶 重磅干货 xff0c 第一时间送达 SLAM包含了两个主要的任务 xff1a 定位与构图 xff0c 在移动机器人或者自动驾驶中 xff0c 这是一个十分重要的问题 xf
  • KITTI数据集简介与使用

    点击上方 小白学视觉 xff0c 选择加 34 星标 34 或 置顶 重磅干货 xff0c 第一时间送达 摘要 xff1a 本文融合了Are we ready for Autonomous Driving The KITTI Vision
  • DBSCAN聚类算法原理总结

    点击上方 小白学视觉 xff0c 选择加 34 星标 34 或 置顶 重磅干货 xff0c 第一时间送达 DBSCAN是基于密度空间的聚类算法 xff0c 在机器学习和数据挖掘领域有广泛的应用 xff0c 其聚类原理通俗点讲是每个簇类的密度
  • 深度学习GPU最全对比,到底谁才是性价比之王?

    点击上方 小白学视觉 xff0c 选择加 34 星标 34 或 置顶 重磅干货 xff0c 第一时间送达 本文转自AI新媒体量子位 xff08 公众号 ID QbitAI xff09 搞AI xff0c 谁又没有 GPU之惑 xff1f 张
  • 使用卡尔曼滤波器进行对象跟踪时最容易遗漏什么

    点击上方 小白学视觉 xff0c 选择加 34 星标 34 或 置顶 重磅干货 xff0c 第一时间送达 介绍 卡尔曼滤波器是一种复杂的算法 xff0c 在大多数情况下 xff0c 我们在没有完全理解其方程的情况下使用它 当我开始使用卡尔曼
  • 10分钟掌握异常检测

    点击上方 小白学视觉 xff0c 选择加 34 星标 34 或 置顶 重磅干货 xff0c 第一时间送达 异常检测 也称为离群点检测 是检测异常实例的任务 xff0c 异常实例与常规实例非常不同 这些实例称为异常或离群值 xff0c 而正常
  • 根据图像目标深度测试距离

    clc clear close all warning off addpath 39 func 39 计算物体的深度距离 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61
  • SLAM基础环境配置

    点击上方 小白学视觉 xff0c 选择加 34 星标 34 或 置顶 重磅干货 xff0c 第一时间送达 转自知乎作者 xff1a 佳浩 原文链接 xff1a https zhuanlan zhihu com p 385255026 如今
  • 多传感器融合定位:基于滤波的融合方法

    点击上方 小白学视觉 xff0c 选择加 34 星标 34 或 置顶 重磅干货 xff0c 第一时间送达 SLAM 后端的优化方式大体分为滤波和优化 近些年优化越来越成为主流 xff0c 在学习优化之前 xff0c 掌握滤波的工作原理也十分
  • 不要错过!顶会审稿人带读【大语言模型】前沿论文!

    LLaMA GLM 130B SELF INSTRUCT是三篇最新的语言模型相关的论文 xff0c 它们都展示了语言模型在不同方面的创新和突破 这三篇论文都体现了语言模型在双语 大规模 通用 快速 可复现等方面的重要进展 xff0c 对于语
  • 收藏 | 最全深度学习训练过程可视化工具

    点击上方 小白学视觉 xff0c 选择加 34 星标 34 或 置顶 重磅干货 xff0c 第一时间送达 仅作学术分享 xff0c 不代表本公众号立场 xff0c 侵权联系删除 转载于 xff1a 编辑丨极市平台 机器学习实验室 深度学习训
  • 为什么建议大家使用 Linux 开发?真的很很很优雅!

    点击上方 小白学视觉 xff0c 选择加 34 星标 34 或 置顶 重磅干货 xff0c 第一时间送达 编者荐语 Linux 开发不算简单 xff0c 要求同学们掌握的知识广且复杂 xff0c 有一定难度 但是同学们只要静下心来 xff0
  • favicon.ico不显示

    静态页面中 xff0c title前的favicon ico不显示的问题 原因还不详 解决办法 xff1a 清除浏览器缓存或者将favicon ico文件重命名
  • 树莓派系统镜像的下载和烧录

    一 树莓派镜像下载地址 树莓派官网的下载地址 xff1a 树莓派官网 软件安装 可在官网上下载最新的Raspbian树莓派系统 二 树莓派系统镜像烧写 准备 xff1a 一张2G以上的SD卡及读卡器 xff0c 最好是高速卡 xff0c 推
  • TF 坐标变换(已整理)

    文章目录 坐标msg消息静态坐标变换1 C 43 43 实现发布方 demo01 static pub cpp订阅方 demo02 static sub cpp 2 Python实现发布方 demo01 static pub p py订阅方
  • ROS Action通信

    文章目录 自定义action文件 类似msg和service 服务端 action01 server cpp客户端 action02 client cpp服务端 action01 server p py客户端 action02 client
  • 位姿图优化小记2021.10.18

    1 场景描述 现在有一个小车在运动 xff0c 并搭载相机或激光雷达进行建图工作 xff0c 由于SLAM的作用 xff0c 在建图的同时小车也可以进行自身的定位 xff0c 因此建立的地图的参考都是相对于自身坐标系的 xff0c 也就是每
  • 【CRAHNs】CRAHNs网络中多径环境下大规模MIMO接收信道估计均衡技术

    1 软件版本 matlab2017b 2 本算法理论知识 对于大规模MIMO xff0c 通常情况下 xff0c 采用3D MIMO信道来实现 这是由于3D MIMO一般采用大规模的二维天线阵列 xff0c 不仅天线端口数较多 xff0c
  • VINS笔记1——滤波与优化

    1 滤波 1 1 什么是滤波 这里的卡尔曼滤波实际上和信号处理里面的滤波有很大的不同 信号处理里面的滤波 xff0c 假设一个正弦信号有很多毛刺 xff0c 想要对其进行滤波滤除毛刺 信号处理里面的做法是把信号进行FFT变换到频域 xff0