Matlab 将音频信号划分为巴克频带

Matlab 将音频信号划分为巴克频带,matlab,signal-processing,fft,spectrum,audio-fingerprinting,Matlab,Signal Processing,Fft,Spectrum,Audio Fingerprinting,我想在matlab中应用以下步骤 1读取音频数据 2对该数据应用窗口功能 3对窗函数的结果应用fft 4制作fft的功率谱 5将功率谱划分为巴克带 [y,Fs,bits] = wavread('file1.wav'); Nsamps = length(y); ham= hamming(Nsamps); ham_fft = abs(fft(ham)); ham_fft = ham_fft(1:Nsamps/2); %Discard Half of Points plot(f, ham_f

我想在matlab中应用以下步骤

1读取音频数据

2对该数据应用窗口功能

3对窗函数的结果应用fft

4制作fft的功率谱

5将功率谱划分为巴克带

[y,Fs,bits] = wavread('file1.wav');
Nsamps = length(y);
ham= hamming(Nsamps);
ham_fft = abs(fft(ham));
ham_fft = ham_fft(1:Nsamps/2);      %Discard Half of Points
plot(f, ham_fft,f1)
xlim([0 1000])  
xlabel('Frequency (Hz)')
ylabel('Amplitude')
title('FFT of Hamming Window of  a an audio');

我没有得到正确的波形,想画出频谱,然后分成巴克带。

您似乎没有对音频数据应用窗口功能