语音唤醒方法、设备及系统与流程

文档序号:20604373发布日期:2020-05-01 21:56阅读:772来源:国知局
语音唤醒方法、设备及系统与流程

本申请涉及一种语音唤醒方法、设备及系统。



背景技术:

随着物联网的兴起,智能家居得到了一定程度的普及,智能家居产品越来越广泛的参与到日常生活中,语音交互产品是其中的典型代表。

目前,诸如智能音箱之类的语音交互产品大都追求高唤醒率。为了实现高唤醒率,一般需提高设备的唤醒灵敏度。而设备唤醒的灵敏度越高就越容易触发更多的误唤醒。例如,用户在与他人聊天或者看电视的时候,当用户说出与唤醒词相近的词或者电视播出与唤醒词相似的词时,旁边的智能音箱可能会被误唤醒。



技术实现要素:

本申请的目的在于提供一种语音唤醒方法、设备及系统,以降低设备误唤醒率。

本申请的第一方面提供了一种语音唤醒方法,该方法可以包括:云端服务器、多个电子设备中的一个或者第三方设备接收多个电子设备发送的多个语音唤醒消息,其中每个语音唤醒消息包括距离和唤醒能量值,距离表示发送语音唤醒消息的电子设备与声源之间的距离,唤醒能量值表示发送语音唤醒消息的电子设备接收到的声源发出的唤醒词的能量值;根据多个电子设备的多个语音唤醒消息中的距离和唤醒能量值,确定声源发出的唤醒词的能量衰减是否符合点声源辐射的声能的衰减规律;在确定声源发出的唤醒词的能量的衰减不符合点声源辐射的声能的衰减规律的情况下,向多个电子设备发送禁止唤醒指令。

本申请提供的方案利用点声源辐射的声能的衰减规律确定非点声源噪声导致的误唤醒,从而降低设备的误唤醒率。

进一步,根据多个电子设备的多个语音唤醒消息中的距离和唤醒能量值,确定声源发出的唤醒词的能量衰减是否符合点声源辐射的声能的衰减规律,可以包括:计算多个电子设备中的每一个的衰减映射值,其中,衰减映射值与距离负相关且与唤醒能量值和衰减系数正相关,其中,衰减系数用于表征点声源辐射的声音能量与距点声源的距离的对应关系,分别计算多个电子设备的衰减映射值之间的差值,基于计算出的各差值确定声源发出的唤醒词的能量衰减是否符合点声源辐射的声能的衰减规律。其中,在多个电子设备中有预定比例的电子设备的衰减映射值之间的差值小于差异阈值的情况下,确定声源发出的唤醒词的能量衰减符合点声源辐射的声能的衰减规律。

在一种实施方式中,衰减映射值可以通过以下公式计算:

在另一种实施方式中,衰减映射值可以通过以下公式计算:

其中,环境声音能量值表示电子设备收集的环境声音的能量值,通过衰减映射值的计算中引入了环境声音能量值,可以降低噪声场景下环境声音能量值对唤醒词的能量值的影响,进而降低对衰减映射值s准确度的影响。此外,该环境声音能量值可以被包含在语音唤醒消息中。

在又一种实施方式中,衰减映射值可以通过以下公式计算:

其中,设备类型因子用于表征电子设备之间的差异。在计算各个电子设备的衰减映射值时增加设备类型因子μ可以排除或降低不同设备由于硬件和/或算法导致的差异所造成的影响。

进一步,前述多个电子设备可以位于同一群组中,其中,位于同一群组中的电子设备被同一账号管理。

进一步,前述的接收多个电子设备发送的多个语音唤醒消息,可以包括:接收多个电子设备中的第一电子设备发送的语音唤醒请求,启动预定时间段的定时,并在定时期间接收多个电子设备所在的群组中除第一电子设备之外的其他电子设备发送的语音唤醒消息。此外,在收到的语音唤醒消息的数量达到预设的接收数量阈值后,可以提前结束定时,从而减少等待收集语音唤醒消息的时间。

本申请利用多个电子设备上报的语音唤醒消息进行误唤醒的仲裁,利用多设备间的相对信息,通过计算各个设备的衰减映射值是否基本相等,判断非点声源噪声引起的误唤醒,能够有效地降低误唤醒率,提升用户体验。同时,本申请的实施例提供的方案的复杂度低,利用现有的数据即可施行,不需要新增硬件或复杂算法来进行计算。

本申请的第二方面提供了一种语音唤醒方法,该方法可以包括:云端服务器、至少一个电子设备中的一个或者第三方设备接收至少一个电子设备发送的至少一个语音唤醒消息,其中,每个语音唤醒消息包括距离和唤醒能量值,距离表示发送语音唤醒消息的电子设备与声源之间的距离,唤醒能量值表示发送语音唤醒消息的电子设备接收到的声源发出的唤醒词的能量值;根据收到的至少一个语音唤醒消息确定声源是否是至少一个电子设备中的电子设备;在声源是至少一个电子设备中的电子设备的情况下,向发送语音唤醒消息的至少一个电子设备发送禁止唤醒指令。

进一步,根据收到的至少一个语音唤醒消息确定声源是否是至少一个电子设备中的电子设备,可以包括:根据至少一个语音唤醒消息中的距离确定至少一个电子设备中是否存在与声源之间的距离小于距离阈值的电子设备,在存在与声源之间的距离小于距离阈值的电子设备的情况下,确定声源是至少一个电子设备中的电子设备。

进一步,若至少一个语音唤醒消息中的第一语音唤醒消息中包括第一标识,则确定声源是至少一个电子设备中的电子设备;其中,第一语音唤醒消息是至少一个语音唤醒消息中的任意一个语音唤醒消息;发送第一语音唤醒消息的电子设备为第一电子设备;第一标识用于表示第一电子设备接收到的唤醒词来自第一电子设备本身。

进一步,前述至少一个电子设备可以是多个电子设备;且该方法还可以包括:在声源不是至少一个电子设备中的电子设备的情况下,执行本申请的第一方面或第一方面的任一实现方式所提供的方法。

进一步,前述至少一个电子设备可以位于同一群组中,其中,位于同一群组中的电子设备被同一账号管理。

本申请利用多个电子设备上报的语音唤醒消息进行误唤醒的仲裁,通过判断声源是否是群组中的设备判断是否是误唤醒,能够有效地降低误唤醒率,且方案复杂度较低。

本申请的第三方面提供了一种语音唤醒系统,包括,多个电子设备和云端服务器;其中,每个电子设备,用于拾取声音,并在拾取到的声音中包含唤醒词的情况下,向云端服务器发送语音唤醒消息,其中语音唤醒消息包括距离和唤醒能量值,距离表示电子设备与声源之间的距离,唤醒能量值表示电子设备接收到的声源发出的唤醒词的能量值;云端服务器,用于接收多个电子设备发送的语音唤醒消息,并执行本申请的前述第一方面或第一方面的任一实现方式所提供的方法。

本申请的第四方面提供了一种语音唤醒系统,包括,至少一个电子设备和云端服务器,每个电子设备,用于拾取声音,并在拾取到的声音中包含唤醒词的情况下,向云端服务器发送语音唤醒消息,其中语音唤醒消息包括距离和唤醒能量值,距离表示该电子设备与声源之间的距离,唤醒能量值表示该电子设备接收到的声源发出的唤醒词的能量值;云端服务器,用于接收至少一个电子设备发送的至少一个语音唤醒消息,并执行本申请的前述第二方面或第二方面的任一实现方式所提供的方法。

进一步,在上述第三方面和第四方面所提供的系统中,系统中的云端服务器也可以被替换为其他第三方设备,并由第三方设备执行原本由云端服务器所执行的方法;或者,系统也可以不包括云端服务器,而是由电子设备中的一个来执行原本由云端服务器所执行的方法。

本申请的第五方面提供了一种设备,该设备包括处理器、存储器和收发器,处理器分别与存储器和收发器耦合;其中,收发器用于接收和发送信号;存储器中存储有指令;处理器,用于读取并执行存储器中的指令,以使得该设备执行前述第一方面、第二方面或者他们的任一实现方式提供的方法。

本申请的第六方面提供了一种机器可读介质,该机器可读介质中存储有指令,指令被机器运行时,该机器执行前述第一方面、第二方面或者他们的任一实现方式提供的方法。

本申请的第七方面提供了一种计算机程序产品,该计算机程序产品包括程序代码,当该计算机程序产品被控制器执行时,该控制器执行前述第一方面、第二方面或者他们的任一实现方式提供的方法。该计算机程序产品可以为一个软件安装包,在需要使用前述第一方面、第二方面或者他们的任一实现方式提供的方法的情况下,可以下载该计算机程序产品至该控制器并在该控制器上运行该计算机程序产品。

本申请的第八方面提供了一种装置,该装置具有实现前述第一方面、第二方面或者他们的任一实现方式提供的方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多于一个与上述功能相对应的模块。

附图说明

图1是根据本申请的实施例的包含多个电子设备的场景示例。

图2是根据本申请的实施例的语音唤醒方法的流程图。

图3是根据本申请的实施例的判断误唤醒的方法的流程图。

图4是根据本申请的实施例的aec处理的示例。

图5a是根据本申请的实施例的三种波形的示意图。

图5b是根据本申请的实施例的点声源的传播示意图。

图5c是根据本申请的实施例的线性声源的传播示意图。

图6是根据本申请的实施例的随机非点声源噪声触发误唤醒的示意图。

图7是根据本申请的实施例的电子设备的结构示意图。

图8是根据本申请的一些实施例的示例计算系统示意图。

图9是根据本申请的实施例的设备的示意图。

图10是根据本申请的另一实施例的设备的示意图。

具体实施方式

应当理解的是,虽然在本文中可能使用了术语“第一”、“第二”等等来描述各个特征,但是这些特征不应当受这些术语限制。使用这些术语仅仅是为了进行区分,而不能理解为指示或暗示相对重要性。举例来说,在不背离示例性实施例的范围的情况下,第一特征可以被称为第二特征,并且类似地第二特征可以被称为第一特征。

除非上下文另有规定,否则术语“包含”、“具有”和“包括”是同义词。短语“a/b”表示“a或b”。短语“a和/或b”表示“(a)、(b)或(a和b)”。

如本文所使用的,术语“模块”可以指代,作为其中的一部分,或者包括:用于运行一个或多个软件或固件程序的存储器(共享、专用或组),专用集成电路(asic),电子电路和/或处理器(共享、专用或组),组合逻辑电路,和/或提供所述功能的其他合适组件。

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请的实施方式作进一步地详细描述。

随着智能家居日益普及,一定空间内出现多个智能设备的场景变得十分普遍,根据本申请一些实施例图1示出了一种包含多个电子设备的场景示例。在图1所示的场景中,具体电子设备有:音箱201b、电视201a以及智能闹钟201c。需要注意的是,图1示出的场景仅仅是为了举例说明一种多设备的场景,并不是对本申请的限制,在各种实施场景中,可以包括与图中示出的不同数量和/或不同类型的设备,例如,可以包括更多或更少的设备,或者包括与图1中示出的三个设备不同的其他设备。

根据本申请的一些实施例,电视201a可以是能够通过网络实现与云端或者其他设备交互的智能电视。例如,电视201a中可以包括高速处理器和存储器件,分别用于应用程序的运行和存储。并且,电视201a可以搭载操作系统,使用户在欣赏普通电视内容的同时,可自行安装和卸载各类应用软件,持续对功能进行扩充和升级。例如,电视201a可以具备多种方式的交互式应用,如人机交互方式、多屏互动、内容共享等。需要说明的是,本申请各实施例中的电视可以是上述的智能电视,也可以是具有较大屏幕的智慧屏,可以不支持普通电视的功能。音箱201b可以是智能音箱,使用户能够通过语音进行上网,例如点播歌曲,上网购物,或是了解天气、资讯等,或者使用户能够对其他智能家居设备进行控制,例如,开关窗帘、灯具,管理其他电器,提前让热水器升温等等。智能闹钟201c可以提供与普通闹钟类似的显示时间和在预定时刻发出音响信号或其他信号的功能,除此之外,还可以具有与音箱201b类似的功能,例如使用户能够通过语音进行上网或者使用户能够对其他智能家居设备进行控制等。

根据本申请的一些实施例,诸如上面的电视201a、音箱201b以及智能闹钟201c之类的语音产品可以通过语音被唤醒并与用户进行语音交互。根据本申请的一些实施例中,语音交互可以认为是基于语音输入的一种交互方式,用户通过说话就可以得到设备的反馈结果。

根据本申请的一些实施例,语音交互流程可以被划分为五个环节:唤醒、响应、输入、理解和反馈。其中,唤醒可以认为是每一次用户与语音产品交互的第一个接触点,用户可以通过特定的唤醒词唤醒设备,唤醒词可以认为是定义将产品从待机状态切换到工作状态的词语。其中,唤醒词可以是用户根据自身需要预先设置在电子设备中的,也可以是电子设备在出厂之前设置好的,本申请的实施例中对唤醒词的设置方式不作限定。

需要说明的是,本申请的实施例中,唤醒电子设备的用户可以是任意的,也可以是特定的。示例的,特定用户可以为预先将发出唤醒词的声音存储在电子设备中的用户,例如图1所示的场景中各电子设备的主人。

根据本申请的一些实施例,诸如上面的音箱201b、电视201a以及智能闹钟201c之类的语音产品可以通过网络耦合为一个群组。例如,音箱201b、电视201a以及智能闹钟201c可以登录同一账号,并以他们中的一个设备或者云服务器作为控制中枢,实现音箱201b、电视201a以及智能闹钟201c的协同控制。例如,在接收到带有特定唤醒词的语音信号时,可以利用诸如各个设备收到的唤醒词的能量值的大小等的各种唤醒信息来决定是否唤醒设备以及唤醒群组中的哪个设备等。举例来说,在一些实施例中,如果用户发出语音中带有特定的唤醒词,例如,“小艺小艺”,那么,作为离用户最近的设备的智能闹钟201c可以被唤醒并响应用户,或者,三个设备都分别给出响应。在其他实施例中,也可以设定不同的唤醒响应规则,例如,可以为不同的设备设置不同的唤醒响应优先级。

根据本申请的一些实施例,用户在看电视的情形中,在电视201a播放节目的过程中,播放的声音中可能会带有特定唤醒词或者与唤醒词类似的词,例如,图1中示出的“小艺小艺”或者“小姨小姨”。这种情况下,音箱201b会捕捉到唤醒词,被唤醒并给出语音回复,例如,图1中音箱回复“我在”,这样的误唤醒会干扰正在看电视的用户。

类似这种不是用户本意的声音引起的唤醒可以被认为是误唤醒,为了减少误唤醒的概率,根据本申请的一些实施例,提供一种语音唤醒技术。该技术可以判断唤醒词是否是群组内的设备发出的,并在唤醒词是群组内的设备发出的情况下禁止唤醒,或者判断发出唤醒词的声源是否为点声源并在发出唤醒词的声源为点声源的情况下禁止唤醒,从而减少类似上文所述的非用户意愿的误唤醒情况的出现。

图2示出了根据本申请的实施例的语音唤醒过程。在图2和其余附图中,参考数字后面的字母,例如“201a”表示对具有该特定参考数字的元素的引用。文本中没有后续字母的参考数字,例如“201”,表示对带有该参考数字的元件的实施方式的一般引用。

具体地,如图2所示,多个电子设备201(例如图中示出的电视201a、音箱201b和智能闹钟201c等)可以构成电子设备群组200,电子设备201可以通过网络与云端服务器300交互并可以由云端服务器300统一进行管理。多个电子设备构成电子设备群组的方式可以是,例如上文所述的多个设备登录同一账号。

电子设备201可以是带有等麦克风等收音装置的各种电子设备,例如,各种智能家居设备(例如图1中示出的电视201a、音箱201b以及智能闹钟201c,以及各种灯具、显示器、摄像头等)、手机、平板电脑、台式计算机、膝上型计算机、车载终端、人工智能(artificialintelligence,ai)智能语音终端、可穿戴设备、增强现实(augmentedreality,ar)设备、虚拟现实(virtualreality,vr)设备等各种电子设备。电子设备201的示例性实施例包括但不限于搭载ios、android、microsoft或者其它操作系统的各种电子设备。电子设备201的具体结构示例将在后文结合图7来具体说明。

电子设备201可以通过网络与云端服务器300或其他设备实现交互,在各种实施方式中,前述网络可以是有线网络或无线网络,并且可以具有许多不同的配置。前述网络可以包括局域网(lan)、广域网(wan)(例如,因特网)等各种互连数据路径。网络还可以耦合到或包括电信网络的部分,用于以各种不同的通信协议发送数据。在一些实施方式中,网络也可以包括用于发送和接收数据的蓝牙通信网络、wi-fi或蜂窝通信网络等。

根据本申请的一些实施例,云端服务器300可以是硬件服务器,根据本申请的另一些实施例,云端服务器300也可以植入虚拟化环境中,例如,云端服务器300可以是在可以包括一个或多个其他虚拟机的硬件服务器上执行的虚拟机。在一些实施方式中,云端服务器300可以通过网络向电子设备201发送数据,并且从电子设备201接收数据。

在一些实施方式中,云端服务器300可以包括处理语音唤醒的相关程序,还可以包括数据库,以存储经由云端服务器300交换的消息以及与电子设备201相关的数据和/或配置。在一些实施方式中,相关程序和数据库的全部或者一部分也可以实现在电子设备201上。

下面结合图2阐述根据本申请的实施例的语音唤醒过程。

根据本申请的一些实施例,如图2所示,s1:各个电子设备201可以实时或者按照固定周期收集环境能量信息。其中,所述的各个电子设备201可以包括多个电子设备,例如电视201a、音箱201b、智能闹钟201c,还可以包括更多电子设备。收集的环境能量信息可以被存储在电子设备本地,并且可以响应于云端服务器的指令被上报给云端服务器300,在电子设备上报其他信息时一同被上报给云端服务器300,或者以预设周期被上报给云端服务器300。在上报给云端服务器300时,可以直接上报收集的环境能量信息,也可以将收集的环境能量信息进行一些处理后再上报给云端服务器300。根据本申请的一些实施例,环境能量信息可以指示环境声音的能量值,它可以是环境声音的能量值,也可以包括指示环境声音的能量值的信息。

s2:声源100发出声音后,声音会被声源附近的多个电子设备201拾取,例如,在图2所示的示例中,声音可以被电视201a、音箱201b和智能闹钟201c拾取。

s3-s5:拾取到声音的电视201a、音箱201b和智能闹钟201c可以分别对拾取到的声音进行预处理。预处理可以包括但不限于:进行语音识别,判断拾取到的声音中是否包含唤醒词,如果语义中带有唤醒词(例如,上文提到的“小艺小艺”)或者跟唤醒词相似度特别高的词,则认为拾取到的声音是唤醒语音;在这种情况下,根据拾取到的声音获取唤醒能量信息,并根据唤醒能量信息判断唤醒词的能量值e是否高于唤醒阈值eth。根据本申请的一些实施例,唤醒能量信息可以指示唤醒词的能量值,它可以是唤醒词的能量值,也可以是用于指示唤醒词的能量值的信息。

s6-s8:在唤醒词的能量值e高于唤醒阈值eth的情况下,收到唤醒语音的电视201a、音箱201b和智能闹钟201c可以分别将语音唤醒消息上报给云端服务器300。其中,每个电子设备发送的语音唤醒消息可以包括距离信息和唤醒能量信息,距离信息可以是表示电子设备与声源之间的距离的信息,唤醒能量信息可以是表示收到唤醒语音中的唤醒词的能量值的信息。

根据本申请的一些实施例,距离信息可以通过麦克风阵列的声源定位算法来得到,例如基于波束形成的方法、基于高分辨率谱估计的方法或者基于声达时延差(tdoa)的方法等。

麦克风阵列是将一组麦克风传感器按某种方式放置在不同的空间位置上,在空间上接收声音信号。经过一定的处理过程,人们可以提取接收信号的有关特征信息,如幅度、频率、方向等。麦克风阵列按麦克风传感器在空间位置的不同分布,会有如下的拓扑结构:线性阵列、圆形阵列、球形阵列等等,严谨的应该是一字、十字、平面、螺旋、球形及无规则阵列等。至于麦克风阵列的阵元数量,也就是麦克风数量,可以从2个到上千个不等。

在声源定位系统中,波束形成主要应用在声源增强模块中,通过调整麦克风阵列的系数来改变阵列对不同方向上声音响应的波束指向。例如,可以通过对各个阵元输出加权求和得到波束,并通过调整权值使波束输出功率达到最大,对功率以搜索的方式寻找,得到功率最大的一点即声源方向。基于高分辨率谱估计的声源定位技术基于高分辨率的谱估计算法,其中包括了自回归ar模型最小方差谱估计(mv)和特征值分解方法(如music算法)等,所有这些方法都通过获取了传声器阵列的信号来计算空间谱的相关矩阵。基于声达时间差(tdoa)的定位方法一般分为2个步骤进行:先进行声达时间差估计,并从中获取传声器阵列中阵元间的声延迟tdoa;再利用获取的声达时间差,结合已知的传声器阵列的空间位置进一步定出声源的位置。

假设电视201a首先上报语音唤醒消息(s6),云端服务器300收到第一个语音唤醒消息后,执行s10:启动定时并在阈值时间内收集电视201a所在的群组200中的其他电子设备201上报的语音唤醒消息。

s11:云端服务器300在阈值时间内收集到音箱201b和智能闹钟201c上报的语音唤醒消息后,根据收集的信息进行误唤醒仲裁。误唤醒仲裁方法将在后文结合图3详细描述。

s12:根据s11中误唤醒仲裁的结果,判断当前语音唤醒是否为误唤醒。

在s12判断为误唤醒的情况下执行s13:分别向收到唤醒语音的电视201a、音箱201b和智能闹钟201c发送禁止唤醒的指令。

在s12判断为不是误唤醒的情况下执行s14:正常处理语音唤醒。正常处理语音唤醒的过程中可以设定不同的唤醒响应规则。例如,根据本申请的一些实施例,可以只唤醒离用户最近的一个电子设备,使得离用户最近的电子设备响应唤醒语音,例如回复“我在”。根据本申请的另一实施例,可以为不同的设备设置不同的唤醒响应优先级,并只唤醒优先级最高的电子设备。根据本申请的又一实施例,可以按照功耗、计算能力等从收到唤醒语音的电视201a、音箱201b和智能闹钟201c中选择一个唤醒。根据本申请的又一实施例,也可以直接将三个设备都唤醒,随后等待进一步的语音指令。

上述唤醒响应规则仅仅是为了举例说明正常处理语音唤醒的一些方式,并不是对上面描述的正常处理语音唤醒的限制,在各种不同的实施方式中,可以采用与上述不同的各种唤醒响应方式。

根据本申请的一些实施方式,上述由电子设备201执行的预处理过程中的一部分也可以由云端服务器300执行。例如,电子设备201拾取到声音并进行语音识别,判断拾取到的声音为带有唤醒词的唤醒语音后,可以直接将带有唤醒词的唤醒语音上报给云端服务器300,由云端服务器300来获唤醒词的能量信息,并判断唤醒词的能量值是否高于唤醒阈值。

下面结合图3详细描述根据本申请的实施例的误唤醒仲裁过程。

如前所述,在图1示出的场景中,当电视201a在播放节目的过程中,声音中带有诸如“小艺小艺”之类的唤醒词时,周围的其他电子设备,例如音箱201b可能会拾取到唤醒词。当音箱201b收到唤醒词的能量值高于唤醒阈值时,音箱201b会被误唤醒。因此,误唤醒的仲裁首先要解决一个设备发出的声音中含有唤醒词,引起另一设备的误唤醒的问题。

s1101-s1102:根据本申请的一些实施例,云端服务器300在收到电视201a、音箱201b和智能闹钟201c上报的语音唤醒消息后,可以对收到的消息进行处理,随后根据处理结果判断声源100是否是群组200中的设备。

根据本申请的一些实施例,可以通过语音唤醒消息中的距离信息来判断声源100是否是群组200中的设备,例如,可以设置距离阈值dth,并在距离信息中指示的距离小于距离阈值的情况下认为声源就是设备自己。距离阈值dth的大小可以根据不同情况任意设置,根据本申请的一些实施例,距离阈值dth可以设置在厘米量级。

以图2示出的系统为例,例如距离阈值dth为0.1m。云端服务器300在收到电视201a、音箱201b和智能闹钟201c上报的语音唤醒消息后,假设电视201a上报的语音唤醒消息中的距离信息指示声源与电视201a的距离da=0.05m。那么,云端服务器300获取到da=0.05m后,将da与距离阈值dth进行比较,发现da<dth,则可以判断声源是电视201a自身。

根据本申请的一些实施例,电子设备201中如果设置有回声消除(acousticechocancellation,aec)模块,通过aec发现声音是自身发出的情况下,可以主动上报给云端服务器300,使云端服务器300可以以此来判断声源100是群组200中的设备。

图4示出了根据本申请的实施例的aec处理的示例。如图4所示,在设备中设置有aec模块403的情况下,设备通过扬声器401播放音频时会产生回声e。设备通过麦克风402等装置拾取声音时,会把外界声音s和回声e都拾取进来,得到混合信号fo,发送到aec模块403。与此同时,设备将音频信号作为参考信号fe发送到aec模块;其中,混合信号fo中的回声e与参考信号fe高度相关,数学函数可以表示为e=f(fe),函数f可以被称之为回音路径,函数可以表示扬声器401发出的声音在墙壁、天花板等表面多次反射的物理过程。通过函数f可以从fe计算得到回声e,然后从混合信号fo中减掉回声e就可以实现回声消除,得到真正需要的外界声音s。随后设备可以进一步通过其他模块进行降噪等处理,得到真正需要的声音,例如人声。

根据本申请的一些实施例,假设音箱201b通过aec以及降噪等处理会发现声音是自身发出,这种情况下发声的音箱201b可以主动上报给云端服务器300,例如,音箱201b可以在上报的语音唤醒消息中的设置第一标识,该第一标识用于表示音箱201b接收到的唤醒词来自电子设备201本身。云端服务器300收到语音唤醒消息后,可以通过语音唤醒消息中的第一标识来确定声源100是群组200中的音箱201b。

在声源100是群组200中的设备(即s1102中判断为是)的情况下,s1106:云端服务器300可以直接将电视201a、音箱201b和智能闹钟201c上报的语音唤醒消息判断为误唤醒,并随后执行图2中的s13:分别向收到唤醒语音的电视201a、音箱201b和智能闹钟201c发送禁止唤醒的指令。

通过上述操作,可以有效避免一个(或多个)电子设备唤醒同一群组中的另外一个(或多个)电子设备的情况出现。

除了上述同一群组中一个(或多个)设备发出的声音中含有唤醒词,引起另一个(或多个)设备的误唤醒的情况,还可能会出现不在同一群组中的其他设备发出唤醒词引起误唤醒或者各种随机噪声中出现唤醒词引起误唤醒的情况。

对此,本申请的实施例提供一种从声源的类型入手来确定误唤醒的方法。

声源的类型按照其几何形状可以分为:面声源、点声源和线性声源。不同的声源声波的辐射方式不同,一般来说,面声源为平面波辐射,点声源为球面波辐射,而线性声源为柱面波辐射,图5a示意性的示出了平面波、球面波和柱面波三种声波波阵面图形。

根据本申请的一些实施例,当声源的尺寸相对于声波的波长或传播距离而言比较小,且声源的指向性不强时,可近似看为点声源。如一个人讲话、拍掌都可以认为是点声源发声,点声源以近似球面波的方式向外辐射。线性声源可以看作是由许多点声源组成的,这些线声源以近似柱面波形式向外辐射。而面声源是以平面波的形式向外辐射,在平面上辐射声能的作用处处相等,无论听者站在音墙前的任何位置听到的都是同等的声压。

人说话时可以视为是点声源类型,而能够发声的电子设备多数采用线阵列扬声器系统,线阵列扬声器系统所辐射的声波波阵面图形类似柱面波,近似于线性声源。并且,很多随机噪声也可以归为线性声源或者面声源类型。

声源类型的不同,其随距离的衰减参数也将不同。图5b和图5c分别示意性的示出根据点声源和线性声源的传播。

如图5b所示,点声源辐射的声音在传播过程中在水平和垂直方向都会扩展,同时在传播过程中由于距离增加会引起声音能量的衰减。并且,在自由声场中,点声源辐射距离每增加一倍(例如图5b中示出的从r增加到2r),表面积会变为4倍(例如图5b中示出的从a增加到4a),同时声音能量以声压级计算会衰减6db。

如图5c所示,线性声源辐射的声音在传播过程中只会在水平方向扩展,并且与点声源类似,在传播过程中由于距离增加同样会引起声音能量的衰减。但是,在自由声场中,线性声源辐射距离每增加一倍(例如图5c中示出的从r增加到2r),表面积会变为2倍(例如图5c中示出的从a增加到2a),同时声音能量以声压级计算会衰减3db。

根据本申请的一些实施例,可以利用不同类型的声源发出的声音能量随距离的衰减的不同,来执行非点声源噪声导致的误唤醒的仲裁。根据本申请的一些实施例,非点声源噪声可以包括:一群人嘈杂的说话、线性音响设备发出的声音、火车云轨运行的声音等。在现有技术中,如果电子设备从上述非点声源噪声中识别到唤醒词,并且收到的唤醒词的能量值高于唤醒阈值,则可能或导致误唤醒。

下面结合图3说明执行非点声源噪声导致的误唤醒的仲裁方法。

非点声源噪声导致的误唤醒的仲裁方法可以与确定声源100是否是群组200中的设备的操作结合并在确定声源100不是群组200中的设备(即s1102中判断为否)后执行,也可以跳过上述确定声源是否是群组中的设备的操作而单独执行。

首先,s1103:可以根据各个电子设备上报的语音唤醒消息中的距离信息和唤醒能量信息确定来自声源的唤醒词的能量的衰减是否符合点声源辐射的声能的衰减规律。

具体地,根据本申请的一些实施例,可以根据点声源的衰减规律来设置衰减系数α,再结合从每个电子设备上报的语音唤醒消息中得到的唤醒词的能量值e和设备距声源的距离d,可以计算得到每个电子设备的衰减映射值s:

其中,e为该电子设备接收到的唤醒词的能量值;

d为该电子设备与声源之间的距离,电子设备可以利用上述提到的麦克风阵列的定位算法得到其与声源之间的距离,随后上报给云端服务器;

α为衰减系数,用于表征点声源辐射的声音能量与距所述点声源的距离的对应关系。

由于人说话是点声源类型,在式(1-1)中,可以将衰减系数α限制为点声源的衰减系数,即,距离点声源的距离每增加一倍,能量衰减6db。根据本申请的一个实施例,由于声能的衰减是非线性的,在实际应用中,可以在服务器中存储一张衰减系数与距离的对应关系表,在得到电子设备与声源之间的距离后,通过查表方式得到对应的衰减系数α的值。

衰减映射值s与距离d负相关且与唤醒能量信息e和所述衰减系数α正相关。即,距离d越大,则衰减映射值越小,而唤醒能量信息e和/或衰减系数α越大,则衰减映射值越大。在唤醒声源是点声源的情况下,与拾取到唤醒词的各个电子设备对应的衰减映射值应当基本相等,即:

s1=s2=…=sn(1-2)

其中,1,2,…,n表示n个设备的设备序号;

s1,s2,…,sn表示分别与n个设备对应的衰减映射值。

当然,在一些情况下,即便是点声源唤醒,(1-2)中的等式也可能并不完全成立,考虑到设备间的差异以及数据误差的影响,各个设备1-n的衰减映射值的计算结果之间的差距只要在一定的误差范围内,即各个设备的衰减映射值之间的差异不超过预设的差异阈值,即可以认为该唤醒不是误唤醒。

根据本申请的一些实施例,在计算电子设备的衰减映射值时,还可以考虑环境能量信息,即,电子设备周围的环境声音的能量值,通过电子设备收集的环境声音的能量值,来计算一段时间内的环境声音能量的均值w,来对唤醒词的能量值做正向或负向的修正;或者可以基于电子设备在拾取到唤醒词时同时拾取到的瞬时环境声音的能量值v,来对唤醒词的能量值做正向或负向的修正。这种修正一方面可以在图2中的s3-s5的预处理中,判断唤醒词的能量值e是否高于唤醒阈值eth时提高判断的准确性;另一方面,可以在衰减映射值s的计算中,降低噪声场景下环境声音能量值对唤醒词的能量值的影响,进而降低对衰减映射值的准确度的影响。

此外,根据本申请的一些实施例,由于设备的内存、麦克风阵列、芯片计算能力等硬件限制,各种电子设备对声音的去噪、拾音等算法不一定会相同,即便采用的相同的算法,也会进行一定的调整以适配不同的设备。所以不同电子设备的误唤醒率可能是不一样的,在这种情况下,在计算各个电子设备的衰减映射值s时,可以增加设备类型因子μ来针对各个设备进行修正,排除或降低不同设备由于硬件和/或算法导致的差异所造成的影响。

因此,综合上述因素的影响,根据本申请的一些实施例,可以在计算得到每个电子设备的衰减映射值s时,考虑环境声音能量的均值w和设备类型因子μ,即:

其中,e为该电子设备接收到的唤醒词的能量值;

w为该电子设备在预设的一段时间内收集的环境声音能量的均值;

d为该电子设备与声源之间的距离,电子设备可以利用上述提到的麦克风阵列的定位算法得到其与声源之间的距离,随后上报给云端服务器;

α为衰减系数,用于表征点声源辐射的声音能量与距所述点声源的距离的对应关系;

μ为设备类型因子,用于修正不同设备间的硬件区别。

在不同的实施例中,可以根据需要在计算衰减映射值s时增加额外的参数,从而进一步提高计算精确度,或者也可以减少部分参数,从而提高计算速度或者降低功耗等。例如,在一些实施方式中,可能同一群组中的各个电子设备间的差异并不大,在这种情况下设备类型因子μ便可以忽略不计,在不考虑设备类型因子μ的情况下,衰减映射值s可以是:

以上通过合理利用唤醒过程中已获得的距离、能量值、衰减系数等数据进行与各个电子设备对应的衰减映射值的计算,并判断与各个电子设备对应的衰减映射值是否相等或基本相等,用判断结果来执行误唤醒的裁决,充分利用现有的数据并且不需要新增额外硬件或复杂算法,方案的复杂度较低。

下面,结合图6介绍根据利用上述公式解决随机非点声源噪声触发误唤醒的情况。根据本申请的一些实施例,如图6所示,假设随机噪声中含有唤醒词,白色音箱601和黑色音箱602都拾取到了随机噪声中的唤醒词。在一种情况中,白色音箱601接收的唤醒词的能量值达到e1=70,同时,利用麦克风阵列定位到声音距离白色音箱601的距离是d1=3m;而黑色音箱602接收的唤醒词的能量值达到e2=35,同时,利用麦克风阵列定位到声音距离黑色音箱602的距离是d2=5m。如果利用公式(1-3)计算得到衰减映射值s,那么根据公式(1-2),在白色音箱601的e1=70,d1=3m的情况下,距离声源d2=5m的黑色音箱602接收的唤醒词的理论能量值e2应该在40到41区间。但是,由于此时是随机非点声源噪声,黑色音箱实际上报的唤醒能量值是e2=35,与公式(1-2)不匹配,由此可以判定此次是误唤醒。随后,可以下发禁止唤醒指令给音箱601和602,这样音箱601和602就都不会被唤醒,解决了非点声源噪声引起的误唤醒问题。

此外,在图2示出的示例的操作s11中,根据本申请的一些实施例,云端服务器300收到电视201a音箱201b和智能闹钟201c上报的语音唤醒消息后,可以执行图3中s1103和s1104的操作,利用上述公式(1-3)来计算衰减映射值,并计算与这三个电子设备对应的衰减映射值是否相等或基本相等,从而进行误唤醒的仲裁。如果声源100是人说话,那么来自声源100的唤醒词的能量的衰减会基本符合点声源辐射的声能的衰减规律,即,与这三个电视201a音箱201b和智能闹钟201c对应的各项信息之间的比例关系会相等或基本相等,即,

如果等式(1-5)成立,那么,可以认为收到的唤醒是正常唤醒,云端服务器300可以向各个电子设备发送正常处理语音唤醒的指令s14。而在以上等式(1-5)不成立的情况下,则可以认为是误唤醒,云端服务器300可以向各个电子设备发送禁止唤醒的指令s13。

此外,根据本申请的一些实施例,s1105:在拾取到唤醒词的电子设备较多的情况下,在进行上述比例计算时,可以去除至少一个最差语音唤醒消息的数据,计算除了该一个或多个最差语音唤醒消息数据外,通过其他设备的数据计算得到的唤醒词的能量衰减是否符合点声源辐射的声能的衰减规律,即,在多个电子设备中有预定比例的电子设备的衰减映射值之间的差值小于差异阈值的情况下,即可以认为该唤醒不是误唤醒。从而避免在某些极端场景下,某个电子设备唤醒相关数据一直不达标。例如,在利用上述公式(1-2)进行判断时,假设n=10,如果电子设备1-9的衰减映射值s1,…,s9都相等或基本相等,只有电子设备10的衰减映射值s10与前面9个电子设备的衰减映射值不一致,那么可以舍弃电子设备10的数据,仍然判定为正常唤醒。

上面结合图3描述的根据本申请的实施例的误唤醒的仲裁过程可以作为一个完整的过程来被云端服务器300执行。在一些实施方式中,云端服务器300也可以只执行其中的一部分,例如,只执行s1101和s1102而不执行s1103-s1105,并根据s1102的判断结果来确定是否是误唤醒;或者,不执行s1101和s1102而直接执行s1103和s1104,通过计算各个设备的衰减映射值来确定声源类型是否是点声源来判断误唤醒,等等。

根据本申请的一些实施例,云端服务器300收到第一个语音唤醒消息后,启动定时,在阈值时间内可能没有再收到其他电子设备201上报语音唤醒消息。这种情况下,可以只执行s1101和s1102,通过收到的语音唤醒消息判断声源是否是群组中的设备,从而确定是否是误唤醒,在误唤醒的情况下向上报语音唤醒消息的电子设备发送禁止唤醒指令;在一些情况下,云端服务器300也可以用其他手段处理唤醒,例如,上报第一个语音唤醒消息的电子设备通过aec以及降噪等处理发现声音是自身发出,电子设备本身就不会唤醒,此时云端服务器300便无需再发送禁止唤醒指令;在一些情况下,云端服务器300也可以直接按照现有的各种通用手段来正常处理唤醒。

此外,根据本申请的一些实施例,云端服务器300在s10:启动定时并在阈值时间内收集群组中的其他电子设备上报的语音唤醒消息的操作中,可以设置收集的语音唤醒消息的接收数量阈值,并在收到的其他电子设备发送的语音唤醒消息的数量达到接收数量阈值后,提前结束定时。例如,可以设置接收数量阈值为4,即,最多接收4条其他电子设备上报的语音唤醒消息。从而减少等待收集语音唤醒消息的时间。

上面结合图2至图6介绍了由云端服务器对设备群组中的多个设备的语音唤醒进行控制的方案,但是,上文结合附图描述的电子设备的种类和数量都是举例,在各种实施例中,上述方案和技术可以应用到各种数量和类型的电子设备中。

根据本申请的一些实施例,也可以不包括图2中所示的云端服务器300,并且云端服务器300的操作可以由群组200中的一个或多个设备执行。例如,根据本申请的一些实施例,可以将音箱201b作为主设备,其他电子设备(例如,电视201a和智能闹钟201c等)作为从设备,群组200中的各个设备拾取到的唤醒词后,统一将语音唤醒消息上报给音箱201b,并由音箱201b执行误唤醒的仲裁操作以及指令群组200中的各个设备是否响应唤醒的操作。或者,根据本申请的一些实施例,图2中所示的云端服务器300也可以被替换为其他第三方设备,例如,在智能家居场景下,第三方设备可以为多个智能家居设备同时接入的路由器。

以上结合图2至图6介绍了本申请的各种实施例,利用多个电子设备上报的语音唤醒消息进行误唤醒的仲裁,一方面通过判断声源是否是群组中的设备判断是否是误唤醒,另一方面利用多设备间的相对信息,通过计算各个设备的衰减映射值是否基本相等,判断非点声源噪声引起的误唤醒,能够有效地降低误唤醒率,提升用户体验。同时,本申请的实施例提供的方案的复杂度低,利用现有的数据即可施行,不需要新增硬件或复杂算法来进行计算。

此外,上面结合图2至图6介绍的语音唤醒处理方案可以应用于智能家居场景,也可以应用于包括多个智能车载设备的车内场景等各种一定空间内出现多个智能语音设备的场景。

下面以手机为例,结合图7介绍本申请的实施例中所涉及的电子设备201的结构示例。

电子设备201可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universalserialbus,usb)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriberidentificationmodule,sim)卡接口195等。其中传感器模块180可以包括压力传感器180a,陀螺仪传感器180b,气压传感器180c,磁传感器180d,加速度传感器180e,距离传感器180f,接近光传感器180g,指纹传感器180h,温度传感器180j,触摸传感器180k,环境光传感器180l,骨传导传感器180m等。

可以理解的是,本申请实施例示意的结构并不构成对电子设备201的具体限定。在本申请另一些实施例中,电子设备201可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。

处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(applicationprocessor,ap),调制解调处理器,图形处理器(graphicsprocessingunit,gpu),图像信号处理器(imagesignalprocessor,isp),控制器,视频编解码器,数字信号处理器(digitalsignalprocessor,dsp),基带处理器,和/或神经网络处理器(neural-networkprocessingunit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。处理器110可以被配置为执行上述结合图2至图6描述云端服务器300或电子设备201所执行的各种操作。

处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。

在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integratedcircuit,i2c)接口,集成电路内置音频(inter-integratedcircuitsound,i2s)接口,脉冲编码调制(pulsecodemodulation,pcm)接口,通用异步收发传输器(universalasynchronousreceiver/transmitter,uart)接口,移动产业处理器接口(mobileindustryprocessorinterface,mipi),通用输入输出(general-purposeinput/output,gpio)接口,用户标识模块(subscriberidentitymodule,sim)接口,和/或通用串行总线(universalserialbus,usb)接口等。可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备201的结构限定。在本申请另一些实施例中,电子设备201也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。

充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。

电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。

电子设备201的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。

天线1和天线2用于发射和接收电磁波信号。电子设备201中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。

移动通信模块150可以提供应用在电子设备201上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(lownoiseamplifier,lna)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。

调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170a,受话器170b等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。

无线通信模块160可以提供应用在电子设备201上的包括无线局域网(wirelesslocalareanetworks,wlan)(如无线保真(wirelessfidelity,wi-fi)网络),蓝牙(bluetooth,bt),全球导航卫星系统(globalnavigationsatellitesystem,gnss),调频(frequencymodulation,fm),近距离无线通信技术(nearfieldcommunication,nfc),红外技术(infrared,ir)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。

电子设备201通过gpu,显示屏194,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏194和应用处理器。gpu用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个gpu,其执行程序指令以生成或改变显示信息。

内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备201使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universalflashstorage,ufs)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备201的各种功能应用以及数据处理。

电子设备201可以通过音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,以及应用处理器等实现音频功能。例如音乐播放,录音等。

音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。

扬声器170a,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备201可以通过扬声器170a收听音乐,或收听免提通话。

受话器170b,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备201接听电话或语音信息时,可以通过将受话器170b靠近人耳接听语音。

麦克风170c,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170c发声,将声音信号输入到麦克风170c。电子设备201可以设置至少一个麦克风170c。在另一些实施例中,电子设备201可以设置两个麦克风170c,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备201还可以设置三个,四个或更多麦克风170c,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。

耳机接口170d用于连接有线耳机。耳机接口170d可以是usb接口130,也可以是3.5mm的开放移动电子设备平台(openmobileterminalplatform,omtp)标准接口,美国蜂窝电信工业协会(cellulartelecommunicationsindustryassociationoftheusa,ctia)标准接口。

下面结合图8描述根据本申请的一些实施例的示例计算系统700。在本申请的实施例中,系统700可以是或可以包括云端服务器300的一部分,或者可以是或可以包括电子设备201的一部分,并且,在各种实施例中,系统700可具有更多或更少的组件和/或不同的架构。

在一个实施例中,系统700可以包括一个或多个处理器704,与处理器704中的至少一个连接的系统控制逻辑708,与系统控制逻辑708连接的系统内存712,与系统控制逻辑708连接存储器716(例如非易失性存储器(non-volatilememory,nvm)),以及与系统控制逻辑708连接的网络接口720。

处理器704可以包括一个或多个单核或多核处理器。处理器704可以包括通用处理器和专用处理器(例如,图形处理器,应用处理器,基带处理器等)的任何组合。在一些情况下,处理器704可以被配置为执行上述结合图2至图6描述云端服务器300或电子设备201所执行的各种操作。

用于某个实施例的系统控制逻辑708可以包括任何合适的接口控制器,以向处理器704中的至少一个和/或与系统控制逻辑708通信的任何合适的设备或组件提供任何合适的接口。用于某个实施例的系统控制逻辑708可以包括一个或多个存储器控制器以提供连接到系统内存712的接口。系统内存712可以用于加载和存储数据和/或指令,例如,对于系统700,用于某个实施例的系统内存712可以包括任何合适的易失性存储器,例如合适的随机存取存储器(random-accessmemory,ram)或动态随机存取存储器(dynamicrandomaccessmemory,dram)。

存储器716可以包括用于存储数据和/或指令的一个或多个有形的、非暂时性计算机可读介质。例如,存储器716可以包括的任何合适的非易失性存储器和/或任何合适的非易失性存储设备,例如闪存、硬盘驱动器(harddiskdrive,hdd),固态硬盘(solid-statedrive,ssd),光盘(compactdisk,cd)驱动器,和/或数字通用光盘(digitalversatiledisk,dvd)驱动器等。

存储器716可以包括安装系统700的装置上的一部分存储资源,或者它可以由设备访问,但不一定是设备的一部分。例如,可以经由网络接口720通过网络访问存储器716。

特别地,系统内存712和存储器716可以分别包括:指令724的暂时和永久副本。指令724可以包括:由处理器704中的至少一个执行时导致系统700实施上文所述的方法的指令。在各种实施例中,指令724或硬件、固件和/或其软件组件可另外地/替代地置于系统控制逻辑708,网络接口720和/或处理器704中。

网络接口720可以包括收发器,用于为系统700提供无线电接口,进而通过一个或多个网络与任何其他合适的设备(如前端模块,天线等)进行通信。在各种实施例中,网络接口720可以与系统700的其他组件集成。例如,网络接口可以包括处理器704的处理器,系统内存712的内存,存储器716的存储器,和/或具有指令的固件设备(未示出),所述指令为由处理器704中的至少一个执行时导致系统700实施如图2和图3中云端服务器300或电子设备201执行的方法的指令。

网络接口720可以进一步包括任何合适的硬件和/或固件,以提供多输入多输出无线电接口。例如,用于某个实施例的网络接口720可以是网络适配器,无线网络适配器,电话调制解调器和/或无线调制解调器。

对于一个实施例,处理器704中的至少一个可以与用于系统控制逻辑708的一个或多个控制器的逻辑封装在一起。对于一个实施例,处理器704中的至少一个可以与用于系统控制逻辑708的一个或多个控制器的逻辑封装在一起,以形成系统封装(sip)。对于一个实施例,处理器704中的至少一个可以与用于系统控制逻辑708的一个或多个控制器的逻辑集成在一起。对于一个实施例,处理器704中的至少一个可以与用于系统控制逻辑708的一个或多个控制器的逻辑集成在一起,以形成片上系统(soc)。

系统700可以进一步包括:输入/输出(i/o)设备732。i/o设备732可以包括,被设计为使得用户能够与系统700进行交互的用户界面;被设计为使得外围组件也能够与系统700交互的外围组件接口;和/或被设计为用于确定与系统700相关的环境条件和/或位置信息的传感器等。

本申请公开的各实施例可以被实现在硬件、软件、固件或这些实现方法的组合中。本申请的实施例可实现为在可编程系统上执行的计算机程序或程序代码,该可编程系统可以包括至少一个处理器、存储系统(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。

可将程序代码应用于输入指令,以执行本申请描述的各功能并生成输出信息。可以按已知方式将输出信息应用于一个或多个输出设备。为了本申请的目的,处理系统包括具有诸如例如数字信号处理器(dsp)、微控制器、专用集成电路(asic)或微处理器之类的处理器的任何系统。

程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理系统通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本申请中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。

在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组合形式来实现。所公开的实施例还可以以承载或储存在一个或多个瞬态或非瞬态的机器可读(例如,计算机可读)存储介质上的指令或程序形式实现,其可以由一个或多个处理器等读取和执行。当指令或程序被机器运行时,机器可以执行前述的各种方法。例如,指令可以通过网络或其他计算机可读介质分发。因此,机器可读介质可以包括但不限于,用于以机器(例如,计算机)可读的形式存储或传输信息的任何机制,例如,软盘,光盘,光盘只读存储器(cd-roms),磁光盘,只读存储器(rom),随机存取存储器(ram),可擦除可编程只读存储器(eprom),电子式可清除程序化只读存储器(eeprom),磁卡或光卡,或者用于通过电、光、声或其他形式信号(例如,载波、红外信号、数字信号等)传输网络信息的闪存或有形的机器可读存储器。因此,机器可读介质包括任何形式的适合于存储或传输电子指令或机器(例如,计算机)可读信息的机器可读介质。

因此,本申请的各实施例还包括非瞬态的有形机器可读介质,该介质包含指令或包含设计数据,诸如硬件描述语言(hdl),它定义本文中描述的结构、电路、装置、处理器和/或系统特征。这些实施例也被称为程序产品。

根据本申请的一些实施例,为了实现上述本申请实施例提供的方法中的各功能,电子设备201或者云端服务器300可以包括硬件结构和/或软件模块,以硬件结构、软件模块、或硬件结构加软件模块的形式来实现上述各功能。上述各功能中的某个功能以硬件结构、软件模块、还是硬件结构加软件模块的方式来执行,取决于技术方案的特定应用和设计约束条件。

图9所示为根据本申请的实施例的一种设备1100。示例的,设备1100包括收发模块1101和处理模块1102。

根据本申请的一些实施例,当设备1100为云端服务器300时,设备1100可以执行图2和图3中所示的语音唤醒方法中的云端服务器300所执行的各种操作。例如,根据本申请的一些实施例,可以提供一种语音唤醒装置,该语音唤醒装置可以实现在云端服务器300中。语音唤醒装置可以包括收发模块1101和处理模块1102。根据本申请的一些实施例,该语音唤醒装置可以被配置为执行上述结合图2至图6描述云端服务器300所执行的各种操作,例如,收发模块1101可用于执行操作s10,s13以及s14等,处理模块1102可用于执行操作s11和s12等。

在云端服务器300的操作被群组200中的电子设备或第三方设备执行的情况下,该语音唤醒装置也可以实现在群组200中的电子设备中或第三方设备中,以执行群组200中的电子设备或第三方设备所执行的各种操作。

根据本申请的一些实施例,当设备1100为电子设备201时,设备1100可以执行图2所示的语音唤醒方法中电子设备201所执行的操作。收发模块1101可用于执行操作s6-s8等。处理模块1102可用于执行操作s1,s3-s5等。

图10所示为根据本申请的实施例的另一种设备1200。设备1200包括至少一个处理器1210、存储器1220和收发器1230。其中,处理器1210与存储器1220和收发器1230耦合,本申请实施例中的耦合是装置、单元或模块之间的直接或间接耦合或者通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。本申请实施例中不限定上述收发器1230、处理器1210以及存储器1220之间的连接介质。例如,根据本申请的一些实施例,存储器1220、处理器1210以及收发器1230之间可以通过总线连接,所述总线可以分为地址总线、数据总线、控制总线等。

存储器1220可以用于存储程序指令。收发器1230可以用于接收或发送数据。处理器1210ky用于调用存储器1220中存储的程序指令,使得设备1200执行图2或图3中云服务器300所执行的操作,或者执行图2中电子设备201所执行的操作。

根据本申请的一些实施例,处理器1210可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、操作及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的操作可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

根据本申请的一些实施例,存储器1220可以是非易失性存储器,还可以是易失性存储器。存储器是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。

上面结合附图对本申请的实施例做了详细说明,但本申请技术方案的使用不仅仅局限于本专利实施例中提及的各种应用,各种结构和变型都可以参考本申请技术方案轻易地实施,以达到本文中提及的各种有益效果。在本领域普通技术人员所具备的知识范围内,在不脱离本申请宗旨的前提下做出的各种变化,均应归属于本申请专利涵盖范围。

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