今天我们不讲雷达,我们来讲讲协方差矩阵。为什么呢?因为如果我直接的去说超分辨估计的东西,放在一篇文章里面太长了,我自己写着都累,别人看着也累。同时协方差矩阵这个东西又比较基础,不仅雷达要用,其他各个工程领域也喜欢这个数学工具。所以今天我们就来把基础打好,学一学这个神奇又好玩的数学工具——协方差矩阵
一维数据的分析方法——方差
方差是在概率论和统计方差衡量随机变量或一组数据时离散程度的度量,样本方差的无偏估计公式为:
sigma = 1;
x = sigma .* randn(100000,1);
figure(1)
ksdensity(x);grid on;title('概率分布 sigma = 1')
方差能很好的解释了一维数据的分布特性,但是当我们开始分析二维数据的时候,完球了!
新问题——二维到N维数据
我们来构造一组二维数据:
x = 4.*randn(1,1000);
y = 1.*randn(1,1000);
D = [x;y];
plot(D(1,:),D(2,:),'.');
grid on;
axis equal;
我们构造的这组数据,一个是沿着X轴标准差为4和以及沿着Y轴标准差为1的数据,画图看到是这样的,但是这样子其实过于简单,大多数真实情况是比较复杂的,这种根本解决不了问题,为了增加点难度,我们引入了多元正态分布与线性变换的概念。
更真实的模拟——多元正态分布与线性变换
我们再搞点事情,用旋转矩阵把数据给他搅一下,实际上是我们在对原始数据做了一个变换
,矩阵
被称为
变换矩阵(transformation matrix),为了将图中的点经过线性变换得到我们想要的,我们需要构造这个矩阵
例如有尺度矩阵
或者旋转矩阵
其中
是旋转的度数,那么在这个例子中我们用旋转矩阵来折腾数据,随手写个旋转矩阵函数
function out =rotate_2D(thetad)
out =[cosd(thetad)-sind(thetad);sind(thetad)cosd(thetad)];
end
对原始数据进行旋转
N = 1000;
x = 4.*randn(1,N);
y = 1.*r