毕业设计(论文)-语音智能识别系统设计.doc

上传人:小小飞 文档编号:3951832 上传时间:2019-10-11 格式:DOC 页数:37 大小:672.50KB
返回 下载 相关 举报
毕业设计(论文)-语音智能识别系统设计.doc_第1页
第1页 / 共37页
毕业设计(论文)-语音智能识别系统设计.doc_第2页
第2页 / 共37页
毕业设计(论文)-语音智能识别系统设计.doc_第3页
第3页 / 共37页
毕业设计(论文)-语音智能识别系统设计.doc_第4页
第4页 / 共37页
毕业设计(论文)-语音智能识别系统设计.doc_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《毕业设计(论文)-语音智能识别系统设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-语音智能识别系统设计.doc(37页珍藏版)》请在三一文库上搜索。

1、目 录1 绪论21.1语音识别概述31.1.1语音识别的原理31.1.2语音识别的应用领域41.2 DSP的应用前景42 方案论证与比较42.1 语音识别方案的论证42.2 语音的采集和处理方案论证52.3 控制部分方案论证62.4 显示部分方案论证62.5 接口部分方案论证73 硬件系统设计73.1 系统概述73.1.1 语音采集部分83.1.2 DSP处理部分83.1.3 控制显示部分93.2 硬件电路设计103.2.1 DSP接口电路设计103.2.2 串行接口电路设计113.2.3 单片机串行通信接口设计123.2.4 LCD电路设计124 软件实现134.1 DSP的软件实现134.

2、1.1 端点检测134.1.2 语音特征提取144.1.3 模式识别动态时间规整(DTW)154.1.4 FLASH引导的实现174.1.5FLASH的在线引导174.1.6存储器配置文件174.1.7用户引导代码的编写174.1.8.OUT文件到.Hex文件的转换184.1.9 FLASH的烧写184.2控制显示板软件设计184.2.1.串口程序设计194.2.2 LCD程序设计205 总结与展望215.1总结215.2展望22致谢23参考文献24附录一26附录二281 绪论语音识别技术发展到今天,特别是中小词汇量非特定人语音识别系统识别精度已经大于98%,对特定人语音识别系统的识别精度就更

3、高。这些技术已经能够满足通常应用的要求。由于大规模集成电路技术的发展,这些复杂的语音识别系统已经完全可以制成专用芯片,大量生产。在西方经济发达国家,大量的语音识别产品已经进入市场和服务领域。一些用户交换机、电话机、手机已经包含了语音识别拨号功能、语音记事本、语音智能玩具等产品,同时也包括语音识别与语音合成功能。人们可以通过电话网络用语音识别口语对话系统查询有关的机票、旅游、银行信息。调查统计表明,多达85%以上的人对语音识别的信息查询服务系统的性能表示满意。可以预测,在近5年内,语音识别系统的应用将更加广泛,各种各样的语音识别系统产品将不断出现在市场上。语音识别技术在人工邮件分拣中的作用也日益

4、显现,发展前景诱人。一些发达国家的邮政部门已经使用了这一系统,语音识别技术逐渐成为邮件分拣的新技术。它可以克服手工分拣单纯依靠分拣员记忆力的不足,解决人员成本过高的问题,提高邮件处理的效率和效益。就教育领域来讲,语音识别技术的最直接的应用就是帮助用户更好地练习语言技巧。语音识别技术的另一个发展分支就是电话语音识别技术的发展,贝尔实验室是这方面的先驱,电话语音识别技术将能够实现电话查询、自动接线以及一些专门业务如旅游信息等的操作。银行应用了语音理解技术的声讯查询系统后,可不分昼夜地为客户提供二十四小时的电话银行理财服务。而证券业方面,若是采用电话语音识别声讯系统的话,用户想查询行情便可以直接讲出

5、股票名称或代码,而系统确认用户的要求后,会自动读出最新的股票价,这将大大方便用户。目前在114查号台还有大量的人工服务,如果采用语音技术,就可让计算机自动接听用户的需要,然后回放查询的电话号码,从而节约了人力资源。1.1语音识别概述1.1.1语音识别的原理语音识别就是从说话人的一段语音中提取出说话人的个性特征,通过对个人特征的分析和识别,从而达到对说话人进行辨认或者确认的目的。语音识别并不注意语音信号的语义内容,而是希望从语音信号中提取出个人的特征,即根据语音判别说话人是谁。语音信号既载有说话人的语言信息,同时也载有说话人本身的特征信息。每个人发音器官都有自己的特征,说话时也都有自己的特殊语言

6、习惯。在分析语音信号时,可以提取说话人的个人特征,从而有可能识别说话人是谁。语音识别分为与文本相关的语音识别和与文本无关的语音识别。无论是与文本有关的语音识别还是与文本无关的语音识别,其基本原理都是为每一说话人建立一个能够描述这一说话人个性特征的模型。在目前语音特征与说话人个性特征还未很好地从语音特征中得到分离的情况下,为每一说话人建立的语音模型实际是说话人的语音特征的模型。在进行语音辨认时,取与测试音匹配距离最小的语音模型所对应的语音作为语音辨认的结果,在进行说话人确认时,用测试音的模型与所声称的语音的模型进行比较,若匹配距离小于一个规定的域值,则该说话人得到确认。由此可以看出,说话人辨认和

7、说话人确认在本质上并没有什么差别。因此,若要实现语音的识别,需解决以下几个基本问题:1、对语音信号的预处理和特征提取;2、语音模型的建立和模型参数的训练;3、测试音与语音模型的匹配距离计算。为了对语音个性特征描述的一致起见,常将每一说话人的模型结构取得相同,不同的只是模型中的参数,通过用训练语音对模型进行训练得到。示意图如下所示图1 语音识别的原理框图1.1.2语音识别的应用领域语音识别有其广泛的应用领域并具有与其它模式识别方式相比独特的优势。它的应用领域包括以下几个方面:考勤系统;语音电话拨号,提供主叫方的身份信息;电话银行,进行身份确认;安全控制;司法系统;军队和国防。语音识别与其它模式识

8、别相比所具有的优势:获取方便;获取成本低,使用简单;适合远程登陆;辨认和确认的算法复杂度低;配合其它措施可提高识别准确率;不涉及隐私。也正是因为语音识别广泛的应用领域和独特的优势,所以语音识别具有很高的研究价值。1.2 DSP的应用前景随着信息和计算机技术的飞速发展,信号处理理论和方法的不断更新、完善,通信、工业过程控制、军事、图形/图像处理等需要处理的数据量越来越大,对实时性和精度的要求越来越高。低档的微处理器已经不能满足要求,高性能的数字信号处理器(DSP)的出现,软件和开发工具的完善,价格的大幅度下降,使得DSP的应用前景越来越广阔。语音信号处理的算法尽管能在任何处理器上实现,然而并不是

9、所有处理器都能够快速有效的完成这些任务,只有在专门的DSP才能获得最大的速度和效率。自80年代以来, DSP发展突飞猛进。DSP运算的速度和计算能力,已经达到实时信号处理的要求。实时是指在实际运算中,输出的速度跟得上采样点输入的速度。对于某些运算(如滤波),这意味着每当接收到一次新的输入采样点时,就能产生一个新的输出。目前在语音信号处理的实际应用中,例如,语音信箱、声码器、语音识别、说话人识别、语音增强、语音综合以及文本转换等都可以应用数字信号处理器DSP实现,DSP也可以实现对视频和音乐的实时检测、处理。DSP 的发展可以说是日新月异, 它是未来数字化世界的源泉。2 方案论证与比较2.1 语

10、音识别方案的论证方法一:概率统计方法语音中说话人信息在短时间内较为平稳,通过对稳态特征如基音、声门增益、低阶反射系数的统计分析,可以利用均值、方差等统计量和概率密度函数进行分类判决。方法二:动态时间规整方法(DTW)说话人信息不仅有稳定因素(发声器宫的结构和发声习惯),而且有时变因素(语速、语调、重音和韵律)。将识别模板与参考模板进行时间对比,按照某种距离测度得出两模板间相似程度。常用的方法是基于最近邻原则的动态时间规整(DTW)。方法三:矢量量化方法(VQ)矢量量化最早是用于聚类分析的数据压缩编码技术。Helms首次将其用于说话人识别,他把每个人的特定文本训练成码本,识别时将测试文本按此码本

11、进行编码,以量化产生的失真度作为判决标准。Bell实验室的Rosenberg和Soong用矢量量化进行了孤立数字文本的语音识别研究,得到了较好的识别结果。方法四:马尔可夫模型方法(HMM),隐马尔可夫模型是一种基于转移概率和输出概率的随机模型,最早在CMU和IBM被用于语音识别。它把语音看成由可观察到的符合序列组成的随机过程,符号序列则是发声系统状态序列的输出。在使用隐马尔可夫模型识别时,为每个说话人建立发声模型,通过训练得到状态转移概率矩阵和符号输出概率矩阵。识别时计算未知语音在状态转移过程中的最大概率,根据最大概率对应的模型进行判决。对于与文本无关的语音识别一般采用各态历经型HMM;对于与

12、文本有关的说话人识别一般采用从左到右型HMM。HMM不需要时间规整,可节约判决时的计算时间和存储量,在目前被广泛应用。方法五:人工神经网络方法(ANN)人工神经网络在某种程度上模拟了生物的感知特性,它是一种分布式并行处理结构的网络模型,具有自组织和自学习能力、很强的复杂分类边界区分能力以及对不完全信息的鲁棒性,其性能近似理想的分类器。将五种方法进行对比,方法一不用对特征参量在时域上进行规整,比较适合与文本无关的说话人识别,方法三编码程序太多太复杂,方法四训练时计算量较大,方法五训练时间长,动态时间规整能力弱,而方法五的网络规模随说话人数目增加时可能大到难以训练的程度。考虑到DSP 系统资源的有

13、限性,本系统采用了计算相对简单而有效的DTW 算法。该算法基于动态规划(DP) 的思想,解决了发音长短不一的模板匹配问题。所以选择方法二。2.2 语音的采集和处理方案论证方法一:ARM TrustZone技术可识别系统的安全码和数据,硬件能清楚区分安全信息和非安全信息。该区分能力可令安全码和数据在操作系统中安全而有效地同时运行,并不需要牺牲任何系统性能,也不会受病毒侵害。方法二:DSP芯片制造商,目前有模拟器件(AD),德州仪器(TI),摩托罗拉(Motorola)等。目前,国内自主研发了DSP汉芯二号、汉芯三号,依赖国外进口的局面被打破了。在这些DSP厂商中以TI公司的市场份额最大,产品最全

14、,目前,TI的DSP产品中,C2000系列主要有C24X和C28X。C5000系列主要C54X和C55X两个子系列。C6000系列有C62X,C64X,C67X子系列,其中C67X为浮点系列DSP。在C64X子系列中TMS320DM642为多媒体处理平台,可实现多路音频、视频的同时采集和处理。两种方法都是语音采集和处理的方法,但是方法一成本太高,基于实际考虑选择方法二。2.3 控制部分方案论证方法一:FPGA采用Altera公司的Flex10k系列芯片。芯片利用开发软件MaxplusII将各个模块用VHDL语言描述并输入,由软件自动编译、综合、布局和布线,生成编程用的数据文件,加载到FPGA的

15、配置存储单元。对FPGA芯片进行配置可有多种模式,当系统上电时,单片机自动将存在其内部的配置数据送到FPGA内部存储单元中。方法二:AT89S51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM一Flash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容,由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89S51是一种高效微控制器。经过对比,方法一硬件结构和语言使用复杂,而AT89

16、S51芯片却可以为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。因此,选择方法二。2.4 显示部分方案论证方法一:LED数码管的结构简单, 分为七段和八段两种形式, 也有共阳和共阴之分。以八段共阴管为例, 它有8个发光二极管(比七段多一个发光二极管, 用来显示SP, 即点) , 每个发光二极管的阴极连在一起,这样, 一个LED 数码管就有1根位选线和8 根段选线, 要想显示一个数值, 就要分别对它们的高低电平来加以控制。一般的显示电路由多个数码管构成, N 个数码管可以构成N 位LED显示器, 共有N 根位选线和8N 根段选线。方法二:液晶显示器都是数字式的,不像阴极射线管彩显采用模拟接口

17、。也就是说,使用液晶显示器,显卡再也不需要像往常那样把数字信号转化成模拟信号再行输出了。晶显示器通过显示屏上的电极控制液晶分子状态来达到显示目的,即使屏幕加大,它的体积也不会成正比的增加,而且在重量上比相同显示面积的传统显示器要轻得多。其功耗主要消耗在其内部的电极和驱动IC上,因而耗电量比传统显示器也要小得多。在单片机系统中, 常用LED数码管来显示各种数字或符号。而本设计中要显示数字和字符,所以选择方法二。2.5 接口部分方案论证方法一:利用NPN、发光二极管电感等,自己搭建电路,其方法简单,器件容易购买到。方法二:利用MAX232芯片,次芯片是美信公司专门为电脑的RS-232标准串口设计的

18、接口电路,使用+5v单电源供电。内部结构基本可分三个部分:第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DB9插头;DB9插头的RS

19、-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。第三部分是供电。15脚DNG、16脚VCC(+5v)。用法简单快捷。基于方法一需要自己搭建电路,此过程可能会给电路带来不稳定因素的原因,选择方案二。3 硬件系统设计3.1 系统概述整个系统分为3大部分:语音采集部分、DSP处理部分、控制一显示部分。简单框图如下 图2 系统总体框图在DSP处理部分本系统采用合众达公司的SEED-VPM642/Vl.1型(大学基本配置方案)开发板作为主处理器。核心部分是DSP,采用TI公司的TMS320DM642,模数和数模装换芯片采用TI公司的TLV320AIC23B,

20、里面含有A/D、D/A转换,以及低通滤波器和采样保持电路,异步通信串口(UART,符合RS232标准)采用TL16C752B和MAX232实现,与显示器LCD相连,此开发板配置了四路语音输入和四路语音输出的接口,利用其中的一路语音输入,外接一个无源麦克风作为语音采集设备,通过DSP的编程实现语音采样率的设定,数据缓冲区的管理,最终对语音数据进行处理和分析输出识别结果。由于DSP板无法提供结果显示功能,本文自行开发了一个控制显示板来实现控制和显示功能。控制显示板上需配置一片单片机,LCD液晶显示器,RS232串口。控制显示部分通过串口与DSP板通信。控制一显示板向DSP板发送控制信息,控制DSP

21、板的动作(识别、训练和模板擦除)。AD转换后的数字语音数据以同步串行方式传给DSP,在DSP内部进行相关的算法处理后,将计算即识别结果送至UART串口,UART将识别结果送至LCD显示。从中可以看到,DSP承担着三种任务:语音的采集控制、同步信号提取、语音的分析和识别,而单片机主要完成对整个系统的控制以及处理结果的显示。 图3 语音识别系统硬件框图3.1.1 语音采集部分语音的采集是系统运行的第一步,也是整个系统关键的一步。SEED-VPM642提供了麦克风输入口,可接麦克风现场录音,由于麦克风输入口提供的功率不大,驱动能力有限,本文采用了耳机上自带的麦克风来进行语音输入,效果良好。为了保证系

22、统的输入正常和便于检测,本文在录音的同时把语音通过语音输出口回放出来。可通过音箱或耳机收听。模拟语音通过DSP开发板上的音频解码芯片TLV320AIC23B进行A/D、D/A转换。TLV320AIC23B(以下简称AIC23B)是TI推出的一款高性能立体声音频Codec芯片,内置耳机输出放大器,支持MIC和LINEIN两种输入方式(二选一),并且输入和输出具有可编程增益调节。AIC23B的模数转换(ADC)和数模转换(DAC)部件高度集成在芯片内部,采用了先进的Sigma-delta过采样技术,可以在8K到96K采样率范围内提供16位、20位、24位、32位采样,ADC和DAC的信噪比分别可以

23、达到90dB和100dB。同时, AIC23B还具有很低的能耗,回放模式下功率仅为23mW。3.1.2 DSP处理部分系统的处理部分选用合众达公司的SEED-VPM642开发板作为主处理器。它是一款专为各种视频应用而开发的PCI插卡或带10/100M以太网接口的独立的模板。其上包含:专用于数字媒体应用的高性能32位定点 DSPTMS320DM642,其工作主频高达720MHZ,处理性能可达5760MIPS,可实时实现多路数字视频/音频的编码运算,如:MPEG4、H.264、G.729等多路视/音频接口;4路PAL/NTSC制标准复合或Y/C模拟视频输入,1路PAL/NTSC制标准复合或Y/C模

24、拟视频输出,4路标准的Microphone输入或 Audio Line In立体输入,4路标准的Audio Line Out立体声输出;2路可编程切换的RS232/RS422/RS485异步接口,8路数字输入、8路数字输出,用于云台控制和环境监控;标准的ATA硬盘接口,实现数字视频录像机功能;高速数据传输接口;标准的32位、 33MHz、支持主/从模式的PCI2.2总线或 10/l00M以太网接口,方便实现数字视频服务器功能;实时时钟,为数字视频/音频提供实时基信号;软/硬件加密功能,更好地保护产品开发者的知识产权。SEED-VPM642的主要技术指标如下:1、主处理器:TMS320DM642

25、,工作频率高达720MHz,处理能力可达5760MIPS、SRAM:4MX64位,工作时钟133MHz2、Flash:4M*8位,70ns(20年数据保存,1000000次擦写)3、视频输入:4通道,DB-26连接器,PAL/NTSC标准模拟视频信号4、视频输出:1通道,DB-26连接器,PAL/NTSC标准模拟视频信号5、音频输入:4通道,DB-26连接器,Microphone输入、或 Line In输入,支持8kHz-96KHz16/21/24/32位采样6、音频输出:4通道,标准3.5mm Audio Jack连接器,Line Out输出7、异步串口:2通道,DB-26连接器,RS232

26、/RS422/RS485可编程配置,8、数字I/O:8路开入、8路开出,DB-26连接器9、PCI接口:32位、33MHz,支持主/从模式的PCI2.2标准10、ATA接口:带围墙的40-芯IDC针式插座,实现ATA的PI04.0传输方式11、工作温度:0-7012、机械尺寸:标准PCI半长卡(175mm*107mm)3.1.3 控制显示部分本部分由AT89S51芯片及其外围电路完成。其框图如下图4 控制显示框图AT89S51是一个功能强大性价比很高的一款芯片,在嵌入式控制应用中得到了广泛的应用,它的特点有:1、兼容MCS-51微控制器。 2、4KBFlash存储器,支持在系统编程ISP,10

27、00次擦写周期。3、128xsbit片内RAM。4、全静态时钟0-24MHz5、三级程序加密6、32个可编程1/0端口。7、2个16位定时/计数器。8、6个中断源9、可编程串口通信信道。10、低功耗支持Idle和Power-down模式。3.2 硬件电路设计3.2.1 DSP接口电路设计由于串口通信方便且稳定性高等优点,本文采用串口实现DSP开发板与控制显示板的通信。在SEED-VPM642上配置有二个通用异步串口,接口标准可由软件配置为RS232/RS422/RS485,它采用TL16C752B通用异步收发器UART,其上包含二路相互独立的异步收发器,接收和发送各带64字节FIF0,并各自带

28、有Modem接口信号,最高传输速率可达1.5Mbps。TL16C752B采用8位异步并行存储器接口,并采用 +3.3V电源供电,可以与TMS320DM642的外部存储器接口(EMIFA)直接连接。TL16C752B每个通道包含18个寄存器,通过地址A2-A0及寄存器位对它们进行寻址,A、B二通道分别由片选信号选通,本系统采用A通道。SEED-VPM642将TL16C752B配置在DM642的CEI空间,A通道所占地址范围为:0x90080000-0x90080007。在本设计中,TL16C752B的输入时钟为30.72MHz,波特率设为9600,连接电路图如下: 图5 DSP接口电路如图所示,

29、TL16C752的X1与X2外接振荡电路,TXA接转换电路的TXD,RXA接转换电路的RXD,D0D7接DSP的D0D7,A0A2接DSP的A0A2,与DSP的相连,与DSP的相连,与DSP的相连,INTB/A接DSP的INT1,两个芯片的复位电路相连,至此电路连接完成。3.2.2 串行接口电路设计本文采用RS-232串行接口标准。RS-232是PC机与通信工业中应用最广泛一种串行接口,是低速率串行通信中增加通信距离的单端标准。典型的RS-232信号在正负电平之间摆动,在发送数据时,发送端驱动器输出正电平范围是+5+lV;负电平范围是-5-15V。当无数据传输时,线上为TTL,从开始传送数据到

30、结束,线上电平从TTL电平到RS-232电平再返回TTL电平。接收器典型的工作电平范围是+ 3+12V与-3-12V。由于发送电平与接收电平的差仅为23V,所以其共模抑制能力差,再加上双绞线上的分布电容,其传送距离最大约15m,最高速率为20kbit/s。RS-232是为点对点(即只用一对收、发设备)通信而设计,所以RS-232适合本地设备之间的通信。由于TTL电平与标准的RS-232并不兼容,需要加上电平转换IC(在本文中采用MAX232芯片)方可与RS232接口相连。电路图如下 图6 串行接口电路如图MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的接口电路,使用+5v单电源

31、供电。1脚和3脚之间接一个10uF的电容,4脚和5脚之间接一个10uF的电容,2脚通过一个10uF的电容接5V电压,6脚通过10uF电容接地,其11脚和12脚与单片机的10脚和11脚相连,至此完成电平转换电路。3.2.3 单片机串行通信接口设计AT89S51单片机通过管脚RXD(串行数据接收端)和管脚TXD(串行数据发送端)与外界通信。SBUF是串口缓冲寄存器,包括发送寄存器和接收寄存器。它们有相同的名字和地址空间,但不会出现冲突,因为一个只能被CPU读出数据,另一个只能被CPU写入数据。单片机接口电路图如下 图7 单片机最小系统电路89S51的19和18脚与两个33uF的电容和一个11.09

32、5MHz的晶振构成一个振荡电路,9脚外接一个手动上电复位电路,使能端通过一个电阻接到5V电源上。至此,单片机最小系统电路完成。3.2.4 LCD电路设计液晶显示器LCD体积小,重量轻,功耗极低,应用十分广泛。本文采用的是北京精电篷远的MDLS2046点阵字符液晶显示模块。它由TN型液晶显示器、CMOS驱动器和CMOS控制器组成,模块内集成有字符发生器和数据存贮器,采用单一 V电源供电。MDLS2046有16条引脚,本文用14条,现分别介绍:1、VSS:地线输入端。2、VDD:+5V电源输入端。3、VO:液晶显示面板亮度调节,通过010 的电阻接到+5V和地之间起调节作用。4、RS:寄存器选择信

33、号输入线,低电平选通指令寄存器,高电平选通数据寄存器5、R/W:读/写信号输入线,低电平为写入,高电平为读出。6、E:片选信号输入线,高电平有效。7、D0-D7:数据总线。 图8 LCD接口电路如上图,在硬件设计电路中,LCD的8位数据线与单片机的P0口相连,中间接了一片74LS245总线收发器作为数据线的中继。RS接单片机的P2.0;R/W接P2.1;E接P2.2;至此LCD与单片机的硬件连接全部完成.4 软件实现4.1 DSP的软件实现系统的软件开发环境是TI公司推出的一个集成性DSPs软件开发工具 CCS(Code Composer Studio)。在一个开放式的插件(plu-in)结构

34、下,CCS内部集成了以下软件工具:C6000代码产生工具(包括C6000的C编译器、汇编优化器、汇编器和连接器);软件模拟器(Simulator);实时基础软件 DSP/BIOS;主机与目标机之间的实时数据交换软件RTDX;实时分析和数据可视化软件。在CCS下,可以对软件进行编辑、编译、调试、代码性能测试(profile)和项目管理等所有工作。除此之外,它还提供了实时分析和数据可视化功能,大大降低了DSP系统的开发难度。4.1.1 端点检测端点检测是指用数字处理技术来从含噪声的环境中检测出语音信号的起点和终点的位置。从语音信号中排除无声段,系统采用短时能量和过零率来实现,前者描述了信号的幅度,

35、后者描述了1 帧信号穿越0 电平的次数。在计算时能量前,对信号进行预加重,目的在于滤除低频干扰,将高频成分提高。然后对语音信号加汉明窗,再计算能量值进行判断。当语音信号的连续几帧的过零率超过过零率门限,那么就认为语音信号开始,如果语音信号的连续几帧的平均能量低于能量门限,那么就认为语音信号结束。根据语音学的知识,清音的过零率大多要比浊音的过零率高,幅度小。门限的点检测算法可以准确地检测出语音信号中有效的成份,为特征参数提取作充分的准备。图9 语音信号的短时能量和过零率4.1.2 语音特征提取语音信号的特征参数的提取是语音识别的关键,经常使用的特征参数有能量、间距频率、短时间频率、倒频线性预测系

36、数等。一些研究报告指出,间距频率是能表示个性的参数,在用线性预测系统、声道截面积函数、倒频谱等表示个性参数时倒频谱最好。一般情况下对特征参数的要求是能绝对有效的代表语音特征,包括声道特征和听觉特征,具有很好的区分性,各节参数之间有良好的独立性, MFCC的抗噪声能力优于LPCC综合考虑决定采用Mel频率倒谱系数(MFCC)作为语音的特征参数MFCC的计算流程可以简单的概括一下五个步骤:1.分帧2.DFT计算频谱系数3.对频谱系数的幅值取log4.将3中的结果转化为到Mel频表下5.做DCT变换 MFCC参数是目前大多数语音识别系统中广泛使用的特征参数,它是基于人耳的听觉特性。人耳的声音音调的感

37、受与其频率并不成线性关系。而Mel倒谱尺寸,则更符合人耳的听觉特性。MFCC与基于线性预测的LPCC相比,其突出优点是不依赖于全极点语音产生模型的假定,因而在噪声环境下表现出更强的鲁棒性图10 MFCC计算过程4.1.3 模式识别动态时间规整(DTW)将语音信号的每一帧信号的特征参数提取出来,就转化为了一组特征向量。语音的识别就是要将这个特征向量同模板库中已经存在的语音特征向量(参考模板)进行模板匹配,寻找距离最短的模板,由于读入的语音信号和参考模板语音长短不同,因此需要通过动态计算两个长度不同的模板之间的相似程度,或者叫做失真距离。假设测试和参考模板分别用T和R表示,为了比较它们之间的相似程

38、度,可以计算他们之间的距离DT,R,距离越小则相似度越高,为了计算这一失真距离,应从T何R中各个对应帧之间的距离算起。设n和m分别是T和R中任意选择的帧号,dT(n),R(m)表示这两帧特征矢量之间的距离。距离函数取决于实际采用的距离度量,在DTW算法中通常采用欧式距离。如果把测试模板的各个帧号n=1N在一个二维坐标系中的横坐标标出,把参考模板的各帧号m=1M在纵坐标轴上标出,通过这些表示帧号的整数坐标画出一些纵横线即可形成一个网路,网格中的每一个交叉点(n,m)表示测试模板中的某一帧与训练模板中的某一帧的交汇点,DTW算法可以归结为寻找一条通过此网格若干格点的路径,路径通过的格点即可测试和参

39、考模板中进行距离计算的帧号。路径不是随意选择的,首先任何一种语音的发音快慢都有可能变化,但是其各部分的先后秩序不可能改变,因此所选择的路径必定是从左下角出发,在右上角结束,如图所示。为了使路径不至于过分倾斜,将各线段的倾斜率限制在0.52的范围内。 通过将测试模板和模板库中各个参考模板分别进行模板匹配DTW运算,就可以找到与测试模板匹配距离最小的参考模板,这样就识别出了输入的语音信号。 图11 DTW算法搜索路径 图12 系统软件流程图 图13 识别模块流程图 整个系统工作在对串口的查询方式下,如串口有输入即根据输入进行处理。另外,语音的采集也采用查询方式。4.1.4 FLASH引导的实现引导

40、程序(也称 Boot Loader程序)的设计是开发DSP应用系统必须做的最后一步工作。在DSP的应用中,系统上电后需要将用户程序从FLASH存储器加载到高速数据存储器中运行。这就需要给通过JTAG口调试通过的应用程序添加一个引导代码,然后将生成的目标文件进行格式转换使其能在线烧写,将转换过的文件利用FLASH烧写程序通过JTAG口在线烧写到FLASH中。本文实现了自引导程序的编写、文件格式转换、命令文件的编写以及在线烧写的步骤和方法。从而整个系统可脱机运行,实现了真正的嵌入式开发。4.1.5FLASH的在线引导对于DSP芯片来说,它的内部ROM空间是有限的,生产商在这个小容量的ROM中固化了

41、一些程序和查找表,当上电复位后,程序指针自动指向ROM中的一个称为Boot的小程序,这个程序会根据环境选用相应的 Boot Loader方法将外部FLASH中的程序搬移到DSP片上的RAM中或片外的SDRAM中,并将程序指针移到执行程序的第一行处。而TMS320C64XDSP这个过程稍有不同,芯片上的ROM中的 Boot Loader程序会把FLASH中第一个lK字节的程序搬移到DSP内部的RAM中,然后程序指针指向此lK字节的程序开始执行。而用户的应用程序一般都要大于1K字节,所以这lK字节的程序一般为用户自己开发的引导程序,通过执行此引导程序把用户应用程序搬移到RAM中,程序指针跳转到程序

42、入口处,开始执行用户应用程序。4.1.6存储器配置文件完成FLASH的自举引导,首先要修改一下工程中的命令文件(.cmd)。命令文件就是指导连接器如何将程序各段分配到相应的RAM中。编写命令文件时,有一点需要注意,那就是在很多情况下需要对某段说明两个不同的地址:加载地址和运行地址。加载地址决定了二进制程序代码的存储位置和程序的引导地址,但在运行过程中对于该段的任何引用则是以它的运行地址作为参考的。因此,当用户对某段分别说明了加载地址和运行地址时,只有将该段从加载地址复制到运行地址上,该段才可以被访问。4.1.7用户引导代码的编写完成存储器配置文件后就要编写用户引导代码。DSP加电复位后,片上的

43、ROM程序从CEI空间(本工程中CEI空间映射到FLASH上,首地址为0x90000000)拷贝IK数据(用户引导代码)到RAM的0地址处然后从0地址处开始执行指令。4.1.8.OUT文件到.Hex文件的转换完成存储器配置文件的设置和用户引导程序的编写后,在CCS中设置Release版本即发行版,通过编译连接生成.out文件。由于.out是COFF格式,FLASH不支持这种格式,所以不能直接写入FLASH。必须对.out进行格式转换,形成数据文件即.hex文件,最后用FLASH烧写程序把转换好的.hex文件烧写到FLASH中。格式转换工具为T1提供的hex6x,具体步骤如下:1.建立一个文件夹

44、例如converter2.tie6000egtoolsbin目录下的hex6x可执行文件考到converter文件夹内。3.把需转换的.out文件也拷贝到converter文件夹内。4.在converter文件夹内建立一个xx.out文件同名的xx.cmd批处理文件。5.在操作系统 (WinXP)的命令行提示符中把converter目录设置成当前目录,敲入hex6x xx.cmd即可生成.hex文件。4.1.9 FLASH的烧写FLASH烧写需保证DSP板通过JTAG口与计算机连接正常。利用TI公司提供的一个名为FlashBurn的插件程序,先擦除FLASH中的全部内容,然后根据插件程序的图形

45、界面进行相应的配置即可烧写。4.2控制显示板软件设计控制显示板的软件设计分为3部分:串口中断编程,键盘键值扫描,LCD写数据及写控制命令。程序流程图如图12。 图14 控制显示程序流程图4.2.1.串口程序设计串口初始化。向串口控制与状态寄存器(SCON)写入0x40,选择工作方式1,初始化波特率发生器,波特率选择9600,与DSP开发板匹配。禁止Tl中断,允许串口中断,开中断,允许接收,串行口初始化完毕。串口数据收发采用中断方式。采用4号中断,3号寄存器。程序流程图如图13所示。图15 串口收发程序流程图4.2.2 LCD程序设计LCD程序设计分为两方面,写控制指令,写数据。1、液晶显示模块

46、指令系统。1)、清屏RSR/WDB7DB6DB5DB4DB3DB2DB1DB00000000001运行时间(250KHz):1.64ms功能:清DDRAM和AC值2)、归位RSRWDB7DB6DB5DB4DB3DB2DB1DB0000000001*运行时间(250KHz):1.64ms功能:AC=0,光标、画面回HOME位3)、输入方式设置RSRWDB7DB6DB5DB4DB3DB2DB1DB000000001I/DS运行时间(250KHz):40us功能:设置光标、画面移动方式。其中:I/D=1:数据读、写操作后,AC自动增一; I/D=1:数据读、写操作后,AC自动减一;S=l:数据读、写

47、操作后,画面平移S=0:数据读、写操作后,画面不动4)、显示开关控制RSRWDB7DB6DB5DB4DB3DB2DB1DB00000001DCB运行时间(250KHz):40us功能:设置显示、光标及闪烁开、关。其中:D表示显示开关:D=1为开,D=0为关;C表示显示开关:C=1为开,C=0为关;B表示显示开关:B=1为开,B=0为关.5)、光标、画面位移RSRWDB7DB6DB5DB4DB3DB2DB1DB0000000S/CR/L*运行时间(250KHz):40us功能:光标、画面移动,不影响DDRAM。其中:S/C=1:画面平移一个字符位;S/C=0:光标平移一个字符位;R/L=1:右移;R/L左移。6)、功能设置RSRWDB7

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1