版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、摘摘 要要 语言是人类进行信息交流的最主要、最常用、最直接的方式。语音 智能识别遥控技术既计算机自动语音识别遥控技术是实现遥控智能化的 一项重大突破,在国外近年来发展十分迅速,其应用也逐步得到推广。 但这些技术和应用都是针对英文使用者。语音智能识别遥控系统结合了 计算机网络技术、数字线性逻辑技术、数字程控交换技术、数字语音信 号识别技术,推出了适应多种语言智能识别系统,并能精确处理来自不 同用户的发音,连续字句。使用者语音智能识别遥控来进行操纵的语音 智能识别系统,由于智能型遥控是使用双模块和两级端点检测方法以及 能有效地提高识别和稳健性;从而能更好的利用智能语音识别遥控系统 来代替手工或半自
2、动化器件在家电和其他领域中的使用,展现了智能语 音识别技术电遥控器应用,展现了智能语音识别技术在新时代广阔前景。 关键字: 语音识别 ;传感器;学习型遥控器 目目 录录 摘 要.i 目 录.ii 第 1 章 前 言.1 1.2 智能语音识别技术.1 1.3 智能语音识别在家电遥控器中的应用.2 第 2 章 智能语音识别在遥控器中的应用原理.3 2.1 语音识别概述.3 2.2 语音控制遥控器设计.7 第 3 章 语音识别及其定点 DSP 实现.11 3.1 语音识别及其定点 DSP 实现.11 3.2 系统的硬件.12 3.3 语音识别的 DSP 实现技术.13 3.3.1 变量的维护.13
3、3.3.2 采用模块化的程序设计方法.15 第 4 章 智能语音识别遥控系统技术.16 4.1 语音识别技术.16 4.2 DSP 芯片的选择.17 4.2.1 语音输入输出模拟前端的选择.18 4.2.2 接口设计.19 4.3 语音信号的端点检测.20 4.3.1 语音特征参数的提取和计算.20 4.3.2 模式识别动态时间归整.21 第 5 章 结 论.23 致 谢.24 参考文献.25 第第 1 1 章章 前前 言言 本文主要是论述了智能语音识别遥控系统,随着科学技术的发展, 电子产品的更新换代进一步加快,现代电子设计已进入一个全新的阶段. 从手工开关到现在遥控开关.从中小规模的通用集
4、成芯片到单片机数字 系统到智能语音识别遥控系统,在这一个过程克服了中小规模集成电路 在系统设计中的一些缺点,同时也提供了新的开发空间。 1.11.1 智能语音识别及其定点智能语音识别及其定点 DSPDSP 实现实现。 语音识别研究的根本目的是研究出一种具有听觉功能的机器,能直 接接受人的口呼命令,理解人的意图并做出相应的反映。语音识别系统 的研究涉及微机技术、人工智能、数字信号处理、模式识别、声学、语 言学和认知科学等许多学科领域,是一个多学科综合性研究领域。近年 来,高性能数字信号处理芯片 DSP(Digital Signal Process)技术的迅 速发展,为语音识别的实时实现提供了可能
5、,其中,AD 公司的数字信 号处理芯片以其良好的性价比和代码的可移植性被广泛地应用于各个领 域。因此,我们采用 AD 公司的定点 DSP 处理芯 ADSP2181 实现了语音信 号的识别 1.21.2 智能语音识别技术智能语音识别技术 智能识别技术的研究与应用已有相当长的时间了,语音识别技术 关系到多学科的研究领域,不同领域上的研究成果都对语音识别的发展 做出了贡献。由于不同的说话人、不同的说话速度、不同的说话内容以 及不同的环境条件等都使机器识别语音产生某种程度不同的困难。这是 由语音信号本身的特点所造成的。这些特点包括多变性、 ,动态性、瞬 时性和连续性等。一个完整的语音识别系统可大致分为
6、 4 个部分: 变化的语音特征序列。 建立声学模型 通常将获取的语音特征通过学习算法产生。 模板匹配(识别算法) 在识别时将输入的语音特征同声学模型进行比 较,得到最佳的识别结果。 语言模型与语言处理 由识别语音命令构成的语法网络,可以进行语 法、语义分析。对小词表语音识别系统,往往不需要语言处理部分。 1.31.3 智能智能语音识别在家电遥控器中的应用语音识别在家电遥控器中的应用 介绍一种适合家电遥控器应用的语音识别算法,该算法使用双模 块和两级端点检测方法,能有效地提高识别和稳健性;介绍利用该技术 实现的一种新型学习型遥控器,展现了语音识别技术在家电领域的广阔 前景。 第第 2 2 章章
7、智能语音识别在遥控器中的应用原理智能语音识别在遥控器中的应用原理 2.12.1 语音识别概述语音识别概述 本章主要介绍一种适合家电遥控器应用的语音识别算法,该算法使 用双模块和两级端点检测方法,能有效地提高识别和稳健性;介绍利用 该技术实现的一种新型学习型遥控器,展现了语音识别技术在家电领域 的广阔前景。 家用电器发展的一个重要方面是让用户界面更加人性化, 更加方便自然,做到老年人和残疾人可以无障碍地使用。利用语音识别 技术实现语音控制是提高家电产品用户界面质量的一条重要途径。本文 以语音控制遥控器为例,说明语音识别技术如何应用在家电器领域。适 合家用电器应用的语音识别嵌入式系统结构如图 2-
8、1 所示,它由四个部 分组成。第一部分为模/数转换部分,其输入端接收输入的语音信号, 并将其转化成数字芯片可处理的数字采集信号;在输出端将解码后的语 音数字信号转换为音频模拟信号,通过扬声器放声。第二部分为语音识 别部分,它的作用是对输入的数字语音词条信号进行分析,识别出词条 信号所代表的命令,一般由 DSP 完成。第三部分语音提示和语音回放部 分,它一般也是在 DSP 中完成的,其核心是对语音信号进行数字压缩编 码和解码,目的是提示用户操作并对识别语音的响应,完成人机的语音 交互。第四部分是系统控制部分,它将语音识别结果转换成相应的控制 信号,并将其输出转换成物理层操作,完成具体功能。语音识
9、别与系统 控制的有机结合是完成声控交互的关键,下面将对语音识别算法及遥控 系统控制部分作详细的讨论。 图 2-1 语音控制系统结构图 其一、语音识别算法 目前,常以单片机(MCU)或 DSP 作炎硬件平台的实现消费类电子 产品中的语音识别。这类语音识别主要为孤立词识别,它有两种实现方 案:一种是基于隐含马尔科夫统计模型(HMM)框架的非特定人识别; 另一种是基于动态规划(DP)原理的特定人识别。它们在应用上各有优 缺点。HMM 非特定人员的优点是用户无需经过训练,可以直接使用;并 且具良好的稳定性(即对使用者而言,语音识别性能不会随着时间的延 长而降低) 。但非特定人语音识别也有其很难克服的缺
10、陷。首先,使用 该方法需要预先采集大量的语料库,以便训练出相应的识别模型,这就 大大提高了应用此技术的前期成本;其次,非特定人语音识别很难解决 汉语中不同方言的问题,限制了它的使用区域;另外还有一个因素也应 予以考虑,家电中用于控制的具体命令词语最好不要完全固定,应当根 据的用户的习惯而改变,这一点在非特定人识别中几乎不可能实现。因 此大多数家电遥控器不适合采用此方案。DP 特定人识别的优点是方法 简单,对硬件资源要求较低;此外,这一方法中的训练过程也很简单, 不需预先采集过多的样本,不仅降低了前期成本,而且可以根据用户习 惯,由用户任意定义控制项目的具体命令语句,因而适合大多数家电遥 控器的
11、应用。DP 特定识别的严重缺点是它的稳健性不理想,对有些人 的语音识别率高,有的人识别率却不高;刚训练完时识别率较高,但随 着时间的推迟而识别率降低。些缺点往往给用户带来不便。为克服这些 缺陷,对传统方法作为改进,使识别性能和稳健性都有显著的提高,取 得令人满意的结果。 其二、端点检测方法 影响孤立词识别性能的一个重要因素是端点检测准确性4。在 10 个英语数字的识别测试中,60 毫秒的端点误差就使识别率下降 3%。对 于面向消费类应用的语音识别芯片系统,各种干扰因素更加复杂,使精 确检测端点问题更加困难。为此,提出了称为 FRED(Frame-based Readl_time Endpoin
12、t Detection)算法3的两级端点检测方案,提高 端点检测的精度。第一级对输入语音信号,根据其能量和过零率的变化, 进行一次简单的实时端点检测,以便去掉静音得到输入语音的时域范围, 并且在此基础上进行频谱特征提取工作。第二级根据输入语音频谱的 FFT 分析结果,分别计算出高频、中频和低频段的能量分布特性,用来 判别轻辅音、浊辅音和元音;在确定了元音、浊音段后,再向前后两端 扩展搜索包含语音端点的帧。FRED 端点检测算法根据语音的本质特征 进行端点检测,可以更好地适应环境的干扰和变化,提高端点检测的精 度。 在特定人识别中,比较了常用的 FED(Fast Endpoint Detecti
13、on)5和 FREDwww.biyezuopin.cc 两种端点检测算法的性能。 两种算法测试使用相同的数据库,包括 7 个人的录音,每个人说 100 个 人名,每个人名读 3 遍。测试中的 DP 模板训练和识别算法为传统的固 定端点动态时间伸缩(DTW)模板匹配算法4。两种端点检测算法的识 别率测试结果列在表 2-1 中。 端点检 测算法 第 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% 10
14、0% 96.4% 表 2-1 比较 FED 和 FRED 端点检测算法对 DTW 模板匹配识别率的影响 测试结果说明:使用 FRED 端点检测算法,所有说话人的识别率都有了 不同程度的提高。因此,本系统采用这种两级端点检测方案。其三、模 拟匹配算法 DTW 是典型的 DP 特定人算法,为了克服自然语速的差异, 用动态时间规整方法将模板特征序列和语音特征序列进行匹配,比较两 者之间的失真,得出识别判决的依据。假设存储的一个词条模板包括 M 帧倒谱特征 R=r(m);m=1,2,M;识别特征序列包括 N 帧倒谱特征 T=t(n);n=1,2, ,N。在 r(i)和 t(i)之间定义帧局部失真 D(
15、i,j), D(i,j)=|r(i)-t(i)| 2,通过动态规划过程,在搜索路径中找到累积失 真最小的路径,即最优的匹配结果。采用对称形式 DTW: S(i-1,j-2)+2D(I,j-1)+d(I,j)(1) S(I,j)=mins(i-1,j-1)+2D(i,j) S(i-2,j-1)+2D(i-1,j)+d(i,j) 其中 S(i,j)是累积失真,D(i,j)是局部失真。当动态规划过程计 算到固定结点(N,M)时,可以计算出该模板动态匹配的归一化距离, 识别结果即该归一化距离最小的模板词条:x=argminS(N,Mx)。为了 提高 DTW 识别算法的识别性能和模板的稳健性,提出了双模
16、板策略,即 x=argminS(N,M2x)。第一次输入的训练词条存储为第一个模板,第二 次输入的相同训练词条存储为第二个模板,希望每个词条通过两个较稳 健的模板来保持较高的识别性能。与上面测试相同,也利用 7 个人说的 100 个人名,每个人名含 3 遍的数据库,比较 DTW 单模板和双模板的性 能差别,结果更在表 2-2 中。 DTW第1人第2人第3人第4人第 5 人第6人第7人平均 单模板94.3%89.9%93.2%99.4%99.4%98.8%100%96.4% 双模板99.4%96.6%98.5%100%100%98.8%100%99.0% 表 2-2 DTW 不同模板数的识别率比
17、较 测试结果说明:通过存储两个模板,相当大地提高了 DTW 识别的性 能,其稳健性也有很大的提高。因此,对特定人识别系统,采用 DTW 双 模板是简单有效的策略。 综上所述,该嵌入式语音识别芯片系统采用了改进端点检测性能的 FRED 算法,12 阶 Mel 频标倒谱参数(MFCC)作为特征参数,使用双模 板训练识别策略。通过一系列测试,证明该系统对特定人的识别达到了 很好的识别性能,完全可以满足家用电器中声控应用的要求。 2.22.2 语音控制遥控器设计语音控制遥控器设计 目前家用遥控器主要为按键式,并有两种类型:一种是固定码型, 每个键对应一种或几种码型,都是生产厂家预先设定好的,用户不能更
18、 改;另一种是学习型,具有自我学习遥控码的功能,可由用户定义遥控 器的每个键对应的码型,它能够将多种遥控器集于一身,用一个遥控器 就可控制多个家电,又可以作为原配遥控器的备份。由于现代家电功能 不断增加,上述两种遥控器都有按键过多,用户不易记住每个键的含义 等问题。将语音识别技术应用于学习型遥控器,利用语音命令代替按者 对命令的记忆和使用,同时省去了大量按键,缩小了遥控器的体积。 图 2-2 语音控制器硬件系统图 语音控制遥控器的硬件框图如图 2-2 所示,它由两个独立的模块组 成:语音信号处理模块和系统控制模块。 语音信号算是模块由 DSP、快闪存储器(FLASH) 、编解码器 (CODEC
19、)组成。其中 DSP 是整个语音识别模块的核心,负责语音识别、 语音编解码,以及 FLASH 的读写控制。DSP 的优点是运算速度快、内存 空间大、数据交换速度快,可用来实现复杂的算法,提高识别率,减小 反应延时,得到较高的识别性能。DSP 芯片选用 Analog Devices 公司 的 AD2186L,它具有如下特点:运算速度达 40MIPS,且均为高效的单 调周期指令;提供了 40K 字节的片内 RAM,其中 8K 字(16Bit/字) 为数据 RAM,8K 字(24Bit/字)为程序 RAM,最大可达 4 兆字节的存储 区,用于存储数据或程序;3.3V 工作电压,具有多种省电模式。 A
20、D2186L 既能完成与语音信号算是相关的算法,又适合使用电池作能源 的遥控器。FLASH 和 CODEC 也都选用 3.3V 工作电压的芯片。FLASH 为美 国 ATMEL 公司的 AT29LV040A(4M Bit) ,它作为系统的存储器,主要用 于存放以下内容:提示语音合成所需的参数,特定人训练后的码本数据, DSP 系统的应用程序和学习和遥控码数据。CODEC 选用美国 TI 公司的 TLV320AC37,用来进行 A/D、D/A 变换、编码和解码。 系统控制模块由单片机、红外接收发送器、电源管理电路组成。单 片机负责整个遥控器的系统控制。单片机作为主控芯片,进行键盘扫描, 根据用户
21、通过键盘输入的指令,分别完成学习遥控码;控制 DSP 进行语 音训练、回放、识别;将识别结果转换成相应的遥控码,通过红外发光 管发射出去。单片机与 DSP 之间通过标准的 RS232 串行协议通讯。 图 2-3 系统控制软件流程图 系统的控制软件流程图如图 2-3 所示。在使用前,按“学习键”进 入学习状态,用户先对学习型遥控器训练语音命令,并使其学习与各语 音命令相对应的原理控码型。使用时按“识别键” ,进入语音识别状态, 等待语音处理模块返回结果,若返回正确的识别结果,则把相应的遥控 码发射出去。例如,原电视遥控器数字键“1”对应中央 1 台,用户的 训练命令为“中央 1 台” ,学习了原
22、遥控器的数字键“1”的遥控码,并 使其与训练命令“中央 1 台”对应起来。于是使用时只需对着学习型遥 控器的麦克风说出“中央 1 台” ,电视就会切换到中央 1 台。这样用户 不需要记住每个电视台与台号的对应关系,相对于枯燥的频道数字,用 户自定义的命令更容易记住。 若连续的 30 秒无正确的命令则遥控器进入休眠状态,单片机控制 电源管理电路切换 DSP 和 FLASH 电源,单片机本身也进入休眠状态,直 至用户按键,唤醒单片机,再由单片机控制恢复 DSP 和 FLASH 供电,重 新开始工作。这是因为整个系统中,DSP 的功耗最大,长时间不用时, 关闭语音信号处理模块,可以显著地降低整个系统
23、的功耗。 第第 3 3 章章 语音识别及其定点语音识别及其定点 DSPDSP 实现实现 3.13.1 语音识别及其定点语音识别及其定点 DSPDSP 实现实现 本章主要论述语音识别研究的根本目的是研究出一种具有听觉功能的机器, 能直接接受人的口呼命令,理解人的意图并做出相应的反映。语音识别系统的 研究涉及微机技术、人工智能、数字信号处理、模式识别、声学、语言学和认 知科学等许多学科领域,是一个多学科综合性研究领域。近年来,高性能数字 信号处理芯片 DSP(Digital Signal Process)技术的迅速发展,为语音识别的 实时实现提供了可能,其中,AD 公司的数字信号处理芯片以其良好的
24、性价比和 代码的可移植性被广泛地应用于各个领域。因此,我们采用 AD 公司的定点 DSP 处理芯片 ADSP2181 实现了语音信号的识别。 1 语音识别的基本过程 根据实际 中的应用不同,语音识别系统可以分为:特定人与非特定人的识别、独立词与 连续词的识别、小词汇量与大词汇量以及无限词汇量的识别。但无论那种语音 识别系统,其基本原理和处理方法都大体类似。一个典型的语音识别系统的原 理图如图 3-1 所示。 图 3-1 智能语音识别原理图 语音识别过程主要包括语音信号的预处理、特征提取、模式匹配几个部分。预 处理包括预滤波、采样和量化、加窗、端点检测、预加重等过程。语音信号识 别最重要的一环就
25、是特征参数提取。提取的特征参数必须满足以下的要求: (1)提取的特征参数能有效地代表语音特征,具有很好的区分性; (2)各阶参数之间有良好的独立性; (3)特征参数要计算方便,最好有高效的算法,以保证语音识别的实时实现。 在训练阶段,将特征参数进行一定的处理后,为每个词条建立一个模型,保 存为模板库。在识别阶段,语音信号经过相同的通道得到语音特征参数,生成 测试模板,与参考模板进行匹配,将匹配分数最高的参考模板作为识别结果。 同时,还可以在很多先验知识的帮助下,提高识别的准确率。 3.2 系统的硬件系统的硬件 其一、 ADSP2181 的特点 AD 公司的 DSP 处理芯片 ADSP2181
26、是一种 16b 的定点 DSP 芯片,他内部存储空 间大、运算功能强、接口能力强。有以下的主要特点: (1)采用哈佛结构,外 接 1667MHz 晶振,指令周期为 30ns,指令速度为 33MIs,所有指令单周期 执行;(2)片内集成了 80 kB 的存储器:16 kB 字的(24b)的程序存储器和 16kB 字(16b)的数据存储器;(3)内部有 3 个独立的计算单元:算术逻辑单元(ALU)、 乘累加器(MAC)和桶形移位器(SHIFT),其中乘累加器支持多精度和自动无偏差 舍人;(4)一个 16b 的内部 DMA 端口(1DMA),供片内存储器的高速存取;一个 8b 自举 DMA(BDMA
27、) 口,用于从自举程序存储器中装载数 据和程序;(5)6 个外部中断,并且可以设置优先级或屏蔽等。由于 ADSP2181 以上的特点,使得该芯片构成的系统体积小、性能高、成本和功耗低,能较好 地实现语音识别算法。 其二、系统的硬件结构在构成语音识别电路时,我们采用了 ADSP2181 的主 从结构设计方式,通过 IDMA 口由 CPU 装载程序。语音识别系统的硬件结构如图 3-2 所示。 图 3-2 智能语音识别系统的结构 在这种结构中,PC 机为主 CPU,ADSP2181 为从 CPU,由 PC 机通过 IDMA 口将程 序装载到 ADSP2181 的内部存储器中。PC 机总线通过 CPL
28、D 译码,形成 IRD,IWR,IAL,IS 等控制信号,与 ADSP2181 的 IDMA 口相连。这样,在 ADSP2181 全速运行时,主机可以查询从机的运行状态,可以访问到 ADSP2181 内部所有的程序存储器和数据存储器。这对程序的编译和调试,以及语音信号 的实时处理带来了极大的方便 3.33.3 语音识别的语音识别的 DSPDSP 实现技术实现技术 .1 变量的维护变量的维护 其一、浮点运算的定点实现 在语音识别的算法中,有许多的浮点运算。用定点 DSP 来实现浮点运算是 在编写语音识别程序中需要首先解决的问题。这个问题可以通过数的定标方法 来实现。数的定标就是决
29、定小数点在定点数中的位置。Q 表示法是一种常用的 定标方法。其表示机制是:设定点数是 J,浮点数是),则 Q 法表示的定点数 与浮点数的转换关系为:浮点数)转换为定点数 x:x= (int)y2Q; 定点数 z 转换为浮点数 y:y =(float)x2-Q。 其二、 数据精度的处理 用 16b 的定点 DSP 实现语音识别算法时,虽然程序的运行速度提高了,但是 数据精度比较低。这可能由于中间过程的累计误差而引起运算结果的不正确。 为了提高数据的运算精度,在程序中采用了以下的处理方法: 其三、扩展精度 在精度要求比较高的地方,将计算的中间变量采用 32b,甚至 48b 来表示。 这样,在指令条
30、数增加不多的情况下却使运算精度大大提高了。 其四、采用伪浮点法来表示浮点数 伪浮点法即用尾数+指数的方法来表示浮点数。这时,数据块的尾数可以采 用 Q115 数据格式,数据块的指数相同。这种表示数据的方法有足够大的数据 范围,可以完全满足数据精度的要求,但是需要自己编写一套指数和尾数运算 库,会额外增加程序的指令数和运算量,不利于实时实现。 以上两种方法,都可以提高运算精度,但在实际操作时,要根据系统的要 求和算法的复杂度,来权衡考虑。 在高级语言中,有全局变量与局部变量存储的区别,但在 DSP 程序中,所有声明的变量在 链接时都会分给数据空间。所以如果按照高级语言那样定义局部变量,就会浪费大
31、量的 DSP 存储空间,这对数据空间较为紧张的定点 DSP 来说,显然是不合理的。为了节省存储 空间,在编写 DSP 程序时,最好维护好一张变量表。每进入一个 DSP 子模块时,不要急 于分配新的局部变量,应优先使用已分配但不用的变量。只有在不够时才分配新的局部变 量。 循环嵌套的处理:语音识别算法的实现,有许多是在循环中实现的。对于循环 的处理,需要注意以下几个问题: ADSP2100 系列 DSP 芯片中,循环嵌套最多不能超过 4 重,否则就会发生堆栈 溢出,导致程序不能正确执行。但在语音识别的 DSP 程序中,包括中断在内的 嵌套程序往往超过 4 重。这时不能使用 DSP 提供的 dou
32、ntil指令,只能自 己设计出一些循环变量,自己维护这些变量。由于这时没有使用 DSP 的循环堆 栈,所以也不会导致堆栈溢出。另外,如果采用 jump 指令从循环指令中跳出, 则必须维护好 PC,LOOP 和 CNTR 三个堆栈的指针。 尽量减少循环体内的指令数。在多重循环的内部,减少指令数有利于降低程 序的执行次数。这样有利于减少程序的执行时间、提高操作的实时性。 .2 采用模块化的程序设计方法采用模块化的程序设计方法 在语音识别算法的实现中,为了便于程序的设计和调试,采用了模块化的 程序设计方法。以语音识别的基本过程为依据进行模块划分,每个模块再划分 为若干个子模块,然后以
33、模块为单元进行编程和调试。在编写程序之前,首先 用高级语言对每个模块进行算法仿真,在此基础上再进行汇编程序的编写。在 调试时,可以采用高级语言与汇编语言对比的调试方式,这样可以通过跟踪高 级语言与汇编语言的中间状态,来验证汇编语言的正确性,并及时的发现和修 改错误,缩短编程周期。另外,在程序的编写过程中,应在关键的部分加上必 要的注释与说明,以增强程序的可读性。 在总调时,需要在各模块中设置好相应的人口参数与出口参数,维护好堆栈指针与中间变 量等。 利用 C 语言与汇编语言的混合编程,现在,大多数的 DSP 芯片都支持汇编 语言与 C 或 C+语言的混合编程,ADSP2181 也不例外。用 C
34、 语言开发 DSP 程序 具有缩短开发周期、降低程序复杂度的优点,但是,程序的执行效率却不高, 会增加额外的机器周期,不利于程序的实时实现。为此,在用 C 语言编写语音 识别算法时,我们采用了定点化处理技术。ADSP2181 是 16 位定点处理器,定 点化处理应注意以下几个问题: ADSP2181 支持小数和整数两种运算方式,在计算时应选择小数方式,使计算 结果的绝对值都小于 1; 用双字定点运算库代替 C 语言的浮点库,提高运算精度; 注意在每次乘加运算之后进行饱和操作,防止结果的上溢和下溢; 循环处理后的一组数据可能有不同的指数,要进行归一化处理,以便后续定 点操作对指数和尾数部分分别处
35、理。 第第 4 4 章章 智能语音识别遥控系统技术智能语音识别遥控系统技术 4.14.1 语音识别技术语音识别技术 本主要论述与机器进行语音交流,让机器明白你说什么,这是人们长期以 来梦寐以求的事情。语音识别技术就是让机器通过识别和理解过程把语音信号 转变为相应的文本或命令的高技术。语音识别是一门交叉学科。近二十年来, 语音识别技术取得显著进步,开始从实验室走向市场。人们预计,未来 10 年内, 语音识别技术将进入工业、家电、通信、汽车电子、医疗、家庭服务、消费电 子产品等各个领域。 语音识别听写机在一些领域的应用被美国新闻界评为 1997 年计算机发展十件大事之一。很多专家都认为语音识别技术
36、是 2000 年至 2010 年间信息技术领域十大重要的科技发展技术之一。 其一、语音识别技术 语音识别技术的研究与应用已有相当长的时间了,语音识别技术关系到多 学科的研究领域,不同领域上的研究成果都对语音识别的发展做出了贡献。由 于不同的说话人、不同的说话速度、不同的说话内容以及不同的环境条件等都 使机器识别语音产生某种程度不同的困难。这是由语音信号本身的特点所造成 的。这些特点包括多变性、 ,动态性、瞬时性和连续性等。一个完整的语音识别 系统可大致分为 4 个部分: 语音特征提取 其目的是从语音波形中提取出随时间变化的语音特征序 列。 建立声学模型 通常将获取的语音特征通过学习算法产生。
37、模板匹配(识别算法) 在识别时将输入的语音特征同声学模型进行比较, 得到最佳的识别结果。 语言模型与语言处理 由识别语音命令构成的语法网络,可以进行语法、 语义分析。对小词表语音识别系统,往往不需要语言处理部分。 通常在以计算机为语音识别处理平台的系统中,一般采用隐含马可夫 (Markov)模型(HMM)进行语音识别,该算法由于允许模板匹配中时间不定长,所 以系统的适应性强,且识别阶段计算量也不大,但是需要进行大量的前期训练 工作,需要系统具有较高的运算速度和庞大的系统存储资源。这对于那些需要 识别的语音命令不多的特定应用场合,无疑是很不经济的,使用起来也不方便。 利用廉价的定点数字信号处理器
38、(DSP)芯片构成的小词表实时语音识别模块便能 很好地解决这一矛盾。下面分别介绍该系统的硬件和软件结构。 其二、系统的硬件构成 系统核心硬件构成框图如图 4-1 所示。 图 4-1 系统核心硬件构成框图 4.24.2 DSPDSP 芯片的选择芯片的选择 合理选择 DSP 芯片对于本应用系统的设计是非常重要的。只有选定了 DSP 芯片才能进一步设计外围电路和系统的其他电路。DSP 芯片的选择应根据实际 的应用系统需要而确定。 TMS320VC54021是 TI 公司生产的从属于 TMS320C54x 系列的一个工作灵活、 高速、具有较高性价比、低功耗的 16b 定点通用 DSP 芯片。其主要特点
39、包括: 采用改进的哈佛结构,1 条程序总线(PB),3 条数据总线(CB,DB,EB)和 4 条地 址总线(PAB,CAB,DAB,EAB),带有专用硬件逻辑 CPU(40b 算术逻辑单元(ALU), 包括一个 40b 桶形移位器和 2 个 40b 累加器;一个 1717 乘法器和一个 40b 专 用加法器,允许 16b 带或不带符号的乘法),片内存储器(8 个辅助寄存器及一 个软件栈),片内外专用的指令集,允许使用业界最先进的定点 DSPC 语言编译 器。TMS320VC5402 含 4 kB 的片内 ROM 和 16kB 的双存取 RAM,1 个 HPI(HostPortInterface
40、)接口,2 个多通道缓冲单口 MCBSP(Multi-Channel Buffered Serial Port),单周期指令执行时间 10ns,带有符合 IEEE1149.1 标 准的 JTAG 边界扫描仿真逻辑。 TMS320VC5402 采用双电源(1.8V 和 3.3V)供电,其中 I/O 采用 3.3V 电 源供电,芯片的核采用 1.8V 电源供电。由于实际系统使用 5 V 电源,所以必须 采用电源转换芯片。选用 TPS7301 和 TPS7333 两块电源转换芯片(他们都是 TI 公司为配合 DSP 而设计的电源转换芯片),分别接上少量的外围电路,即可调整 两块芯片的输出电压分别为
41、3.3V 和 1.8V。 2.1 语音输入输出模拟前端的选择语音输入输出模拟前端的选择 TLC320AD50C 是 TI 公司生产的一款集成 ADC 和 DAC 于一体的模拟接口电路, 并且与 DSP 接口简单,高性能,低功耗,已成为当前语音处理的主流产品。16b 数据结构、音频范围(采样频率为 222.05kHz)、内含抗混叠滤波器和重构滤 波器的模拟接口芯片,他有一个能与许多 DSP 芯片相连的同步串行通信接口。 TLC320AD50C 片内还包括一个定时器(调整采样率和帧同步延时)和控制器(调整 编程放大增益、锁相环 PLL、主从模式)。TLC320AD50C 有 28 脚
42、的塑料 SOP 封装 (带 DW 后缀)和 48 脚的塑料扁平封装(带 PT 后缀),体积较小,适应于便携设备。 TLC320AD50C 的工作温度范围是 070,单一 5V 电源供电或 5V 和 3.2 V 联合供电,工作时的最大功耗为 120mW。TLC320AD50CTMS320VC5402 的硬件连接 如图 4-2 所示。 图 4-2 TLC320AD50C 与 TMS320VC5402 硬件连接 外挂程序存储单元 采用一片 27C512 作为程序存储器,系统复位后,程序自 动由 EPROM 中加载进入 DSP 的片内程序存储区运行。 语音模板存储单元 采用一片 AT29C020 作为
43、模板和语音存储器,通过 BDMA 接口与 TMS320VC5402 相连。 系统复位与电源适配 电源复位、适配和监视电路由 MAX705,TPS7301 和 TPS7333 实现。 另外,采用 74HC574 做输出识别接口,这就构成了基本的语音识别模块。 加上键盘、LCD 显示接口和相应的译码电路,即可构成完整的控制器。 .2 接口设计接口设计 TMS320VC5402 串口的初始化 首先将 DSP 串口 1 复位,再对串口 1 的 16 个寄存器进行编程,使 DSP 串口工作在以下状态:以 SPI 模式运行,每帧一 段,每段一个字,每字 16b,采样率发生器由 DSP 内部
44、产生,帧同步信号和移 位时钟信号由外部产生。DSP 给 AD50C 编程用查询方式,接收 A/D 转换的 D 信 号和发送 D/A 转换的 D 信号用 DMA 方式。 TLC320AD50C 的初始化 首先由 TMS320VC5402 的同步串口发送两串 16b 数字信息到 TLC320AD50C。第一串为 0000 0000 0000 0001B,最低有效位 (bits01)说明下一个要传输的数据字属于二次通信2。第二个数据值用来对 TLC320AD50C 的 4 个数据寄存器的某一个进行配置。Bits1511 位为 0,Bits108 位为所选寄存器地址值,Bits70 位为所选中寄存器的
45、编程值。 并且使 TLC320AD50C 工作在以下状态:选择 INP/INM 为工作模拟输入,151 位 ADC 和 151 位 DAC 模式,采样频率为 8 kHz,模拟信号输入和输出放大增 益均为 0dB。 4.34.3 语音信号的端点检测语音信号的端点检测 语音信号的端点检测就是从含噪声的环境中检测出说话人的语音命令。由 于每个人说话的语音特征是相对不变的,就可以利用语音信号的在特定时段内 的能量和进行端点检测。语音信号的采样频率为 8kHz(仅适合于简单语句的识 别),样本区间为 10ms,共 80 个采样点。每隔 10ms 计算一次短时能量和及过 零点数。 n 为一个样本区间语音的
46、采样点数(80),A(k)为一维语音信号的离散函数, W(k)为窗函数。当采样得到的短时能量和大于一定阈值时,就认定此时语音已 经开始。只要短时能量和低于平均能量的 1/20 就可以认定此时已经是语音信号 的终点了。 .1 语音特征参数的提取和计算语音特征参数的提取和计算 输入的模拟语音信号首先通过 TLC320AD50C 内的抗混迭滤波器,然后由 TLC320AD50C 内的 ADC 采样和量化,接下来很重要的一环就是特征参数的提取。 对特征参数的要求:能有效地代表语音特征,且具有很好的区分性;各阶 参数之间有良好的独立性;以及特征参数要计算方便等,以保证语音识别的实 时实现。本系统选择线性预测倒谱系数(LPCC)作为语音识别的参数。线性预测 编码(LPC)3是目前众多特征提取方法中的一种, 主要特点是运算简单,易 于实现代码的优化,运算速度快。 定义线性预测模型为: S(n)=a,s(n-i),(s(n) 为输入信号的 Z 变换)则其中 a1am即为系统所求的特征矢量。该系统为每样本 区间信号计算出 12 阶 LPCC 系数,加上短时能量和作为以后的识别参数。以上 算法是用 TMS320VC5402 的汇编语言实现的定点算法,可以在 560s 内完成, 满足系统实时性的需求。 其一、语音的压缩编
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 城市停车管理工程师考试试卷及答案
- 城市公厕管理技师考试试卷及答案
- 超材料研发工程师考试试卷及答案
- 区域患者满意度数据的可视化空间分布特征
- 区块链赋能医疗数据跨境流动合规管理
- 区块链技术保障医疗数据不可篡改的伦理优势与局限
- 水电施工方案讲解(3篇)
- 招投标监督部门管理制度(3篇)
- 学习生产安全管理制度心得(3篇)
- 区块链在医疗数据人才培养中的实践探索
- 2026年春季学期德育工作安排方案(德育四表)
- 2026年春节后复工复产安全专题培训
- 2026年春统编版(新教材)小学道德与法治二年级下册(全册)教学设计(附目录P122)
- 2025年剑桥商务英语(BEC)初级考试真题及答案
- 《社区康复》课件-第六章 骨关节疾病、损伤患者的社区康复实践
- 《中国政治思想史》期末重点整理
- 无线局域网应用技术第3版全套教学课件
- 河北省中等职业学校对口升学考试计算机类专业考试大纲(2026版专业课)
- 6人小品《没有学习的人不伤心》台词完整版
- 【程序文件】医学实验室ISO15189质量管理体系范本文件
- 七年级上数学课本习题
评论
0/150
提交评论