主要内容

多元小波去噪

本示例的目的是展示小波工具箱™中提供的多元去噪特性。

多变量小波去噪问题处理的模型的形式

X t F t + e t

在观察Xp维,F确定性信号是否被恢复,以及e是一个与空间相关的噪声信号。这个例子使用了一些噪声信号,并执行以下步骤去噪确定性信号。

加载多变量信号

要加载多变量信号,在MATLAB®提示符下输入以下代码:

负载ex4mwden
名称大小字节类属性covar 4x4 128 double x 1024x4 32768 double x_orig 1024x4 32768 double

通常,只有矩阵的数据x是可用的。这里,我们还有真噪声协方差矩阵柯伐合金原始信号x_orig.这些信号是两个原始信号简单组合的噪声版本。第一个信号是“Blocks”,它是不规则的,第二个信号是“heavyysine”,它是规则的,除了时间750左右。另外两个信号分别是两个原始信号的和和差。在得到的四个信号中加入表现出强空间相关性的多变量高斯白噪声,产生了存储的观测数据x

显示原始信号和观测信号

显示原始信号和观测信号,类型:

kp = 0;I = 1:4 subplot(4,2,kp+1), plot(x_orig(:, I));轴;标题([原始信号的num2str(我)])次要情节(4,2,kp + 2),图(x (:, i));轴;标题([观测到的信号的KP = KP + 2;结束

图中包含8个轴对象。原始信号1包含一个类型为line的对象。标题为“观察信号1”的轴对象2包含一个类型为line的对象。标题为“原始信号2”的轴对象3包含一个类型为line的对象。标题为“观察信号2”的轴对象4包含一个类型为line的对象。标题为“原始信号3”的轴对象5包含一个类型为line的对象。标题为“观察信号3”的轴对象6包含一个类型为line的对象。标题为“原始信号4”的轴对象7包含一个类型为line的对象。标题为“观察信号4”的轴对象8包含一个类型为line的对象。

真实噪声协方差矩阵为:

柯伐合金
柯伐合金=4×41.0000 0.8000 0.6000 0.7000 0.8000 1.0000 0.5000 0.6000 0.6000 0.5000 1.0000 0.7000 0.7000 0.6000 0.7000 1.0000

用简单的多元阈值去除噪声

该去噪策略以单变量小波去噪为基础,噪声协方差矩阵估计为对角,在小波域近似上采用非中心主成分分析(PCA)或最终主成分分析。

首先,通过输入以下行进行单变量去噪,设置去噪参数:

水平= 5;wname =“sym4”;tptr =“sqtwolog”;sorh =“年代”

然后,保留所有主成分,设置主成分参数:

npc_app = 4;npc_fin = 4;

最后,通过输入进行多元去噪:

X_den = wmulden(x, level, wname, npc_app, npc_fin, tptr, sorh);

显示原始信号和去噪信号

要显示原始信号和去噪信号类型如下:

CLF KP = 0;I = 1:4 subplot(4,3,kp+1), plot(x_orig(:, I));轴;标题([原始信号的num2str(我)])次要情节(4 3,kp + 2),图(x (:, i));轴;标题([观测到的信号的num2str(我)])次要情节(4 3 kp + 3),情节(x_den(:,我));轴;标题([的去噪信号,num2str(i)]) KP = KP + 3;结束

图中包含12个轴对象。原始信号1包含一个类型为line的对象。标题为“观察信号1”的轴对象2包含一个类型为line的对象。标题为去噪信号1的轴对象3包含一个类型为line的对象。标题为“原始信号2”的轴对象4包含一个类型为line的对象。标题为“观察信号2”的轴对象5包含一个类型为line的对象。标题为“去噪信号2”的轴对象6包含一个类型为line的对象。标题为Original signal 3的轴对象7包含一个类型为line的对象。标题为“观察信号3”的轴对象8包含一个类型为line的对象。标题为去噪信号3的轴对象9包含一个类型为line的对象。 Axes object 10 with title Original signal 4 contains an object of type line. Axes object 11 with title Observed signal 4 contains an object of type line. Axes object 12 with title Denoised signal 4 contains an object of type line.

通过保留更少的主成分来改进第一个结果

我们可以看到,总的来说,结果是令人满意的。专注于第一个信号,注意它们是正确的恢复,但我们可以通过利用信号之间的关系来改善结果,导致额外的去噪效果。

使用保留特征值大于所有特征值均值的特征值的Kaiser规则自动选择保留主分量的个数,类型:

npc_app =“凯”;npc_fin =“凯”

再次执行多元去噪,输入:

[x_den, npc, nestco] = wmulden(x, level, wname, npc_app,)...npc_fin、tptr sorh);

显示主组件保留个数

第二个输出参数全国人大是保留主成分的数量,用于近似和最终的主成分。

全国人大
人大=1×22 - 2

正如预期的那样,由于信号是两个原始信号的组合,Kaiser规则自动检测到只有两个主分量是感兴趣的。

显示估计的噪声协方差矩阵

第三个输出参数nestco包含估计的噪声协方差矩阵:

nestco
nestco =4×41.0784 0.8333 0.6878 0.8141 0.8333 1.0025 0.5275 0.6814 0.6878 0.5275 1.0501 0.7734 0.8141 0.6814 0.7734 1.0967

通过与前面给出的真矩阵协方差比较,可以看出估计是满意的。

显示原始和最终去噪信号

显示原始和最终去噪信号类型:

kp = 0;I = 1:4 subplot(4,3,kp+1), plot(x_orig(:, I));轴;标题([原始信号的num2str(我)])次要情节(4 3,kp + 2),图(x (:, i));轴;标题([观测到的信号的num2str(我)])次要情节(4 3 kp + 3),情节(x_den(:,我));轴;标题([的去噪信号,num2str(i)]) KP = KP + 3;结束

图中包含12个轴对象。原始信号1包含一个类型为line的对象。标题为“观察信号1”的轴对象2包含一个类型为line的对象。标题为去噪信号1的轴对象3包含一个类型为line的对象。标题为“原始信号2”的轴对象4包含一个类型为line的对象。标题为“观察信号2”的轴对象5包含一个类型为line的对象。标题为“去噪信号2”的轴对象6包含一个类型为line的对象。标题为Original signal 3的轴对象7包含一个类型为line的对象。标题为“观察信号3”的轴对象8包含一个类型为line的对象。标题为去噪信号3的轴对象9包含一个类型为line的对象。 Axes object 10 with title Original signal 4 contains an object of type line. Axes object 11 with title Observed signal 4 contains an object of type line. Axes object 12 with title Denoised signal 4 contains an object of type line.

这些结果比以前得到的结果要好。第一个信号是不规则的,经过第二阶段PCA处理后仍然可以正确地恢复,而第二个信号是更规则的,去噪效果更好。

学习更多关于多元去噪的知识

你可以找到更多关于多元去噪的信息,包括一些理论,模拟和真实的例子,在以下参考:

M. Aminghafari, N. Cheze和J-M。陈志强(2006),“基于小波和主成分分析的多变量去噪”,《计算统计与数据分析》,50,页2381-2398。