UKF中协方差矩阵的计算方法

UKF中协方差矩阵的计算方法

clear all;clc;close all;
x=[5;4;6];
y=[9;8;7];
%% 方差
var_x=var(x)            % maltab默认是无偏的(除以(n-1))
var0_x=var(x,0)         % 和上一个相同,也是无偏的
var1_x=var(x,1)         % 有偏的(除以(n))
%% 协方差
cov_xy=cov(x,y)         % maltab默认是无偏的(除以(n-1))
cov0_xy=cov(x,y,0)      % 和上一个相同,也是无偏的
cov1_xy=cov(x,y,1)      % 有偏的(除以(n))
%% 将向量合并成矩阵来计算协方差,和上一小节结果一样
XY=[x,y];
cov_XY=cov(XY)          % maltab默认是无偏的(除以(n-1))
cov0_XY=cov(XY,0)       % 和上一个相同,也是无偏的
cov1_XY=cov(XY,1)       % 有偏的(除以(n))
%% 通过矩阵计算协方差,和上两小节结果一样
n=size(XY,1)            % XY的行数
mean_XY=mean(XY,1)      % 每列的均值(2是每行的均值)
W1_no_bias=(1/(n-1)*eye(n))   % 所有权重相同,无偏(因为除以(n-1))
W1_bias=(1/(n)*eye(n))      % 所有权重相同,有偏(因为除以n)
mean_XY_bdct=mean_XY([1;1;1],:) % 广播broadcast,等效于 mean_XY_bdct=[1;1;1]*mean_XY
(XY-mean_XY_bdct)'*W1_no_bias*(XY-mean_XY_bdct) % 无偏(因为除以(n-1))
(XY-mean_XY_bdct)'*W1_bias*(XY-mean_XY_bdct) % 有偏(因为除以n)
%% 权重不同
W2=diag([0.2 0.3 0.5])  % 权重不同
(XY-mean_XY_bdct)'*W2*(XY-mean_XY_bdct)
%% 两个矩阵也不同了
x2=[2;4;6]
y2=[8;9;10]
X2Y2=[x2,y2]
mean_X2Y2=mean(X2Y2,1)
mean_X2Y2_bdct=mean_X2Y2([1;1;1],:)
(XY-mean_XY_bdct)'*W2*(X2Y2-mean_X2Y2_bdct) % 不对称

结果:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值