我们知道声音实际上是一种波。
常见的mp3、wmv等格式都是压缩格式,必须转成非压缩的纯波形文件来处理,比如Windows PCM文件,也就是俗称的wav文件。wav文件里存储的除了一个文件头以外,就是声音波形的一个个点了。
下图是一个波形的示例。
我们知道声音实际上是一种波。
常见的mp3、wmv等格式都是压缩格式,必须转成非压缩的纯波形文件来处理,比如Windows PCM文件,也就是俗称的wav文件。wav文件里存储的除了一个文件头以外,就是声音波形的一个个点了。
下图是一个波形的示例。
语音是人类最自然的交互方式。
计算机发明之后,让机器能够“听懂”人类的语言,理解语言中的内在含义,并能做出正确的回答就成为了人们追求的目标。
我们都希望像科幻电影中那些智能先进的机器人助手一样,在与人进行语音交流时,让它听明白你在说什么。
语音识别技术将人类这一曾经的梦想变成了现实。
语音识别就好比“机器的听觉系统”,该技术让机器通过识别和理解,把语音信号转变为相应的文本或命令。
语音识别技术,也被称为自动语音识别Automatic Speech RecogniTIon,(ASR),其目标是将人类的语音中的词汇内容转换为计算机可读的输入,例如按键、二进制编码或者字符序列。
如果你知道神经机器翻译是如何工作的,那么你可能会猜到,我们可以简单地将声音送入神经网络中,并训练使之生成文本:
一个大问题是语速不同。
一个人可能很快地说出「hello!」而另一个人可能会非常缓慢地说「heeeelllllllllllllooooo!」。
这产生了一个更长的声音文件,也产生了更多的数据。
这两个声音文件都应该被识别为完全相同的文本「hello!」而事实证明,把各种长度的音频文件自动对齐到一个固定长度的文本是很难的一件事情。
为了解决这个问题,我们必须使用一些特殊的技巧,并进行一些深度神经网络以外的特殊处理。让我们看看它是如何工作的吧!
声音是模拟信号,声音的时域波形只代表声压随时间变化的关系,不能很好的代表声音的特征,因此,必须将声音波形转换为声学特征向量。
目前有许多声音特征提取方法,如梅尔频率倒谱系数MFCC、线性预测倒谱系数LPCC、多媒体内容描述接口MPEG7等,其中MFCC是基于倒谱的,更符合人的听觉原理,因而是最普遍、最有效的声音特征提取算法。
在提取MFCC前,需要对声音做前期处理,包括模数转换、预加重和加窗。
模数转换就是把模拟信号转换为数字信号,包括两个步骤:采样和量化,即以一定的采样率和采样位数把声音连续波形转换为离散的数据点。
由于日常生活中的声音一般都在8kHz以下,根据Nyquist定律,16kHz采样率足以使得采样出来的数据包含大多数声音信息。