Создайте сигнал, состоящий из экспоненциально взвешенных синусоид. Сигнал имеет два компонента на 25 Гц - один сосредоточенный в 0,2 секунды и один сосредоточенный в 0,5 секунды. Это также имеет два компонента на 70 Гц - один сосредоточенный в 0,2 и один сосредоточенный в 0,8 секунды. Первые компоненты на 70 Гц и на 25 Гц co-occur вовремя.
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 Гц удален.
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 Гц, сосредоточенного в 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