基于虚拟仪器的语音合成与识别系统技术方案

技术编号:17251465 阅读:72 留言:0更新日期:2018-02-11 10:25
本发明专利技术涉及一种语音合成与识别系统,具体涉及一种基于虚拟仪器的语音合成与识别系统,包括:语音采集模块、语音识别模块、语音合成模块和模拟系统操作模块;所述语音采集模块用于通过麦克风获取语音信号;所述语音识别模块用于将麦克风收集到的语音信号进行识别,并将语音信号转化为文本格式;所述语音合成模块用于将文本格式的文字内容转化为语音信号,并将语音信号通过扬声器进行播放;所述模拟系统操作模块用于识别并执行语音信号中的操作指令。本发明专利技术可以完成人机交互功能的系统,使该系统能够做到语音采集、语音合成、语音识别和模拟系统操作等功能。

【技术实现步骤摘要】
基于虚拟仪器的语音合成与识别系统
本专利技术涉及一种语音合成与识别系统,具体涉及一种基于虚拟仪器的语音合成与识别系统。
技术介绍
语言是人类最重要的交际工具,是人们进行沟通交流的各种表达符号。同时,语言也成为了人与计算机相互沟通的重要途径,而人们若想使用语言与计算机之间达到理想的交流效果,需要语音合成技术与语音识别技术这两项关键技术的支持。计算机根据语音合成技术,能够将文本文字转化为语音信号传达到人们的耳中,同时运用语音识别技术听清人们所说的话语,从而达到人机交互的目的。因此语音合成技术与语音识别技术的开发也成为了人机交互中一个十分重要的课题。因此,需要一个可以完成人机交互功能的系统,使该系统能够做到语音采集、语音合成、语音识别和模拟系统操作等功能。
技术实现思路
本专利技术的目的在于提供一种基于虚拟仪器的语音合成与识别系统,采用LabWindows/CVI作为开发平台,通过MicrosoftSpeechSDK语音开发工具进行开发,实现语音采集、语音合成、语音识别和模拟操作功能。本专利技术提供了一种基于虚拟仪器的语音合成与识别系统,包括:语音采集模块、语音识别模块、语音合成模块和模拟系统操作模块;语音采集模块用于通过麦克风获取语音信号;语音识别模块用于将麦克风收集到的语音信号进行识别,并将语音信号转化为文本格式;语音合成模块用于将文本格式的文字内容转化为语音信号,并将语音信号通过扬声器进行播放;模拟系统操作模块用于识别并执行语音信号中的操作指令。进一步地,语音采集模块在获取语音信号之前还用于:检测麦克风参数;初始化麦克风,并配置麦克风参数;获取麦克风属性,确定采集的方式;开启麦克风,进行语音信号采集。进一步地,语音合成模块具体用于语音朗读、暂停朗读、语速调节及音量调节。进一步地,语音识别模块在语音信号识别之前还用于:通过模式匹配法对语音识别模块进行训练,具体包括:多次获取语音信号的矢量特征记录在模板库中;获取待识别语音信号的特征矢量与模板库中的每个模板进行相似度比较,将相似度最高者作为识别结果输出。进一步地,模拟系统操作模块具体用于:模拟键鼠输入,包括通过语音命令对鼠标进行移动、单击、双击、左右键选择操作及模拟按键操作;执行相应的系统操作命令,包括通过语音命令对计算机进行关机、重启、缩小窗口、放大窗口、打开任务管理器、切换输入法操作;打开相应的应用程序,包括打开常用的软件、记事本、浏览器、命令行窗口;及简单的语音交流。与现有技术相比本专利技术的有益效果是:可以完成人机交互功能的系统,使该系统能够做到语音采集、语音合成、语音识别和模拟系统操作等功能。附图说明图1是本专利技术一种基于虚拟仪器的语音合成与识别系统的结构框图。具体实施方式下面结合附图所示的各实施方式对本专利技术进行详细说明,但应当说明的是,这些实施方式并非对本专利技术的限制,本领域普通技术人员根据这些实施方式所作的功能、方法、或者结构上的等效变换或替代,均属于本专利技术的保护范围之内。参图1所示,本实施例提供了一种基于虚拟仪器的语音合成与识别系统,该系统包括主要由四个模块构成:语音采集模块10、语音识别模块20、语音合成模块30和模拟系统操作模块40,硬件设计上,主要包括PC设备、麦克风、扬声器以及PC设备主板所自带的声卡设备。在软件实现的过程中,主要借助LabWindows/CVI这一虚拟仪器平台,LabWindows/CVI向用户提供便利的面板设计功能,供设计语音交互系统的软件界面,同时完全基于ANSIC的开发平台便于使用MicrosoftSpeechSDK语音开发工具。下面对该系统的各模块进行详细描述。语音采集模块:语音采集模块,主要靠配置麦克风参数来实现,这一个过程在软件设计上可以借助windows自带的API——WAVEAPI实现。为获取语音信号,需采用如下步骤:(1)检测麦克风参数,获取计算机中存在声卡数目,即存在的音频输入设备的数量,一般选择默认输入设备。(2)初始化麦克风,并配置麦克风参数。(3)获取麦克风属性,确定采集的方式,主要了解麦克风有多少个声音通道,一般较为常见的是单通道和双通道,同时确定采样频率,主要分三类:11.025khz、22.05khz和44.1khz。(4)开启麦克风,进行语音信号采集。通过设置麦克风参数实现语音信号采集功能,其中运用到了Windows的API接口WAV-API接口进行程序设计。本模块的设计流程是按照检测麦克风、配置麦克风、获取麦克风属性、确定采集数据方式、开启麦克风、波形显示处理进行的。具体地:检测麦克风功能,能够检测与计算机连接的麦克风设备,同时统计计算机设备上可以用于音频输入的声卡设备的数量。同时,还能够获取麦克风设备的相关属性,如设备ID,使用状态,支持的通道数量,数据格式,采样频率等等。配置麦克风功能,主要配置麦克风的设备ID、用户回调函数、波形格式的缓冲区格式、缓冲区大小,然后打开麦克风设备,测试数据接收与发送功能是否完好。(1)获取麦克风属性,确定需要用来进行语音信号采集的声卡的位数,从而确定采样位数。(2)开启麦克风,收集语音信号,并将数据储存。(3)波形显示处理,该模块需区分是采用8位采样还是16位采样。8位数据采集下,将显示时域信号波形,而16位能够显示时域信号波形和频谱波形。因为16位声卡能够将语音信号精确识别到65535个单位,而8位声卡只能显示到256位单位,造成较大的信号损失。语音合成与识别模块语音合成模块和语音识别模块,借助MicrosoftSpeechSDK工具进行开发。MicrosoftSpeechSDK它按照COM标准开发,包括底层协议都是以C0M组件的形式完全独立于应用程序层,使开发者在应用程序设计过程中省去了复杂的语音技术,让我们的语音开发完全可以基于COM。在本项目设计中,语音识别模块就由识别引擎(RecognitionEngine)管理,语音合成模块就由语音合成引擎(SynthesisEngine)负责。语音开发的功能既然由COM接口共同完成,那么我们在设计的过程中,须遵守特定的工作程序。概况成一句话,就是语音开发的工作原理需遵循COM组件的工作原理和一般Windows应用程序的工作原理(消息驱动机制),具体的实现流程如下:(1)COM平台初始化,确保COM在整个程序的执行过程中是存在的,在程序运行结束之前再将其释放资源。(2)将各个语音接口定义语音接口对象,并且要按照特定的工作顺序,在语音识别模块中,需要设置语音识别语法规则、语音信号辨识,使识别引擎处于工作状态;在语音合成模块中,需要设置朗读对象、朗读模式,使合成引擎处于工作状态。(3)在语音识别模块中,语法规则被识别后,需向应用程序发出语音识别的消息,从而调用识别消息的响应函数,这一步主要靠IspRecoContext接口完成。同时获取到语音识别的消息后,ISpPhrase接口将会获取语音识别的结果。上述步骤可以循环,直到停止语法规则为止。(4)在语音合成模块中,主要通过定义朗读对象,朗读时的工作模式(同步或异步),调用IspVoice语音合成接口便可完成。(5)当退出语音交互系统时,需卸载掉COM平台,以防出现系统错误。该语音合成模块的主要功能是由四个部分构成:(1)语音朗读功能,实现该模块最为核心的TTS转化本文档来自技高网...
基于虚拟仪器的语音合成与识别系统

【技术保护点】
一种基于虚拟仪器的语音合成与识别系统,其特征在于,包括:语音采集模块、语音识别模块、语音合成模块和模拟系统操作模块;所述语音采集模块用于通过麦克风获取语音信号;所述语音识别模块用于将麦克风收集到的语音信号进行识别,并将语音信号转化为文本格式;所述语音合成模块用于将文本格式的文字内容转化为语音信号,并将语音信号通过扬声器进行播放;所述模拟系统操作模块用于识别并执行语音信号中的操作指令。

【技术特征摘要】
1.一种基于虚拟仪器的语音合成与识别系统,其特征在于,包括:语音采集模块、语音识别模块、语音合成模块和模拟系统操作模块;所述语音采集模块用于通过麦克风获取语音信号;所述语音识别模块用于将麦克风收集到的语音信号进行识别,并将语音信号转化为文本格式;所述语音合成模块用于将文本格式的文字内容转化为语音信号,并将语音信号通过扬声器进行播放;所述模拟系统操作模块用于识别并执行语音信号中的操作指令。2.根据权利要求1所述的一种基于虚拟仪器的语音合成与识别系统,其特征在于,所述语音采集模块在获取语音信号之前还用于:检测麦克风参数;初始化麦克风,并配置麦克风参数;获取麦克风属性,确定采集的方式;开启麦克风,进行语音信号采集。3.根据权利要求2所述的一种基于虚拟仪器的语音合成与识别系统,其特征在于,所述语音合成模块具体用于语音朗读、...

【专利技术属性】
技术研发人员:隋美丽朱青松吕江毅龙建
申请(专利权)人:北京电子科技职业学院
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1