首页|嵌入式系统|显示技术|模拟IC/电源|元件与制造|其他IC/制程|消费类电子|无线/通信|汽车电子|工业控制|医疗电子|测试测量
首页 > 分享下载 > 消费类电子 > 卡尔曼滤波简介+ 算法实现代码 (珍藏)

卡尔曼滤波简介+ 算法实现代码 (珍藏)

资料介绍
卡尔曼滤波简介+ 算法实现代码
卡尔曼滤波简介+ 算法实现代码  
最佳线性滤波理论起源于40年代美国科学家Wiener和前苏联科学家Kолмогоров等人的
研究工作,后人统称为维纳滤波理论。从理论上说,维纳滤波的最大缺点是必须用到无
限过去的数据,不适用于实时处理。为了克服这一缺点,60年代Kalman把状态空间模型
引入滤波理论,并导出了一套递推估计算法,后人称之为卡尔曼滤波理论。卡尔曼滤波
是以最小均方误差为估计的最佳准则,来寻求一套递推估计的算法,其基本思想是:采
用信号与噪声的状态空间模型,利用前一时刻地估计值和现时刻的观测值来更新对状态
变量的估计,求出现时刻的估计值。它适合于实时处理和计算机运算。

现设线性时变系统的离散状态防城和观测方程为:


X(k) = F(k,k-1)·X(k-1)+T(k,k-1)·U(k-1)


Y(k) = H(k)·X(k)+N(k)


其中


X(k)和Y(k)分别是k时刻的状态矢量和观测矢量


F(k,k-1)为状态转移矩阵


U(k)为k时刻动态噪声


T(k,k-1)为系统控制矩阵


H(k)为k时刻观测矩阵


N(k)为k时刻观测噪声


则卡尔曼滤波的算法流程为:




1. 预估计X(k)^= F(k,k-1)·X(k-1) 
2. 计算预估计协方差矩阵
C(k)^=F(k,k-1)×C(k)×F(k,k-1)'+T(k,k-1)×Q(k)×T(k,k-1)'
Q(k) = U(k)×U(k)' 
3. 计算卡尔曼增益矩阵
K(k) = C(k)^×H(k)'×[H(k)×C(k)^×H(k)'+R(k)]^(-1)
R(k) = N(k)×N(k)' 
4. 更新估计
X(k)~=X(k)^+K(k)×[Y(k)-H(k)×X(k)
标签:卡尔曼滤波简算法实现代码
卡尔曼滤波简介+ 算法实现代码 (珍藏)
本地下载

评论