matlab傅里叶变换实例
怎样在MATLAB中做短时傅立叶变换?
怎样在MATLAB中做短时傅立叶变换?
Matlab自带短时傅立叶变换的分析功能,即谱图功能。使用方法有两种:1。[s,f,t,p] =声谱图(x,window,n overlap,nfft,fs) 2。[s,f,t,p] =声谱图(x,window,n overlap,f,fs)x-输入信号的矢量。窗口-窗口功能;n重叠-段落之间重叠的采样点的数量;Nfft -计算离散傅立叶变换的点数;Fs -采样频率Hz;F -在输入变量中使用f频率向量。假设语音信号存储在wave变量中,短时傅立叶变换的函数语句为[s,f,t,p] = spectrogram (wavmatlab短时傅里叶变换参数设置?
假设原始数据存储在(...)
那个 it ::
B=abs(fft(A))
情节(B)
但这个横坐标是从1到a的元素个数,没有意义。
要量化到采样频率:
假设采样率为fs,A有777个元素。
然后:
C=linspace(0,fs,778)记得加一个。
C(778)=[]去掉多余的一个。具体原因比较复杂。
然后绘制(C,B)
此时的横坐标:频率
纵坐标:振幅
但是fs/2-fs的截面实际上和前面的截面是对称的,可以忽略。
纵坐标是振幅。