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])
posted on 2017-02-22 12:44  未雨愁眸  阅读(500)  评论(0编辑  收藏  举报