SRTP优秀作品.doc

第十一期SRTP特优项目总结

姓名:王超

题目:操作系统的语音控制扩展

导师:杨莹春

操作系统的语音控制扩展

项目总结

研究内容

随着计算机技术的快速发展和应用领域的不断扩大,在与计算机的交互中,人们越来越需要一种更方便、更自然的方式。而语言是人类交流信息最自然和最方便的手段。让计算机听懂我们说的话,从而让我们与计算机用语言方便自然地进行交流。

我们研究的是在操作系统的基础上开发一套用语音控制计算机的辅助软件系统,最终目标是实现完全用语音命令使用操作系统。我们的实验平台是微软Windows操作系统,并以XP为主。借鉴Windows Vista的语音控制方式,我们要做出能够在多种其他Windows系列操作系统上使用的语音控制辅助系统。

该系统的结构应该比较成熟,并实现基本的功能,可以完全使用语音命令来使用操作系统;系统必须具有很好的可扩展性,对新功能的需求可以动态添加,所以语音控制系统的可用性将不断的增加。该系统的构架是Core-Server-Utilities体系结构,即语音系统内核(Core)通过Server给各种实用程序(Utilities)提供服务。内核提供语音识别以及相关功能的实现;Server中可以注册并加载很多个实用程序;实用程序集是真正用来实现控制目的的程序集,通过调用Server提供的内核功能,每个实用程序给操作系统用户提供各自的语音控制功能。实用程序由我们开发一些常用的,以实现完全用语音控制操作系统;同时,由于内核接口是严格定义并公开的,实用程序也可由其他人编写并注册到Server中,以提供更方便更友好的用户界面。注释:这里所说的实用程序(Utility)并不一定要新建一个进程来运行,而是可以作为Server进程的一个线程来运行,这种方式将极大的降低系统的开销。

该系统需要实现的功能主要有以下几个:

通过语音命令来开启或停止语音对操作系统的控制。

通过语音命令来模拟键盘操作。用户说完“Keyboard”就能进入键盘操作模式,通过说出按键的名称能够完成相应键的按键动作,并且可以通过高级语音命令来完成组合键按键等操作。

通过语音命令开启语音控制鼠标操作。例如,当用户说完“Click”、“Double Click”、“Right Click”等命令时就能完成相应的点击动作;还可以通过语音命令来实现鼠标的精确移动,具体方式参考Windows Vista的MouseGrid命令。

通过语音命令来启动常用的程序,打开常用的文件或文件夹,以及执行注销、关机等操作。例如,当用户说完“Web Browser”后就能启动默认浏览器,说完“Shut Down”后通过确认对话框就能关机;用户可以把自己常用的文件或文件夹添加到语音启动列表,之后只要通过自定义的语音口令就能打开它们。这可以说是语音形式的快捷方式。

通过语音命令来完成Windows图形用户界面的基本操作。例如打开开始菜单,选择菜单项,打开桌面或资源管理器中的文件或文件夹,窗口的最大最小化与还原,关闭窗口,点击按钮等等。该功能的特色在于可以使用名字来指定操作对象,例如当前资源管理器窗口中有一个文件夹叫MyFolder,那么通过说“MyFolder”就能选中该文件夹,再说“Open”就能打开文件夹,或者说“Mouse Menu”就能打开右键菜单,等等。

上述功能的结合使用保证了用户能够完全通过语音控制来使用操作系统。

创新特色

我们的语音控制系统在组件结构以及部署结构上具有高度的灵活性与可扩展性。这主要体现在Core-Server-Utilities的体系结构上。下面将简单的描述该系统的体系结构:

位于最上层的每个Utility是一个负责完成相对独立的功能的部件,例如实现语音控制鼠标的Mouse Grid部件、实现语音控制键盘的Keyboard部件、实现语音命令快捷方式的User Command部件、实现语音控制Windows图形用户界面的Window Operator部件。这些部件以线程或进程的形式在系统中运行,每个部件不关心其他部件的行为,甚至不知道其他部件的存在;所有的部件都由Server集中管理(加载,卸载,启动,停止,排外(Exclusive)模式等等),Server提供了所有部件各自的接口需求以及部件之间的并发执行及同步问题。Utilities可以在Server的运行过程中动态的插入。

实际上,Utility本身不带有任何语音识别的能力。所有与语音识别相关的功能都由Core实现并提供一组标准的接口。所以在编写Utility时不需要关心语音识别,只需要使用Core提供的接口,得到用户输入的语音的识别结果,然后根据这个结果执行由Utility定义的操作。在Core和Utilities之间建立桥梁的就是Server,Server会把Core提供的接口交给每个Utilit

计算机专业srtp项目选题,SRTP优秀作品.doc相关推荐

  1. 计算机专业srtp项目选题,电气工程学院关于征集第六届SRTP项目选题的通知

    电气工程学院关于征集第六届SRTP项目选题的通知 各位老师: 重庆大学第六届SRTP项目申报工作已启动,为做好该项工作,学院拟先征集项目选题,请有意向指导SRTP的老师积极报名,尽量多报选题,以便学生 ...

  2. 计算机毕业做项目管理,计算机专业毕业论文-项目管理系统.doc

    计算机专业毕业论文-项目管理系统 毕 业 论 文 题 目 项目管理系统 结题时间 [摘 要]在当今社会,随着项目管理的理论方法及管理模式的普及,以及信息化进程的不断发展,越来越多的企业和组织在内部推广 ...

  3. 计算机专业英语选择题,计算机专业英语单选题

    计算机专业英语单选题集锦 1. A __D_copy is a copy of a current file made in order to protect against loss or dama ...

  4. 计算机教师信息化大赛作品,全国“xx杯”计算机专业类说课大赛优秀作品:信息化色彩搭配训练说课课件.ppt...

    全国"xx杯"计算机专业类说课大赛优秀作品:信息化色彩搭配训练说课课件.ppt 文档编号:907013 文档页数:21 上传时间: 2020-02-16 文档级别:普通资源 文档类 ...

  5. 计算机校本研修作业,计算机专业校本研修活动(精华).doc

    计算机专业校本研修活动(精华).doc <以"感恩"为主题报纸的制作>研修活动记录 组织者:李艳红 记录人:李跟升助理 研修主题:李艳红公开课Word排版<以&q ...

  6. 计算机教师信息化大赛作品,全国“xx杯”计算机专业类说课大赛优秀作品:信息化色彩搭配训练说课课件...

    <全国"xx杯"计算机专业类说课大赛优秀作品:信息化色彩搭配训练说课课件>由会员分享,可在线阅读,更多相关<全国"xx杯"计算机专业类说课大赛 ...

  7. 计算机专业教学实施,中职计算机专业教学项目的设计与实施

    [摘要]教学项目是强化核心技能训练的教学操作平台,系统设计与实施基于工作过程的教学项目,是中等职业学校专业教学改革的重点任务.本研究对中职计算机专业教学项目的设计与实施进行了深入分析和实践探索,从教学 ...

  8. 计算机专业的swot分析图,计算机专业学生个人SWOT分析示例.doc

    计算机专业学生个人SWOT分析示例.doc 一.个人背景 基本情况xxx,x,1992年出生,xxxx年x月考入xxx大学xxxx专业.二.内外部环境分析1.内部环境分析Strengths* 生活态度 ...

  9. 计算机程序UI设计员SWOT分析,计算机专业学生个人SWOT分析案例.doc

    计算机专业学生个人SWOT分析案例.doc (2页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.90 积分 一.个人背景: 基本情况:xxx,x,1 ...

最新文章

  1. 微信公众号可快速创建“门店小程序” 不用开发
  2. 【干货】网工面试最常见的几大问题,附答案
  3. Java-String类型的参数传递问题
  4. PHP引用全局作用域中可用的全部变量是,php全局变量之学习笔记
  5. html5中外描边怎么写,CSS3实现文字描边的2种方法(小结)
  6. [JAVA-坑]CGLib动态代理引起的空指针异常
  7. C语言之字符串探究(七):atoi、itoa——整型数字和字符串的相互转换
  8. 关闭多个activity
  9. JSON and Microsoft Technologies(翻译)
  10. ROS中记录数据与回放
  11. Chapter 2 multi-armed Bandit
  12. Linux 管道 管道命令 命名管道
  13. 医院在线预约挂号系统开源
  14. 为什么打开CAD显示驱动该文件(.hdi)缺少或已损坏?
  15. Cubase Pro v10.5 + Halion+ Groove Agent SE WiN 免安装版宿主软件
  16. 关于树莓派编译及运行Snowboy的详细教程。
  17. 工业嵌入式计算机系统介绍
  18. 华为HCIE证大数据证书社会认可度怎么样?
  19. python 单应性矩阵实现
  20. 把Linux系统安装在U盘上

热门文章

  1. 一步一步教你如何利用虚拟机软件安装ubuntu
  2. 全网最全最新安装nodes方式,楼主亲测好用
  3. 【LTE】为什么使用SNR来表征信道质量,而并不用RSRQ?这两者的区别是什么?
  4. Python 处理医学影像学中的DICOM
  5. oracle r12培训,Oracle ERP(R12)基本操作的培训
  6. 中级前端常见面试题(附答案),持续更新
  7. java 实现长轮询(LongPolling)
  8. 通过ROS控制真实机械臂(15) --- 视觉抓取之手眼标定
  9. HTML+CSS+JavaScript实现电子时钟(数字换成图片)
  10. select、selectExpr函数使用方式