未来智讯 > 人脸语音识别论文 > 基于MatlabRTW的语音识别及无线抑制系统

基于MatlabRTW的语音识别及无线抑制系统

发布时间:2018-11-25 01:06:05 文章来源:未来智讯    
    基于Matlab/RTW的语音识别及无线抑制系统作者:未知   语音识别是近年来十分活跃的一个研讨领域,被广泛应用于工业抑制、智能家居、医疗、高端家电等多个领域。根据识别的对象不同,语音识别可分为孤立词识别、关键词识别和连续语音识别。目前用于语音识别的方法有基于动态时间规整(DTW)技能的模板匹配法、基于几率统计的HMM法和基于人工神经网络的最优搜索法。
  zigBee是一种新兴的短距离、低速率、低功耗无线网络技能,其自组织、低功耗、低数据速率、低成本的特点使之十分符合于自动抑制和远程抑制领域,能够嵌入各种设备。
  RTW(Real-Time Workshop)是Matlab提供的代码生成工具,可使Simulink模型自动生成面向不同指标的代码。利用RTW自动生成代码,可使工程师专注于系统设计和实现,减轻编程事务量,加快产品研发的速度。
  系统选用DSP(TMS320VC5402)实现孤立词语音识别算法,ZigBee(cC2420)实现无线通讯功能,利用Matlab/RTW自动生成C代码,可以极大地缩短开发周期,为此,基于matlab/RTW实现的语音识别及无线抑制系统方案具有一定的研讨价值。
  
  系统硬件设计
  
  本系统硬件结构可分为主节点、从节点,图1为整体硬件结构图。其中主节点由基于DSP的语音识别模块和基于ZigBee的无线通讯模块组成。语音识别模块实现对语音下令的识别,并将识别结果以停止方式发送至ZigBee模块。ZigBee模块由低功耗的AVR单片机与CC2420组成,单片机实现上层软件与ZigBee协议栈功能,CC2420实现数据的无线收发;从节点则由ZigBee通讯模块与被控对象组成。本系统所选取的网络拓扑形式为星状,即一个主节点与多个从节点选取星状方式连接。
  
  1 语音识别模块
  语音识别模块主要以TMS320V C5402为核心,实现对语音信号进行采集和处理,以及输出识别结果。其中,TLV320AIC23是TI公司推出的一款集ADC与DAC为一体的高本能音频编解码器,它能够实现与DSP的无缝连接。本系统中由它来完成对输入语音信号的放大、滤波、AD转换,以及对识别结果的语音播报。SRAM和FLASH分辨为DSP的数据存储器和程序存储器。CPLD完成DSP的外部存储器寻址和抑制逻辑,以及驱动zigBee通讯模块。模式抑制局部的功能是抑制训练模式和识别模式的切换。
  由于外扩了FLASH与SRAM,DSP要对FLASH与SRAM进行正常读写的逻辑时序抑制,这局部功能由CPLD来实现,由于DSP的速度较快,要求译码的速度也必须较快,利用小规模逻辑器件译码的方式己不能满足DSP系统的要求;而CPLD的速度快,比通用器件快几个数量级。实际应用中由于削减了电路中器件的数量,从而增强了系统的可靠性,降低了电路的总功耗。此外,CPLD可在线编程,使得日后语音处理平台逻辑的批改相当方便。总之,CPLD时序严格,速度较快,集成度高,相当符合于本设计。
  
  
  2 ZigBee通讯模块
  本系统中包含一个发送节点(FFD)和多个接收节点(RFD),并自组建成星状网络。节点的基本硬件构架是由AVR抑制器和zigBee射频电路组成的。AVR抑制器选取高本能、低功耗的ATmegal28L微处理器。ZigBee射频电路则以CC2420为核心。CC2420是TI-Chipcon推出的一款2.4GHz射频收发器,其MAC层和物理层协议都适合IEEE 802.15.4标准,CC2420可通过4线SPI总线设置芯片的事务模式并实现读/写缓存数据、读/写状态寄存器等。抑制器通过SPI总线与射频电路相连。AVR充当SPI主器件而射频收发器充当从器件。AVR实现了IEEE 802.15.4 MAC层和zigBee协议层及特定应用的逻辑抑制。
  
  系统软件设计
  
  下面主要对抑制系统的软件设计进行介绍。包括针对VC5402特点对前面由RTW自动生成的代码进行整合优化、CPLD抑制逻辑设计以及ZigBee通讯协议的实现。最后实现无线语音抑制系统。
  
  1 DSP语音识别程序
  前面利用Matlab/RTW自动生成了基于HMM算法的语音识别程序,接下来在CCS3.1环境下对代码进行了必要的整合和优化,以使其达到系统设计要求,整合后的总体软件流程如图2所示。
   2 ZigBee节点软件设计
  ZigBee节点上的软件负责完成接收由DSP发送的抑制下令,并将下令发送到RFD节点,RFD节点通过解析数据帧中的地址码来判断是否接收。如果地址准确则接收数据包,解析下令并产生相应的抑制动作。由于RF芯片CC2420提供了802.15.4的物理层和MAC层功能,只需完成如下事务:
  ①上层协议。使用成熟的协议栈:Z-Stack。
  ②用户程序。利用Microchip提供的API函数实现了zigBee的全部功能。
  ③TinyOS系统设计和移植。语音识别算法的设计与实现
  
  1 语音识别概括
  语音识别的一般方法是预先对语音信号提取特征参数变成模板,然后将待识别的语音经特征提取后,逐一与参考模式库中的各个模板按某种原则进行对照,来找出最相像的参考模板所对应的发音,其一般过程如图3所示。
  系统中包括预处理、特征提取、模板库、模式匹配和后处理五大局部。针对本系统特点与实际需要,在进行语音处理的过程中,选取MEL频率倒谱系数模型(MFCC)来进行语音特征参数提取、选取隐马尔科夫算法(HMM)来进行语音识别。
  2 HMM语音识别算法
  形象地说,HMM能够分为两个局部,一个是Markov链,由π,A描述,其产生的输出为状态序列;另外一个随机过程B产生的输出是观测序列,T为观测时间长度,如图4所示。
  3 Matlab仿真及生成指标代码
  RTW(Real-Time Workshop)是Matlab提供的代码自动生成工具,可使Simulink模型自动生成面向不同指标的代码。目前通过Matlab/RTW可生成在PC、ARM、DSP等设备上运行的代码。利用RTW自动生成代码,可使工程师专注于系统设计和实现,减轻编程事务量,加快产品研发的速度。
  HMM算法的仿真和调试是在Matlab7.8环境下,利用Voice Box工具箱,编制了相应程序而实现。由于在Matlab中,m语言无法直接移植到嵌入式抑制器中,因此先要用simulink构建系统模型,然后再用Real-Time Workshop自动生成面向TI C5000平台的C代码。
  
  利用RTW自动生成代码的实验步骤如下:
  ①借助于Voice BoxT具箱,用Matlab的mN言编写HMM算法程序,仿真通事后,封装成Simulink仿真框图,并建立HMM抑制系续模型Model.mdl。
  ②在Simulink窗口中,选择Simulinkl Configuration Parameters选项,对Solver、Data Import/Export、Hardware Implementation等进行设置。其中HardwareImplementation选项框下的DeviceVendor选项选择Texax Instruments,Device Type选项选择C5000。
  ③整合用户定义的函数以及自动生成的HMM代码,编译连接,最后生成OUT文件并下载到DSP中。
转载请注明来源。原文地址:https://www.7428.cn/page/2018/1125/46789/
 与本篇相关的热门内容: