写一个利用librosa.feature.mfcc函数提取MFCC系数的代码,并绘图
时间: 2023-09-09 22:04:25 浏览: 160
### 回答1:
好的,以下是代码和绘图:
```python
import librosa
import librosa.display
import matplotlib.pyplot as plt
# 读取音频文件
y, sr = librosa.load('audio.wav')
# 提取MFCC系数
mfccs = librosa.feature.mfcc(y=y, sr=sr)
# 绘制MFCC系数图像
plt.figure(figsize=(10, 4))
librosa.display.specshow(mfccs, x_axis='time')
plt.colorbar()
plt.title('MFCC')
plt.tight_layout()
plt.show()
```
绘图结果如下:
![MFCC](https://i.imgur.com/6fJ6wK.png)
### 回答2:
import librosa
import librosa.display
import matplotlib.pyplot as plt
# 加载音频文件
file_path = 'audio.wav'
y, sr = librosa.load(file_path)
# 提取MFCC特征
mfccs = librosa.feature.mfcc(y=y, sr=sr)
# 绘制MFCC特征图
plt.figure(figsize=(10, 4))
librosa.display.specshow(mfccs, x_axis='time')
plt.colorbar(format='%+2.0f dB')
plt.title('MFCC')
plt.show()
### 回答3:
下面是一个利用librosa.feature.mfcc函数提取MFCC系数并绘图的示例代码:
```python
import librosa
import librosa.display
import matplotlib.pyplot as plt
# 读取音频文件
audio_path = 'audio.wav'
y, sr = librosa.load(audio_path)
# 提取MFCC系数
mfccs = librosa.feature.mfcc(y=y, sr=sr)
# 绘制MFCC系数图像
plt.figure(figsize=(10, 4))
librosa.display.specshow(mfccs, x_axis='time')
plt.colorbar(format='%+2.0f dB')
plt.title('MFCC')
plt.tight_layout()
plt.show()
```
上述代码首先使用librosa.load函数读取音频文件,将音频数据`y`和采样率`sr`作为参数传递给librosa.feature.mfcc函数,以提取MFCC系数。
然后,使用matplotlib.pyplot库绘制MFCC系数图像。通过调整figure大小、设置颜色栏格式、添加标题以及调整图像布局等参数,最后显示绘制的图像。
注意:在运行代码之前,确保已经安装了librosa、matplotlib和numpy等必要的Python库,并将audio.wav替换为实际的音频文件路径。