wavelet matlab plotting error

1 visualización (últimos 30 días)
carlo mars
carlo mars el 10 de Oct. de 2016
Comentada: Walter Roberson el 15 de Oct. de 2016
I have a simple signal x(t)=2*cos(2*pi*500*t); I use wavelet wavedec(x,9,'db4') ; when I plot "ap9 = [0- 9.76]Hz" I must found zero because my signal is 500 Hz ; but the first and last second dnot equal to zero; why?
clear all;clc;
t(1)=0; va(1)=0; vb(1)=0; vc(1)=0; x(1)=0;
for i=2:100000
t(i)=t(i-1)+1e-4; %fs=10000
x(i)=2*cos(2*pi*500*t(i));
end
%wavelet
fs=10000;
[c,l]=wavedec(x,9,'db4');
ap9=appcoef(c,l,'db4',9);
L=max(size(x));
sized=max(size(ap9));
Ts=1/10000;
timemax=Ts*L;
ta=linspace(0,timemax,sized);
figure(3)
plot(ta,abs(ap9))
  4 comentarios
carlo mars
carlo mars el 12 de Oct. de 2016
please help me
Walter Roberson
Walter Roberson el 13 de Oct. de 2016
I do not have enough experience with wavelets to know what you are encountering this problem.

Iniciar sesión para comentar.

Respuestas (1)

Rodney Tan
Rodney Tan el 12 de Oct. de 2016
Editada: Rodney Tan el 12 de Oct. de 2016
The spike appeared at the start and end is the wavelet boundary effect of any given signal. It is cause by zero padding that taken into account at the start and end of the signal where wavelet decomposition computation took place. This is because wavelet is effective to pick up any abrupt changes for a given signal. You need to mirror your signal by using padarray command, then perform your wavelet decomposition, this eliminate the boundary effect.
padarray example
signal = 1:10
mirrorpadsignal = padarray(signal,[0 3],'symmetric','both')
Please be inform your padding size may need to be long [0 10] or more depend on the type of mother wavelet you use.
Hope I answer your question.
  3 comentarios
carlo mars
carlo mars el 14 de Oct. de 2016
help me
Walter Roberson
Walter Roberson el 15 de Oct. de 2016
You could click on http://www.mathworks.com/matlabcentral/profile/contact/6664770-rodney-tan to send email to Rodney Tan to ask Rodney to return to the question.
I do not know nearly enough about wavelets to be able to answer the question. It would probably take me several days of studying, perhaps a couple of weeks of studying, to answer your question. That is not something I have the resources for.

Iniciar sesión para comentar.

Categorías

Más información sobre Discrete Multiresolution Analysis en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by