⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 新建 文本文档.txt

📁 FFT频率提取的MATLAB实现
💻 TXT
字号:
文件头:
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

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -