Python提取频域特征知识点浅析

yipeiwu_com6年前Python基础

在多数的现代语音识别系统中,人们都会用到频域特征。梅尔频率倒谱系数(MFCC),首先计算信号的功率谱,然后用滤波器和离散余弦变换的变换来提取特征。本文重点介绍如何提取MFCC特征。

首先创建有一个Python文件,并导入库文件:     from scipy.io import wavfile     from python_speech_features import mfcc, logfbank     import matplotlib.pylab as plt1、首先创建有一个Python文件,并导入库文件:     from scipy.io import wavfile     from python_speech_features import mfcc, logfbank     import matplotlib.pylab as plt

读取音频文件:

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

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

     mfcc_features = mfcc(audio, samplimg_freq)

     filterbank_features = logfbank(audio, samplimg_freq)

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

   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])

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

   mfcc_features = mfcc_features.T

   plt.matshow(mfcc_features)

   plt.title('MFCC')

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

   filterbank_features = filterbank_features.T

   plt.matshow(filterbank_features)

   plt.title('Filter bank')

   

   plt.show()

相关文章

PyQt5的PyQtGraph实践系列3之实时数据更新绘制图形

PyQt5的PyQtGraph实践系列3之实时数据更新绘制图形

在之前介绍PyQtGraph的文章中,我们都是一次性的获取数据并将其绘制为图形。然而在很多场景中,我们都需要对实时的数据进行图形化展示,比如:股票的实时行情、仪器设备的实时状态等,这时候...

python实现五子棋小程序

本文实例为大家分享了python实现五子棋小程序的具体代码,供大家参考,具体内容如下 一、结合书上例子,分三段编写: wuziqi.py #coding:utf-8 from wi...

深入了解Python iter() 方法的用法

今天我们来介绍下Python基础教程学习之iter() 方法另外的用法。据说很少有人知道这个用法! 一、上代码、学用法 我们都比较熟悉 iter(obj),会返现一个迭代器,如果 ob...

Python2.7版os.path.isdir中文路径返回false的解决方法

问题背景: 本来想写一个脚本来处理硬盘里的文件,并进行分类处理,但是发现一个问题,使用python内置os模块里的方法出现一些问题,具体的见示例。 主要使用的方法(python 2.7版...

基于Python列表解析(列表推导式)

列表解析——用来动态地创建列表 [expr for iter_var in iterable if cond_expr] 例子一: map(lambda x: x**2, ra...