Создайте сигнал, состоящий из экспоненциально взвешенных синусоид. Сигнал имеет две 25-Hz компоненты - одна с центром 0,2 секунды и одна с центром 0,5 секунды. Он также имеет два компонента 70-Hz - один с центром 0,2 и один с центром 0,8 секунды. Первые 25-Hz и 70-Hz компоненты совместно происходят во времени.
t = 0:1/2000:1-1/2000; dt = 1/2000; x1 = sin(50*pi*t).*exp(-50*pi*(t-0.2).^2); x2 = sin(50*pi*t).*exp(-100*pi*(t-0.5).^2); x3 = 2*cos(140*pi*t).*exp(-50*pi*(t-0.2).^2); x4 = 2*sin(140*pi*t).*exp(-80*pi*(t-0.8).^2); x = x1+x2+x3+x4; plot(t,x) grid on; title('Superimposed Signal')
Получите и отобразите CWT.
cwt(x,2000);
title('Analytic CWT using Default Morse Wavelet');
Удалите компонент 25 Гц, который происходит от приблизительно 0,07 до 0,3 секунд путем обнуления коэффициентов CWT. Используйте обратный CWT (icwt
) для восстановления приближения к сигналу.
[cfs,f] = cwt(x,2000); T1 = .07; T2 = .33; F1 = 19; F2 = 34; cfs(f > F1 & f < F2, t> T1 & t < T2) = 0; xrec = icwt(cfs);
Отображение CWT восстановленного сигнала. Компонент начального 25-Hz удаляется.
cwt(xrec,2000)
Постройте график исходного сигнала и реконструкции.
subplot(2,1,1); plot(t,x); grid on; title('Original Signal'); subplot(2,1,2); plot(t,xrec) grid on; title('Signal with first 25-Hz component removed');
Сравните восстановленный сигнал с исходным сигналом без компонента 25-Hz с центром в 0,2 секунды.
y = x2+x3+x4; figure; plot(t,xrec) hold on plot(t,y,'r--') grid on; legend('Inverse CWT approximation','Original Signal Without 25-Hz'); hold off