Remove Time-Localized Frequency Components
Create a signal consisting of exponentially weighted sine waves. The signal has two 25-Hz components -- one centered at 0.2 seconds and one centered at 0.5 seconds. It also has two 70-Hz components -- one centered at 0.2 and one centered at 0.8 seconds. The first 25-Hz and 70-Hz components co-occur in time.
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')
Obtain and display the CWT.
cwt(x,2000);
title('Analytic CWT using Default Morse Wavelet');
Remove the 25 Hz component which occurs from approximately 0.07 to 0.3 seconds by zeroing out the CWT coefficients. Use the inverse CWT (icwt
) to reconstruct an approximation to the signal.
[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);
Display the CWT of the reconstructed signal. The initial 25-Hz component is removed.
cwt(xrec,2000)
Plot the original signal and the reconstruction.
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');
Compare the reconstructed signal with the original signal without the 25-Hz component centered at 0.2 seconds.
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