"matlab 做音频文件(WAV格式)的频谱图程序 以及做时域波形图的程序"2007-10-17 15:45 您还记得这个问题么?
Pyy=Y.*conj(Y)/sigLength;halflength=floor(sigLength/2);f=Fs*(0:halflength)/sigLength;...
Pyy = Y.* conj(Y) / sigLength;
halflength=floor(sigLength/2);
f=Fs*(0:halflength)/sigLength;
这段程序是什么意思啊,有点看不懂... 展开
halflength=floor(sigLength/2);
f=Fs*(0:halflength)/sigLength;
这段程序是什么意思啊,有点看不懂... 展开
2012-06-21
展开全部
朋友,年代太久远了。在工地搬砖的生活容易使人健忘。
做完fft变换的数值是不能直接画图的,因为那些都是向量。横坐标是频率,纵坐标是向量,那是没有办法画出来的。所以一般要画绝对值。abs(Y)。年轻的时候,我喜欢画功率谱:Y.* conj(Y)。两者会有点区别。
Pyy = Y.* conj(Y) / sigLength; 信号点乘它的共轭,求功率。除以信号长度,是为了归一化吗?什么叫做归一化?我老了。。。。
halflength=floor(sigLength/2); FFT以后是对称的,所以画图只要画一半就可以了。
f=Fs*(0:halflength)/sigLength; 采样频率是Fs,所以最后画出的频域图是从0赫兹-Fs赫兹。其实吧,这个信号从0-Fs/2一段,从Fs/2-Fs一段是对称的,所以画一般就行。因为只画半,所以只从最后横轴一半长度即可。
---------------------------------我是分割线-----------------------
请教傅立叶分析中pyy=Y.*conj(Y)/512;和NFFT = 2^nextpow2(L); 的意思y=........%一段受干扰的信号
Y=fft(y,512);
pyy=Y.*conj(Y)/512;
f=1000*(0:256)/512;
plot(f,pyy(1:257))
想知道
pyy=Y.*conj(Y)/512;
f=1000*(0:256)/512;
这两句话什么意思
另外看到MATLAB fft帮助里的傅立叶分析如下:
NFFT = 2^nextpow2(L);
Y = fft(y,NFFT)/L;
f = Fs/2*linspace(0,1,NFFT/2);
plot(f,2*abs(Y(1:NFFT/2)))
这二个方法有什么区别呀,nextpow2是什么意思呢?
我是初学者,自学的,还请各位高手请教~
有热心的高手能把每句话详细的解释下吗?
谢谢~
---------------------------你tm才是分割线--------------------------
NFFT = 2^nextpow2(L); % 取2的整数次幂
X = fft(x,NFFT)/L; % 求fft后的真实幅值
f = Fs/2*linspace(0,1,NFFT/2+1);
plot(f,2*abs(X(1:NFFT/2+1))) % 画单边频谱值
做完fft变换的数值是不能直接画图的,因为那些都是向量。横坐标是频率,纵坐标是向量,那是没有办法画出来的。所以一般要画绝对值。abs(Y)。年轻的时候,我喜欢画功率谱:Y.* conj(Y)。两者会有点区别。
Pyy = Y.* conj(Y) / sigLength; 信号点乘它的共轭,求功率。除以信号长度,是为了归一化吗?什么叫做归一化?我老了。。。。
halflength=floor(sigLength/2); FFT以后是对称的,所以画图只要画一半就可以了。
f=Fs*(0:halflength)/sigLength; 采样频率是Fs,所以最后画出的频域图是从0赫兹-Fs赫兹。其实吧,这个信号从0-Fs/2一段,从Fs/2-Fs一段是对称的,所以画一般就行。因为只画半,所以只从最后横轴一半长度即可。
---------------------------------我是分割线-----------------------
请教傅立叶分析中pyy=Y.*conj(Y)/512;和NFFT = 2^nextpow2(L); 的意思y=........%一段受干扰的信号
Y=fft(y,512);
pyy=Y.*conj(Y)/512;
f=1000*(0:256)/512;
plot(f,pyy(1:257))
想知道
pyy=Y.*conj(Y)/512;
f=1000*(0:256)/512;
这两句话什么意思
另外看到MATLAB fft帮助里的傅立叶分析如下:
NFFT = 2^nextpow2(L);
Y = fft(y,NFFT)/L;
f = Fs/2*linspace(0,1,NFFT/2);
plot(f,2*abs(Y(1:NFFT/2)))
这二个方法有什么区别呀,nextpow2是什么意思呢?
我是初学者,自学的,还请各位高手请教~
有热心的高手能把每句话详细的解释下吗?
谢谢~
---------------------------你tm才是分割线--------------------------
NFFT = 2^nextpow2(L); % 取2的整数次幂
X = fft(x,NFFT)/L; % 求fft后的真实幅值
f = Fs/2*linspace(0,1,NFFT/2+1);
plot(f,2*abs(X(1:NFFT/2+1))) % 画单边频谱值
参考资料: http://www.ilovematlab.cn/thread-51243-1-1.html
来自:求助得到的回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询