语音识别在家电遥控器中的应用
摘要:介绍一种适合家电遥控器应用的语音识别算法,该算法使用双模块和两级端点检测方法,能有效地提高识别和稳健性;介绍利用该技术实现的一种新型学习型遥控器,展现了语音识别技术在家电领域的广阔前景。
关键词:语音识别 DTW FED FRED 学习型遥控器
家用电器发展的一个重要方面是让用户界面更加人性化,更加方便自然,做到老年人和残疾人可以无障碍地使用。利用语音识别技术实现语音控制是提高家电产品用户界面质量的一条重要途径。本文以语音控制遥控器为例,说明语音识别技术如何应用在家电器领域。
适合家用电器应用的语音识别嵌入式系统结构如图1所示,它由四个部分组成。第一部分为模/数转换部分,其输入端接收输入的语音信号,并将其转化成数字芯片可处理的数字采集信号;在输出端将解码后的语音数字信号转换为音频模拟信号,通过扬声器放声。第二部分为语音识别部分,它的作用是对输入的数字语音词条信号进行分析,识别出词条信号所代表的命令,一般由DSP完成。第三部分语音提示和语音回放部分,它一般也是在DSP中完成的,其核心是对语音信号进行数字压缩编码和解码,目的是提示用户操作并对识别语音的响应,完成人机的语音交互。第四部分是系统控制部分,它将语音识别结果转换成相应的控制信号,并将其输出转换成物理层操作,完成具体功能。语音识别与系统控制的有机结合是完成声控交互的关键,下面将对语音识别算法及遥控系统控制部分作详细的讨论。
javascript:window.open(this.src);" style="cursor:pointer;"/>
1 语音识别算法
目前,常以单片机(MCU)或DSP作炎硬件平台的实现消费类电子产品中的语音识别。这类语音识别主要为孤立词识别,它有两种实现方案:一种是基于隐含马尔科夫统计模型(HMM)框架的非特定人识别;另一种是基于动态规划(DP)原理的特定人识别。它们在应用上各有优缺点。HMM非特定人员的优点是用户无需经过训练,可以直接使用;并且具良好的稳定性(即对使用者而言,语音识别性能不会随着时间的延长而降低)。但非特定人语音识别也有其很难克服的缺陷。首先,使用该方法需要预先采集大量的语料库,以便训练出相应的识别模型,这就大大提高了应用此技术的前期成本;其次,非特定人语音识别很难解决汉语中不同方言的问题,限制了它的使用区域;另外还有一个因素也应予以考虑,家电中用于控制的具体命令词语最好不要完全固定,应当根据的用户的习惯而改变,这一点在非特定人识别中几乎不可能实现。因此大多数家电遥控器不适合采用此方案。DP特定人识别的优点是方法简单,对硬件资源要求较低;此外,这一方法中的训练过程也很简单,不需预先采集过多的样本,不仅降低了前期成本,而且可以根据用户习惯,由用户任意定义控制项目的具体命令语句,因而适合大多数家电遥控器的应用。DP特定识别的严重缺点是它的稳健性不理想,对有些人的语音识别率高,有的人识别率却不高;刚训练完时识别率较高,但随着时间的推迟而识别率降低。些缺点往往给用户带来不便。为克服这些缺陷,对传统方法作为改进,使识别性能和稳健性都有显著的提高,取得令人满意的结果。
1.1 端点检测方法
影响孤立词识别性能的一个重要因素是端点检测准确性[4]。在10个英语数字的识别测试中,60毫秒的端点误差就使识别率下降3%。对于面向消费类应用的语音识别芯片系统,各种干扰因素更加复杂,使精确检测端点问题更加困难。为此,提出了称为FRED(Frame-based Readl_time Endpoint Detection)算法[3]的两级端点检测方案,提高端点检测的精度。第一级对输入语音信号,根据其能量和过零率的变化,进行一次简单的实时端点检测,以便去掉静音得到输入语音的时域范围,并且在此基础上进行频谱特征提取工作。第二级根据输入语音频谱的FFT分析结果,分别计算出高频、中频和低频段的能量分布特性,用来判别轻辅音、浊辅音和元音;在确定了元音、浊音段后,再向前后两端扩展搜索包含语音端点的帧。FRED端点检测算法根据语音的本质特征进行端点检测,可以更好地适应环境的干扰和变化,提高端点检测的精度。
在特定人识别中,比较了常用的FED(Fast Endpoint Detection)[5]和FRED两种端点检测算法的性能。两种算法测试使用相同的数据库,包括7个人的录音,每个人说100个人名,每个人名读3遍。测试中的DP模板训练和识别算法为传统的固定端点动态时间伸缩(DTW)模板匹配算法[4]。两种端点检测算法的识别率测试结果列在表1中。
表1 比较FED和FRED端点检测算法对DTW模板匹配识别率的影响
端点检测算法 | 第1人 | 第2人 | 第3人 | 第4人 | 第5人 | 第6人 | 第7人 | 平均 |
FED | 92.5% | 87% | 92.6% | 95.6% | 96.2% | 96.8% | 100% | 94.4% |
FRED | 94.3% | 89.9% | 93.2% | 99.4% | 99.4% | 98.8% | 100% | 96.4% |
测试结果说明:使用FRED端点检测算法,所有说话人的识别率都有了不同程度的提高。因此,本系统采用这种两级端点检测方案。
1.2 模拟匹配算法
DTW是典型的DP特定人算法,为了克服自然语速的差异,用动态时间规整方法将模板特征序列和语音特征序列进行匹配,比较两者之间的失真,得出识别判决的