Python之提取频域特征

2025-10-13 11:44:33

1、首先创建有一个Python文件,并导入库文件:

     from scipy.io import wavfile

     from python_speech_features import mfcc, logfbank

     import matplotlib.pylab as plt

2、读取音频文件:

     samplimg_freq, audio = wavfile.read("data/input_freq.wav")

Python之提取频域特征

3、提取MFCC特征和过滤器特征:

     mfcc_features = mfcc(audio, samplimg_freq)

     filterbank_features = logfbank(audio, samplimg_freq)

Python之提取频域特征

Python之提取频域特征

4、打印参数,查看可生成多少个窗体:

     print('\nMFCC:\nNumber of windows =', mfcc_features.shape[0])

     print('Length of each feature =', mfcc_features.shape[1])

     print('\nFilter bank:\nNumber of windows=', filterbank_features.shape                                                                                                                 [0])

     print('Length of each feature =', filterbank_features.shape[1])

Python之提取频域特征

5、将MFCC特征可视化。转换矩阵,使得时域是水平的:

     mfcc_features = mfcc_features.T

     plt.matshow(mfcc_features)

     plt.title('MFCC')

Python之提取频域特征

6、将滤波器组特征可视化。转化矩阵,使得时域是水平的:

     filterbank_features = filterbank_features.T

     plt.matshow(filterbank_features)

     plt.title('Filter bank')

     

     plt.show()

Python之提取频域特征

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢