matlab读取声信号后转化为频域显示代码
时间: 2024-01-10 11:03:26 浏览: 60
matlab实现读取声音并进行频谱显示
4星 · 用户满意度95%
以下是一个简单的 MATLAB 代码示例,用于读取声音信号并将其转换为频域表示:
```matlab
% 读取声音文件
[sound, Fs] = audioread('soundfile.wav');
% 计算音频信号的FFT
N = length(sound);
Y = fft(sound);
P2 = abs(Y/N);
P1 = P2(1:N/2+1);
P1(2:end-1) = 2*P1(2:end-1);
f = Fs*(0:(N/2))/N;
% 绘制频域图
plot(f, P1)
title('单边幅值谱')
xlabel('频率 (Hz)')
ylabel('幅值')
```
这段代码将声音信号读取到变量 `sound` 中,并使用 `fft` 函数将其转换为频域表示。然后,计算幅值谱,并将其绘制出来。要使用此代码,请将其保存到 MATLAB 脚本文件中,然后将声音文件的路径替换为 `audioread` 函数中的正确路径。
阅读全文