超过460,000+ 应用技术资源下载
rar

扩展卡尔曼滤波器

  • 1星
  • 日期: 2014-03-05
  • 大小: 1.16KB
  • 所需积分:1分
  • 下载次数:1
  • favicon收藏
  • rep举报
  • 分享
  • free评论
标签: 扩展卡尔曼滤波器

扩展卡尔曼滤波器,非线性动态滤波,是一种在线线性化的算法

更多简介内容

推荐帖子

无人机常用算法——卡尔曼滤波器(九)
3.3 线性化 EKF 滤波的误差补偿及注意事项 因为扩展卡尔曼滤波算法是由泰勒级数的一阶或二阶展开式获得,并忽略了高阶项,这样在滤波过程中要引入一定的线性化误差,可采用以下补偿方法[14,17]:1 为补偿状态预测中的误差,附加“人为过程噪声”,即通过增大过程噪声协方差来实现这一点。2 用标量加边因子φ >1乘状态预测协方差矩阵,即 然后在协方差更新方程中使用 3 利用对角矩阵
sigma 电子竞赛
无人机常用算法——卡尔曼滤波器(八)
3.2 另一种扩展卡尔曼滤波表示 无论状态方程或者测量方程是非线性的,都需要使用扩展卡尔曼滤波方法。这种方法就是对非线性方程进行线性化。 非线性系统的状态方程为(忽略系统输入):X (k +1) = f (k, X (k)) +V(k)测量方程为;z(k) = h(k, X (k)) +W (k) 一阶泰勒展开线性化的扩展卡尔曼滤波的迭代公式为: 对于更新协方差,使用式(7)是对任何增
sigma 电子竞赛
无人机常用算法——卡尔曼滤波器(七)
三、扩展卡尔曼滤波 卡尔曼滤波是在线性高斯情况下利用最小均方误差准则获得目标的动态估计,适应于过程和测量都属于线性系统,且误差符合高斯分布的系统。但是实际上很多系统都存在一定的非线性,表现在过程方程(状态方程)是非线性的,或者观测与状态之间的关系(测量方程)是非线性的。这种情况下就不能使用一般的卡尔曼滤波了。解决的方法是将非线性关系进行线性近似,进而转化成线性问题。最常用的线性化方法是泰勒级数展
sigma 电子竞赛
无人机常用算法——卡尔曼滤波器(六)
2.4 卡尔曼滤波初始化初始化也比较重要,初始化偏差大容易振动,甚至可能不收敛(?)。例如跟踪一辆车,状态空间为如果知道足够精确的车的初始位置,那么可以初始化或者别的具体值。并且,通过给状态协方差矩阵赋较小的值来告诉滤波器我们知道确切的初始位置,例如初始化为 或者给定其它较小的值。如果我们不确切的知道最初的位置与速度,那么协方差矩阵可以初始化为一个对角线元素是 b 的矩阵,b取一个合适的比较大的
sigma 电子竞赛
卡尔曼滤波器介绍(中文版本)
朋友最近在关注控制类的东西,传来了一份资料,感觉不错,分享下 1960年,卡尔曼发表了他著名的用递归方法解决离散数据线性滤波问题的论文。从那以后,得益于数字计算技术的进步,卡尔曼滤波器已成为推广研究和应用的主题,尤其是在自主或协助导航领域。 卡尔曼滤波器由一系列递归数学公式描述。它们提供了一种高效可计算的方法来估计过程的状态,并使估计均方误差最小。卡尔曼滤波器应用广泛且功能强大:它可以估计信号
leslie 【DSP 与 ARM 处理器】
无人机常用算法——卡尔曼滤波器(十二)
5 卡尔曼滤波应用在机器人基于测距仪的跟踪中,激光测距仪的采样周期为 100ms,假设在 k 时刻获取了实测值并结合 k-1时刻的距离预测值(方程1),则可以根据方程 4 对 k 时刻的测量值进行滤波估计修正。修正之后就可以对k+1 时刻的距离进行预测,相当于提前了一个采样周期。因而可以提前进行运动控制。 以机器人上的激光测距仪检测跟踪动态目标为例,说明卡尔曼滤波在滤波和预测上的应用。 考虑机
sigma 电子竞赛

评论


个人中心

意见反馈

求资源

回顶部

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

EEWorld电子技术资料下载——分享有价值的资料

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved
$(function(){ var appid = $(".select li a").data("channel"); $(".select li a").click(function(){ var appid = $(this).data("channel"); $('.select dt').html($(this).html()); $('#channel').val(appid); }) })