请不要使用matlab 中的deltas函数读取音频文件,请使用其他方法提取
时间: 2023-06-27 10:04:16 浏览: 105
matlab 读取音频
好的,以下是一种常用的方法来读取音频文件并提取MFCC特征:
1. 使用Python中的librosa库来读取音频文件:
```
import librosa
y, sr = librosa.load('audio.wav', sr=16000) # sr指定采样率
```
这样就可以读取音频文件并将其采样率设置为16000。
2. 对音频信号进行预处理:
```
# 预加重
pre_emphasis = 0.97
emphasized_signal = numpy.append(signal[0], signal[1:] - pre_emphasis * signal[:-1])
```
3. 使用短时傅里叶变换(STFT)将音频信号转换为频谱图:
```
n_fft = 512
hop_length = 160
stft = librosa.stft(emphasized_signal, n_fft=n_fft, hop_length=hop_length)
spectrogram = numpy.abs(stft)
```
4. 将频谱图转换为梅尔频率倒谱系数(MFCC)特征:
```
n_mfcc = 13
mfcc = librosa.feature.mfcc(S=librosa.power_to_db(spectrogram), n_mfcc=n_mfcc)
```
这样就可以得到一个13维的MFCC特征向量,可以用于语音识别或者其他音频处理任务。
阅读全文