小波变换如何从信号中检测脉冲

信息处理 matlab 信号分析 小波
2022-02-01 12:05:08

我正在学习小波变换,下图是我使用 haar 小波分解简单的 haar 小波样信号的示例。

我知道每个级别的系数是信号和小波卷积的结果,大小代表它们之间的相似性。

我不确定小波变换如何检测脉冲。在 1 级,细节系数为零,而在 2 级有两个正脉冲。我不明白为什么我们在 1 级有恒定的零,因为信号类似于 haar 函数。在每个级别,每个信号的长度都减少了一半。为什么我们需要这种做法?

小波分解

1个回答

在第 1 级,离散 Haar 小波变换简化为 2 抽头离散导数,下采样系数为 2。这种下采样是小波位移方差和遗漏“脉冲”或不连续性的主要原因。例如,如果您的信号是:

[0,0,1,1,0,0,0,0]

两抽头导数将产生:

[0,1,0,1,0,0,0]

显然,检测到了不连续性。然而,在下采样 2 之后,得到:

[0,.,0,.,0,.,0]

脉冲不再明显(此处)。如果相同的信号移动了一个:

[0,1,1,0,0,0,0,0]
你会得到:
[1,.,1,.,0,.,0]
反而。

请注意,使用更长的小波滤波器和进一步的分解级别,脉冲将以某种方式以更高的幅度重新出现。

从这个观察中,您可以猜测离散小波不直接检测脉冲,但需要在几个细节级别上进行一些处理和统计选择。使用连续小波变换,脉冲检测通常更容易。