0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

浅析卡尔曼滤波原理

2QeF_cetc49 来源:传感器技术 作者:凌霄 2021-07-09 09:34 次阅读

2021年6月17日9时22分,搭载神舟十二号载人飞船的运载火箭,在酒泉卫星发射中心点火发射。此后,神舟十二号载人飞船与火箭成功分离,进入预定轨道,顺利将聂海胜、刘伯明、汤洪波3名航天员送入太空,发射取得圆满成功。

在载人飞船运行的过程中,需要严格观测及控制其运行轨迹。谈到载人航天,不得不提及人类历史上第一次登月,阿波罗登月,阿波罗号成功的背后是运用了卡尔曼滤波。

那什么是滤波?滤波是指从含有干扰的接收信号中提取有用信号的一种技术,是一种增强有用信号的数字信号处理过程。在数据通信中,无用信号表现为特定波段频率和杂波,通常是一个随机过程。卡尔曼滤波是最优滤波中的一种常用算法,是以实现信号或状态的最优估值与相应的真实值的误差的方差最小。

最早实现卡尔曼滤波器的是斯坦利·施密特。鲁道夫·卡尔曼在访问NASA埃姆斯研究中心时,将斯密特的方法应用于阿波罗计划的轨道预测,并于1960年,提出离散系统卡尔曼滤波,后又将该种方法推广到连续时间系统中。

正是由于卡尔曼滤波从时域分析处理数据,不仅可以处理平稳随机过程,也可以处理非平稳随机过程,所以被广泛应用于各种领域,例如惯性导航,定位系统,经济投资等。

卡尔曼滤波分类

常见的卡尔曼滤波主要分为离散型卡尔曼滤波和连续型卡尔曼滤波。

A.离散型卡尔曼滤波

递推算法的使用是卡尔曼滤波的一大优点,因此离散型卡尔曼滤波在工程上得到了广泛的运用。在一个滤波周期内,根据卡尔曼滤波对使用系统信息和量测信息的先后次序,可以将卡尔曼滤波划分为时间更新过程和量测更新过程,主要分为以下几个部分。

1.一步预测:根据k-1时刻的状态估计预测k时刻的状态,通过k-1个时刻的量测量对k时刻状态量进行线性最小方差估计。

014e3bcc-e053-11eb-9e57-12bb97331649.png

2.状态估计方程:通过利用残差(新息),对状态量进行修正估计

015a1af0-e053-11eb-9e57-12bb97331649.png

其中,0166d7c2-e053-11eb-9e57-12bb97331649.png是对残差的加权阵,被称为滤波增益阵。

3.滤波增益阵和估计均方误差阵的推导:最佳滤波增益阵使得估计的均方误差达到最小。

016f4380-e053-11eb-9e57-12bb97331649.png

其中,017c5c3c-e053-11eb-9e57-12bb97331649.png是最佳增益阵,01845b12-e053-11eb-9e57-12bb97331649.png是最小均方误差阵。

4.一步预测均方误差阵推导

018f1dcc-e053-11eb-9e57-12bb97331649.png

离散型卡尔曼滤波基本方程具有如下优点:

(1)递推算法的使用,使得数据的存储量减少,通过滤波步数的增加,提取出的信息量在增大。

(2)只须知道驱动噪声的统计特性,使得卡尔曼滤波能对非平稳的被估计量做估计。

B.连续型卡尔曼滤波

连续型卡尔曼滤波可以在离散型卡尔曼滤波的基础上进行推导,通过将连续系统离散化,应用离散型卡尔曼滤波基本方程和导数运算推导出连续型滤波方程。

设连续系统的系统方程和量测方程的一般形式为

01c94c4a-e053-11eb-9e57-12bb97331649.png

连续型卡尔曼滤波的预测和更新的一般方程为:

01d5619c-e053-11eb-9e57-12bb97331649.png

非线性系统卡尔曼滤波算法

A.扩展卡尔曼滤波

上述卡尔曼滤波问题都是假设物理系统的数学模型是线性的,但是线性模型只是理想化,实际工程中很多的模型都是非线性的。同时,在非线性系统中,如果系统噪声和观测噪声都是任意分布,那么系统的处理难度会更大。因此,一般会对噪声的统计特性给出符合实际而又便于数学处理的设定。非线性系统的数学模型如下

01f1203a-e053-11eb-9e57-12bb97331649.png

其中,w(t)和v(t)是彼此不相关的零均值白噪声序列,它们与初始状态X(0)也不相关。

针对扩展卡尔滤波,利用非线性函数的局部线性特性,将非线性模型局部线性化,通常是将非线性函数f围绕滤波值做一阶Taylor展开。

0205e86c-e053-11eb-9e57-12bb97331649.png

此外,将非线性函数h围绕滤波值做一阶Taylor展开。

02121efc-e053-11eb-9e57-12bb97331649.png

线性化后,对其运用线性卡尔曼滤波基本方程,便可获得扩展卡尔曼滤波递推方程。

B.无迹卡尔曼滤波

扩展卡尔曼滤波是对非线性的系统方程或者观测方程进行泰勒展开并保留一阶近似项,引入了线性化误差。无迹卡尔曼滤波摒弃了对非线性函数进行线性化的传统做法,采用卡尔曼线性滤波框架,对于一步预测方程,使用无迹变换来处理均值和协方差的非线性传递问题。

什么是无迹变换呢?在原状态分布中按照某一规则选取一些采样点,他们的均值和协方差等于原状态分布的均值和协方差;并将他们带入非线性函数,获取相应函数值的点集。对这些点求取变换后的均值和协方差。

针对无迹卡尔曼滤波,其非线性系统的描述

021d8044-e053-11eb-9e57-12bb97331649.png

根据上述无迹变换,对非线性系统进行变换处理。不同于在估计点处做Taylor级数展开,再进行n阶近似,而是在估计点附件进行无迹变换,使得Sigma点集的均值和协方差与原统计特性匹配,再对这些Sigma点集进行非线性映射,获得状态概率密度函数,实现一种统计近似。

C.交互式多模型卡尔曼滤波

针对前面几种卡尔曼滤波,不必知道目标的运动模型就能够实时修正目标的状态参量,具有较好的适应性,但是如果目标实施突然的运动变化时,基本的卡尔曼滤波就无法获取好的结果了。交互式多模型卡尔曼滤波是一种软切换算法,使用两个或者更多的模型描述工作过程中的状态,利于减小单模型估计误差较大的影响。

交互式多模型卡尔曼滤波的思想是在每一个时刻,假设某个模型在当下时刻有效,然后混合前一时刻所有滤波器的状态估计值,获取与这个特定模型匹配的滤波器的初始条件,然后对每个模型并行实施滤波,然后,以模型匹配似然函数为基础更新模型概率,并组合所有滤波器修正后的状态估计值以得到状态估计。

在使用该算法时,对于滤波器的目标运动模型的选择,需要从以下几个方面进行考虑。

1.滤波器个数的选择,包括较为精确的模型和较为粗糙的模型。

2.马尔科夫链状态转移概率的选取对滤波器的性能有较大影响,会直接影响模型误差和模型概率估计的准确性。

3.该算法具有模块化的特性,当使用的时候,无法预料目标的运动规律时,应该选择一般的鲁棒性较强的模型。

作者:凌霄

浙江大学机械电子专业博士,从事智能传感与人机交互,智能机器人控制等领域的研究

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 卡尔曼滤波
    +关注

    关注

    3

    文章

    162

    浏览量

    24635

原文标题:漫谈卡尔曼滤波

文章出处:【微信号:cetc49,微信公众号:传感技术】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    卡尔滤波器的特性及仿真

    我们前一篇关于人物识别跟踪的文章《视频连续目标跟踪实现的两种方法和示例(更新)》里讲到,视频图像中物体的识别和跟踪用到了卡尔滤波器(KF)。这里对这个话题我们稍微对这个卡尔
    的头像 发表于 11-04 11:36 207次阅读
    <b class='flag-5'>卡尔</b><b class='flag-5'>曼</b><b class='flag-5'>滤波</b>器的特性及仿真

    从算法角度看 SLAM(第 2 部分)

    ,分别是基于滤波器的 SLAM、基于图形的 SLAM 和基于深度学习的 SLAM。 基于滤波器的 SLAM 将 SLAM 视为状态估计问题。在这种 SLAM 中,通常使用扩展卡尔
    的头像 发表于 10-02 16:39 258次阅读
    从算法角度看 SLAM(第 2 部分)

    光谱的原理及其应用

    一、拉光谱的原理 拉光谱(Raman spectra)是一种散射光谱。 拉光谱分析法是基于印度科学家C.V.拉(Raman)所发现的拉
    的头像 发表于 08-26 06:22 271次阅读

    贝叶斯滤波卡尔滤波的区别

    贝叶斯滤波卡尔滤波是两种常用的滤波方法,它们在信号处理、导航、机器人定位等领域有着广泛的应用。 贝叶斯
    的头像 发表于 08-01 15:25 500次阅读

    卡尔滤波的优缺点有哪些

    卡尔滤波(Kalman Filter)是一种线性动态系统的状态估计算法,广泛应用于信号处理、导航、控制等领域。 卡尔
    的头像 发表于 08-01 15:24 1086次阅读

    卡尔滤波是什么 卡尔滤波与目标追踪技术分析

    卡尔滤波以及其扩展算法能够应用于目标状态估计,如果这个目标是行人,那么就是行人状态估计(或者说行人追踪),如果这个目标是自身,那么就是车辆自身的追踪(结合一些地图的先验,GPS等数据的话就是自身的定位)。
    的头像 发表于 04-29 09:46 821次阅读
    <b class='flag-5'>卡尔</b><b class='flag-5'>曼</b><b class='flag-5'>滤波</b>是什么 <b class='flag-5'>卡尔</b><b class='flag-5'>曼</b><b class='flag-5'>滤波</b>与目标追踪技术分析

    STM32F103RCT6使用HAL库通过I2C1读取MPU6050模块原始数据,卡尔滤波滞后很严重的原因?

    STM32F103RCT6使用HAL库通过I2C1读取MPU6050模块原始数据,卡尔滤波进行数据融合。卡尔
    发表于 04-22 06:11

    【先楫HPM5361EVK开发板试用体验】06-基于MPU9250的姿态解算

    的姿态信息,因此需要进行姿态解算以获取设备的准确姿态。姿态解算常用的方法有互补滤波卡尔滤波。 1、卡尔
    发表于 01-17 14:55

    卡尔滤波算法c语言实现方法

    卡尔滤波(Kalman Filter)是一种用于估计状态的算法,最初由R.E. Kalman在1960年提出。它是一种线性高斯滤波器,常用于处理包含误差噪声的动态系统。
    的头像 发表于 01-17 10:51 2664次阅读

    先进的拉光谱技术

    图1:药物乳液的共焦拉图像。油(绿色)、活性药物成分(蓝色)和硅杂质(红色)的化学分布如图所示 由于正常拉散射产生的信号非常小,研究人员发现了几种机制,通过提高拉散射的概率来对抗与拉
    的头像 发表于 01-15 06:35 331次阅读
    先进的拉<b class='flag-5'>曼</b>光谱技术

    卡尔滤波家族

    本文对于扩展卡尔滤波、无迹卡尔滤波仅仅做了一些简要介绍,不再想上次的文章那样做详细地推导了。
    的头像 发表于 01-14 14:29 858次阅读
    <b class='flag-5'>卡尔</b><b class='flag-5'>曼</b><b class='flag-5'>滤波</b>家族

    ADIS16448在卡尔滤波里的系统噪声参数是多少?

    大家好,最近我在使用ADIS16448做IMU和GPS的融合。IMU主要是完成卡尔滤波里预测的步骤,所以我需要为我的IMU设置系统噪声参数Q。然而在ADIS16448的参数表里,我似乎找不到相应
    发表于 12-28 08:04

    卡尔滤波算法的基本原理

    卡尔滤波(Kalman Filter)是一种递归的、自适应的滤波算法,广泛应用于估计系统状态和观测过程中的噪声。它最初在1960年被提出,被认为是控制理论和信号处理领域中最重要的发展
    的头像 发表于 12-07 18:26 1862次阅读
    <b class='flag-5'>卡尔</b><b class='flag-5'>曼</b><b class='flag-5'>滤波</b>算法的基本原理

    卡尔滤波五个公式

    卡尔滤波是一种估计和预测系统状态的方法,通过将测量数据和系统模型结合,实现对系统状态的最优估计。它在控制、通信、导航等领域具有广泛应用。 卡尔
    的头像 发表于 12-07 11:18 8660次阅读

    卡尔滤波的原理和C代码

    卡尔滤波(KalmanFilter)是一种递归的、自适应的滤波算法,广泛应用于估计系统状态和观测过程中的噪声。它最初在1960年被提出,被认为是控制理论和信号处理领域中最重要的发展之
    的头像 发表于 12-07 08:08 2915次阅读
    <b class='flag-5'>卡尔</b><b class='flag-5'>曼</b><b class='flag-5'>滤波</b>的原理和C代码