不中断回放音频而进行语音识别的制作方法

文档序号:14837995发布日期:2018-06-30 13:14阅读:269来源:国知局
不中断回放音频而进行语音识别的制作方法

本公开总体上涉及用于语音识别的方法、系统和装置,并且更具体地,涉及不中断回放音频而进行语音识别。



背景技术:

语音识别允许用户说出的语音命令被计算系统或其他电子设备解释。例如,语音命令可以被移动电话、移动计算设备、车辆装在仪表板上的计算系统等识别和解释。基于语音命令,系统可以执行或启动指令或过程。



技术实现要素:

根据本发明,提供一种用于捕获来自用户的语音输入的方法,所述方法包括:

缓冲用于声音的产生的音频数据;

在一个或多个扬声器上播放音频数据;

使用麦克风捕获音频(捕获的音频);

过滤捕获的音频以产生过滤的音频,其中过滤包括使用缓冲的音频数据进行过滤以从过滤的音频中去除对应于音频数据的音频;以及

基于过滤的音频生成文本或命令。

根据本发明的一个实施例,其中使用麦克风捕获捕获的音频包括在一个或一个以上扬声器上播放音频数据期间捕获。

根据本发明的一个实施例,该方法还包括确定是否正在播放任何音频数据,其中缓冲音频数据包括响应于确定音频数据正在被播放而进行缓冲。

根据本发明的一个实施例,该方法还包括确定播放音频数据的定时。

根据本发明的一个实施例,其中使用缓冲的音频数据来过滤捕获的音频包括基于用于播放音频数据的定时来过滤。

根据本发明的一个实施例,其中缓冲用于声音的产生的音频数据包括在从原始音频缓冲器移除之前从原始音频缓冲器捕获音频数据,其中在一个或多个扬声器上播放之前将音频数据放置在原始音频缓冲器中。

根据本发明的一个实施例,其中音频数据包括音乐、对应于视频的音频、通知声音和语音指令。

根据本发明的一个实施例,该方法还包括基于文本或命令来确定计算设备或受控系统要执行的动作。

根据本发明的一个实施例,该方法还包括接收指示以激活语音识别,其中缓冲音频数据、捕获音频、过滤捕获的音频以及执行语音到文本转换包括响应于接收指示而进行缓冲、捕获、过滤和执行。

根据本发明,提供一种系统,该系统包括:

回放音频部件,回放音频部件被配置为缓冲用于声音的产生的音频数据;

音频渲染部件,音频渲染部件被配置为在一个或多个扬声器上播放音频数据;

捕获部件,捕获部件被配置为使用麦克风捕获音频(捕获的音频);

过滤器部件,过滤器被配置为对捕获的音频进行过滤以生成过滤的音频,其中过滤包括使用缓冲的音频数据进行过滤,以从捕获的音频中去除与音频数据相对应的音频;以及

语音识别部件,语音识别部件被配置为基于过滤的音频生成文本或命令。

根据本发明的一个实施例,其中捕获部件被配置成在一个或多个扬声器上播放音频数据期间捕获捕获的音频。

根据本发明的一个实施例,其中回放音频部件还被配置为确定是否正在播放任何音频数据,其中回放音频被配置为响应于确定音频数据正在被播放而缓冲音频数据。

根据本发明的一个实施例,其中回放音频部件还被配置为确定播放音频数据的定时。

根据本发明的一个实施例,其中过滤器部件被配置为基于播放音频数据的定时,使用缓冲的音频数据来过滤捕获的音频。

根据本发明的一个实施例,其中语音识别部件还被配置为基于文本或命令来确定计算设备或控制系统要执行的动作。

根据本发明,提供一种存储指令的计算机可读存储介质,指令在由一个或多个处理器执行时使一个或多个处理器执行:

缓冲用于声音的产生的音频数据;

在一个或多个扬声器上播放音频数据;

使用麦克风捕获音频(捕获的音频);

过滤捕获的音频以产生过滤的音频,其中过滤包括使用缓冲的音频数据进行过滤以从捕获的音频中去除对应于音频数据的音频;以及

根据过滤的音频生成文本或命令。

根据本发明的一个实施例,其中指令还使得一个或多个处理器在一个或多个扬声器上播放音频数据期间捕获捕获的音频。

根据本发明的一个实施例,其中指令还使得一个或多个处理器确定播放音频数据的定时。

根据本发明的一个实施例,其中指令还使得一个或多个处理器基于用于播放音频数据的定时,使用缓冲的音频数据来过滤捕获的音频。

根据本发明的一个实施例,其中指令还使一个或多个处理器基于文本或命令来确定计算设备或控制系统要执行的动作。

附图说明

参考以下附图来描述本公开的非限制性和非穷尽性实施方式,其中除非另有说明,否则在各个视图中相同的附图标记指示相同的部分。关于以下描述和附图,本公开的优点将变得更好理解,其中:

图1是示出根据一个实施方式的语音识别系统的示意性框图;

图2是示出根据一个实施方式的在音频回放期间的语音识别的示意图;

图3是示出根据一个实施方式的文本到语音转换部件的示例部件的示意性框图;

图4是示出根据一个实施方式的用于捕获来自用户的语音输入的方法的示意性流程图;以及

图5是示出根据一个实施方式的计算系统的示意性框图。

具体实施方式

诸如车载信息娱乐系统、智能电话等的一些语音识别系统也能够播放音乐和声音。声音可以包括警报、响铃、语音指示、伴随着视频或图形显示的声音等。但是,当语音识别会话被激活时,这些系统停止音乐或声音回放。在音乐或声音中断期间,系统可以从用户捕获语音数据/命令并且可以恢复回放。在捕获语音数据之后,系统可以继续处理语音数据并理解所说的内容(例如语音到文本或语音/声音识别)。

申请人已经改进了用于捕获来自用户的语音输入的系统、方法和设备,其中不需要停止、暂停、延迟、或中断声音回放以便记录/获取语音数据。根据一个实施例,系统包括回放音频部件、音频渲染部件、捕获部件、过滤器部件和语音识别部件。回放音频部件被配置为缓冲用于声音产生的音频数据。音频渲染部件被配置为在一个或多个扬声器上播放音频数据。捕获部件被配置为使用麦克风捕获音频(捕获的音频)。过滤器部件被配置为过滤捕获的音频以生成过滤的音频,其中过滤包括使用缓冲的音频数据过滤以从捕获的音频中去除与音频数据相对应的音频。语音识别部件被配置为基于过滤的音频生成文本或命令。

根据一个实施例,当音乐或声音回放打开并且用户选择激活语音识别时,系统让回放继续并激活语音会话。在语音会话期间,麦克风可以捕获语音数据以及通过扬声器播放的回放音频(麦克风捕获的语音样本)。麦克风将捕获语音、环境声音和/或扬声器播放的音频。系统可以在内部捕获通过扬声器播放的回放音频数据(例如解码的原始音频缓冲)。因此,不需要任何外部/辅助麦克风来捕获来自扬声器的回放。麦克风捕获的语音样本和回放音频数据可以被馈送到音频过滤器(或声学模块)。音频过滤器可以从麦克风捕获的语音样本中过滤/逐步停止(phase out)回放音频,这只会导致语音数据(或环境声音减去扬声器上播放的回放音频)。这个过滤后的语音数据可以进一步用来理解用户所说的内容。在一个实施例中,这里指示的方法可以使用软件来执行,并且因此可以使用软件更新在现有设备中实现。

将结合下面的附图讨论另外的实施例和示例。

图1是示出语音识别系统100的示意性框图。系统100包括用于播放媒体内容的回放系统102。回放系统102可以包括内容缓冲器104,其缓冲要由扬声器110和/或显示器112上的音频驱动器106或显示驱动器108播放或渲染的内容。内容缓冲器104可以包括存储器或寄存器,其保存将被提供给驱动器106、108用于渲染/回放的内容。内容缓冲器104可以从一个或多个内容源114接收内容。内容源114可以包括存储介质或者从存储介质检索要由回放系统102播放的内容。内容源114可以从任何源或存储介质获得内容。例如,内容源114可以包括磁性、固态、磁带、光学(CD(光盘)、DVD(数字化视频光盘))或其他驱动器。内容源114可以包括用于向回放系统102提供媒体内容的端口。内容源114可以例如经由收发器116从远程位置获得媒体。

语音识别系统100还包括文本到语音转换部件118,其从麦克风120接收捕获的音频,并基于捕获的音频识别语音或音频命令。在一个实施例中,文本到语音转换部件118从内容缓冲器104获得缓冲的音频,并且基于缓冲的音频来过滤捕获到的音频。例如,麦克风120可以捕获包括由扬声器110或在扬声器110上播放的音频内容的音频。由于文本到语音转换部件118可以具有与由扬声器110播放的回放音频相对应的缓冲音频,因此文本到语音转换部件118可以过滤回放音频以用于留下更清楚地解读文本到语音转换或语音识别的语音命令或语音输入。

文本到语音转换部件118可以根据需要执行文本到语音转换或识别语音命令并将文本到语音转换命令输出到语音识别系统100的其他部分。例如,文本到语音转换部件118可以向回放系统102提供回放指令,或者可以向一个或多个其他系统122提供其他类型的指令。其他系统122可以包括用于语音识别系统100、车辆、计算设备、移动电话或任何其他设备或系统的控制系统。示例指令或文本可以包括发起电话呼叫、停止或开始回放、启动或结束导航等的指令和文本。在一个实施例中,文本或指令可以控制车辆的装在仪表板上的系统以及车辆的任何计算系统或部件。

图2是示出在存在回放音频的情况下用于语音识别的过程200的示意图。过程200可以允许执行语音识别而不暂停、停止、延迟或中断音频(音乐、通知或其他声音)的回放。麦克风202可以在204处捕获和/或存储音频。音频可以包括由用户讲的语音音频1和由扬声器播放的回放音频2。应该注意,回放音频2可以包括诸如音乐、通知声音、语音指令(诸如用于通知)或者在扬声器上播放的任何其他音频或声音的任何音频。由于存在回放音频2和语音音频1两者,所以所捕获的音频3包括回放音频2和语音音频1两者的组合。在206处获得回放音频2。可以通过从用于驱动播放回放音频2的扬声器的设备的缓冲器检索音频数据来获得回放音频2。

在208,使用音频过滤器从捕获的音频3中去除回放音频2。音频过滤器可以逐步停止回放音频2以获得用户所说的清晰的语音音频1数据。例如,因为回放音频2和捕获的音频3都是已知的,所以过滤器可以获得语音音频1。语音音频1被提供给语音合成器210以进行语音识别。语音合成器可以更准确和容易地将语音音频1转换为文本或语音命令,因为其不被回放音频2阻挡/遮挡。语音合成器可以在212处输出从语音数据1得到的文本或其他命令。因此,可以以良好的性能执行语音识别,而不会暂停或以其他方式改变回放音频2。

转到图3,示出了根据一个实施例的文本到语音转换部件118的部件的示意框图。根据本文讨论的任何实施例或功能,文本到语音转换部件118可以甚至在嘈杂的环境中提供语音识别或语音音频的文本到语音转换。文本到语音转换部件118包括回放音频部件302、音频渲染部件304、捕获部件306、过滤器部件308和语音识别部件310。部件302-310仅作为说明给出,并不一定全部包括在所有实施例中。实际上,一些实施例可以仅包括部件302-310中的一个或两个或更多个的任何组合。例如,部件302-310中的一些可以位于文本到语音转换部件118之外或与之分离。

回放音频部件302被配置为缓冲用于声音产生的音频数据。例如,回放音频部件302可以包括内容缓冲器104或者可以从内容缓冲器104检索数据。可以存储缓冲的音频,使得在一段时间内已经(或将要)在一个或多个扬声器上播放的音频数据可用于过滤。在一个实施例中,回放音频部件302被配置为确定是否正在播放任何音频数据。例如,如果没有音频正在播放,则可能不需要缓冲音频数据。类似地,回放音频部件302可以确定语音识别是正被执行还是被请求。例如,回放音频部件302可以在不存在回放时保持至少预定量的音频缓冲,然后在语音识别时间段期间收集缓冲的所有音频。因此,回放音频部件302可以具有至少足够的缓冲音频数据,以从麦克风捕获的数据中去除在扬声器上播放的相应音频。在一个实施例中,回放音频部件302响应于确定音频数据正在被播放和/或语音识别有效而缓冲音频数据。回放音频部件302可以确定用于播放音频数据的定时。定时信息可以允许进行有针对性的过滤,使得相应的声音可以从麦克风捕获的数据的正确时间段中去除。

音频渲染部件304被配置成在一个或多个扬声器上播放音频数据。音频渲染部件304可以包括用于向扬声器提供电信号以进行回放的音频驱动器106(诸如软件驱动器和/或硬件放大器或声卡)。音频渲染部件304可以从内容缓冲器104获得音频数据并且将原始音频数据转换为用于驱动扬声器的模拟信号。

捕获部件306被配置为使用麦克风捕获音频。捕获部件306可以在语音识别时间段期间捕获音频。语音识别时间段可以响应于接收到用户已经通过语音识别部件310请求语音识别的指示而开始。用户可以启动语音识别,例如,通过选择屏幕或按钮选项来启动语音识别,或通过说出触发词或短语。触发词或短语可以包括设备侦听的特殊词或短语,并且只有在检测到该词或短语时才开始语音识别。

在一个实施例中,捕获部件306被配置为在一个或多个扬声器上播放音频数据期间捕获所捕获的音频。例如,捕获部件306可捕获由用户说出的语音音频以及由扬声器播放的回放音频。

过滤器部件308被配置为对来自麦克风的捕获的音频进行过滤以生成过滤的音频。过滤器部件308可以使用由回放音频部件302获得的缓冲的回放音频来去除扬声器上播放的任何声音。例如,过滤器部件308可以将回放音频从捕获的音频中滤除,使得所得到的过滤音频不包括或包括回放音频的静音或不太重要的版本。过滤器部件308可以使用原始音频数据和/或任何定时信息来去除对应于原始音频的回放音频。

申请人已经认识到,由于将要播放的音频数据是已知的(并且可以通过软件缓冲要播放的原始音频数据来确定),所以过滤器部件308可以非常准确和有效地从捕获的音频中去除对应的音频数据。尽管扬声器可能无法以100%的保真度回放音频,并且麦克风可能无法以100%的保真度捕获回放的音频,但使用原始音频数据进行过滤可以显著改善从麦克风录音中减少或去除回放音频。实际上,可以充分地实现回放音频的去除,从而只需要单个麦克风。因此,过滤器部件308可以不需要特殊的硬件配置(例如两个麦克风)以准确地去除回放音频。在过滤之后,与回放音频仍然存在的情况相比,由麦克风捕获的语音数据(如果有的话)可以更加突出且易于检测和解密。

语音识别部件310被配置为对由过滤器部件308提供的过滤的音频执行语音识别。语音识别部件310可以基于过滤的音频生成文本或命令。例如,语音识别部件310可以识别对应于特定单词或命令的声音或音频模式。在一个实施例中,语音识别部件310还被配置为基于文本或命令来确定计算设备或控制系统要执行的动作。例如,语音识别可以确定用户正在指示系统或设备执行过程或开始动作。

图4是示出用于捕获来自用户的语音输入的方法400的示意性流程图。方法400可以由语音识别系统或文本到语音转换部件(例如图1的语音识别系统100或图1或3的文本到语音转换部件118)来执行。

该方法开始,并且在402,回放音频部件302缓冲用于声音产生的音频数据。在404,音频渲染部件304在一个或多个扬声器上播放音频数据。在406,捕获部件306使用麦克风捕获音频(捕获的音频)。在408,过滤器部件308过滤所捕获的音频以产生过滤的音频。过滤器部件308可以使用缓冲的音频数据进行过滤,以从捕获的音频中去除对应于音频数据的音频。在410,语音识别部件310基于过滤的音频生成文本或命令。

现在参考图5,示出了示例计算设备500的框图。计算设备500可以被用来执行各种程序,诸如在此讨论的程序。计算设备500可以用作语音识别系统100、文本到语音转换部件118等。计算设备500可以执行如本文所讨论的各种功能,诸如本文描述的音频捕获、缓冲、过滤和处理功能。计算设备500可以是各种计算设备中的任何一种,诸如台式计算机、装在仪表板上的计算机、车辆控制系统、笔记本计算机、服务器计算机、手持式计算机、平板电脑等。

计算设备500包括一个或多个处理器502、一个或多个存储器设备504、一个或多个接口506、一个或多个大容量存储设备508、一个或多个输入/输出(I/O)设备510以及显示设备530,所有这些都联接到总线512。处理器502包括执行存储在存储器设备504和/或大容量存储设备508中的指令的一个或多个处理器或控制器。处理器502还可以包括各种类型的计算机可读介质,诸如高速缓冲存储器。

存储器设备504包括诸如易失性存储器(例如随机存取存储器(RAM)514)和/或非易失性存储器(例如只读存储器(ROM)516)的各种计算机可读介质。存储器设备504还可以包括可重写ROM,例如闪存。

大容量存储设备508包括各种计算机可读介质,诸如磁带、磁盘、光盘、固态存储器(例如闪存)等等。如图5所示,特定大容量存储设备是硬盘驱动器524。大容量存储设备508中还可以包括各种驱动器,以使得能够从各种计算机可读介质读取和/或向各种计算机可读介质写入。大容量存储设备508包括可移动介质526和/或不可移动介质。

I/O设备510包括允许将数据和/或其他信息输入到计算设备500或从计算设备500检索的各种设备。示例I/O设备510包括光标控制设备、键盘、小键盘、麦克风、监视器或其他显示设备、扬声器、打印机、网络接口卡、调制解调器等。

显示设备530包括能够向计算设备500的一个或多个用户显示信息的任何类型的设备。显示设备530的示例包括监视器、显示终端、视频投影设备等。

接口506包括允许计算设备500与其他系统、设备或计算环境交互的各种接口。示例性接口506可以包括任意数量的不同网络接口520,例如局域网(LAN)、广域网(WAN)、无线网络和因特网的接口。其他接口包括用户接口518和外围设备接口522。接口506还可以包括一个或多个用户接口元件518。接口506还可以包括一个或多个外围接口,诸如用于打印机、指向设备(鼠标、跟踪板或本领域普通技术人员已知的或稍后发现的任何合适的用户接口)、键盘等的接口。

总线512允许处理器502、存储器设备504、接口506、大容量存储设备508和I/O设备510彼此通信以及与联接到总线512的其他设备或部件通信。总线512表示几种类型的总线结构中的一种或多种,诸如系统总线、PCI(外围部件互连总线)、IEEE(电气与电子工程师协会)总线、USB(通用串行总线)等等。

为了说明的目的,程序和其他可执行程序部件在本文中被示为离散框,但是应当理解,这样的程序和部件可以在各种时间存在于计算设备500的不同存储部件中,并且由处理器502执行。可选地,这里描述的系统和程序可以用硬件或硬件、软件和/或固件的组合来实现。例如,一个或多个专用集成电路(ASIC)可以被编程以执行在此描述的一个或多个系统和程序。示例

以下示例涉及进一步的实施例。

示例1是用于捕获来自用户的语音输入的方法。该方法包括缓冲用于声音的产生的音频数据。该方法包括在一个或多个扬声器上播放音频数据。该方法包括使用麦克风捕获音频(捕获的音频)。该方法包括过滤捕获的音频以生成过滤的音频,其中过滤包括使用缓冲的音频数据进行过滤以从捕获的音频中去除与音频数据相对应的音频。该方法包括基于过滤的音频生成文本或命令。

在示例2中,如在示例1中那样使用麦克风捕获所捕获的音频包括在一个或多个扬声器上播放音频数据期间捕获。

在示例3中,如示例1-2中的任一示例所述的方法还包括确定是否正在播放任何音频数据,其中缓冲音频数据包括响应于确定音频数据正在播放而进行缓冲。

在示例4中,如示例1-3中的任一示例所述的方法还包括确定播放音频数据的定时。

在示例5中,如示例4中那样使用缓冲的音频数据来过滤所捕获的音频包括基于用于播放音频数据的定时进行过滤。

在示例6中,如示例1至5中的任一示例所述的缓冲用于声音产生的音频数据包括:在从原始音频缓冲器移除之前从原始音频缓冲器捕获音频数据,其中在一个或多个扬声器上播放之前,音频数据被放置在原始音频缓冲器里。

在示例7中,如示例1-6中的任何示例所述的音频数据包括音乐、对应于视频的音频、通知声音和语音指令。

在示例8中,如示例1-7中的任一示例所述的方法还包括基于文本或命令来确定计算设备或受控系统要执行的动作。

在示例9中,如示例1-8中的任一示例所述的方法还包括接收激活语音识别的指示,其中缓冲音频数据、捕获音频、过滤捕获的音频以及执行语音到文本转换包括响应于接收该指示进行缓冲、捕获、过滤以及执行。

示例10是包括回放音频部件、音频渲染部件、捕获部件、过滤器部件和语音识别部件的系统。回放音频部件被配置为缓冲用于声音产生的音频数据。音频渲染部件被配置为在一个或多个扬声器上播放音频数据。捕获部件被配置为使用麦克风捕获音频(捕获的音频)。过滤器部件被配置为过滤捕获的音频以生成过滤的音频,其中过滤包括使用缓冲的音频数据进行过滤,以从捕获的音频中去除与音频数据相对应的音频。语音识别部件被配置为基于过滤的音频生成文本或命令。

在示例11中,如示例10中的捕获部件被配置成在一个或多个扬声器上播放音频数据期间捕获所捕获的音频。

在示例12中,如示例10-11中的任一示例所述的回放音频部件被进一步配置为确定是否正在播放任何音频数据,其中,回放音频被配置为响应于确定音频数据正在被播放而缓冲音频数据。

在示例13中,如示例10-12中任一示例所述的回放音频部件被进一步配置为确定播放音频数据的定时。

在示例14中,如示例13中的过滤器部件被配置为基于用于播放音频数据的定时,使用缓冲的音频数据来过滤捕获的音频。

在示例15中,如示例10-14中的任一示例所述的语音识别部件还被配置为基于文本或命令来确定计算设备或控制系统要执行的动作。

示例16是存储指令的计算机可读存储介质,该指令在由一个或多个处理器执行时使一个或多个处理器缓冲用于声音产生的音频数据。指令使一个或多个处理器在一个或多个扬声器上播放音频数据。指令使得一个或多个处理器使用麦克风来捕获音频(捕获的音频)。指令使得一个或多个处理器过滤所捕获的音频以生成过滤的音频,其中,过滤包括使用所缓冲的音频数据进行过滤以从所捕获的音频中去除对应于音频数据的音频。指令使一个或多个处理器基于过滤的音频生成文本或命令。

在示例17中,如示例16中的指令还使得一个或多个处理器在一个或多个扬声器上播放音频数据期间捕获所捕获的音频。

在示例18中,如示例16-17中的任一示例所述的指令还使所述一个或多个处理器确定播放音频数据的定时。

在示例19中,如示例18中的指令进一步使得一个或多个处理器基于用于播放音频数据的定时使用缓冲的音频数据来过滤所捕获的音频。

在示例20中,如示例16-19中的任一示例所述的指令还使一个或多个处理器基于文本或命令来确定由计算设备或控制系统要执行的动作。

示例21是包括用于实施示例1-20中的任何一个中的方法或实现示例1-20中的任何一个中的系统或装置的设施的系统或设备。

在上面的公开中,已经参考了形成其一部分的附图,并且其中通过图示的方式示出了可以在其中实施本公开的具体实施方式。应该理解的是,可以利用其他实施方式,并且可以在不脱离本公开的范围的情况下进行结构改变。说明书中对“一个实施例”、“实施例”、“示例实施例”等的引用指示所描述的实施例可以包括特定特征、结构或特性,但是每个实施例可能不一定包括特定特征、结构或特性。而且,这样的短语不一定是指相同的实施例。此外,当结合实施例描述特定特征、结构或特性时,认为结合其他实施例影响这种特征、结构或特性是在本领域技术人员的知识范围内,无论有没有明确地描述。

本文公开的系统、设备和方法的实施方式可以包括或利用包括计算机硬件的专用或通用计算机,诸如如本文所讨论的一个或多个处理器和系统存储器。在本公开的范围内的实施方式还可以包括用于携带或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是可以被通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是计算机存储介质(设备)。携带计算机可执行指令的计算机可读介质是传输介质。因此,作为示例而非限制,本公开的实施方式可以包括至少两种截然不同的计算机可读介质:计算机存储介质(设备)和传输介质。

计算机存储介质(设备)包括RAM、ROM、EEPROM(电可擦可编程只读存储器)、CD-ROM(只读光盘驱动器)、固态驱动器(“SSD”)(例如基于RAM)、闪存、相变存储器(“PCM”)、其他类型的存储器、其他光盘存储器、磁盘存储器或其他磁存储设备或者任何其他介质,其可以用于以计算机可执行指令或数据结构的形式存储期望的程序代码手段并且可以被通用或专用计算机访问。

这里公开的设备、系统和方法的实施方式可以通过计算机网络进行通信。“网络”被定义为能够在计算机系统和/或模块和/或其他电子设备之间传输电子数据的一个或多个数据链路。当通过网络或其他通信连接(硬连线、无线、或硬连线或无线连接的组合)将信息传递或提供给计算机时,计算机将该连接正确地视为传输介质。传输介质可以包括网络和/或数据链路,其可以被用来以计算机可执行指令或数据结构的形式携带期望的程序代码手段,并且可以被通用或专用计算机访问。上述的组合也应该包括在计算机可读介质的范围内。

计算机可执行指令包括例如在处理器处执行时使通用计算机,专用计算机或专用处理设备执行特定功能或功能组的指令和数据。计算机可执行指令可以是例如二进制文件、诸如汇编语言的中间格式指令或者甚至是源代码。虽然已经用结构特征和/或方法动作特定的语言描述了主题,但是应当理解,所附权利要求中限定的主题不一定限于上述描述的特征或动作。相反,所描述的特征和动作作为实施权利要求的示例形式被公开。

本领域的技术人员将认识到,本公开可以在具有许多类型的计算机系统配置的网络计算环境中实践,包括装在仪表板上的计算机、个人计算机、台式计算机、便携计算机、消息处理器、手持设备、多处理器系统、基于微处理器或可编程消费电子产品、网络PC(个人计算机)、小型计算机、大型计算机、移动电话、PDA(个人数字助理)、平板电脑、寻呼机、路由器、交换机、各种存储设备等。本发明还可以在分布式系统环境中实施,其中本地和远程计算机系统(通过硬连线数据链路、无线数据链路或通过硬连线和无线数据链路的组合)通过网络连接,两者都执行任务。在分布式系统环境中,程序模块可能位于本地和远程内存存储设备中。

此外,在适当的情况下,本文描述的功能可以以下中的一个或多个来执行:硬件、软件、固件、数字部件或模拟部件。例如,一个或多个专用集成电路(ASIC)可以被编程以执行在此描述的一个或多个系统和程序。整个说明书和权利要求中使用了某些术语来指代特定的系统部件。术语“模块”和“部件”被用在某些部件的名称中以反映它们在软件、硬件、电路、传感器等中的实施方式独立性。如本领域技术人员将认识到的,部件可以通过不同的名称来引用。本文档不打算区分名称不同但功能相同的部件。

应该注意的是,上面讨论的传感器实施例可以包括计算机硬件、软件、固件或其任何组合以执行其功能的至少一部分。例如,传感器可以包括被配置成在一个或多个处理器中执行的计算机代码,并且可以包括由计算机代码控制的硬件逻辑/电路。这里提供这些示例性设备是为了说明的目的,而不是限制性的。本公开的实施例可以在其他类型的设备中实现,如相关领域的技术人员将会知道的。

本公开的至少一些实施例针对包含存储在任何计算机可用介质上的这种逻辑(例如以软件的形式)的计算机程序产品。当在一个或多个数据处理设备中执行时,这样的软件使得设备如本文所述进行操作。

尽管以上已经描述了本公开的各种实施例,但是应当理解的是,它们仅以示例的方式呈现,而不是限制。对于相关领域的技术人员显而易见的是,在不脱离本公开的精神和范围的情况下,可以在其中进行形式和细节上的各种改变。因此,本公开的广度和范围不应该被任何上述示例性实施例限制,而是应该仅根据权利要求及其等同物来限定。前面的描述是为了说明和描述的目的而提出的。这并不意图是穷尽的或将本公开限制为所公开的确切形式。鉴于上述教导,许多修改和变化是可能的。此外,应该注意的是,可以以期望的任何组合来使用前述替代实施方式中的任一个或全部,以形成本公开的另外的混合实施方式。

此外,尽管已经描述和说明了本公开的特定实施方式,但是本公开不限于如此描述和说明的部分的具体形式或布置。本公开的范围由所附的权利要求书、在此和在不同申请中提交的任何未来的权利要求及其等同物来限定。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1