对话音激活用户界面执行的选择确认的制作方法

文档序号:2836864阅读:387来源:国知局
专利名称:对话音激活用户界面执行的选择确认的制作方法
对话音激活用户界面执行的选择确认北曰 冃豕语音识别应用程序识别语音并基于所识别的语音生成文本和/或执行命令。语 音识别很容易出错,结果,时常显示错误文本或者执行错误命令。以上讨论仅提供一般背景信息,并非旨在用于帮助确定要求保护主题的范围。简述话音激活用户界面("ur)在命令执行之前对命令进行选择性证实。调用语 音识别组件来识别来自用户的语音输入。如果语音输入是命令,则调用证实组件来 判定是否证实该命令。基于所输入的命令,该证实组件提示用户确认或证实该用户 期望执行所输入的命令。提供本概述来以简化形式引入将在以下详细描述中进一步描述的概念精选。 本概述不旨在标识要求保护主题的关键特征或本质特征,也不旨在用于帮助确定要 求保护主题的范围。附图简述图i是可实践本发明的一个计算环境的框图。 图2是可实践本发明的一替换计算环境的框图。图3是包括用于应用程序指令的证实组件的话音激活用户界面的一实施方式的框图。图4是示出用于实现根据本发明的话音激活用户界面的一实施方式的流程图。 说明性实施方式的详细描述

图1示出在其上可以实现各实施方式的合适计算系统环境100的示例。计算 系统环境IOO只是合适计算环境的一个示例,并不旨在对本发明的使用范围或功能 提出任何限制。计算环境100也不应被解释为对在示例性计算操作环境100中示出的组件中任一个或组合有任何依赖或要求。各实施方式可在许多其它通用或专用计算系统环境或配置中操作。适用于各 个实施方式的公知计算系统、环境和/或配置的示例包括,但不局限于个人计算 机、服务器计算机、手持或膝上型设备、多处理器系统、基于微处理器的系统、机 顶盒、可编程消费电子设备、网络PC、小型计算机、大型计算机、电话系统、包 括以上系统或设备中任一个的分布式计算环境等。各实施方式可在由计算机执行的诸如程序模块的计算机可执行指令的通用上 下文中描述。通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、 程序、对象、组件、数据结构等。某些实施方式被设计成在其中由通过通信网络链 接的远程处理设备执行任务的分布式计算环境中实施。在分布式计算环境中,程序 模块位于包括存储器存储设备的本地和远程计算机存储介质中。参照图1,用于实现某些实施方式的示例性系统包括计算机iio形式的通用计 算设备。计算机110的组件可包括,但不局限于处理单元120、系统存储器130以及将包括系统存储器在内的各种系统组件耦合到处理单元120的系统总线121。 系统总线121可以是若干类型总线中的任一种,包括存储器总线或存储器控制器、外围总线和使用各种总线架构中任一种的局域总线。作为示例而非限制,这种架构包括工业标准架构(ISA)总线、微信道架构(MCA)总线、增强的ISA (EISA) 总线、视频电子技术标准协会(VESA)局域总线以及也被称为附夹板(Mezzanine) 总线的外围组件互连(PCI)总线。计算机110通常包括各种计算机可读介质。计算机可读介质可以是可由计算 机IIO访问的任何可用介质,并且包括易失性和非易失性介质、可移动和不可移动 介质。作为示例而非限制,计算机可读介质包括计算机存储介质和通信介质。计算 机存储介质包括以任何方法或技术实现的用于存储诸如计算机可读指令、数据结 构、程序模块或其它数据的信息的易失性和非易失性、可移动和不可移动介质。计 算机存储介质包括,但不局限于RAM、 ROM、 EEPROM、闪存或其它存储技术、 CD-ROM、数字多功能盘(DVD)或其它光盘存储、盒式磁带、磁带、磁盘存储 或其它磁性存储设备、或可用于存储所需信息并可由计算机110访问的任何其它介 质。通信介质通常具体化为诸如载波或其它传输机制的调制数据信号中的计算机可 读指令、数据结构、程序模块或其它数据,并可包括任何信息传输介质。术语"调 制数据信号"表示以在信号中编码信息的方式设置或改变其一个或多个特征的信 号。作为示例而非限制,通信介质包括诸如有线网络或直接接线连接的有线介质, 以及诸如声学、RF、红外线的无线介质和其它无线介质。以上中任一个的组合也5应包含在计算机可读介质的范围内。系统存储器130包括诸如只读存储器(ROM) 131和随机存取存储器(RAM) 132的易失性和/或非易失性存储器形式的计算机存储介质。包含在诸如启动期间帮 助在计算机110内元件之间传递信息的基本例程的基本输入/输出系统133 (BIOS) 通常存储在ROM 131中。RAM 132通常包含可由处理单元120即时访问和/或正 在其上操作的数据和/或程序模块。作为示例而非限制,图1示出操作系统134、应 用程序135、其它程序模块136和程序数据137。计算机110还可包括其它可移动/不可移动、易失性/非易失性计算机存储介质。 仅作为示例,图1示出从不可移动、非易失性磁性介质读取或向其写入的硬盘驱动 器141、从可移动、非易失性磁盘152读取或向其写入的磁盘驱动器151、和从诸 如CD ROM或其它光学介质的可移动、非易失性光盘156读取或向其写入的光盘 驱动器155。可用于示例性操作环境的其它可移动/不可移动、易失性/非易失性计 算机存储介质包括,但不局限于磁带盒、闪存卡、数字多功能盘、数字录像带、 固态RAM、固态ROM等。硬盘驱动器141通常由诸如接口 140的不可移动存储 器接口连接到系统总线121,而磁盘驱动器151和光盘驱动器155则通常由诸如接 口 150的可移动存储器接口连接到系统总线121。以上描述和图1中示出的驱动器及其关联的计算机存储介质为计算机110提 供计算机可读指令、数据结构、程序模块和其它数据的存储。例如在图1中,硬盘 驱动器141被示为存储操作系统144、应用程序145、其它程序模块146和程序数 据147。注意,这些组件可与操作系统134、应用程序135、其它程序模块136和 程序数据137相同或不同。在此对操作系统144、应用程序145、其它程序模块146 和程序数据147给出不同的附图标记说明至少它们是不同的副本。用户可通过诸如键盘162、麦克风163和诸如鼠标、跟踪球或触摸垫的定点设 备161的输入设备向计算机U0输入命令和信息。其它输入设备(未示出)可包括 操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些和其它输入设备通常由耦合 到系统总线的用户输入接口 160连接到处理单元120,但是也可由诸如并行端口、 游戏端口或通用串行总线(USB)之类的其它接口和总线结构连接。监视器191 或其它类型的显示设备也可经由诸如视频接口 190的接口连接到系统总线121。除 了监视器之外,计算机还可包括可以通过输出外围接口 195连接的诸如扬声器197 和打印机196的其它外围输出设备。计算机110可在使用到诸如远程计算机180的一个或多个远程计算机的逻辑连接的网络化环境中操作。远程计算机180可以是个人计算机、手持式设备、服务器、路由器、网络PC、对等设备或其它公共网络节点,并且通常包括以上相关于 计算机110描述的组件中的多个或全部。在图1中所描绘的逻辑连接包括局域网 (LAN) 171和广域网(WAN) 173,但是也可以包括其它网络。这种网络环境在 办公室、企业内部计算机网络、内联网和因特网中十分常见。当在LAN网络环境中使用时,计算机IIO通过网络接口或适配器170连接到 LAN 171。当在WAN网络环境中使用时,计算机110通常包括调制解调器172或 用于在诸如因特网的WAN 173上建立通信的其它装置。或为内置或为外置的调制 解调器172可经由用户输入接口 160或其它适当机制连接到系统总线121。在网络 化环境中,相关于计算机110描述的程序模块或其部分可存储在远程存储器存储设 备中。作为示例而非限制,图1将远程应用程序185示为驻留在远程计算机180 上。应该理解,所示网络连接是示例性的,且可以使用在计算机之间建立通信链路 的其它装置。图2是作为示例性计算环境的移动设备200的框图。移动设备200包括微处 理器202、存储器204、输入/输出(I/O)组件206和用于与远程计算机或其它移 动设备通信的通信接口 208。在一实施方式中,在合适总线210上对上述组件进行 耦合来彼此通信。存储器204被实现为诸如具有电池备用模块(未示出)的随机存取存储器 (RAM)的非易失性电子存储器,使得当移动设备200的总电源关断时存储在存 储器204中的信息不会丢失。在一说明性实施方式中,存储器204的一部分被分配 为用于程序执行的可寻址存储器,而存储器204的另一部分用作存储以例如模仿盘 驱动器上的存储。存储器204包括操作系统212、应用程序214以及对象存储216。在操作期间, 操作系统212由处理器202从存储器204执行。在一较佳实施方式中,操作系统 212是可从微软公司购得的WINDOWS CE牌操作系统。操作系统212为移动设 备设计,并且实现可由应用程序214通过一组暴露应用编程接口和方法来使用的数 据库特征。对象存储216中的对象可至少部分地响应于对所暴露应用编程接口和方 法的调用而由应用程序214和操作系统212维护。通信接口 208表示允许移动设备200发送和接收信息的多种设备和技术。该 设备包括例如有线和无线调制解调器、卫星接收器和广播调谐器。移动设备200 还可直接连接到计算机以与之交换数据。在这种情形中,通信接口 208可以是红外收发器或串行或并行通信连接,所有这些都能够发送流信息。输入/输出组件206包括诸如触敏屏幕、按钮、滚轮和麦克风的各种输入设备, 以及包括音频生成器、振动设备和显示器的各种输出设备。以上所列设备是作为示 例的,并不需要都在移动设备200上出现。此外,可向移动设备200上附连或在其 上找到其它输入/输出设备。图3示出允许话音激活应用程序300的用户界面250的系统。如图3所示, 该系统包括语音支持组件302。语音支持组件302被配置成调用语音识别组件304, 语音识别组件304例如通过麦克风或其它语音输入设备从用户接收音频输入306, 并且解码该语音以标识由叙述310和/或命令312组成的文本309。叙述310的示例 包括文字处理文档的正文和/或电子邮件消息的正文。命令312包括执行诸如"发送"、"打印"、"删除"或"保存"的任务的指令。 语音支持组件302检查用户界面250以确定在界面上示出哪些元素以及与每个元素 相关联的标签。基于标签和界面元素,语音支持组件302建立由语音识别组件304 用于将某些所识别的词语和短语指定为命令的语法314。通常,语法314会为命令 定义规则,使得可在前导无声暂停和结尾无声暂停之间找到命令。语音支持组件302可调用证实组件320来在执行命令312之前通过用户界面 250证实命令312。证实组件320可以是单独的对象模块或者可与语音支持组件302 集成。证实组件320可使用不同的证实技术来证实输入命令312。 一个这种技术将输 入命令312与数据存储322中的破坏性的单音节命令列表进行比较。破坏性命令是 不能容易撤消的命令。例如,命令"发送"是单音节命令并且可被视为破坏性的, 因为在许多电子邮件系统中,电子邮件文档不能在发送命令已被执行之后取消发 送。选择诸如"发送"的单音节命令来证实是因为它们常常被错误识别。由于证实 需要用户输入,因此期望将证实仅限制在其中可能发生错误识别的情形。本发明发 明人发现错误识别更容易对单音节词语发生,并且因此,在一实施方式中,只对单 音节指令执行证实。如果输入命令312是数据存储322中的破坏性命令之一,则证实组件320会 如框324所示地提醒用户确认该用户期望继续。例如,如果用户创建电子邮件消息 并说出词语"发送",则证实组件300会提示用户确认该用户期望发送电子邮件。证实提示或消息324可通过应用程序300的用户界面250显示或实现。证实 提示可通过不同形式实现。例如,可以使用音频提示或文本提示。在一实施方式中,通过视觉上加亮计算机显示或屏幕上对应于命令312的按钮或图标来提示用户确认命令312。然后,用户确认该用户期望执行所加亮的命令。 该用户可通过使用是/否反馈选项来确认所加亮的命令。或者,应用程序300可显 示这样的消息应用程序300会在一段延时之后执行该命令除非用户向应用程序或程序作出相反指示。图4是示出用于实现计算机应用程序或程序的话音激活界面的步骤的流程图。 如图所示,语音支持组件302调用语音识别组件304接收输入语音,如步骤350 所示。在步骤352,语音识别组件304确定该输入语音是叙述还是应用程序命令。基于输入语音的属性以及基于应用程序命令的语法314来区别文本和命令。 例如,命令的区别属性可包括将命令从话语的其余部分分开的前导和结尾暂停。然而,在另一实施方式中,可以使用自由形式的语音叙述,并且仍然使用命 令确认或证实。如果所识别语音是叙述,则将文本置于用户界面250的当前活动用户界面元 素中,如步骤354所示。如果所识别的语音是命令,则证实组件320判定该命令是破坏性的还是非破 坏性的,或者是否请求确认,如步骤356所示。在所示实施方式中,如果该命令是破坏性的,则向用户请求确认,如框358 所示。如果命令是非破坏性的,则在步骤359,将该命令转换成对用户界面元素的 选择,并对选择方法进行调用。如步骤360所示,如果破坏性命令被用户确认,则在步骤359,该命令被转换 成对用户界面元素的选择。否则,如果用户没有确认该命令,则不执行该命令。该 过程等待下一语音输入,如步骤399所示。证实组件320使用数据存储322中的命令列表来在执行命令之前选择性请求 确认。使用数据存储来标识破坏性或单音节命令以在执行之前确认,这减少了无意 任务或功能的错误识别和执行。破坏性命令列表可被手动输入到数据存储322中。例如,破坏性命令可在没 有用户输入的情况下输入。在另一实施方式中,可基于来自用户的反馈而生成数据 存储322记录。在又一实施方式中,终端用户可对应用程序进行配置(即使在应用 程序运行期间)以修改数据存储322中的破坏性词语列表。例如,如果语音识别组 件304输出命令"运行",但是用户并未说出或打算进行"运行"命令,则用户可 向应用程序提供表明存在识别错误的反馈。具体而言,用户可表明该命令"运行"不应被执行以及"运行"命令必须在以后证实。然后,该命令被添加到数据存储322,使得以后在执行该命令之前向用户作出提示。在说明性实施方式中,应用程序本身可用破坏性命令列表来填充数据存储 322。这可通过若干方法实现。根据一种方法,当安装应用程序时,该应用程序将 破坏性命令列表填充到数据存储322。根据另一方法,应用程序动态地将用户界面250中的某些元素标记为破坏性 的。因此,当语音支持组件302与应用程序300接口以确定所显示的元素或界面命 令时,语音支持组件302还可确定哪个命令或哪些命令是破坏性的。例如,在一个 界面或应用程序中,当用户说出"红"(对红旗)时,"红"被标记为破坏性的,并 且使用确认步骤来确认语音命令或话语的执行。在同一应用程序的不同部分或者不 同应用程序中,"红"只可以改变文本的色彩,因此,"红"不被标记为破坏性的并且不使用确认步骤。关于其中命令是破坏性的实例的信息可被嵌入到破坏性命令列表中。例如,"发送/全部应用程序"表示"发送"命令对所有应用程序都是破坏性的,而"红 /alertmonitor (报警监视器)"表示"红"只对被称为"alertmonitor"的应用程序是 破坏性的。因此,在说明性实施方式中,数据存储322可以是静态存储,或者作为替代, 数据存储322可被动态填充,并且应用程序并不限于所述特定实施方式。虽然在结构特征和/或方法动作专用的语言中对主题进行了描述,但是应该理 解,在所附权利要求书中定义的主题不必受限于上述具体特征或动作。相反,上述 具体特征和动作作为实现权利要求的示例形式而公开。
权利要求
1.一种用于证实计算机可执行音频命令的系统,包括证实组件,配置成从语音识别组件接收命令并基于应用程序命令的数据存储来确定是否要证实所述命令。
2. 如权利要求l所述的系统,其特征在于,所述数据存储包括破坏性命令列表。
3. 如权利要求2所述的系统,其特征在于,所述数据存储中的所述应用程序 命令全部是单音节的。
4. 如权利要求l所述的系统,其特征在于,所述证实组件通过调用用户界面以提示用户确认所述命令的执行来证实所述命令。
5. 如权利要求4所述的系统,其特征在于,所述用户界面包括确认所述命令 实现的音频提示或文本提示之一。
6. 如权利要求l所述的系统,其特征在于,所述数据存储包括破坏性指令和 关于其中所述破坏性指令应被证实的实例或应用程序的信息的列表。
7. 如权利要求l所述的系统,其特征在于,还包括用于从语音输入识别所述 命令的语音识别组件。
8. —种话音激活用户界面,包括语音支持组件,能够调用语音识别组件来识别来自用户的音频输入命令的语音.证实组件,响应于所述音频输入命令而被调用,以确定是否要证实所述音频 输入命令;以及用户界面,具有由所述语音支持组件基于所述音频输入命令而选择的界面元素。
9. 如权利要求8所述的话音激活用户界面,其特征在于,所述激活组件访问 应用程序命令的数据存储以确定是否要证实所述音频输入命令。
10. 如权利要求9所述的话音激活用户界面,其特征在于,所述数据存储包 括破坏性命令列表。
11. 如权利要求IO所述的话音激活用户界面,其特征在于,所述数据存储的 所述破坏性命令全部是单音节的。
12. 如权利要求8所述的话音激活用户界面,其特征在于,所述证实组件调 用界面来提示所述用户确认所述音频输入命令的实现。
13. 如权利要求8所述的话音激活用户界面,其特征在于,所述语音识别组件使用从所述用户界面生成的应用程序命令的语法。
14. 一种计算机实现方法,包括以下步骤 接收音频输入;调用语音识别组件来从所述音频输入识别用户命令;以及 基于应用程序命令的数据存储来确定是否要证实所述用户命令。
15. 如权利要求13所述的方法,其特征在于,所述数据存储命令全部是单音节破坏性命令。
16. 如权利要求14所述的方法,其特征在于,还包括以下步骤通过提示所述用户确认所述用户命令的执行来证实所述用户命令。
17. 如权利要求16所述的方法,其特征在于,所述提示是音频或文本提示之
18. 如权利要求14所述的方法,其特征在于,还包括以下步骤在没有用户输入的情况下将应用程序命令列表输入到所述数据存储中。
19. 如权利要求14所述的方法,其特征在于,还包括以下步骤基于来自用户的反馈对应用程序命令生成数据存储记录。
20. 如权利要求14所述的方法,其特征在于,还包括以下步骤-使用应用程序来动态填充应用程序命令的所述数据存储。
全文摘要
描述了一种应用程序的话音激活用户界面。该话音激活用户界面调用语音识别组件来识别来自用户的音频输入。如果该音频输入是命令,则调用证实组件来确定是否要在命令执行之前证实该命令。
文档编号G10L15/00GK101238433SQ200680028639
公开日2008年8月6日 申请日期2006年8月7日 优先权日2005年8月5日
发明者A·G·斯尼科夫斯基, D·莫瓦特, F·G·T·I·安德鲁, R·E·德维尔 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1