文件头:
load woke.txt;
l_s=length(woke);
n=ceil(l_s/2);
for i=1:l_s
t1(i)=woke(i,1);
f1(i)=woke(i,2);
end
%自己设置采样频率(这里认为500)
Fs=500;
subplot(2,1,1);
plot(t1,f1);
ylabel('原始图');
ps=fft(f1,l_s);
%!取幅值大小
%Re = real(ps);
%Im = imag(ps);
%for ( i= 1:1:2048 )
% Re2(i) = Re(i) * Re(i);
% Im2(i) = Im(i) * Im(i);
% A(i) = 8*sqrt( Re2(i) + Im2(i) ) /2048;
%end
A=2*abs(ps)/l_s;
A(1)=A(1)/2;
%!画出频域图
tt=Fs*(0:n-1)/l_s;
subplot(2,1,2);plot(tt,A(1:n));
ylabel('频谱图');
%可以将tt和A的数据保存,他们就是频谱分析的结果,分别是频率和幅值
clear all
clc
clf
[m,fs,nbits] =wavread('overview.WAV');%导入语音信号 'overview.WAV'是语音信号
y1=fftshift(fft(m,m_number));%m为时域信号,m_number为m 的采样点数,此公式即为fft变换
sss=1:m_number;
plot((sss-m_number/2)/m_number*8000,abs(y1)) %显示变换后的图形 (sss-m_number/2)/m_number*8000
评论1