1、嵌入式语音识别技术及应用综述张哲,110331038,控制工程(重庆邮电大学,自动化学院,400065)摘要:随着计算机处理能力的迅速提高,语音识别技术得到了飞速发展,其技术的应用正在日益改变着人类的生产和生活方式。本文介绍了语音识别的基本原理、方法,综述了语音识别系统的分类及语音识别技术的应用,分析了语音识别所面临的问题。在此基础上,设计了一个基于 ARM 和 DSP 芯片的语音识别子系统,用于嵌入式系统中的语音识别,该语音识别子系统由 ARM 和 DSP 芯片为核心,配合其他功能电路,能够独立完成语音识别的工作。关键字:语音识别;语音识别原理;嵌入式系统;应用;On the Speech
2、Recognition Technology and Its Application for Embedded SystemZHANG Zhe,S110331038(Chongqing University of Posts and Telecommunications,School of Automation)Abstract: With the rapid increase in computer processing capabilities, speech recognition technology has the rapid development of the applicati
3、on of its technology, which is increasingly changing peoples production and lifestyle. This article describes the basic principles of speech recognition methods, gives an overview of the classification of speech recognition systems and speech recognition technology, and analyses the problems faced b
4、y speech recognition. On those basis of speech recognition subsystem based on ARM and DSP chip, was designed for embedded systems. The subsystem can accomplish speech recognition independently.Key words: speech recognition; speech recognition principle; embedded systems; application引 言语音作为语言的声学体现,也是
5、人类进行信息交流最自然、和谐的手段。与机械设备进行语音的沟通,让机器可以明白人类在说什么并理解这是人类长期的梦想。语音识别是一门涉及面很广的交叉学科,它与声学、语音学、语言学、信息理论、模式识别理论以及神经生物学等学科都有非常密切的关系。通过语音信号处理和模式识别让机器自动识别和理解人类口述的语言。语音识别包括两种意义一种是把人类口述的语句逐句的进行翻译并转换为文字再一种就是对口述语言所包括的需求和询问做出合理的分析,而不是仅仅转换为书面文字。语音识别技术。也被称为自动语音识别Automatic Speech Recognition,(ASR),其目标是将人类的语音中的词汇内容转换为计算机可读
6、的输入,例如按键、二进制编码或者字符序列。与说话人识别及说话人确认不同,后者尝试识别或确认发出语音的说话人而非其中所包含的词汇内容。语音识别技术的应用包括语音拨号、语音导航、室内设备控制、语音文档检索、简单的听写数据录入等。语音识别技术与其他自然语言处理技术如机器翻译及语音合成技术相结合,可以构建出更加复杂的应用,例如语音到语音的翻译。语音识别技术所涉及的领域包括:信号处理、模式识别、概率论和信息论、发声机理和听觉机理、人工智能等等。语音识别技术正逐步成为计算机信息处理技术中的关键术语音技术的应用已经成为一个具有竞争性的新兴高技术产业。由于我国的汉语的基本特性(例如同音字比较多等),关于汉语的
7、语音识别技术开发的难度会比较大一些。和国外相比我国的语音识别技术研究起步比较晚,但发展速度比较快,研究的水平也在逐步的提高。国家在1987年开始执行863计划,就专门为语音识别技术研究专设了项目,从1991年,每两年举行一次全国性质的语音识别系统的测试。最有代表性的研究单位主要有清华大学的电子工程学、中科院的声学所、中科院自动化研究所和台湾的电脑与通讯工业研究所等已经取得了很大的成果,我国关于大词汇量的连续识别语音系统研究水平和国外相当接近了。一、 语音识别基础1、 语音识别的发展语音识别的研究从20世纪50年代AT&T贝尔实验室开发的10个英文数字的语音识别系统开始,到6O70年代,由于动态
8、规划和线性预测分析技术的提出,有效地解决了语音信号的特征提取和不等长匹配问题,实现了特定人小词汇量的孤立词的识别,语音识别研究得到快速发展,特别是提出了矢量量化和隐马尔可夫模型(Hidden Markov Models,HMM )理论,使得语音识别研究取得突破性进展。进入80年代,以HMM模型和人工神经元网络 (ANN)在语音识别技术上应用为代表的新技术不断出现,统计的语言模型开始取代基于规则的语言模型而成为主流,使得语音识别朝着大词汇量、连续语音和非特定人的语音识别方向深入,有效地解决了语音信号短时稳定、长时时变的非平稳特性,使语音序列建模方法、统计建模方法、词语之间关系的统计模型建立方法和
9、语法规则机制建立方法在连续语音识别中得到深度应用。进入20世纪90年代后,语音识别在细化模型的设计、参数提取和优化以及系统的自适应等方面取得一系列关键性的进展,特别是现代信号处理技术如时频分析、小波分析、模糊理论、混沌与分形理论、遗传算法和支持向量机等都正在应用于说话人识别技术上,使得语音识别技术进一步成熟,并开始向市场提供产。2、 语音识别的基本原理语音识别系统本质上是一种模式识别系统,它与人的认知过程一样,语音识别分为训练和识别两个过程。在训练阶段,语音识别系统对人类的语言进行学习,学习结束,把学习内容组成语音库存储起来。在识别阶段就可以把人们当前输入的语音在语音库中查找相应的词义或语义。
10、它包括特征提取、模式匹配、参考模式库等三个基本单元它的基本结构如图1所示:预处理特征提取模板匹配参考模型库识别训练后处理 结果语音输入图 1 语音识别系统的原理框图未知语音经过话筒变换成电信号后在识别系统的输入端,首先经过预处理再根据人的语音特点建立语音模型,对输入的语音信号进行分析,并抽取所需的特征,在此基础上建立语音识别所需的模板。而计算机在识别过程中要根据语音识别的模型。将计算机中存放的语音模板与输入的语音信号的特征进行比较根据一定的搜索和匹配策略,找出一系列最优的与输入语音匹配的模板。然后根据此模板的定义,通过查表就可以给出计算机的识别结果。显然,这种最优的结果与特征的选择、语音模型的
11、好坏、模板是否准确都有直接的关系。3、 语音识别的方法概述目前具有代表性的语音识别方法主要有动态时间规整技术(DTW)、隐马尔可夫模型(HMM)、矢量量化( VQ)、人工神经网络(ANN)、支持向量机(SVM )、独立分量分析(ICA )等方法。1)动动态时间规整算法(Dynamic Time Warping,DTW )是在非特定人语音识别中一种简单有效的方法该算法基于动态规划的思想,解决了发音长短不一的模板匹配问题,是语音识别技术中出现较早、较常用的一种算法。在应用DTW 算法进行语音识别时,就是将已经预处理和分帧过的语音测试信号和参考语音模板进行比较以获取他们之间的相似度,按照某种距离测度
12、得出两模板间的相似程度并选择最佳路径。其算法示意图如图2所示:D(x-1,y) d(x,y) D(x,y)图 算法示意图2)隐马尔可夫模型(HMM)是语音信号处理中的一种统计模型,是由Markov链演变来的,所以它是基于参数模型的统计识别方法。由于其模式库是通过反复训练形成的与训练输出信号吻合概率大的最佳模型参数而不是预先储存好的模式样本,且其识别过程中运用待识别语音序列与HMM参数之间的似然概率达到最大值所对应的最佳状态序列作为识别输出,因此是较理想的语音识别模型。目前大多数大词汇量、连续语音的非特定人语音识别系统都是基于HMM 模型。 HMM是对语音信号的时间序列结构具有学习能力的统计模型
13、,它是一个数学上双重随机过程:一个是马尔科夫链,这是基本的随机过程,它是通过隐含的状态转移来描述发音的变化;一个是引入了概率统计模型,不再用动态时间对齐的方法求匹配距离,而是用概率密度函数计算语音参数对HMM模型的输出概率,通过搜索最佳状态序列,以最大后验概率为准则找到识别结。HMM很好地描述了语音信号的整体非平稳性和局部平稳性,是较为理想的一种语音模。HMM 不需要时间规整,可节约判决时的计算时间和存储量,在目前被广泛应用。 3)矢量量化(Vector Quantization)是一种重要的信号压缩方法。与HMM相比,矢量量化主要适用于小词汇量、孤立词的语音识。其过程是将若干个语音信号波形或
14、特征参数的标量数据组成一个矢量在多维空间进行整体量化把矢量空间分成若干个小区域,每个小区域寻找一个代表矢量,量化时落入小区域的矢量就用这个代表矢量代替。矢量量化器的设计就是从大量信号样本中训练出好的码书,从实际效果出发寻找到好的失真测度定义公式,设计出最佳的矢量量化系统,用最少的搜索和计算失真的运算量实现最大可能的平均信噪比。在实际的应用过程中,人们还研究了多种降低复杂度的方法,包括元记忆的矢量量化、有记忆的矢量量化和模糊矢量量化方。4)人工神经网络(ANN)本质上是一个自适应非线性动力学系统,模拟了人类神经活动的原理,具有自适应性、并行性、鲁棒性、容错性和学习特性,其强大的分类能力和输入输出
15、映射能力在语音识别中都很有吸引力。其方法是模拟人脑思维机制的工程模型,它与HMM 正好相反,其分类决策能力和对不确定信息的描述能力得到举世公认,但它对动态时间信号的描述能力尚不尽如人意,通常MLP分类器只能解决静态模式分类问题,并不涉及时间序列的处理。尽管学者们提出了许多含反馈的结构,但它们仍不足以刻画诸如语音信号这种时间序列的动态特。由于ANN不能很好地描述语音信号的时间动态特性,所以常把ANN与传统识别方法结合,分别利用各自优点来进行语音识别而克服HMM和ANN各自的缺点。近年来结合神经网络和隐含马尔可夫模型的识别算法研究取得了显著进展,其识别率已经接近隐含马尔可夫模型的识别系统,进一步提
16、高了语音识别的鲁棒性和准确率。 5)支持向量机(Support vector machine)是应用统计学理论的一种新的学习机模型,它最初于20世纪90年代由Vapnik提出,近年来在其理论研究和算法实现方面都取得了突破性的进展,开始成为克服“维数灾难”和“过学习”等传统困难的有力手段。支持向量机同其他模式识别方法相比主要有两个不同点:一是它采用一个非线性核函数来表示特征空间的内积,另外一方面它采用分类间隔最大的最优分类超平面实现结构风险最小化原则。由于它具有良好的理论基础,所以在各个领域中得到广泛应用,使用支持向量机对说话人进行建模也在最近几年得到许多研究。在解决小样本、非线性及高维模式识别
17、方面有许多优越的性能,已经被广泛地应用到模式识别领域。 6)独立分量分析(ICA)是一种高阶统计量信号处理方法,是模式识别与信号处理等相关领域的一个重要的研究热点。基于独立分量分析的盲信号处理(BSP)理论及其在语音识别预处理中语音信号盲源分离(BSS)和语音增强等方面得到广泛的应用。研究对混合语音信号的盲分离虽然不能实现识别的目标,但通过该技术却能够使得原本混叠的语音信号相互剥离,使得噪声环境下和多说话人情况下的语音识别的实现成为可能。通过FastICA算法、信息最大化方法、最大似然估计算法以及基于统计学的四阶累积量方法,可以实现语音信号的盲分离而探讨语音的分离与消噪,使ICA的语音盲分离、
18、语音增强、语音识别三个阶段是一个不可分割的整体,分离是增强的基础,识别为预处理的目的。同时ICA在语音编码,特别是在混叠语音信号编码方面优势更好。总之,不论从混叠语音的盲分离,还是从语音增强效果,乃至系统识别率的提高等不同角度来看,独立分量分析都不失为一种有效的语音识别预处理方法。 二、 语音信号分析和特征提取 (一) 基于发音系统及其模型表征 1、 发音系统及其模型表征我们的发音过程就是由肺部进行收缩,并进行压缩气流由支气管通过声道和声门引起的音频振荡所发生的。发音过程正相关的声道各处的截面积在于舌、唇、领和小舌的位置。由于声道有三种不同的方式,所以也可以产生三种类型的声音;气流通过声门时使
19、得声带的张力刚好使声带发生比较低的频率的振荡,从而形成准周期性的空气脉冲,空气脉冲激励声道便会产生一些浊音;声道的某处面积比较小,气流冲过时便会产生湍流。会得到一种相似噪声的激励对应的则是摩擦音;声道完全闭合并建立起相应的气压,突然进行释放就是爆破音。2、 语音信号线性预测倒谱系数被广泛应用的特征参数提取技术的就是线性预测分析技术。很多成功的应用系统都是选用基于线性预测技术进而提取的LPC 倒谱系数作为应用系统的特征。LPC倒谱就是复倒谱。复倒谱就是信号通过进行 Z 变换以后再取其对数,求反 z 变换所得到的谱。线性预测分析方法其实就是一种谱的估计方法所以其声道模型系统函数 H(z)反映的就是
20、声道频率激励和信号的谱包络,对 IHg(z)作反 z 变换就可以得出其复倒谱系数。改复倒谱系数是依据线性预测模型直接获得的,所以又被称为LPC 倒谱系数 (LPCC)。对语言信号线性预测倒谱参数进行分析过程如下图 3 所示: 预处理计算自相关系数L P C 分析L P C 参数到倒谱参数参数加权倒谱差分系数语音输入L P C C 输出图 3 线性预测倒谱系数计算过程(二) 基于听觉模型的语音特征 1、 听觉系统模型由于听觉系统的复杂性和繁琐性。某些性能的模拟是不可以实现的,所以我们紧紧讨论听觉系统的关键特性。(1)人类的听觉系统对于声音频率高低和声波实际的频率高低不是线性的关系,它对不同声音频
21、率信号的敏感度是不一样的,也可以看成是对数关系。 (2)关于掩蔽效应指的就是声音A感知的闭值因为另外的身影的出现而出现增大的现象。其生理依据主要是频率群,对频率群进行划分会出现许多的很小的部分。每一个部分都会对应一个频率群,掩蔽效应就发生在这些部分过程。所以在进行相应的声学测量的时候,频率刻度一般取非线性刻度。语音识别方面。主要的非线性频率刻度有Mel刻度、对数刻度和Konenig 刻度。其中Mel刻度被广泛的应用,其是最合理的频率刻度。2、 语音信号Mel频率倒谱系数Mel频率倒谱系数利用人们耳朵的听觉特性,在频域将频率轴变换为Mel频率刻度,再变换到倒谱域得到倒谱系数。MFCC参数的计算过
22、程:预处理 F F T滤波器组能量输出语音输入离散余弦变换M F C C输出图4 Mel频率倒谱系数计算过程三、 语音识别的应用语音识别可以应用的领域大致分为大五类:办公室或商务系统。典型的应用包括:填写数据表格、数据库管理和控制、键盘功能增强等等。制造业。在质量控制中,语音识别系统可以为制造过程提供一种“不用手”、“不用眼”的检控(部件检查)。 电信。相当广泛的一类应用在拨号电话系统上都是可行的,包括话务员协助服务的自动化、国际国内远程电子商务、语音呼叫分配、语音拨号、分类订货。医疗。这方面的主要应用是由声音来生成和编辑专业的医疗报告。其他。包括由语音控制和操作的游戏和玩具、帮助残疾人的语音
23、识别系统、车辆行驶中一些非关键功能的语音控制,如车载交通路况控制系统、音响系统。鉴于多数的嵌入式设备都使用了ARM、DSP等高速芯片,我们提出了一种应用ARM芯片和DSP芯片为核心的语音识别通用模块,在嵌入式系统中作为一个子系统来单独完成语音识别和嵌入式系统之间通信的功能。系统由DSP芯片和ARM 芯片为核心,配合A/D,D/A电路,控制电路,接口电路和存储电路来实现语音识训练和识别过程。DSP是一种高速、低功耗的芯片,它采用先进的哈佛结构,具有分离的数据总线和程序总线;片内集成了RPM、RAM和多个外设,如通用I/O口、定时器、串行口、直接存储器存取控制器(DMA)和与外部处理器通信用的主机
24、接口(HPI )等。D XD RD X D S PD RE E P R O M R A MA R M键盘液晶用户系统E P R O MF L A S HU A R T话筒扬声器H P I图5 嵌入式语音识别通用模块硬件框图系统控制部分主要由DSP,ARM和键盘组成。系统的控制和识别阶段的工作由ARM完成,语音信号的特征提取和训练算法全部同DSP来完成。控制语音输入输出及与DSP通信的控制代码固化在EPROM中,采样的数据和变量存入RAM内。键盘则用来控制整个系统的工作状态选择,通过不同的按键来选择不同的功能。DSP与ARM的通信通过HPI方式完成,主机的通信则由ARM通过其异步串口UART来实
25、现,并操作LCD显示信息。语音训练的结果数据存储在FLASH中,控制DSP和ARM 工作的程序放在两片EPROM 中。语音识别系统工作原理:系统的工作分为语音训练和语音识别两个过程。在语音训练过程中,从话筒输入的语音信号经A/D变换,由DSP中控制算法进行训练,然后通知ARM,将分析后的结果保存在FLASH中。语音识别阶段是将输入的语音信号经由DSP进行处理后通知 ARM,ARM与存在FLASH中的参考样本进行对比,然后再由ARM通知用户系统。整个过程由ARM进行控制,DSP只进行运算,它们之间通过HPI接口进行通信和交换数据。四、 语音识别的关键技术和问题语音识别的关键技术包括特征参数提取技
26、术、模式匹配准则及模型训练技术、语音识别单元选取。尽管语音识别的研究己有半个世纪了,但现有的语音识别系统仍存在如下问题。(1)语音识别系统的适应性差,主要体现在对环境依赖性强,做不到不受特定人、口音或者方言的影响,这实际上也意味着对语言模型的进一步改进。因此要提高系统鲁棒性和自适应能力(2)噪声环境下语音识别进展困难,语音识别技术需要能排除各种环境因素的影响。目前,对语音识别效果影响最大的就是环境杂音或嗓音,个人能有意识地摒弃环境嗓音并从中获取自己所需要的特定声音。如何让语音识别技术也能达成这一点是一个艰巨的任务。因此必须寻找新的信号分析处理方法,包括语音特征提取、声学模型、语言模型等诸多方面
27、理论的突破(3)语言模型和声学模型的建立要有进一步的突破需把语音知识和语言知识结合起来,以高层知识作为建模和识别的引导,以适应不同人在不同时刻的语音识别(4)对人类的听觉理解、知识积累和学习机制以及大脑神经系统的控制机理等方面的认识还很不清楚(5)多语言混合识别以及无限词汇识别方面还存在很多问题没有技术细节需要解决,缺乏海量语音库和语料库,汉语的字词不分、灵活自由的语言表述、大量的同音字词都给汉语语言理解与处理以及语音识别带来了困难。将来的语音和声学模型可能会做到将多种语言混合纳入,用户因此就可以不必在语种之间来回切换。此外,对于声学模型的进一步改进,以及以语义学为基础的语言模型的改进,也能帮
28、助用户尽可能少或不受词汇的影响,从而可实行无限词汇识别。五、 结束语本文介绍了语音识别的基本原理、方法,综述了嵌入式语音识别系统的典型应用及语音识别技术的应用,分析了语音识别中的关键技术和所面临的主要问题。从语音识别所面临的问题来看,现在的语音识别系统要想广泛应用还要有很多需要改进的地方,无论是在语音识别的理论研究方面,还有在具体的模块技术应用方面,我们都还有很长的路要走。但是,可以预见,在不久的将来,随着语音识别技术的不断进步。语音识别系统的研究将会更加深入,语音识别系统的应用将更加广泛。各种各样的语音识别系统产品将出现在市场上。人们也将调整自己的说话方式以适应各种各样的识别系统。在短期内还
29、不可能造出具有和人相比拟的语音识别系统,要建成这样一个系统仍然是人类面临的一个大的挑战,我们只能朝着改进语音识别系统的方向一步步地前进。参考文献: 赵力语音信号处理M 北京:机械工业出版社,2003:1015 陈永彬语音信号处理M上海:上海交通大学出版社,1990 刘吆和。语音识别与控制应用技术M北京:科学出版社,2008 蔡莲红,等现代语音技术基础与应用M北京:清华大学出版社,2003 王田苗-嵌入式系统设计与实例开发 北京:清华大学出版社,2003 马忠梅,马广云 嵌入式处理器结构与应用基础北京:北京航空航天大学出版社,2002 Schliep A,Schnhuth A,Steinhof C Using Hidden Markov Models to Analyze Gene Expression Time Course DataJBioinformatics ,2003,19(1):255263 林坤辉,息晓静,周昌乐基于HMM与神经网络的声学模型研究J厦门大学学报:自然科学版,2006,45(1):44-46