Index exceeds matrix dimensions at buffer function
Mostra commenti meno recenti
Here is what i'm gona trying to do :
- I read a .wav file called tes.wav stored in y
- I try performing 3-level Haar Wavelet Transform on it
- I try to framing the D3 (detail subband level 3)
So i have this following code :
f=wavread('tes.wav','native');
v=[1/sqrt(2) 1/sqrt(2)];
w=[1/sqrt(2) -1/sqrt(2)];
if mod(length(f),2)~=0
f=[f 0];
end
d=length(f);
m=1:d/2;
a1=f(2*m-1).*v(1) + f(2*m).*v(2);
d1=f(2*m-1).*w(1) + f(2*m).*w(2);
d=length(a1);
m=1:d/2;
a2=a1(2*m-1).*v(1) + a1(2*m).*v(2);
d2=d1(2*m-1).*w(1) + a1(2*m).*w(2);
d=length(a2);
m=1:d/2;
a3=a2(2*m-1).*v(1) + a2(2*m).*v(2);
d3=d2(2*m-1).*w(1) + a2(2*m).*w(2);
x=d3(1:length(d3),1);
frame=buffer(x,10);
But i Keep getting error message like this :
??? Index exceeds matrix dimensions.
Error in ==> Project at 32 x=d3(1:length(d3),1);
Risposta accettata
Più risposte (1)
Shashank Prasanna
il 27 Feb 2013
Modificato: Shashank Prasanna
il 27 Feb 2013
>> clear
and start fresh, There could be a conflict in the name of the variable vs name of the function
2 Commenti
Sean de Wolski
il 27 Feb 2013
Yeah; looks like length() was shadowed.
which -all length
I Made
il 28 Feb 2013
Categorie
Scopri di più su Discrete Multiresolution Analysis in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!