摘要: 实现了一种基于语音识别技术的声控鼠标光标应用程序, 可以用语音控制鼠标光标移动到屏幕的任意位置, 能用来帮助伤残人士只用声音而不用鼠标和键盘就能操作电脑。分析了语音控制鼠标光标使用过程中的延时缺陷, 并做出了针对性的改进。

1 概述

电脑语音技术经过多年发展已经取得了巨大进步, 目前已经有一些产品和项目让人们有机会和计算机进行语音交互工作, 例如IBM公司的Viavoice 系列软件以及微软的新的Office 产品都有实用的语音功能, 可以进行语音听写录入文字等工作, 还出现了一些基于语音技术的应用系统。

语音技术特别是语音识别技术的发展, 使人们可能实现用语音控制电脑, 这对于世界上众多不能方便使用传统的鼠标及键盘的伤残人士有重大的意义; 另外在一些场合不方便操作电脑但又必须使用的情况下同样很有意义, 比如驾驶的同时查询电子地图。目前要真正控制一台图形界面的电脑, 必须做到使用语音控制也能像使用键盘和鼠标那样输入数据以及控制光标。因此一种有效的语音控制光标程序, 也就是可以定位在屏幕的任意位置, 并且可以模拟单击、双击拖拽等各种鼠标动作的语音控制程序, 对于实现语音控制电脑将是一个很有意义的工具。

本文利用微软的Speech SDK 5.1 免费的语音识别引擎和模拟鼠标技术, 用Delphi7.0 实现了一个语音控制鼠标应用程序, 可以实现语音控制鼠标移动、停止、单击等动作达到控制屏幕光标的作用, 并对语音控制鼠标程序中的延迟问题进行了分析, 提出并实现了一种改进方法。

2 基于语音识别的光标控制类型

目前有两种语音控制鼠标的模式: 一种是目标导向光标控制和方向导向光标控制[n]。对于前者, 用户需要用语音给出具体目标名称或者位置, 比如图标、菜单, 或者屏幕区域名称, 然后给出执行的命令如“单击”等, 这种方式对于单个软件还是有效的, 但是当目标增加的时候用户需要记忆很多目标的名称, 还可能出现同名称目标的情况, 因此工作中的错误率会增加。另一种方向导向光标控制又分为非连续控制和连续控制两种, 对于非连续的情况用户要同时说明方向和距离, 如命令“左8 厘米”, 那么光标就向左移动8厘米; 而对于连续的情况用户先说明方向如“向左”,光标就向左移动, 直到用户再说“停止”, 光标才停止运动。

本文讨论的声控光标是属于方向导向中的连续控制, 这种鼠标控制和日常的使用习惯比较一致, 用户使用起来比较适应。

3 实现

本文语音控制光标程序的语音控制是采用微软的Speech SDK 5.1 的语音识别引擎及其API 接口, 这是一个免费的开发包, 并且可以用它开发具有中文语音功能的软件。语音识别引擎通常可以分为两种工作方式, 一种就是命令控制(Command and Control) 方式, 这个方式下语音识别引擎可以识别简短的语音命令, 以便执行相应的程序; 另外一种是连续听写方式,这个模式下语音识别引擎要识别连续的语音, 这种功能实现起来比语音控制更复杂, 因为语音听写过程中需要对上下文以及相同相似发音的词语进行分析、作出判断, 而在命令控制语音方式中不需要作上下文分析。本文采用的是命令控制方式, 因为实现语音控制鼠标只需要对有限的几个简短的命令进行识别, 如“左”、“右”、“停”等。图1 是语音控制鼠标程序的结构图。

图1 语音控制鼠标程序结构

该应用程序主要包括两个部分: 第一部分语音控制应用主程序部分, 主要调用语音识别引擎识别用户的语音命令。

这部分程序主要完成几件工作:

①导入辞书文法文件(XML 格式, 其中定义感兴趣的语音命令) , 完成对语音识别引擎接口的初始化工作, 激活语音识别引擎;②接收语音识别引擎的识别结果, 根据识别结果调用相应的鼠标控制程序。

下面的语法文件中定义了方向命令和鼠标事件命令的语法规则:

<! - - Rule definiTIons - - >

停止

单击

双击

关闭

基于语音识别技术的声控鼠标光标程序设计相关推荐

  1. 语音识别解决的是计算机听得见的问题,语音识别技术所面临的问题与解决方案及未来发展...

    (1)预处理模块:对输入的原始语音信号进行处理,滤除掉其中的不重要的信息以及背景噪声,并进行语音信号的端点检测.语音分帧以及预加重等处理. (2)特征提取模块:负责计算语音的声学参数,并进行特征的计算 ...

  2. 语音识别技术原理是什么 讯飞语音识别技术特点介绍【详解】

    语音识别技术原理简介 自动语音识别技术(Auto Speech Recognize,简称ASR)所要解决的问题是让计算机能够"听懂"人类的语音,将语音中包含的文字信息"提 ...

  3. 自动语音识别技术(ASR)在聋哑儿童计算机辅助教学中的开发与应用

    自动语音识别技术(ASR)在聋哑儿童计算机辅助教学中的开发与应用 RDTE OF CAI FOR THE DEAF&DUMB CHILDREN BASED ON ASR   一.        ...

  4. 孤立词语音识别matlab,基于Matlab仿真的孤立词语音识别技术研究

    基于Matlab仿真的孤立词语音识别技术研究 摘要:研究一种改进的语音识别算法---改进的端点检测(滑动帧)动态时间规整(DTW)算法, 以一个能识别数字0-10的语音识别系统的实现过程为例,阐述了基 ...

  5. 数字媒体--基于语音识别、全息投影及虚拟现实技术的建筑体验与展示系统(记录,较简陋)

    一.设计目标 (1)设计的背景知识以及场地: 背景知识:一家建筑公司用于介绍其成功建筑案例. 场地:5m*6m会议室,拥有椅子和桌子. 场地设计图: (2)面向的用户:相关企业.政府部门.慈善机构等. ...

  6. 用语音合成技术构建智能交通系统:基于语音识别的智能交通系统实现

    作者:禅与计算机程序设计艺术 用语音合成技术构建智能交通系统:基于语音识别的智能交通系统实现 引言 智能交通系统是当前交通领域的一个重要研究方向,它通过利用先进的信息技术.通信技术和计算机技术,实现智 ...

  7. 基于动态时间规整算法(DTW)的语音识别技术研究-含Matlab代码

    ⭕⭕ 目 录 ⭕⭕ ⏩ 一.引言 ⏩ 二.动态时间规整算法基本原理 ⏩ 三.语音识别实例分析 ⏩ 四.参考文献 ⏩ 五.Matlab代码获取 ⏩ 一.引言 在语音识别技术的发展过程中,动态时间规整算法 ...

  8. 基于java SDK语音识别技术概述与调研

    语音识别技术概述与调研 语音识别已经成为人工智能应用的一个重点,通过语音控制设备简单方便,在各个领域兴起了研究应用的热潮.数据.算法及芯片是语音识别技术的3个关键,大量优质的数据.精准快速的算法和高性 ...

  9. 基于5G技术的智能导航机器人及AR巡逻应用开发项目实施方案(上)

    目录 1 项目总体概述 1.1 项目背景 1.2 建设内容 1.3 建设目标 2 项目需求理解 2.1 业务需求 2.2 功能需求 3 项目技术方案 3.1 建设方案 3.1.1 设计思路 3.1.2 ...

最新文章

  1. MySQL 5.5 服务器变量详解(二)
  2. 数据库管理专才四步走
  3. 深井软岩巷道群支护技术与应用_金能煤业公司组织观看千米深井软岩巷道大变形机理及围岩控制技术讲座...
  4. 如何在JavaWeb程序中使用tld文件
  5. 怎么用追 MM 来理解 23 种设计模式?
  6. 计算机网络最出优秀,职业高中计算机网络案优秀教案.doc
  7. 编程及C/C++初学者FAQ
  8. MinDoc 权限的简单配置
  9. matplotlib之hist
  10. centos7 配置phpAdmin
  11. 物联网和新的计算范式
  12. tomcat配置BIO,NIO和APR
  13. 上古卷轴3晨风详尽指引攻略2
  14. 爬取天猫店铺列表页的所有数据
  15. 我的世界1.12.2java下载_我的世界:Minecraft Java版 1.12.2-pre1发布
  16. 智能人员考勤系统(C语言)
  17. 西安电子科技大学计算机834,西安电子科技大学834数据结构2021年硕士研究生招生考试自命题科目考试大纲...
  18. 立秋后6大脏器排毒法 干净才是真正文艺范儿(转)
  19. SSH免密登陆节点互信
  20. 电工学简明教程笔记-----第二更 2018 3.11 15:25

热门文章

  1. autoLayout+sizeClass屏幕适配
  2. Maven编译时跳过Test
  3. hive并行执行job
  4. Python2.5.4移植到arm-linux
  5. HDU1214 圆桌会议【数学】
  6. CCF201912-2 回收站选址(100分)【序列处理】
  7. HDU1642 UVA167 UVALive5227 The Sultan's Successors题解
  8. 动态更新 HTML 内容 —— AJAX
  9. MySQL 基本信息的查询(初始化配置信息 my.ini)
  10. 【脑筋急转弯】—— 在网格中移动