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

yipeiwu_com7年前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()

相关文章

Python 中 function(#) (X)格式 和 (#)在Python3.*中的注意事项

python 的语法定义和C++、matlab、java 还是很有区别的。 1. 括号与函数调用 def devided_3(x): return x/3. print(a)...

跟老齐学Python之数据类型总结

下面的表格中列出了已经学习过的数据类型,也是python的核心数据类型之一部分,这些都被称之为内置对象。 对象,就是你面对的所有东西都是对象,看官要逐渐熟悉这个称呼。所有的数据类型,就是...

Python+OpenCV实现实时眼动追踪的示例代码

Python+OpenCV实现实时眼动追踪的示例代码

使用Python+OpenCV实现实时眼动追踪,不需要高端硬件简单摄像头即可实现,效果图如下所示。   项目演示参见:https://www.bilibili.com/vide...

Python urllib模块urlopen()与urlretrieve()详解

1.urlopen()方法urllib.urlopen(url[, data[, proxies]]) :创建一个表示远程url的类文件对象,然后像本地文件一样操作这个类文件对象来获取远...

在python带权重的列表中随机取值的方法

1 random.choice python random模块的choice方法随机选择某个元素 foo = ['a', 'b', 'c', 'd', 'e'] from rando...