为什么我做的频谱密度都是负值呢?
请教大家一个问题,我在计算能量谱密度的时候,为什么最后得出的都是负值?这样合理吗?=wavread('d:/audio/test48_double.wav');
siz=wavread('d:/audio/test48_double.wav','size');
w=audio_data';
s=w(,:);
N=1024;
h=hanning(N);
j=sqrt(-1);
S=s(1:N);
S=s(1:N);
for k=1:1:512
sum=0;
for m=1:1:N
tmp1=h(m)*S(m)*exp(-j*2*pi*k*m/N);
sum=tmp1+sum;
end
x(k)=(abs(sum/N))^2;
X(k)=10*log10(x(k));
end 什么意思,干嘛不用FFT 取了对数当然出现负数了 请问分贝为负数的含义是什么呢? 就是它的能量比较小,小于1喽,仅仅是数学概念上的问题 同意楼上 哦,原来是这样,谢谢了!
页:
[1]