Detecting Discontinuities and Breakdown Points
动态系统(dynamic system)中的信号常常表现出瞬时(transient)急剧的变化,一般为幅度的突然跳跃或一阶导二阶导数值的尖锐变化。傅里叶分析通常无法检测出这种瞬时的变化,小波分析却可以检测和捕捉到信号在某一时刻的突变。
1. 频率跳变(frequency breakdown)
load freqbrk
x = freqbrk;
level = 1;
[c, l] = wavedec(x, level, 'haar');
d = detcoef(c, l, level);
subplot(1, 2, 1), plot(x)
subplot(1, 2, 2), plot(interpft(d, 2*length(d)))
2. 二阶导跳变(second derivation breakdown)
load scddvbrk
x = scddvbrk;
level = 2;
[c, l] = wavedec(x, level, 'db4');
[d1, d2] = detcoef(c, l, 1:level);
% 上采样;
d1up = dyadup(d1, 0);
d2up = dyadup(dyadup(d2, 0), 0);
subplot(131), plot(x), xlim([400, 600])
subplot(132), plot(d1up), xlim([400, 600])
subplot(133), plot(d2up), xlim([400, 600])