Error using hilbert for envelope detection

7 ビュー (過去 30 日間)
Alexandra
Alexandra 2011 年 7 月 4 日
Hello,
I am now finalising my thesis and i have a problem with using Hilbert for envelope detection.
This is the way i am using it:
out(1,:)=filter(b1, a1, wavedata1);
out(2,:)=filter(b2, a2, wavedata1);
out(3,:)=filter(b3, a3, wavedata1);
out(4,:)=filter(b4, a4, wavedata1);
out(5,:)=filter(b5, a5, wavedata1);
out(6,:)=filter(b6, a6, wavedata1);
out(7,:)=filter(b7, a7, wavedata1);
out(8,:)=filter(b8, a8, wavedata1);
out(9,:)=filter(b9, a9, wavedata1);
out(10,:)=filter(b10, a10, wavedata1);
out(11,:)=filter(b11, a11, wavedata1);
out(12,:)=filter(b12, a12, wavedata1);
out(13,:)=filter(b13, a13, wavedata1);
for i=1:channel
envelope(i,:) = abs(hilbert(out(i, :)));
end
where a and b are the butter coefficients for each sub-band.
The error i get is:
??? Error using ==> hilbert Too many input arguments.
Error in ==> licenta_simulare1 at 261 envelope(i,:) = abs(hilbert(out(i, :)));
Unfortunately I have also tried the example in the help section and it is still not working, receiving the same error.
In the same time on another matlab 2010, but for linux it works perfectly. Can you please help me with advice and tell me how i can solve this problem?
Thanks you, Alexandra
  2 件のコメント
bym
bym 2011 年 7 月 4 日
Is this really your for loop?
for i=1:channel envelope(i,:) = abs(hilbert(out(i, :))); end
Please format your code using {} button
Kaustubha Govind
Kaustubha Govind 2011 年 7 月 5 日
What do you see when you execute "which hilbert" at your MATLAB prompt?

サインインしてコメントする。

回答 (1 件)

Daniel Shub
Daniel Shub 2011 年 7 月 5 日
have you redefined hilbert someplace in your code
which hilbert
should give something like
.../signal/signal/hilbert.m

カテゴリ

Help Center および File ExchangeHilbert and Walsh-Hadamard Transforms についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by