您好, 访客   登录/注册

基于Speech SDK的Windows语音助手设计与研究

来源:用户上传      作者: 张志超,刘光富,单绍龙

  摘要:本文提出了Windows语音助手是帮助老年人进行计算机使用而开发的应用软件。对于老年人来说熟练的使用计算机是一件困难的事情。本文为老年人特殊群体提供了一个方便快捷的方式使用计算机。本文首先介绍了该系统的设计目标及功能结构,结合实际项目背景,提出了解决方案并以分模块的形式探讨了系统的功能,介绍了系统各部分的特点。经过测试基于Speech SDK 的Windows语音助手达到了设计要求,操作性能和使用方便性等各方面高于某些产品。
  关键词:Windows;语音助手;C#;XML
  中图分类号:TP391.42 文献标识码:A 文章编号:1007-9599 (2012) 11-0000-02
  目前专门针对于老年人的计算机软件还是很少,特别是忽略了老年人使用计算机的渴望。他们不能独立使用计算机,这就极大的影响了老年人的生活质量。但是,老年人迫切希望学会使用计算机,计算机会对他们的生活产生很多很大的便利,提高更好的晚年生活质量问题被提上了日程。随着社会老龄化的发展,老年人的市场变得无比巨大,已经有不少软件企业瞄准了这个新兴的市场。语音软件助手的开发能够帮助老年人方便使用计算机。
  一、开发环境
  Visual Studio 2008是微软公司推出的开发环境,Visual Studio可以用来创建Windows平台下的Windows应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和Office插件。数据库XML即可扩展标记语言,它与HTML一样,都是SGML,标准通用标记语言)。XML是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。
  二、Windows语音助手功能
  Windows语音助手由四个主功能模块构成。语音助手可以帮助用户使用语音进行Windows的常规操作。
  (一)语音识别模块 利用语音识别引擎实现对语音的识别,从而对语音指令做出相应的操作。程序内置了Windows的常用命令,用户也可以根据自身需求增加、查看、删除命令。另外本模块还提供了语音训练和语音选项。帮助计算机更好的识别用户的声音。
  (二)语音阅读模块 利用语音识别引擎实现Text To Speech(将文本转化为语音)功能,即将文本转化为音频资料。你可以随意打开系统内的text文本,也可以向文本框中输入文本。系统将会根据用户提供的文本进行朗读,在朗读过程中还可以进行语音和音速的改变。还可以将text文本转化为wav文件。
  (三)语音输入模块 利用语音识别引擎实现Speech To Text(将语音转化为文本)功能。即实现语音输入,将用户的声音转变为文本。可以帮助不会拼音和汉字的用户完成文本的输入。
  三、Windows语音助手详细设计
  语音识别功能 语音识别功能可以识别用户的语音指令,并让计算机执行用户的指令。
  (一)语音识别引擎 可以通过单击窗体右下角的喇叭图标使斜杠消失,这时语音引擎会打开。语音引擎打开时小精灵会有提示,这时你就可以通过麦克风控制电脑了。
  (二)指令的添加,查看与删除 可在窗口的名称,路径,类型中输入相应数据单击添加按钮,实现命令的添加,程序路径的添加可通过点击路径输入旁的圆形按钮,在系统中找到程序的主执行程序。可以单击已存在的指令查看指令信息,及正确格式。单击选中已存在的指令单击删除按键删除指令。
  (三)语音训练与语音选项 单击窗体右边的语音训练按键,可打开语音训练窗口,只有经常进行训练才能实现语音的高识别率。单击窗体右面的语音选项可以打开语音选项界面。当打开程序时要保证语音属性中的语音识别选项卡中的语言选项选中Microsoft Simplified Chinese Recognizer V5.1,这样引擎才会识别中文。
  语音阅读功能 点击主窗体上的语音阅读与输入按键可打开语音阅读与输入界面。
  1.阅读文本的载入
  当要使用阅读文本功能时,可以手工输入要阅读的文本或点击打开按键导入系统中已存在的文本。
  2.语音阅读功能
  1)朗读:开始对文本进行朗读。2)暂停:暂停对文本的朗读,点击继续可继续当前的朗读。3)停止:停止当前的朗读,开始点退回文本开头。4)保存为wav文件:可将文本文件保存为wav格式的音频文件。5)清空内容:清空阅读框中的内容。
  3.语音阅读操作
  1)语音选择:实现对发音语言的选择。2)音量:调节音量。3)音速:调节音速。
  语音输入功能 通过点击语音输入按钮可以实现语音输入功能。语音输入功能可以实现语音到文本的转化。
  四、系统测试
  测试是软件开发的重要环节之一。按照软件开发的过程测试可分为:单元测试、集成测试等。单元测试的目的在于发现各模块内部可能存在的各种差错。单元测试又称模块测试、逻辑测试或结构测试。测试的方法一般采用白盒法,以路径覆盖为最佳准则,且系统内多个模块可以并行地进行测试。集成测试也称组装测试,综合测试或联合测试。集成测试是按设计要求把通过单元测试的各个模块组装在一起以后进行测试,以便发现与接口有关的各种错误。在进行集成测试时,常需要考虑的有关问题有:数据经过接口是否会丢失;一个模块对另一个模块是否造成不应有的影响;几个子功能组合起来能否实现主功能;误差不断积累是否达到不可接受的程度;全局数据结构是否有问题。经严格测试,系统总体功能达到了设计要求,能够实现语音识别,语音阅读,语音输入和扩展模块。
  五、结论
  本文提出了开发利用语音助手帮助老年人方便使用计算机的思想。在此思想的基础上设计并开发了基于Speech SDK的Windows语音助手。系统功能总体达到了设计需求,已经能够实现语音识别,语音阅读,语音输入和扩展模块。语音助手能够方便老年人使用电脑,帮助提高老年人熟练地运用电脑进行生活和娱乐。
  参考文献:
  [1]沃森,内格尔.C#入门经典[M].北京:清华大学出版社,2010.1-199.
  [2]王小科,王军.C#开发实战1200例[M].北京:清华大学出版社,2011.65-234.
  [3]内格尔.C#高级编程[M].北京:清华大学出版社,2008.107-348.
  [4]陈佳.信息系统开发方法教程(第二版)[M].北京:清华大学出版社,2005.56-130.
转载注明来源:https://www.xzbu.com/8/view-3372372.htm