将音频信号转换为 MFCC 图像并保存为 PNG 格式
import os import librosa import librosa.display import numpy as np import matplotlib.pyplot as plt
定义函数将音频信号转化为MFCC图像并保存为png格式
def audio_to_mfcc(audio_path, save_path): # 读取音频文件 y, sr = librosa.load(audio_path, sr=None) # 计算MFCC系数 mfcc = librosa.feature.mfcc(y=y, sr=sr) # 绘制MFCC图像 plt.figure(figsize=(10, 4)) librosa.display.specshow(mfcc, x_axis='time') plt.colorbar() plt.title('MFCC') # 保存MFCC图像为png格式 save_name = os.path.splitext(os.path.basename(audio_path))[0] + '.png' save_path = os.path.join(save_path, os.path.dirname(os.path.relpath(audio_path, start=data_path))) if not os.path.exists(save_path): os.makedirs(save_path) plt.savefig(os.path.join(save_path, save_name)) plt.close()
设置数据集路径和MFCC图像保存路径
data_path = 'D:/论文代码/casia汉语情感语料库/' save_path = 'D:/论文代码/MFCC/'
遍历数据集中的所有音频文件,并转化为MFCC图像
for root, dirs, files in os.walk(data_path): for file in files: if file.endswith('.wav'): audio_path = os.path.join(root, file) audio_to_mfcc(audio_path, save_path) print('Convert audio to MFCC:', audio_path)
原文地址: https://www.cveoy.top/t/topic/nJbQ 著作权归作者所有。请勿转载和采集!