CN117882130A - 一种进行语音控制的终端设备及服务器 - Google Patents

一种进行语音控制的终端设备及服务器 Download PDF

Info

Publication number
CN117882130A
CN117882130A CN202280038248.XA CN202280038248A CN117882130A CN 117882130 A CN117882130 A CN 117882130A CN 202280038248 A CN202280038248 A CN 202280038248A CN 117882130 A CN117882130 A CN 117882130A
Authority
CN
China
Prior art keywords
voice
terminal device
server
terminal
terminal equipment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202280038248.XA
Other languages
English (en)
Inventor
王冰
李含珍
张路伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hisense Visual Technology Co Ltd
Juhaokan Technology Co Ltd
Original Assignee
Hisense Visual Technology Co Ltd
Juhaokan Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from CN202110688867.0A external-priority patent/CN113450792A/zh
Priority claimed from CN202110917713.4A external-priority patent/CN115910050A/zh
Priority claimed from CN202111521226.2A external-priority patent/CN114172757A/zh
Priority claimed from CN202210151526.4A external-priority patent/CN114609920A/zh
Application filed by Hisense Visual Technology Co Ltd, Juhaokan Technology Co Ltd filed Critical Hisense Visual Technology Co Ltd
Publication of CN117882130A publication Critical patent/CN117882130A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本申请公开了一种进行语音控制的终端设备及服务器。本实施例的服务器接收第一终端设备发送的语音信号,根据语音信号生成语音指令,并将该语音指令反馈至第一终端设备。如果第一终端设备可执行语音指令对应的操作,则响应于该语音指令执行对应的操作。如果第一终端不可执行语音指令对应的操作,则向服务器发送指令分发请求。服务器根据指令分发请求,将语音指令发送至第二终端设备,以使第二终端设备响应于该语音指令执行对应操作。其中,第二终端可执行该语音指令对应的操作。

Description

一种进行语音控制的终端设备及服务器
相关申请的交叉引用
本申请要求在2021年06月22日提交、申请号为202110688867.0;在2021年08月11日提交、申请号为202110917713.4;在2021年12月13日提交、申请号为202111521226.2;在2022年02月18日提交、申请号为202210151526.4的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及语音交互技术领域,尤其涉及一种进行语音控制的终端设备及服务器。
背景技术
随着语音交互技术的发展,越来越多的家用终端设备中都具备语音交互功能。利用语音交互功能,用户可语音控制这些终端设备执行相应的操作,例如启动、停止运转等。
目前用户语音控制终端设备的过程为,用户输入语音信号,终端设备采集到语音信号后,将语音信号转化为相应的指令,以使得终端根据指令进行相应的操作。
然而,目前大部分的终端设备的语音交互功能,都受距离的限制。用户无法在室内任意地点操控其想操控的设备。例如,无法在厨房语音控制卧室的智能电视关机或开机,无法在客厅通过语音控制调节卧室空调温度。用户要想操控终端设备,需要移动至有效距离或者提高音量,导致用户使用体验较差。
发明内容
本实施例提供一种进行语音控制的终端设备及服务器,包括:声音采集器,被配置为采集用户输入的语音信号;控制器,被配置为:从所述声音采集器接收用户输入的语音信号,将所述语音信号发送至服务器,以及从所述服务器接收语音指令,其中,所述语音指令为根据所述语音信号生成的;在所述终端设备可执行所述语音指令对应的操作时,响应于所述语音指令,执行所述语音指令对应的操作;在所述终端设备不可执行所述语音指令对应的操作时,生成指令分发请求,以及将所述指令分发请求发送至所述服务器,以使所述服务器根据所述指令分发请求,查找可执行所述语音指令对应操作的其他终端设备,将所述语音指令发送至其他终端设备。
附图说明
图1为本申请实施例提供的一种语音交互原理的示意图;
图2为本申请实施例提供的一种终端设备的语音控制系统框架示意图;
图3为本申请实施例提供的一种终端设备的语音控制系统场景示意图;
图4为本申请实施例提供的又一种终端设备的语音控制系统场景示意图;
图5为本申请实施例提供的又一种终端设备的语音控制系统场景示意图;
图6为本申请实施例提供的一种终端设备的语音控制方法信令图;
图7为本申请实施例提供的一种语音控制系统的使用场景图;
图8为本申请实施例提供的一种终端设备的硬件配置图;
图9为本申请实施例提供的一种语音交互流程示意图;
图10为本申请实施例提供的一种多个终端设备响应语音交互效果示意图;
图11为本申请实施例提供的一种多设备语音唤醒方法流程示意图;
图12为本申请实施例提供的一种筛选第二终端设备流程示意图;
图13为本申请实施例提供的一种根据设备数量确定第二终端设备的流程示意图;
图14为本申请实施例提供的一种标记主设备流程示意图;
图15为本申请实施例提供的一种更新设备状态流程示意图;
图16为本申请实施例提供的一种多设备语音唤醒方法服务器侧时序流程图;
图17为本申请实施例提供的一种多设备语音唤醒方法终端设备侧时序流程图;
图18为本申请实施例提供的一种终端设备的应用场景图;
图19为本申请实施例提供的一种终端设备的另一应用场景图;
图20为本申请实施例提供的一种语音控制方法的流程示意图;
图21为本申请实施例提供的一种筛选终端设备的流程示意图;
图22为本申请实施例提供的一种语音控制过程的场景示意图;
图23A为本申请实施例提供的一种语音控制方法的流程示意图;
图23B为本申请实施例提供的一种语音控制方法的原理示意图;
图23C为本申请实施例中确定第二候选终端设备集合的过程的示意图;
图24A为本申请实施例提供的另一种终端家居控制方法的流程示意图;
图24B为本申请实施例提供的另一种语音控制方法的原理示意图;
图25A为本申请实施例提供的又一种语音控制方法的流程示意图;
图25B为本申请实施例提供的又一种语音控制方法的原理示意图;
图26A为本申请实施例提供的又一种语音控制方法的流程示意图;
图26B为本申请实施例提供的又一种语音控制方法的原理示意图;
图26C为本申请实施例中得到控制信息的过程的示意图;
图27A为本申请实施例中一种本地控制设备的结构示意图;
图27B为本申请实施例中一种本地控制设备与终端设备进行交互的结构示意图。
具体实施方式
为使本申请的目的和实施方式更加清楚,下面将结合本申请示例性实施例中的附图,对本申请示例性实施方式进行清楚、完整地描述,显然,描述的示例性实施例仅是本申请一部分实施例,而不是全部的实施例。
需要说明的是,本申请中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本申请的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
为清楚说明本申请的实施例,下面结合图1对本申请实施例提供的一种语音识别网络架构进行描述。
参见图1,图1为本申请实施例提供的一种语音交互原理的示意图。图1中,智能设备用于接收输入的信息以及输出对该信息的处理结果。语音识别服务设备为部署有语音识 别服务的电子设备,语义服务设备为部署有语义服务的电子设备,业务服务设备为部署有业务服务的电子设备。这里的电子设备可包括服务器、计算机等,这里的语音识别服务、语义服务(也可称为语义引擎)和业务服务为可部署在电子设备上的web服务,其中,语音识别服务用于将音频识别为文本,语义服务用于对文本进行语义解析,业务服务用于提供具体的服务如墨迹天气的天气查询服务、QQ音乐的音乐查询服务等。在一个实施例中,图1所示架构中可存在部署有不同业务服务的多个实体服务设备,也可以一个或多个实体服务设备中集合一项或多项功能服务。
一些实施例中,下面对基于图1所示架构处理输入智能设备的信息的过程进行举例描述,以输入智能设备的信息为通过语音输入的查询语句为例,上述过程可包括如下三个过程:
[语音识别]
智能设备可在接收到通过语音输入的查询语句后,将该查询语句的音频上传至语音识别服务设备,以由语音识别服务设备通过语音识别服务将该音频识别为文本后返回至智能设备。在一个实施例中,将查询语句的音频上传至语音识别服务设备前,智能设备可对查询语句的音频进行去噪处理,这里的去噪处理可包括去除回声和环境噪声等步骤。
[语义理解]
智能设备将语音识别服务识别出的查询语句的文本上传至语义服务设备,以由语义服务设备通过语义服务对该文本进行语义解析,得到文本的业务领域、意图等。
[语义响应]
语义服务设备根据对查询语句的文本的语义解析结果,向相应的业务服务设备下发查询指令以获取业务服务给出的查询结果。智能设备可从语义服务设备获取该查询结果并输出。作为一个实施例,语义服务设备还可将对查询语句的语义解析结果发送至智能设备,以由智能设备输出该语义解析结果中的反馈语句。
需要说明的是,图1所示架构只是一种示例,并非对本申请保护范围的限定。本申请实施例中,也可采用其他架构来实现类似功能,例如:三个过程全部或部分可以由智能终端来完成,在此不做赘述。
在一些实施例中,图1所示的智能设备可为显示设备,如智能电视,语音识别服务设备的功能可由显示设备上设置的声音采集器和控制器配合实现,语义服务设备和业务服务设备的功能可由显示设备的控制器实现,或者由显示设备的服务器来实现。
随着语音交互技术的发展,越来越多的家用终端设备中都具备语音交互功能。利用语音交互功能,用户可语音控制这些终端设备执行相应的操作,例如启动、停止运转等。
目前用户语音控制终端设备的过程为,用户输入语音信号,终端设备采集到语音信号后,将语音信号转化为相应的指令,以使得终端根据指令进行相应的操作。
然而,目前大部分的终端设备的语音交互功能,都受距离的限制。用户无法在室内任意地点操控其想操控的设备。例如,无法在厨房语音控制卧室的智能电视关机或开机,无法在客厅通过语音控制调节卧室空调温度。用户要想操控终端设备,需要移动至有效距离或者提高音量,导致用户使用体验较差。
为了解决上述问题,本申请提供一种终端设备语音控制系统,如图2为本申请实施例提供的一种终端设备的语音控制系统框架示意图。该系统包括至少两台终端设备200和服务器400。终端设备200用于采集用户输入的语音信号。终端设备200与服务器400通信 连接。服务器400用于接收终端设备200发送的信号或者请求,并向终端设备200反馈相应的指令。
在一些实施例中,终端设备200-1的声音采集器采集到用户输入的语音信号。之后终端设备200-1将采集的语音信号发送至服务器400。服务器400根据该语音信号生成语音指令。需要说明的是,服务器400利用语义系统将语音信号转化为语音指令,这里的具体转化过程本申请不作限制。
进一步服务器400将转化得到的语音指令反馈至终端设备200-1。终端设备200-1接收到语音指令后,终端设备200-1的本机执行能力模块判断本机是否有执行该语音指令对应操作的能力。如果判断结果为有能力执行该语音指令对应操作,则将该语音指令发送至控制器。控制器响应于该语音指令,控制终端设备200-1执行该语音指令对应的操作。
如果判断结果为本机没有能力执行该语音指令对应操作,则根据该语音指令生成指令分发请求,该指令分发请求携带有该语音指令。之后将指令分发请求发送至服务器400。服务器400接收到指令分发请求后,查找可执行该语音指令的终端设备200。例如,查找到终端设备200-2可执行该语音指令对应的操作,则将语音指令发送至终端设备200-2,以使终端设备200-2的控制器,响应于该语音指令,控制终端设备200-2执行该语音指令对应的操作。
示例性的,在一种场景中,用户在智能音箱附近输入语音信号“打开电视”,电视在卧室,但是智能音箱在厨房。智能音箱接收到语音信号“打开电视”后,将语音信号发送至服务器400。服务器将该语音信号转化为语音指令,并将语音指令反馈至智能音箱。
由于智能音箱不能执行“打开电视”的操作,因而智能音箱向服务器400发送携带有语音指令“打开电视”的指令分发请求。服务器400接收到指令分发请求后,查找可执行语音指令“打开电视”的终端设备。查找到可执行语音指令“打开电视”的终端设备为电视,则将语音指令“打开电视”发送至卧室的电视。卧室的电视接收到语音指令“打开电视”后,响应于该语音指令,执行打开操作。从而实现不在卧室也能语音控制卧室电视打开的目的。
在一些实施例中,每一台终端设备都配置有本机执行能力过滤模块,本机执行能力过滤模块配置有本机能力属性参数。终端设备在确定本机是否有能力执行语音指令对应操作的具体步骤为:
从语音指令中解析待处理能力属性参数,其中待处理能力属性参数则为对应的操作。将本机能力属性参数与待处理能力属性参数进行匹配,如果本机能力属性参数与待处理能力属性参数匹配,则表示该终端设备能够执行该语音指令对应的操作。如果本机能力属性参数与待处理能力属性参数不匹配,则表示该终端设备不能够执行该语音指令对应的操作。
终端设备200-1为显示设备、终端设备200-2为空调设备、终端200-3为洗衣机设备、终端200-4为冰箱设备。则终端设备200-1的本机能力属性参数为播放音视频,终端200-2的本机能力属性参数为制冷和制热,终端200-3的本机能力属性参数为洗衣,终端200-4的本机能力属性参数为制冷。
如果用户在终端设备200-2的信号可接收范围内,输入语音信号“制热”,则终端设备200-2采集到语音信号并接收服务器400发送的语音指令“制热”。进一步从语音指令中能够解析得到待处理能力属性参数为“制热”。再通过终端设备200-2的本机能力过滤模块,终端设备200-2的本机能力属性参数为“制热”。终端设备200-2的本机能力属性 参数能够与待处理能力属性参数匹配。则表示终端设备200-2能够执行语音指令“制热”对应的操作。
需要说明的是,如果待处理能力属性参数,在文本上,不能够完全与本机能力属性参数匹配。本申请的本机能力过滤模块还能够根据对解析出的待处理能力属性参数进行相应的转化。例如,如果用户在终端设备200-2信号可接收的范围内,输入语音信号“加热”,经过本机能力属性模块解析后得到文本“加热”。此时待处理能力属性参数,不能够完全与终端设备200-2的本机能力属性参数“制热”匹配。本机能力过滤模块可以对待处理能力属性参数进行分析,得到“加热”与“制热”的含义相同。因此,将待处理能力属性参数视为与本机能力属性参数匹配。即得到终端设备200-2能够实现语音信号“加热”对应的操作。
如果用户在终端设备200-2的信号可接收范围内,输入语音信号“播放音乐”,则终端设备200-2采集到语音信号并接收服务器400发送的语音指令“播放音乐”。进一步从语音指令中能够解析得到待处理能力属性参数为“播放音乐”。再通过终端200-2的本机能力过滤模块,终端设备200-2的本机能力属性参数为“制冷”和“制冷”。则终端设备200-2的本机能力属性参数与待处理能力属性参数不匹配。则表示终端设备200-2不能执行语音指令“播放音乐”对应的操作。
在一些实施例中,如果语音指令中只包括设备名称,则服务器根据指令分发请求,查找与设备名称对应的第二终端设备,以及将语音指令发送至第二终端设备。以使第二终端设备响应于该语音指令执行对应操作。
图3为本申请实施例提供的一种终端设备的语音控制系统场景示意图,如图3所示,用户在设备1信号可接收范围内容输入“打开设备3”、“设备3状态”、“关闭设备3”等语音指令。这些语音指令都只包括设备名称“设备3”。设备1的设备名称与语音指令中包括的设备名称不匹配,则设备1无法执行该语音指令对应的操作。服务器根据设备名称查找名称匹配的终端设备。最终查找到设备3的设备名称与语音指令中包括的设备名称相匹配,服务器将语音指令发送至设备3。设备3接收到语音指令“打开设备3”之后,响应于该语音指令,执行启动的操作。或者,设备3接收到语音指令“关闭设备3”之后,响应于该语音指令,执行关闭的操作。
在一些实施例中,服务器查找到第二终端设备,将语音指令发送至第二终端设备之后,第二终端设备也可以利用本机能力过滤模块,再次确认本机是否可执行语音指令对应操作。如果再次确认本机可执行语音指令对应操作,则响应于该语音指令,执行对应操作。如果经过再次确认本机并不可执行语音指令对应操作,则第二终端设备可向服务器反馈错误信号,使得服务器重新查找可执行语音指令对应操作的终端设备。
在一些实施例中,如果语音指令中只包括设备能力,则服务器根据指令分发请求,查找具备该设备能力的第二终端设备,以及将语音指令发送至第二终端设备。以使第二终端设备响应于该语音指令执行对应操作。
图4为本申请实施例提供的又一种终端设备的语音控制系统场景示意图,如图4所示,,用户在音箱设备信号可接收范围内输入“降低温度”、“温度调到20度”、“升高温度”、“提升风速”等语音指令。这些语音指令只包括设备能力。音箱设备的本机能力属性参数不符合上述语音指令包括的设备能力参数,则音响设备不能执行上述语音指令对应的操作。音箱设备向服务器发送指令分发请求,服务器根据指令分发请求查找符合该设备能力参数 的终端设备。图4所示的设备中只有空调的本机能力属性参数符合该设备能力参数。则服务器将该语音指令发送至空调,空调接收到该语音指令后,响应于该语音指令,执行对应操作。
需要说明的是,如果语音指令中包括的设备能力参数有多个终端设备符合,并且语音指令只包括设备能力参数,则服务器将语音指令发送至符合条件的多个终端设备。多个终端设备响应于该语音指令,执行对应操作。
用户在空调信号可接收范围内输入“降低温度”,空调的本机能力过滤模块首先根据本机能力属性参数,判断本机可执行该语音指令对应的操作。进一步空调还向服务器发送指令分发请求。服务器根据指定分发请求携带的设备能力参数,查找除了空调之外,同样符合该设备能力参数的终端设备。即查找可执行语音指令“降低温度”对应操作的终端设备。最后查找到冰箱也可执行语音指令“降低温度”对应操作。服务器将语音指令“降低温度”发送至冰箱,以使冰箱响应于该语音指令,执行对应操作。通过本实施例,可以实现用户输入一次语音指令,同时控制多台终端设备的效果。
还需要说明的是,如果用户输入一次语音指令,可以同时控制多台终端设备,但是用户并不需要控制多台终端设备。用户可以输入同时包括设备名称和设备能力参数的语音指令。
例如,用户在空调信号可接收范围内输入“降低空调的温度”,该语音指令同时包括设备名称“空调”和设备能力参数“降低温度”。则空调通过本机能力过滤模块判断本机可执行该语音指令对应的操作,同时空调的设备名称符合语音指令携带的设备名称。因此,空调不再向服务器发送指令分发请求,服务器也不再查找其他终端设备。
在一些实施例中,如果语音指令中只携带有自定义规则,则服务器根据自定义规则查找匹配的第二终端。其中,在自定义规则中语音指令与终端设备具有对应关系。
例如,图5为本申请实施例提供的又一种终端设备的语音控制系统场景示意图,如图5所示,,自定义规则包括:由设备2优先播放音乐,由设备3优先播放影视,由设备4优先播放有声小说等,即播放音乐指令与设备2对应,播放影视与设备3对应,播放有声小说与设备4对应。当用户在设备1信号接收范围内输入语音指令“播放音乐”,首先设备1的本机能力过滤模块判断本机不能执行该语音指令对应的操作,之后设备1向服务器发送指令分发指令。服务器根据自定义规则,查找到与语音指令“播放音乐”对应的终端设备为设备2,则将该语音指令发送至设备2。
当用户在设备1信号接收范围内输入语音指令“播放影视”,首先设备1的本机能力过滤模块判断本机不能执行该语音指令对应的操作,之后设备1向服务器发送指令分发指令。服务器根据自定义规则,查找到与语音指令“播放影视”对应的终端设备为设备3,则将该语音指令发送至设备3。
在一些实施例中,服务器包括融合能力规则数据库和指令分发模块。融合能力规则数据库中存储有所有设备的本机能力属性参数。运营人员可在融合能力规则数据库中更新设备的本机能力属性参数。例如,某台终端设备经过更新,具备了某种新的能力,则需要增加该设备的本机能力属性参数。在融合能力规则数据库中所有设备按照设备名称,设备ID存储。
指令分发模块接收终端设备发送的指令分发请求,并且可从指令分发请求携带的语音指令中解析待处理能力属性参数。之后指令分发模块从融合能力规则数据库中查找与待处 理能力属性参数匹配的本机能力属性参数,从而查找到能够执行语音指令对应操作的终端设备。另外,终端设备的本机能力过滤模块也可以从融合能力规则数据库中查找本机能力属性参数。
在一些实施例中,当用户输入模糊的语音指令,可能会存在多台终端设备可执行语音指令对应操作。模糊的语音指令可以是模糊的设备控制指令,模糊的媒资播放指令等。
例如,家庭场景中,可能存在多台空调。当用户输入语音指令“打开客厅空调”时,根据设备名称规则和具体空间规则,可以直接将语音指令发送至客厅空调,以使客厅空调执行启动的操作。当用户输入语音指令“打开空调”时,根据设备名称规则,客厅空调和卧室空调均可执行该语音指令对应操作。因此可以设置其他属性,以锁定更具体的设备。例如制定时间规则:11:00~14:00打开客厅空调,15:00~17:00打开卧室空调。当用户在12:00的时刻输入语音指令“打开空调”,根据时间规则,将该语音指令发送至客厅空调,以使客厅空调执行启动操作。
如果家庭场景中,存在多台音箱。当用户输入的语音指令与儿童故事、儿歌相关,则可制定规则,与儿童故事、儿歌相关的语音指令发送至儿童房的音箱。
在一些实施例中,还可以根据用户需要播放的影视节目的播放时间,控制不同空间的显示设备的开关。例如,用户输入语音指令“播放新闻联播”,用户可能在制定规则中指定新闻联播在客厅中观看,则服务器将该语音指令发送至客厅的显示设备。以使客厅的显示设备执行播放新闻联播的操作。
在一些实施例中,用户输入的语音指令可能包括多个匹配项,例如,可以包括设备名称、设备响应时间段、设备存在的空间、设备能力参数等。不同的终端设备可能同时满足语音指令中包括的匹配项。例如,语音指令中同时包括设备名称、设备响应时间段、设备存在的空间、设备能力参数四个匹配项。设备1满足匹配项设备名称和时间段,设备2满足匹配项时间段和设备能力参数。此时可为每一个匹配项设置对应的权重值。例如,设备名称的权重值为10,时间段的权重值为5,空间的权重值为3,设备能力参数的权重值为8。根据公式(1)
其中,a i为各个终端设备符合的匹配项的权重值,分别得到设备1和设备2最终权重值。设备1的权重属性总值为15,设备2的权重属性总值为11。则设备1的权重属性总值最大,设备1为最优匹配的终端设备。最终服务器将语音指令发送至设备1,以使设备1响应于该语音指令执行对应操作。
需要说明的是,本申请的服务器可以区分为语义服务器和指令分发服务器。语义服务器用于从用户输入的语音信号识别出语音指令。指令分发服务器保存有融合能力规则数据库,用于根据指令分发请求,查找可执行语音指令对应操作的终端设备。语义服务器可以是网络服务器,而指令分发服务器是本地服务器。由于本地服务器具有响应快的优势,因而能够提升整个语音控制过程的响应速度。
基于上述实施例,本申请还提供一种终端设备的语音控制方法,图6为本申请实施例提供的一种终端设备的语音控制方法信令图,如图6所示的信令图,所述方法包括以下步骤:
S101:第一终端设备的麦克风接收用户输入的语音信号。
S102:第一终端设备将语音信号发送至服务器。
S103:服务器根据语音信号生成语音指令,以及将语音指令反馈至第一终端设备。
S104:第一终端设备判断本机是否可执行语音指令对应的操作。
S105:如果本机可执行语音指令对应的操作,则响应于该语音指令执行对应操作。
S106:如果本机不可执行该语音指令对应的操作,则向服务器发送指令分发请求。指令分发请求携带有该语音指令。
S107:服务器接收到指令分发请求之后,根据指令分发请求,查找可执行该语音指令对应操作的第二终端设备,以及将语音指令发送至第二终端设备。
S108:第二终端设备响应于该语音指令执行对应的操作。
在一些实施例中,第一终端设备判断本机是否可执行该语音指令对应的操作的具体过程为:
从语音指令中解析待处理能力属性参数,第一终端设备的本机能力过滤模块可以从融合能力规则数据库中获取本机能力属性参数。之后将本机能力属性参数和待处理能力属性参数进行匹配,如果能够匹配,则第一终端设备可执行该语音指令对应的操作。如果不匹配,则第一终端设备不可执行该语音指令对应的操作。
在一些实施例中,如果语音指令中只携带有设备名称,则服务器在查找第二终端设备时,为查找与设备名称对应的第二终端设备。例如,语音指令为“打开音箱”,则服务器根据设备名称“音箱”查找音箱设备。
在一些实施例中,如果语音指令中只携带有设备能力参数时,则服务器在查找第二终端设备时,为查找具备该设备能力参数的第二终端设备。例如,语音指令为“降低温度”,则识别出待处理设备能力参数为“降低温度”。服务器的指令分发模块可从融合能力规则数据库中查找,与待处理设备能力参数匹配的本机能力属性参数。即查找到可执行该语音指令对应操作的终端设备。
在一些实施例中,如果语音指令为自定义规则对应的指令。则服务器在查找第二终端设备时,为查找与自定义规则具有对应关系的第二终端设备。例如,如图5所示的场景中,自定义规则包括:由设备2优先播放音乐,由设备3优先播放影视,由设备4优先播放有声小说等。用户输入的语音指令为“播放音乐”,则设备2与自定义规则对应,则将设备2确定为第二终端设备。
在一些实施例中,如果语音指令中包括至少两条匹配项,每一条匹配项设置有权重属性值。如果服务器在根据匹配项查找时,存在至少两个终端设备满足至少一条匹配项时,则计算这些终端设备满足的所有匹配项的权重属性总值,即权重值的总和。权重属性总值最大的确定为第二终端设备。
本申请实施例中所述语音控制系统是一种以特定区域网络为基础,基于统一控制服务建立的网络系统,所述语音控制系统可以包括多个相互建立通信连接关系的终端设备200。多个终端设备200可以通过接入同一个局域网络,实现设备之间的通信连接关系。多个终端设备200还可以直接通过统一通信协议组成点对点网络,实现通信连接。例如,多个终端设备200可以通过连接同一个无线局域网,使多个终端设备200之间可以相互通信。还例如,一个终端设备200还可以通过蓝牙、红外、蜂窝网络、电力载波通信等方式,与其他多个终端设备200建立通信连接。
其中,所述终端设备200是指具有通信功能,能够接收、发送、执行控制指令并实现 特定功能的设备。所述终端设备200包括但不限于智能显示设备、智能终端、智能家电、智能网关、智能照明设备、智能音频设备、游戏设备等。构成语音控制系统的多个终端设备200可以为相同类型的设备,也可以为不同类型的设备。例如,如图7所示,在同一个语音控制系统中,可以包括智能电视、智能音箱、智能电冰箱、多个智能灯具等。这些终端设备200可以分布在不同的位置,以满足对应位置上的使用需求。
需要说明的是,本申请所述的语音控制系统,并不对本申请所要保护方案的应用范围造成限定。即在实际应用中,本申请提供的服务器、终端设备以及语音控制方法并不局限于应用在智能家居领域中,对于其他支持智能语音控制的系统,例如,智能办公系统、智能服务系统、智能管理系统、工业生产系统等也同样适用。
根据终端设备200的实际功能,终端设备200具有特定的硬件配置。如图8所示,以显示设备为例,具有显示功能的终端设备200可以包括调谐解调器210、通信器220、检测器230、外部装置接口240、控制器250、显示器260、音频输出接口270、存储器、供电电源、用户接口中的至少一种。
在一些实施例中,控制器250包括中央处理器,视频处理器,音频处理器,图形处理器,RAM,ROM,用于输入/输出的第一接口至第n接口。
在一些实施例中,显示器260包括用于呈现画面的显示屏组件,以及驱动图像显示的驱动组件,用于接收源自控制器输出的图像信号,进行显示视频内容、图像内容以及菜单操控界面的组件以及用户操控UI界面等。
在一些实施例中,显示器260可为液晶显示器、OLED显示器、以及投影显示器中的至少一种,还可以为一种投影装置和投影屏幕。
在一些实施例中,调谐解调器210通过有线或无线接收方式接收广播电视信号,以及从多个无线或有线广播电视信号中解调出音视频信号,如以及EPG数据信号。
在一些实施例中,外部装置接口240可以包括但不限于如下:高清多媒体接口(HDMI)、模拟或数据高清分量输入接口(分量)、复合视频输入接口(CVBS)、USB输入接口(USB)、RGB端口等任一个或多个接口。也可以是上述多个接口形成的复合性的输入/输出接口。
在一些实施例中,控制器250通过存储在存储器中的各种软件控制程序,来控制智能设备的工作和响应用户的操作。控制器250控制终端设备200的整体操作。例如:响应于接收到用于选择在显示器260上显示UI对象的用户命令,控制器250便可以执行与由用户命令选择的对象有关的操作。
在一些实施例中,用户可在显示器260上显示的图形用户界面(GUI)输入用户命令,则用户输入接口通过图形用户界面(GUI)接收用户输入命令。或者,用户可通过输入特定的声音或手势进行输入用户命令,则用户输入接口通过传感器识别出声音或手势,来接收用户输入命令。
在一些实施例中,终端设备200还与服务器400进行数据通信。可允许终端设备200通过局域网(LAN)、无线局域网(WLAN)和其他网络进行通信连接。服务器400可以向终端设备200提供各种内容和互动。服务器400可以是一个集群,也可以是多个集群,可以包括一类或多类服务器机组。
在一些实施例中,终端设备200-1可以内置语音控制系统,以支持用户的智能语音控制。所述智能语音控制是指用户通过输入语音音频数据来操作终端设备200-1的交互过程。为了实现智能语音控制,终端设备200-1可以包括音频输入装置和音频输出装置。其中, 所述音频输入装置用于采集用户输入的语音音频数据,可以是终端设备200-1内置或外接的麦克风装置。所述音频输出装置用于发出声音,以播放语音响应。例如,如图9所示,当用户通过音频输入装置输入“嗨!小×”等唤醒词时,终端设备200-1可以通过音频输出装置播放“我在”的语音响应,以引导用户完成后续语音输入。
在一些实施例中,终端设备200内置的智能语音系统还支持一语直达模式,即支持“one-shot”模式。在这种模式下,用户可以通过较少次数的语音输入,直接实现控制功能。例如,在传统模式下用户想要控制终端设备200播放电影资源,则需要先输入语音“嗨,小×”,待终端设备200反馈“我在”后,再输入“我想看电影”,则终端设备200反馈“为您找到以下电影”。而在“one-shot”模式下,用户可以直接输入“嗨!小×,我想看电影”,则终端设备200在接收到语音指令后直接反馈“为您找到以下电影”,减少语音交互次数,提高语音交互效率。
对于同一个语音控制系统中的多个终端设备200,用户可以通过智能语音控制多个设备的联动。例如,用户可以通过智能音箱输入语音指令“打开卧室灯”,则智能音箱可以响应于该语音指令,生成用于开启灯光的控制指令,再将控制指令发送给语音控制系统中名称为“卧室”的灯具,以控制开启卧室灯。同时,智能音箱还针对用户的语音输入做出响应,即播放“已为您打开卧室灯”等反馈语音内容。
在多个终端设备200之间联动控制时,控制指令可以通过接收到用户语音音频数据的终端设备200-1直接传递给被控设备,也可以通过终端设备200-1传递给路由器等特定的中继设备,再由中继设备传递给被控设备。在一些实施例中,控制指令还可以通过服务器400传递给被控设备。例如,用户在智能家居所在局域网以外,通过智能终端300控制语音控制系统中的某个终端设备200时,智能终端300可以先将控制指令发送给服务器400,服务器400再将控制指令传递给终端设备200,进行控制。
为了实现对语音控制系统中终端设备200的控制,服务器400可以单独向任意终端设备200下发控制指令和相关数据。例如,对于显示设备,用户可以通过交互操作控制显示设备请求在线播放媒资,则服务器400可以根据播放请求,向显示设备反馈媒资数据。而对于针对多个终端设备200的联动控制,服务器400可以统一向语音控制系统下发控制指令和相关数据。例如,当用户智能音箱控制打开卧室灯具时,智能音箱可以将用户输入的控制指令发送给服务器400,服务器400再向语音控制系统下发反馈数据,从而使语音控制系统向卧室灯具发送打开指令,同时向智能音箱反馈控制响应。
语音控制系统中的部分终端设备200可以内置完整的语音控制系统,这类终端设备200可以作为主控制设备,能够独立的接收、处理以及响应,同时能够向其他终端设备200发送语音音频对应的控制指令。例如,显示设备、智能音箱、智能冰箱等终端设备200中可以内置完整的语音控制系统,以接收用户输入的语音音频。语音控制系统中的部分终端设备200可以不内置完整的智能语音系统,仅作为被控制设备接收主控制设备发送的控制指令。例如,灯具、小家电等智能设备,可以接收作为主控制设备的显示设备传递的控制指令,启动、停止运行或更改运行参数。
由于支持完整语音控制系统的终端设备数量越来越多,因此对于同一个语音控制系统中,可能包括多个支持语音控制系统的终端设备。例如,同一个房间内设置有智能电视、智能音箱以及智能电冰箱,这些终端设备200都内置完整的语音控制系统,可以针对用户输入的语音指令做出响应。但是,对于支持完整语音控制系统的不同终端设备200,其实 际响应语音指令的方式,以及所支持响应的语音指令类型是不同的。例如,如图10所示,对于用户输入的语音指令“我想看电影”,智能电视能够做出响应显示电影列表,并反馈“已为您找到以下电影”的语音内容。而智能音箱和智能电冰箱则无法做出响应,因此会反馈“我听不懂你在说什么”的语音内容。
可见,由于当前语音控制系统中所包含的能够支持语音控制的终端设备200数量有多个,则针对同一个语音指令,会出现多个终端设备200同时唤醒或者误唤醒的情况,导致出现场景混乱,严重影响用户的体验。
为了缓解场景混乱的问题,在一些实施中,用户可以根据使用习惯通过智能终端300中的应用程序定义响应设备,并自由切换不同的唤醒策略。例如,用户可以手动设置智能音箱作为主要响应设备,则用户输入的语音指令可以由智能音箱进行响应,并通过智能音箱向其他终端设备200发送控制命令,以实现对整个语音控制系统中终端设备的智能语音控制。
但是,通过用户自定义的方式进行唤醒策略的控制方式,需要用户执行多次手动切换操作,不够智能化。而且,无论切换成哪种唤醒策略,目前多设备唤醒的执行过程都是通过待唤醒设备间相互通信来决策当前哪个终端设备被唤醒。这种执行方式存在很大风险,一方面,当待唤醒设备数量较多时,由于唤醒过程在每一个终端设备200之间都需要进行信息交互,因此无法保证在规定的时间内完成所有终端设备200之间信息的交互,从而导致终端设备200的应答异常。另一方面,由于不同类型终端设备200的唤醒时延不同,即从唤醒到应答的时间不同,因此无法保证不同类型终端设备200在唤醒决策时,能够同时处于设备信息交互时间段内,部分唤醒时延长的终端设备200在设备信息交互时可能还未收到唤醒词,从而错过设备信息交互的时间,导致终端设备200无法针对语音作出响应,出现语音控制异常的问题。
为了缓解语音控制异常的问题,本申请的部分实施例中提供一种语音控制方法,该方法可以应用于语音控制系统。所述语音控制系统包括服务器400和多个终端设备200。其中,所述服务器400应至少包括存储模块410、通信模块420以及控制模块430。存储模块410被配置为存储终端设备200上报的设备状态。通信模块420被配置为与多个终端设备200建立通信连接,以获得终端设备200上报的设备状态以及向多个终端设备200下发控制指令和相关数据。控制模块430则被配置为执行所述语音控制方法中服务器400一侧的程序步骤,以向不同的终端设备200下发响应指令或静默指令。
同理,为了满足所述语音控制方法的实施,所述语音控制系统中的终端设备200应至少包括音频输入装置、音频输出装置、通信器220以及控制器250。其中,音频输入装置被配置为检测用户输入的语音音频数据。音频输出装置被配置为播放语音响应。通信器220被配置为与服务器400建立通信连接,以向服务器400上报设备状态以及接收服务器400下发的响应指令或静默指令。控制器250则被配置为所述语音控制方法中终端设备200侧运行的程序步骤,以完成智能语音控制过程的响应。
如图11、图12所示,所述语音控制方法包括以下内容:
终端设备200获取用户输入的语音音频数据。用户处于语音控制系统环境中时,可以实时进行语音输入,则终端设备200内置的音频输入装置可以将用户输入的语音声音信号转化为电信号,并经过降噪、放大、编码、转化等一系列信号处理方法,获得语音音频数据。在进行语音交互时,用户可以通过多种方式输入语音音频数据。即在一些实施例中, 用户可以通过终端设备200内置音频输入装置输入语音音频数据。例如,用户可以通过终端设备200上内置的麦克风设备输入语音“嗨!小×,我想看电影”,则,麦克风可以将该语音声音信号转化为电信号,并传递给控制器250进行后续处理。
为了触发终端设备200进行智能语音控制,在一些实施例中,用户还可以在输入的语音指令中带有特定的唤醒词。所述唤醒词是一段包含特定内容的语音,如“嗨!小×”、“小×小×”、“嘿!××”等。对于用户输入语音音频数据的过程,尤其是通过终端设备200内置的远场麦克风输入语音音频数据的过程,终端设备200可以对用户输入的语音中是否包含唤醒词进行判断,当检测到唤醒词后,再进行后续处理,以缓解智能语音控制过程的误触发。
根据声音信号的传输特点,通常语音控制系统距离用户较近的检测到的用户语音音量衰减很小,并且传播距离较近,因此在用户发出声音后,距离用户较近的终端设备200会先检测到用户的语音音频数据。但由于在不同情况下用户输入的语音具体内容不同,因此响应语音的终端设备200是不确定的,即响应语音的终端设备200可能是距离用户距离较近的设备,也可能是距离用户距离较远的设备。例如,当用户在卧室输入“嗨!小×,我想看电影”的语音时,卧室内的智能音箱会先检测到语音音频数据,但智能音箱并不具有视频播放功能,而位于客厅内的智能电视具有视频播放功能。
因此,为了响应当前用户语音,在获取用户输入的语音音频数据后,终端设备200会根据语音音频数据生成语音指令。其中,语音指令是一种控制命令,具有特定的指令格式,包括控制动作函数、控制对象代码等内容。在终端设备200接收到语音音频数据后,终端设备200可以通过智能语音系统中的语音处理模块,先对语音音频数据进行文本转化,即通过声学特征提取,将语音音频数据中的波形数据转化为文本数据。
在转化为文本数据后,终端设备200可以使用分词工具,将非结构化的文本数据转化为结构化文本数据。即终端设备200可以通过词库匹配等方式,剔除文本数据中的语气词、助词等无实际意义的文本内容,保留文本数据中的关键词,并按照词义将多个关键词进行分隔,以获得结构化的文本。
在获得结构化文本数据后,终端设备200还可以将结构化文本输入文字处理模型。文字处理模型是一种基于机器学习的人工智能模型。文字处理模型可以在输入文本数据后,经过计算确定文本信息归属于特定语义的分类概率。因此,可以通过将各种标准控制指令作为分类标签,使文字处理模型能够输出文本数据对每个标准控制指令的分类概率,其中,分类概率最高的标准控制指令即是语音音频数据对应的控制指令。
文字处理模型可以利用样本数据和设置的输入输出规则,对初始模型进行反复训练获得。其中,样本数据为带有标签的文本信息。在模型训练的过程中,可以样本数据为输入,以分类概率为输出,对样本数据执行计算。并将输出的结果与样本数据中的标签进行比较,获得训练误差,再将训练误差反向传播,即根据训练误差调整模型参数,从而经过反复多次的大量样本数据输入,可以获得能够准确输出识别结果的文字处理模型。
经过模型计算后,终端设备200可以将用户输入的语音音频数据转化为语音指令。经过终端设备200的转化后,被控设备或者服务器400可以在接收到语音指令后直接对语音指令进行处理,如根据语音指令执行控制动作以及在语音指令中提取业务需求信息等。
显然,在一些实施例中,终端设备200可以直接将语音音频数据作为语音指令进行发送,即对于数据处理能力较低,或者没有内置完整语音控制系统的终端设备200,终端设 备200可以直接将音频数据进行转发,由服务器400或者其他终端设备200执行语言处理,以缓解当前终端设备200的运算负荷。
在生成语音指令后,终端设备200可以向服务器400发送语音指令,以触发服务器400对多个终端设备200的唤醒过程执行控制。需要说明的是,由于语音控制系统中可以包括多个内置语音控制系统的终端设备200,因此当用户输入语音时,语音控制系统中的多个终端设备200均能够检测到语音音频数据,此时,为了避免重复的数据传输,服务器400可以在接收到一个语音指令后,暂停其他终端设备200中语音指令的生成过程和语音指令的上报过程。
例如,在智能电视向服务器400发送语音指令后,服务器400可以向智能电视所在语音控制系统中的智能音箱和智能冰箱发送用于暂停指令生成和指令发送的控制指令,则在接收到该控制指令后,智能音箱和智能冰箱均停止生成语音指令的生成和发送。由于数据处理能力较高的终端设备200通常能够在较短的时间内完成语音音频数据计算,从而先于其他设备完成语音指令的生成。因此,服务器400在接收到最先发送的语音指令后,停止其他终端设备200的语音指令生成和上报过程,还可以缩短语音指令的生成时间,提高语音响应速度。
服务器400接收到语音指令后,可以在语音指令中解析业务需求信息。对于用户输入的不同语音指令,其中包含的控制内容也不同,则其拥有不同的业务需求。例如,当用户输入语音“嗨!小×,我想听音乐”时,则经过终端设备200的处理后,生成语音指令,且语音指令中包含“播放音乐”(music_play)的业务需求。当用户输入语音“嗨!小×,打开卧室灯”时,生成包含“打开灯具”(light_power on)业务需求的语音指令。
显然,当语音指令中包含业务需求信息时,服务器400可以直接从语音指令汇总提取业务需求信息。而当语音指令为终端设备200上传的语音音频数据时,服务器400还可以对终端设备200上传的语音音频数据进行识别处理,即如上述实施例中终端设备200对语音音频数据执行的处理方式相同,服务器400也可以通过内置的语音转文字工具、文本结构化处理工具以及文字处理模型等对语音音频数据进行识别,以从中识别出业务需求信息。
为了便于服务器400从语音指令中解析业务需求信息,在一些实施例中,可以设置业务需求识别模型,或者将上述文字处理模型的输出分类设置为业务需求,以通过模型计算出用户语音音频数据对于各业务需求的分类概率。
需要说明的是,由于用户输入的语音内容可能包含多个用户意图,因此从对应的语音指令中也可以解析出多个业务需求。例如,用户输入语音“嗨!小×,打开客厅灯和播放电影”,则可以在语音指令中解析出“打开灯具”和“播放电影”两个业务需求。此外,语音控制系统还可以通过预置更加丰富的指令集,实现更丰富的语音交互功能,则根据设定的指令集,可以对应确定其中包含的业务需求。例如,用户输入语音“嗨!小×,开启影院模式”,则语音控制系统可以根据“影院模式”的指令集,确定对语音控制系统的控制内容包括播放电影同时关灯,以模仿电影院的氛围。因此,服务器400可以在语音指令中解析出“关闭灯具”和“播放电影”两个业务需求。
不同的业务需求,对应为终端设备200执行不同的控制操作,对应需要响应该语音指令的终端设备200需要处于不同的设备状态。例如,对于灯具,其在处于待机状态才能够支持开启/关闭、亮度调节等控制;而当用户通过墙壁开关关闭灯具的供电,使其处于离线状态时,则不能支持开启/关闭、亮度调节等控制。
因此,终端设备200可以通过预定的信息上报策略,向服务器400上报设备状态。在一些实施例中,终端设备200可以按照数据更新频率,每个特定的时间向服务器400上报一次当前设备状态,并且,服务器400可以根据终端设备200的上报状态,更新存储的设备状态。
例如,服务器400可以向终端设备200发送心跳指令,终端设备200则在接收到心跳指令后,向服务器400反馈当前设备状态,以使服务器400可以更新存储的设备状态。而当服务器400向终端设备200发送心跳指令的预设周期内,终端设备200没有向服务器400反馈心跳指令时,服务器400可以将对应的设备状态更新为离线状态。
为了使语音交互过程中所依据的设备状态为更有效的设备状态,在一些实施例中,终端设备200的设备状态还可以通过语音指令触发上报。即服务器400可以获取语音指令对应的语音音频数据,并从语音音频数据中识别唤醒词。如果语音音频数据中包括唤醒词,则定位终端设备200所在的语音控制系统,从而向语音控制系统发送状态获取请求。语音控制系统中的全部终端设备200可以在接收到状态获取指令后,上报设备状态。
例如,在终端设备200上报语音音频数据时,服务器400可以从语音音频数据中识别唤醒词“嗨!小×”,则在语音音频数据中识别出唤醒词“嗨!小×”后,服务器400可以根据终端设备200的识别信息确定用户当前使用的语音控制系统,即“××的家居系统”,该语音控制系统的客厅中有智能电视、音箱A、音箱B;卧室中有灯、音箱C;厨房中有智能冰箱。再向该语音控制系统发送状态获取请求,以使该语音控制系统中的电视、音箱A、音箱B、灯、音箱C、智能冰箱上报当前的设备状态。
在获得业务需求信息和终端设备200上报的设备状态后,服务器400可以根据业务需求信息和设备状态信息筛选第二终端设备。其中,所述第二终端设备为设备状态能够实现业务需求信息的智能设备。
由于终端设备200能否实现业务需求需要特定的前置条件,如设备类型和设备状态,因此服务器400在筛选第二终端设备的过程中,可以根据不同的前置条件对当前语音控制系统中的终端设备200进行多层次筛选。例如,用户输入语音“嗨!小×,打开灯”,则对应的业务需求为“打开灯具”,其实现业务需求所需要的前置条件分别为,设备类型为灯具,设备状态为待机状态,则服务器400可以先根据设备类型在当前语音控制系统中筛选出所有类型为灯具的终端设备200,再根据设备状态筛选出设备状态为待机状态的灯具,作为第二终端设备。
在筛选出第二终端设备后,服务器400向作为第二终端设备的终端设备200发送响应指令,则作为第二终端设备的终端设备200可以通过运行响应指令,以响应语音控制功能。同时,服务器400还向当前语音控制系统中第二终端设备以外的其他终端设备200发送静默指令,以使当前语音控制系统中第二终端设备以外的其他智能设备可以通过运行静默指令,不响应语音控制功能。
例如,用户输入语音“嗨!小×,打开灯”,则家庭环境内的支持语音交互的终端设备200将收到的语音指令及设备状态上报给服务器400,即,将语音指令“打开灯具”和设备状态(待机)上报给服务器400。服务器400端收到语音指令后,可以判断有一台灯具当前的设备状态符合当前用户语音指令中业务需求对应的对象范畴。因此,服务器400可以下发用于唤醒该灯具的响应指令,同时下发静默指令给其它设备,以使设备端执行对应指令,使符合业务需求和设备状态灯具被点亮,而不符合业务需求和设备状态的其他终端设备200保持静默状态。
由以上内容可知,上述实施例中提供的语音控制方法,可以使用语音指令中包含的业务需求信息和终端设备200上报的设备状态,在当前语音控制系统中筛选出能够响应语音指令的第二终端设备。并向第二终端设备发送响应指令,同时向其他设备发送静默指令,使得智能语音系统可以在接收到用户输入语音指令后,各终端设备200会通过分别和服务器400之间的通信来交互信息,通过服务器400自动判断第二终端设备,减少多个终端设备200之间的数据交互,以缓解多设备间通信频繁导致执行率低的问题。
用户在输入语音时,可以在语音指令中明确执行设备,例如,用户输入的语音内容为“打开电视”,则其中明确了执行设备为电视,此时,由于具有明确的执行设备,服务器400可以将语音指令直接传递给电视设备,无需再解析业务需求信息即可确定执行设备。因此,在一些实施例中,在服务器400接收到终端设备200-1上报的语音指令后,还可以对语音指令中的执行设备进行检测。如果语音指令中没有明确执行设备,则按照上述实施例中提供的方式,通过解析业务需求信息,并与设备状态进行匹配筛选第二终端设备。
如果语音指令中明确了执行设备,即包括执行设备的识别信息,则可以根据语音指令生成控制命令和反馈语音信息。其中,控制命令为与语音指令相对应,面向执行设备的一种命令。例如,对于用户输入的“打开电视”语音,对应生成的控制命令为“TV_power on”。反馈语音信息是针对语音内容发出的一种语音音频,用于提示用户指令的执行结果。例如,当用户输入语音“打开电视”后,智能语音系统在将电视开机后,会播放“已为您打开电视”的反馈语音信息。
控制命令和反馈语音信息可以发送给特定终端设备200,以分别通过执行控制命令实现控制指令对应的业务,以及通过播放反馈语音信息,提示用户业务执行结果。控制命令和反馈语音信息可以均作用于执行设备,例如,在用户输入“打开电视”的语音时,电视响应该语音上电开机,同时通过电视的智能语音系统和扬声器播放“已问您打开电视”的语音反馈。
但由于执行设备可能位于距离用户较远的位置,此时如果通过执行设备播放反馈语音信息,则由于距离较远,而出现用户无法听清反馈语音内容的情况,造成用户无法知晓语音交互过程的控制结果。并且,当家中有多台智能语音控制设备时,很多时候用户并不关心唤醒的是哪台设备来反馈执行结果。为此,在一些实施例中,服务器400可以分别向不同的终端设备200发送控制命令和反馈语音信息。即服务器400可以按照执行设备的识别信息将控制命令发送给执行设备,并将反馈语音信息发送给输入语音指令的智能设备。
例如,当用户在卧室发出语音“打开电视”,卧室中带有智能语音系统的智能空调先检测到语音音频数据,并生成语音指令发送给服务器400,服务器400则根据语音指令可以确定电视为执行设备,并根据语音指令生成“TV_power on”的控制命令以及“已为您打开电视”的反馈语音信息。再将控制命令发送给客厅内的电视,以打开电视,以及将反馈语音信息发送给智能空调,以通过卧室中的智能空调播放“已为您打开电视”的语音反馈。
可见,在上述实施例中,当语音指令中有明确的执行设备时,可以通过执行设备和输入语音指令的终端设备200分别对语音指令进行响应,从而在满足业务需求的同时,给予用户更好的反馈效果。
由于语音控制系统中可能包含多个终端设备200,并且不同的终端设备200可以支持相同的业务需要,并且在同一时间内处于相同的设备状态,因此,通过上述实施例中的方式对设备进行筛选时,可能筛选出多个第二终端设备。此时,如果服务器400直接向作为第 二终端设备的终端设备200发送响应指令,则将导致多个终端设备200同时对一个语音指令执行响应,仍旧存在场景混乱的问题。
对此,服务器400可以通过增加筛选条件的方式进一步进行细致的筛选过程,以减少作为第二终端设备的终端设备200的数量。即在一些实施例中,所述业务需求信息可以进一步包括业务类型和业务状态。则服务器400在根据业务需求信息筛选第二终端设备时,可以从业务需求信息中提取业务类型和业务状态,并在设备状态中匹配满足业务类型的候选设备,其中,所述候选设备具有符合业务类型需要的设备类型,再通过遍历候选设备的设备状态,以筛选出设备状态符合业务状态的第二终端设备。
例如,用户输入语音“嗨!小×,关闭音乐”,则家庭环境内的终端设备200将收到的语音指令、当前的设备类型及设备状态上报给云端服务器400,即设备类型(音乐)及设备状态(播放中)。服务器400在收到终端设备200上报的内容后,可以根据语音指令中需求的业务类型和业务状态对当前语音控制系统中对应的设备类型和设备状态进行筛选,判断有一台处于音乐播放中的音箱当前设备类型及设备状态符合当前用户语音指令的对象范畴。因此,服务器400可以下发响应指令给对应的音箱,同时下发静默指令给其它设备,以使当前语音控制系统中的音箱设备执行对应的响应指令,执行关闭音乐操作。
在一些实施例中,所述业务需求信息还包括业务执行位置,服务器400可以根据业务执行位置对终端设备200进行进一步筛选,以确定第二终端设备。即服务器400可以在根据业务需求信息筛选第二终端设备时,从业务需求信息中提取业务执行位置,并获取当前语音控制系统中各候选设备的设备位置;如果候选设备的设备位置与业务执行位置重合,即候选设备满足业务执行位置,则可以执行遍历候选设备的设备状态的步骤,以筛选出设备状态符合业务状态的第二终端设备。如果候选设备的设备位置与业务执行位置不重合,标记候选设备不是第二终端设备,即可以从候选设备列表中删除该设备。
例如,用户输入语音“嗨!小×,让卧室的音箱播放音乐”,则家庭环境内的终端设备200将收到的用户指令,并将当前的设备类型及设备状态上报云端服务器,即设备类型(无)及设备状态(待机)。服务器400接收到终端设备200上报的信息后,可以从语音指令中解析出业务执行位置“卧室”,并按照该业务执行位置对当前语音控制系统中的终端设备200进行筛选,确定设备位置处于卧室范围内的终端设备200。因此,服务器400可以在判断有一台位于卧室中的音箱对应当前设备类型及设备状态符合当前用户指令控制的对象范畴时,下发响应指令给卧室中的音响。同时,服务器400还下发静默指令给当前语音控制系统中的其它设备,包括卧室中的设备和卧室以外的设备。
由以上内容可知,上述实施例中提供的语音控制方法可以基于业务类型、业务状态、业务执行位置等业务需求信息,对语音控制系统中的终端设备200进行多轮筛选,从而确定数量较少的第二终端设备,以减少终端设备200之间的通信频率,提高智能语音控制过程的执行效率。
经过上述实施例中提供的筛选过程,服务器400可以在众多终端设备200中筛选出可响应控制指令的第二终端设备。通过上述筛选过程,虽然可以大大减少作为第二终端设备的终端设备200数量,但是在部分筛选过程中,能够满足业务需求的终端设备200仍然存在多个,而对于用户的语音控制过程,通常只需要特定的一个或多个第二终端设备执行响应。
因此,如图13所示,为了确定最终执行响应的第二终端设备,在一些实施中,服务器400还可以从筛选出的能够满足业务需求的多个终端设备200中进一步确定最终执行设备。 即在根据业务需求信息筛选第二终端设备时,服务器400可以执行以下步骤:
S201:获取设备状态能够实现业务需求信息的终端设备数量。
S202:如果终端设备数量等于1,即当前语音控制系统中只有一个能够满足当前业务需求的终端设备200,因此服务器400可以直接标记能够实现业务需求信息的终端设备200为第二终端设备。
S203:如果终端设备数量大于或等于2,查找主设备。其中,所述主设备为能够实现业务需求信息的多个终端设备中的一个。
S204:主设备可以执行与用户的进行进一步交互,以确定最终响应语音指令的第二终端设备。
即在一些实施例中,服务器400可以在查找主设备后,向主设备发送问询指令,以使主设备播放询问语音,其中,所述问询指令为多轮免唤醒语音交互指令。再接收用户通过主设备输入的确认语音指令,并从确认语音指令中提取第二终端设备识别信息,以根据第二终端设备识别信息在能够实现业务需求信息的多个智能设备中筛选第二终端设备。
例如,当用户所处的环境中包括音箱A和音箱B两个正在播放音乐的终端设备200,则在用户输入语音:“嗨!小×,关闭音乐”时,音箱A和音箱B会在接收到用户输入的语音指令后,分别上报给云端服务器400当前各自的设备类型(音乐)和设备状态(播放中)。服务器400在接收到上述内容后,可以根据语音指令中的业务需求筛选出满足该业务需求的终端设备200。即判断有两台音箱当前的设备类型及设备状态与需求的业务类型和业务状态一致后,指定音箱A作为主设备,并向音箱A下发多轮免唤醒问询指令,即“您有音箱A、音箱B两台设备,请问您需要关闭哪一个?”,再接收用户反馈的确认语音指令,即在用户回复语音:“关闭音箱A的音乐”,则确定音箱A为最终执行语音控制响应的第二终端设备。此时,服务器400可以向音箱A发送响应指令,向包括音箱B的其他终端设备200发送静默指令。
为了在能够实现业务需求信息的多个终端设备200中查找到主设备,如图14所示,在一些实施例中,主设备可以是距离语音指令对应声源位置最近的终端设备200。服务器400可以在查找主设备时,获取能够实现业务需求信息的多个智能设备针对语音指令检测的语音音频数据,并在语音音频数据中提取声能量值,再通过对比声能量值,以获得声能量值最高的终端设备200,从而将声能量值最高的终端设备200标记为主设备。
由于特定场景内的混响时间参数T60是确定的,即在任何位置的能量衰减60db需要的时间是相同的,并且T60可基于对应位置的直达声和混响声能量比来估计,因此,可以基于波束形成的谱图和声源到达时间差,求出环境中所有终端设备200针对声源的直达声和混响声能量比,进而求出直达能量。再将各个设备中接收的声源直达声能量进行排列,即可以判断出距离声源位置最近的终端设备200,作为主设备。
除上述基于声能量值确定主设备的方式外,还可以基于其他方式确定主设备。即在一些实施例中,对声源位置与终端设备200之间距离的检测过程还可以由每个终端设备200完成,即终端设备200可以通过多目摄像头对当前环境进行图像获取,并根据多个角度上的图像构建出三维空间模型,再根据图像识别方法,在三维空间模型中提取人像,从而定位用户在三维空间模型中的位置,即声源位置。定位声源位置后,终端设备200再根据当前智能家居模型的摆放状态,确定声源位置与每个终端设备200之间的距离,最后将计算的距离发送给服务器400,以使服务器400可以确定距离声源位置最近的终端设备200为主设 备。
可见,在上述实施例中,当能够实现业务需求的终端设备200的数量包括多个时,服务器400可以通过主设备与用户进行进一步交互的方式,进一步在多个终端设备200中选中能够最终执行语音控制响应的第二终端设备,从而使语音控制过程之前,不会在多个设备间进行频繁通信,提高语音交互过程的响应速度。
基于上述实施例提供的语音控制方法,服务器400可以确定第二终端设备,并通过下发响应指令,使第二终端设备可以针对用户输入的语音进行交互响应。由于交互响应过程可以控制第二终端设备执行特定的交互动作,这些交互动作将可能更改终端设备200的设备状态,因此在将响应指令发送给第二终端设备后,服务器400还可以再获取第二终端设备在执行响应指令后的设备状态,以实时更新存储的设备状态。
即如图15所示,服务器400可以在向第二终端设备发送响应指令后,接收第二终端设备上报的执行结果数据。其中,所述执行结果数据中包括运行响应指令后的设备新状态。再从执行结果中提取设备新状态,并使用设备新状态更新存储模块中存储的设备状态。
通过上述实施例中提供的设备状态更新方式,可以使服务器400中存储的设备状态及时与语音控制系统中终端设备200的实际设备状态保持一致,从而使服务器400在后续执行智能语音交互过程中,可以基于更新后的设备状态对终端设备200进行筛选,更准确的确定第二终端设备。
基于上述语音控制方法,如图16所示,在本申请的部分实施例中还提供一种服务器400,包括:存储模块410、通信模块420以及控制模块430。其中,控制模块430被配置为执行以下程序步骤:
S301:获取用户通过终端设备输入的语音指令。
S302:响应于语音指令,在语音指令中解析业务需求信息。
S303:根据业务需求信息筛选第二终端设备,所述第二终端设备为设备状态能够实现业务需求信息的智能设备。
S304:向第二终端设备发送响应指令。
S305:向当前语音控制系统中第二终端设备以外的其他智能设备发送静默指令。
与上述服务器400向配合的,如图17所示,在本申请的部分实施例中还提供一种终端设备200,包括:音频输入装置、音频输出装置、通信器220以及控制器250。其中,控制器250被配置为执行以下程序步骤:
S401:获取用户输入的用于执行语音控制的语音音频数据。
S402:根据语音音频数据生成语音指令。
S403:向服务器发送语音指令,以使服务器在语音指令中解析业务需求信息,并根据业务需求信息筛选第二终端设备,所述第二终端设备为设备状态能够实现业务需求信息的智能设备。
S404:接收服务器下发的响应指令或静默指令。
S405:运行响应指令或静默指令。
由以上内容可知,上述实施例提供的服务器400和终端设备200可以组成语音控制系统,用于实施上述语音控制方法。其中,服务器400可以在用户输入语音指令后,从语音指令中解析业务需求信息,并根据业务需求信息筛选当前设备状态能够实现该业务需求的第二终端设备,从而向第二终端设备发送响应指令,以使作为第二终端设备的智能设备做出语 音响应;同时,服务器400还根据第二终端设备的筛选结果,向当前语音控制系统中第二终端设备以外的其他设备发送静默指令,以使不作为第二终端设备的终端设备200不响应该语音控制功能。所述服务器400可以进行语音指令的预先处理,以使所有类型的终端设备200都能够在规定时间内快速高效地做出正确的唤醒应答,解决传统语音唤醒方法应答异常的问题。
随着为智能家居的广泛应用,通过语音命令控制相应终端设备,得到广大用户的青睐。图18为本申请实施例提供的一种终端设备的应用场景图。如图18中所示,家庭中的智能电视200-5、智能空调200-2、智能冰箱200-4以及智能洗衣机200-3等终端设备可通过物联网模块与智能终端300和服务器400进行连接,智能终端300与终端设备之间,可通过局域网或者广域网进行数据传输,实现对终端设备的控制管理。通常情况下,物联网模块可以内置于各个终端设备中。
第一终端设备一般是具备一定功能的设备,对于接收到的语音,如果没有指明终端设备则认为是本设备响应该语音,如果指明了要操作的终端设备则发送控制指令给指明的终端设备,示例性的,以智能音箱为例,如果接收到“快进”后,首先判断智能音箱是否存在对应该指令的操作,如果存在则执行快进操作,如果不存在,则反馈表征未识别的提示信息。如果接收到“电视快进”,智能音箱首先判断对应已存在映射关系的电视,是否存在对应该指令的操作,如果存在则发送触发电视快进的操作指令给电视,如果不存在,则反馈表征未识别的提示信息。
在一些实施例中,如果用户没有指明第二终端设备,第一终端设备可以播放表征存在映射的几个终端设备的提示给用户。
在一些实施例中,第一终端设备和其他终端设备的映射关系的判断,可以在本地模块中执行,也可以在云端执行。在一些实施例中,本地模块和可以安放在第一终端设备内或者相互固定。也可以是相互独立的客体。
在一些实施例中,以云端执行为例,用户在家庭中增设终端设备时,可对终端设备进行区域划分,将终端设备设定于固定区域中。例如,将智能电视、智能音箱、智能空调等设置于客厅区域,将智能冰箱设置于厨房区域。图19为本申请实施例提供的一种终端设备的另一应用场景图。当用户想要收听XXX歌曲时,在用户输入对第一终端设备输入唤醒词“嗨!XX”后,第一终端设备使设备中安装的语音应用处于激活状态,对第一终端设备输入“播放XXX歌曲”的语音消息,第一终端设备通过语音应用将语音消息转换为语音指令传输至服务器400,服务器400在接收到语音指令后查询当前该用户所配置的终端设备,在查询到有电视、冰箱和空调之后,会通过第一终端设备向用户反馈“您有3个设备,请问要用哪一个”,用户若是此时在客厅,可能会继续输入“用客厅的播放吧”的语音消息。服务器400会进一步判断此时客厅存在电视和空调两个终端设备,通过第一终端设备向用户反馈“您客厅有3个设备,请问要用哪一个”,用户则需要通过第一终端设备输入“用电视播放吧”,至此,服务器400会控制电视播放XXX歌曲。其中,第一终端设备可以为智能遥控器、智能音箱等具有收音功能的设备。
基于上述一个家庭中存在多个终端设备的情况,服务器400需要与用户进行多轮语音交互,让用户主动的做各种提示,最终确定出最终要执行指令的第二终端设备。上述与用户进行多次交互的过程。
在一些实施例中,为了提高用户体验,本申请在一些实施例中提供了一种服务器,该 服务器被配置为执行语音交互过程。下面结合附图对语音交互过程进行说明。
在一些实施例中,服务器400中在执行的方法可以在一个其他终端设备或者第一终端设备中执行。后续以服务器执行为例。
图20为本申请实施例提供的一种语音控制方法的流程示意图。如图20所示,所述方法包括以下步骤:
用户实际环境中安置有第一终端设备,以及电视,冰箱,空调等其他终端设备,第一终端设备和所述其他终端设备均可以通过网络连接服务器,用户通过预先在某一终端设备端的操作,使得这些终端设备均登陆相同的账号,进而使得服务器端存储有账号的用户标识和终端设备的映射关系。在任一时刻,第一终端设备接收用户输入的语音。
在一些实施例中,用户基于自身需求,可向第一终端设备发送语音指令,通过语音控制相应的第二终端设备执行语音指令。例如,在用户想要使用第二终端设备观看XXX影片时,可通过向第一终端设备输入唤醒词“嗨!XX”后,对第一终端设备输入“播放XXX影片”的语音消息。需要说明的是,第二终端设备和第一终端设备是两个独立的设备,第二终端设备可以拥有自己的语音接收装置进行语音控制工作,第二终端设备和第一终端设备不是电视和仅为电视使用的电视遥控器之间的关系,也不是电视处理器和电视上的语音接收装置之间的关系。
在一些实施例中,唤醒词和语音指令可以连续的进行输入。第一终端设备可以识别包含唤醒词的语句中所包含的语音指令。
在一些实施例中,第一终端设备可集成收音和语音解析功能。其中收音功能是接收用户发出的语音消息,语音解析功能指的是提取用户发出的语音消息中的关键部分,该关键部分能够体现出用户的意图或者说要做的内容,在解析出用户的意图之后,将其转换成语音指令,该语音指令可以为第一终端设备与服务器400之间可执行约定的指令格式。其中,指令格式可以包括command(指令)和parameters(参数)。在转换成语音指令后,将语音指令发送给服务器400,由服务器400进行接收。其中,将相应的用户标识添加至语音指令中,便于服务器400识别是哪个用户所发送的语音指令,也便于用户查找该用户所配置的全部终端设备。
在一些实施例中,第一终端设备具有独立的声像显示系统,可以进行音视频流的解码和播放。
在一些实施例中,第二终端设备同样具有独立的声像显示系统,可以进行音视频流的解码和播放。
S2001:接收第一终端设备发送的包含用户标识的语音指令。
在一些实施例中,第一终端设备可以将根据语音转化成的文本作为语音指令并发送给服务器。
在一些实施例中,语音转化的服务端在所述服务器中,因此第一终端设备可以将接收语音按约定的封装结构发送给服务器即可,服务器解封接收到的数据并获得语音指令。
S2002:查找与所述用户标识相关的所有终端设备。
在一些实施例中,服务器400接收到语音指令之后,对语音指令进行解析,获取到用户标识和该语音指令所传递的用户的意图。
在一些实施例中,服务器通过对语音指令的解析,根据解析出的文本中的关键字,确定指令对应的设备类型,这里,设备类型指的是终端设备所具备的功能权限。
在一些实施例中,服务器中可以缓存关键字和设备类型的映射关系,在一些实施例中,也可以存放已经训练好的关键词-设备类型的神经网络模型。
以服务器中缓存关键字对应的设备类型为例,如表1:
语音指令 设备类型 终端设备
播放电影 视频播放 智能电视、智能冰箱屏
播放歌曲 音频播放 智能音箱
开始送风 室温调整 智能空调、智能电风扇
表1
同时,服务器400在获取到用户标识之后,从数据库中查找与用户标识相关的所有终端设备,也就是查找该用户所配置的全部终端设备。这是因为,如果基于近场通信进行设备的发现,设备可以发现其扫描到的所有设备,包括自己的和/或地理位置临近的其他用户的设备,但这些设备中有些是不属于该用户的,即使通过局域网判断,也可能初选局域网内接入了访客设备的场景。通过在一个具备管理功能的服务器中,预先建立用户标识和自己的设备的关联关系,服务器400就可以根据用户标识确定用户实际拥有的设备。
在一些实施例中,所述终端设备是指与所述用户标识关联的除所述第一终端设备外的其他设备。
在一些实施例中,语音指令的识别需要判断语音指令的类型,然后和各终端设备所能执行的类型相比对,进而确定可以执行该语音指令的终端设备。
在一些实施例中,各终端设备所能执行的类型可以是预先标定好的,例如,厨房冰箱对应冷冻,冷藏,食谱推荐,食材识别。也可以是在扫描到新增设备时,根据设备标识确定的。例如,在新增的设备标识表征该设备是冰箱时,建立该设备标识与冷冻,冷藏,食谱推荐,食材识别等类型的关联。
在一些实施例中,服务器400在获取到用户标识之后,还可以将与用户标识相关的所有终端设备及设备属性从数据库加载至缓存中。后续服务器400在查找第二终端设备时,可直接到缓存中查找,从而能够加快服务器400查找第二终端设备的速度。其中设备属性包括终端设备的位置、终端设备的名字、终端设备ID等固有属性。
S2003:在不存在与所述用户标识相关的终端设备时,反馈表征不存在终端设备的参数,以使所述第一终端设备播报不存在执行语音指令的终端设备。
在一些实施例中,服务器400若是没有查找到与用户标识相关的终端设备,说明该用户没有配置终端设备,此时,服务器400需要向第一终端设备反馈表征不存在终端设备的参数。第一终端设备根据接收到的表征不存在终端设备的参数播报不存在终端设备。
S2004:在存在与所述用户标识相关的终端设备时,利用预设的过滤规则筛选出最匹配的第二终端设备,反馈表征最匹配的第二终端设备的参数,以使所述第一终端设备播报存在执行语音指令的第二终端设备,并控制最匹配的第二终端设备执行所述语音指令。
在一些实施例中,预设的过滤规则是指用于筛选出符合用户意图的预置规则/可以执行该语音指令的设备的规则。例如,用户在输入“播放民乐”的语音时,第一终端设备将播放民乐的指令发送给服务器,服务器识别出用户的意图的类型是播放音乐,则根据该类型确定可以执行该类型操作的第二终端设备。
在一些实施例中,在存在与所述用户标识相关的终端设备时,利用与所述用户标识相 关的终端设备来执行语音指令。
在一些实施例中,在存在与所述用户标识相关的终端设备时,还需要确定终端设备的个数和/或终端设备所能执行的功能,这里,终端设备所能执行的功能即为终端设备功能权限。示例性的,在语音指令为播放视频的指令时,需要确定出可以进行视频播放的设备,不能执行视频播放的设备会筛除,在语音指令为制冷26°的指令时,不能进行制冷的设备被筛除,使用可以执行该制冷设备执行该语音指令。
在一些实施例中,服务器400中配置有预设的过滤规则。所述过滤规则表征所述语音指令与所述终端设备之间的映射关系。所述过滤规则包含第一组规则和第二组规则,或者只包含第一组规则不包含第二组规则,其中,所述第一组规则指的是为了筛选出最匹配的第二终端设备所必需的规则,所述第二组规则指的是在没有筛选出最匹配的第二终端设备时逐一叠加利用的规则。
在一些实施例中,第一组规则包含设备类型和各个终端设备的映射关系,例如上述实施例中的表1所示的映射关系。
在一些实施例中,第一组规则可以是对用户标识对应的个数的判断。
在一些实施例中,根据第一组规则确定出第二终端设备后,如果还是包含两个或以上的终端设备,则需要进一步利用第二规则进行进一步筛选。示例性的,在根据设备类型和各个设备的映射关系确定出可选的第二终端设备后,如果第二终端设备数量为1个,则直接将语音指令发送给该第二终端设备,如果是0个,则反馈无可执行的设备给第一终端设备,如果大于1个,则可以根据位置/安装时间/使用频率/上次执行该类型指令的设备/启动时间/信号强度/优先级等等中的一个或任一组合来作为第二组规则进行过滤。
图21为本申请实施例提供的一种筛选终端设备的流程示意图。结合图21,本申请在一些实施例中根据过滤规则筛选第二终端设备的过程如下:
S2101:利用所述第一组规则筛选当前终端设备与所述用户标识相关的终端设备。
在一些实施例中,在所述在存在与所述用户标识相关的终端设备时,服务器400首先通过为了筛选出最匹配的第二终端设备所必需的规则来对终端设备进行筛选。在一些实施例中,所述第一组规则包含终端设备功能权限子规则,这里,终端设备功能权限子规则指的是各个终端设备所分别具备的功能,如智能电视具有播放媒资的功能,空调具有制冷制热的功能等等。也就是当服务器400筛选出用户实际拥有的终端设备时,再进一步利用终端设备功能权限子规则筛选终端设备,排除掉不具有相应权限功能的终端设备。
在一些实施例中,在利用所述终端设备功能权限子规则筛选终端设备时,服务器400分别检测多个与所述用户标识相关的终端设备的功能权限。在所述功能权限适合执行所述语音指令时,服务器400将相对应的终端设备选定为所述备选终端设备。在所述功能权限不适合执行所述语音指令时,服务器400排除相对应的终端设备。
S2102:若与所述用户标识相关的终端设备不具备执行所述语音指令权限时,则反馈表征不存在终端设备的参数,以使所述第一终端设备播报不存在执行语音指令的终端设备。
S2103:若与所述用户标识相关的终端设备具备执行所述语音指令权限时,则确认具备执行所述语音指令权限的第二终端设备的数量。
在一些实施例中,在利用第一组规则过滤与所述用户标识相关的终端设备时,若是用户实际拥有的终端设备都不具备相应的功能权限,则服务器400需要向第一终端设备反馈表征不存在终端设备的参数。第一终端设备根据接收到的表征不存在终端设备的参数播报 不存在终端设备。
在一些实施例中,在利用第一组规则过滤与所述用户标识相关的终端设备时,若是用户实际拥有的终端设备具备相应的功能权限,则服务器400还需要确认具备相应功能权限的终端设备的数量。
在一些实施例中,服务器400检测到仅在存在一个具备执行所述语音指令权限的终端设备时,则向第一终端设备反馈表征存在相应权限的终端设备的参数,所述第一终端设备根据表征存在相应权限的终端设备的参数播报具备相应权限的终端设备。
服务器400还需按照语音指令中用户的意图控制该当前终端设备执行相应操作。
在一些实施例中,服务器400将所述语音指令发送给当前终端设备,当前终端设备接收所述语音指令并根据所述语音指令执行响应的操作。
例如,用户当前仅配置了扫地机器人,若是用户输入“扫地”的语音消息,第一终端设备将该语音消息传输至服务器400,服务器400在查询后发现当前用户仅配置有扫地机器人,正好扫地机器人具备清扫功能。故服务器400控制第一终端设备播报“扫地机器人开始扫地”,并控制扫地机器人执行扫地功能。其中,服务器400控制第一终端设备播报时,可通过长链接的方式将表征存在相应权限的终端设备的参数反馈至第一终端设备。
在一些实施例中,在存在多个具备执行所述语音指令权限的终端设备时,则按照优先级由高到低的顺序逐一利用所述第二组规则中的子规则筛选多个具备执行所述语音指令权限的第二终端设备,直至筛选出一个最匹配的第二终端设备。
在一些实施例中,服务器400中预设的第二组规则包括用户使用频次子规则、与第一终端设备的距离子规则以及第二终端设备优先级子规则。这里,用户使用频次子规则指的是用户通过第二终端设备所执行过相似语音指令的次数,例如,用户通过智能电视播放A电影、B综艺等视频数据的次数,或者用户通过智能音箱播放C歌曲、D歌曲等音频数据的次数,其中,A电影、B综艺、C歌曲、D歌曲等均可划分为媒资数据,相应的,用户所发出的“播放A电影”、“播放B综艺”、“播放C歌曲”及“播放D歌曲”可视为相似的语音指令,均为播放类语音指令,还可以进一步将“播放A电影”和“播放B综艺”划分为视频播放类语音指令,将“播放C歌曲”及“播放D歌曲”划分为音频播放类语音指令。与第一终端设备的距离子规则指的是各个第二终端设备分别与第一终端设备之间的距离。第二终端设备优先级子规则指的是用户设置的在执行语音指令时各个终端设备的优先级,例如,对应播放媒资的语音指令,智能电视的优先级高于智能冰箱屏的优先级,其中,终端设备的优先级可由用户通过智能终端300上的应用程序进行设定。
在一些实施例中,上述第二组规则中的多个子规则可由用户设置相应的优先级,例如,设置用户使用频次子规则优先级的优先级高于与第一终端设备的距离子规则优先级,设置终端设备优先级子规则的优先级高于用户使用频次子规则的优先级等。
在一些实施例中,服务器400利用过滤规则对终端设备进行过滤的目的就是筛选出其中一个用于执行当前语音指令最为合适的第二终端设备,也就是说,筛选到最后,最匹配的第二终端设备的数量为1个。在利用第一组规则筛选之后,只要相应的终端设备的数量不唯一,服务器400就会按照优先级高低逐一利用第二组规则中的子规则对剩余的终端设备进行筛选。
例如,在用户输入“播放A歌曲”之后,服务器400查询到该用户配置有智能电视、智能音箱、智能空调、智能冰箱以及智能洗衣机,服务器400在利用终端设备功能权限子规 则对各个终端设备进行过滤之后,得到其中智能电视、智能音箱及智能冰箱具有播放功能,则需要通过第二组规则进一步筛选智能电视、智能音箱及智能冰箱。服务器400进一步通过与第一终端设备的距离子规则进行过滤,通过终端设备中设备属性中的设备位置信息,服务器400判断出智能电视、智能音箱与第一终端设备均在客厅,也就是距离较近,而智能冰箱在厨房,与第一终端设备的距离较远,基于此,将智能冰箱排除掉。由于备选终端设备的还剩下2个,即智能电视、智能音箱,还需要进一步筛选,服务器400继续通过终端设备优先级子规则进行过滤,对于播放类语音指令,用户设置的智能电视的优先级高于智能音箱的优先级,故服务器400将智能电视选定为最匹配的终端设备。
又如,在用户输入“降低室内温度”之后,服务器400查询到该用户配置有智能电视、智能音箱、智能空调、智能冰箱以及智能电风扇,服务器400在利用终端设备功能权限子规则对各个终端设备进行过滤之后,得到其中智能空调和智能电风扇具有室温调整功能,则服务器400需要通过第二组规则进一步筛选智能空调和智能电风扇。服务器400继续通过终端设备优先级子规则进行过滤,对于室温调整类语音指令,用户设置的智能空调的优先级高于智能电风扇的优先级,故服务器400将智能空调选定为最匹配的终端设备。当然,用户也可根据自己的需求,设置智能电风扇的优先级高于智能空调的优先级。
在一些实施例中,在利用所述用户使用频次子规则筛选终端设备时,服务器400分别检测多个与所述用户标识相关的第二终端设备的执行频次,其中,所述执行频次指的是第二终端设备在历史行为中所执行过相似语音指令的次数。服务器400将保留执行频次最多的第二终端设备。
在一些实施例中,在利用所述与第一终端设备的距离子规则筛选终端设备时,服务器400分别检测多个与所述用户标识相关的第二终端设备与第一终端设备的距离。服务器400将保留与第一终端设备的距离最近的第二终端设备。
在一些实施例中,在利用所述终端设备优先级筛选终端设备时,服务器400按照用户设置的终端设备优先级,保留优先级最高的第二终端设备。
以上实施例不仅适用于家庭场景,还可以是办公等场景。
本申请中,在服务器响应于用户发出的语音指令,并查询到当前有多个终端设备时,可基于过滤规则选择出最终要执行指令的第二终端设备,避免用户与第一终端设备进行多次语音交互过程,提升用户体验。
本申请在一些实施例中还提供了一种语音控制方法,所述方法包括:服务器400接收第一终端设备发送的包含用户标识的语音指令,并查找与所述用户标识相关的所有终端设备。在不存在与所述用户标识相关的终端设备时,服务器400反馈表征不存在终端设备的参数,以使所述第一终端设备播报不存在执行语音指令的终端设备。在存在与所述用户标识相关的终端设备时,服务器400利用预设的过滤规则筛选出最匹配的终端设备,反馈表征最匹配的终端设备的参数,以使所述第一终端设备播报具备最匹配的终端设备,并控制最匹配的终端设备执行所述语音指令。
图22为本申请实施例提供的一种语音控制过程的场景示意图。如图22所示,假设智能家居场景中的终端设备包括终端设备200-4(即智能冰箱)、终端设备200-3(即智能洗衣机)和终端设备200-5(即智能显示设备),用户想要对智能家居场景中的终端设备进行控制时,先通过第一终端设备,即智能终端200-1中的录音应用进行录音,得到录音数据,其中,该录音数据主要为用户的控制意图,且该控制意图中不包括要控制的第二终端 设备。该智能终端200-1把用户的录音数据发送至服务器400,以使服务器400对语音指令进行识别,得到与语音指令相对应的具体控制信息,从而根据该控制信息确定用户实际想要控制的第二终端设备,并直接控制该第二终端设备执行对应的控制指令,即:通过服务器400和智能终端200-1二者的交互实现终端设备的语音控制;或者用户可通过本地服务器400,如物联网终端中的录音模块录入声音,其中,该声音主要为用户的控制意图,且该控制意图中不包括要控制的第二终端设备。本地服务器400,对用户录入的语音指令进行识别,得到与语音指令相对应的具体控制信息,从而根据该控制信息确定用户实际想要控制的第二终端设备,并直接控制该第二终端设备执行对应的控制指令。
上述过程中,用户只需要进行录音即可,其余的处理过程不需要用户的参与,从而能够实现通过语音自动控制终端设备执行相应的控制指令,方便用户对智能家居设备的控制和使用,有利于提高智能性和准确性。
需要说明的是:智能家居场景中可以包含多种终端设备,图22只是进行示例性说明,不对智能设备的种类和个数进行具体限制。
本申请实施例提供的语音控制方法,可以基于计算机设备,或者计算机设备中的功能模块或者功能实体实现。
其中,计算机可以为个人计算机(personal computer,PC)、服务器、手机、平板电脑、笔记本电脑、大型计算机等,本申请实施例对此不作具体限定。
本申请实施例提供的语音控制方法可以基于上述计算机设备实现。
本申请实施例提供的语音控制过程,可以基于上述计算机设备实现,该方法可以对用户的语音指令进行识别,得到与语音指令对应的控制信息,控制信息包括功能类别和控制指令,接着根据预先建立的终端设备信息表,确定与功能类别对应的第一候选终端设备集合;然后基于第一候选终端设备集合中各候选终端设备对应的功能状态,确定与控制指令匹配的第二候选终端设备集合,最后从第二候选终端设备集合中确定与控制指令匹配的第二终端设备,并控制第二终端设备执行控制指令,通过语音自动控制终端设备执行相应的控制指令,方便用户对智能家居设备的控制和使用,有利于提高智能性和准确性。
为了更加详细的说明本方案,以下将以示例性的方式结合图23A进行说明,可以理解的是,图23A中所涉及的步骤在实际实现时可以包括更多的步骤,或者更少的步骤,并且这些步骤之间的顺序也可以不同,以能够实现本申请实施例中提供的语音控制方法为准。
图23A为本申请实施例提供的一种语音控制方法的流程示意图,图23B为本申请实施例提供的一种语音控制方法的原理示意图。本实施例可适用于对智能家居场景中包含的各终端设备进行控制的情况。本实施例方法可由语音控制装置来执行,该装置可采用硬件/或软件的方式来实现,并可配置于计算机设备中。
如图23A所示,该方法具体包括如下步骤:
S2301,对用户的语音指令进行识别,得到对应的控制信息,控制信息包括功能类别和控制指令。
其中,语音指令可以理解为用户录音后所形成的数据。控制信息可以理解为与用户的语音指令对应的控制意图,其中包含了与终端设备相关的功能类别和控制指令,但不包含具体要控制的第二终端设备。终端设备可以理解为智能家居场景中包含的各种设备,例如音视频设备、照明系统、窗帘控制、空调控制、数字影院系统、影音服务器和网络家电等。功能类别可以理解为终端设备的具体功能所属的类别,例如智能电视对应的类别可以包括: 音量、亮度、视频播放场景以及菜谱场景等。控制指令可以理解为与终端设备相关的操作指令,例如打开、关闭、播放以及暂停等。
在包含多个不同类型终端设备的智能家居场景中,各终端设备处于不同的控制状态,用户需要明确各终端设备具体的控制状态才能对终端设备进行控制,对于不指定终端设备的语音指令,可能会导致语音控制过程中执行失败或者需要多次引导用户补充信息以便确定要控制的终端设备。
本实施例中的执行主体可以为具有处理和交互功能的本地控制设备200,例如物联网终端,还可以为与智能终端300进行交互的服务器400。在获取到用户的录音数据后,由于本地控制设备200和服务器400无法直接获取语音指令中包含的具体信息,因此要对用户的语音指令进行识别,具体可以通过语音识别方法和语义理解方法进行识别,也可以通过神经网络模型或者语音识别系统等方法进行识别,本实施例不做具体限制。在识别之后,就能够得到与语音指令对应的控制信息。
S2302,根据预先建立的终端设备信息表,确定与功能类别对应的第一候选终端设备集合。
其中,终端设备信息表可以理解为预先建立的与智能家居场景中各终端设备对应的信息相关的表格,表格中可以包括各终端设备分别对应的设备标识号、设备名称、功能类别以及功能状态等。第一候选终端设备集合可以理解为智能家居场景中包含的与功能类别相匹配的终端设备所组成的集合。
在得到语音指令对应的控制信息之后,通过将终端设备信息表中各终端设备对应的功能类别与控制信息中的功能类别相匹配,能够得到与控制信息中的功能类别对应的第一候选终端设备集合。
S2303,基于第一候选终端设备集合中各候选终端设备对应的功能状态,确定与控制指令匹配的第二候选终端设备集合。
其中,第二候选终端设备集合可以理解为智能家居场景中包含的与控制指令相匹配的第二终端设备所组成的集合,该集合为最终要确定的用户想要控制的第二终端设备的候选集合。
第一候选终端设备集合中可能包含多个候选终端设备,且各候选终端设备可能处于不同的功能状态,因此在得到第一候选终端设备集合之后,为了确定用户想要控制的终端设备,需要进一步缩小范围。此时,根据第一候选终端设备集合中各候选终端设备对应的功能状态,将各候选终端设备对应的功能状态分别与控制信息中的控制指令进行比对,能够得到与该控制指令匹配的候选终端设备所形成的第二候选终端设备集合。
示例性的,假设控制指令为打开,候选终端设备1对应的功能状态为正常;候选终端设备2对应的功能状态为正在播放,候选终端设备3对应的功能状态为关闭,则将候选终端设备3加入第二候选终端设备集合中。
S2304,从第二候选终端设备集合中确定与控制指令匹配的第二终端设备,并控制第二终端设备执行控制指令。
其中,第二终端设备可以理解为与控制指令匹配的终端设备。
由于第二候选终端设备集合中包含的终端设备可能有多个,因此还要从第二候选终端设备集合中确定与控制指令匹配的第二终端设备,第二终端设备的个数可以为多个,可以视具体情况而定,本申请不做具体限制。在确定了第二终端设备之后,向终端设备发送对 应的控制指令,以控制第二终端设备执行控制指令,从而满足用户的需求,准确执行符合用户的语音指令的第二终端设备的控制。
可选的,图23C为本申请实施例中确定第二候选终端设备集合的过程的示意图,如图23C所示:
1、确定所有终端设备对应的设备名称总集合、功能类别总集合以及功能状态总集合;
其中,设备名称总集合定义为Dev,各个终端设备分别为Dev1、Dev2、Dev3、…;
功能类别总集合定义为F,各功能分别为F1、F2、F3、…;
功能状态总集合定义为S,各功能状态分别为S1、S2、S3、…。
2、确定每个终端设备包含的功能类别和功能状态的组合,对应集合如下:
Dev1={F1S1,F2S2,…}
Dev2={F1S2,F2S3,F3S3,…}
Dev3={F1S1,F2S3,F4S1,F5S2,…}
Dev4={F3S3,F3S3,F5S5,…}
3、对用户的语音指令进行识别,得到功能类别和控制指令对应的组合FxSy。
4、查询步骤2中的各集合,根据集合中元素与FxSy相同的集合所对应的终端设备确定第二候选终端设备集合。
在本实施例中,首先对用户的语音指令进行识别,得到与语音指令对应的控制信息,控制信息包括功能类别和控制指令,接着根据预先建立的终端设备信息表,确定与功能类别对应的第一候选终端设备集合;然后基于第一候选终端设备集合中各候选终端设备对应的功能状态,确定与控制指令匹配的第二候选终端设备集合,最后从第二候选终端设备集合中确定与控制指令匹配的第二终端设备,并控制第二终端设备执行控制指令,通过语音自动控制终端设备执行相应的控制指令,方便用户对智能家居设备的控制和使用,有利于提高智能性和准确性。
在一些实施例中,可选的,所述终端设备信息表通过以下方式获取:
获取在预设场景中包含的各终端设备分别对应的设备名称、功能名称、功能类别以及功能状态;
根据所有的设备名称、功能名称、功能类别以及功能状态,建立或更新对应的终端设备信息表。
其中,预设场景可以理解为包含多个终端设备且多个终端设备通过网络互连的场景,例如智能家居场景、智能办公场景等。
具体的,通过终端设备信息上报的方式能够获取在预设场景中包含的各终端设备分别对应的设备名称、功能名称、功能类别以及功能状态,还可以通过其他方式获取各终端设备分别对应的设备名称、功能名称、功能类别以及功能状态。在获取到各终端设备对应的信息之后,根据所有的设备名称、功能名称、功能类别以及功能状态,能够建立对应的终端设备信息表,或者在设备名称、功能名称、功能类别以及功能状态中的至少一种发生变化之后能够及时更新终端设备信息表。
本实施例中,通过上述方法建立或更新对应的终端设备信息表,能够保证终端设备信息表与各终端设备的实际功能状态保持一致,从而有利于确定第一候选终端设备集合以及保证该集合的准确性。
在一些实施例中,可选的,所述方法还包括:
若所述第一候选终端设备集合为空集合,或者若所述第一候选终端设备集合为非空集合且所述第二候选终端设备集合为空集合,则发送第二提示信息,其中,所述第二提示信息用于指示用户从多个终端设备中确定所述第二终端设备;
接收第二应答信息,其中,所述第二应答信息中包含所述第二终端设备对应的第二标识信息;
控制所述第二标识信息对应的第二终端设备执行所述控制指令。
其中,第一候选终端设备集合为空集合可以理解为该集合中没有符合条件的候选终端设备。第二候选终端设备集合为空集合可以理解为该集合中也没有符合条件的终端设备。
具体的,如果第一候选终端设备集合为空集合,或者如果第一候选终端设备集合为非空集合且第二候选终端设备集合为空集合,则说明当前无法确定出用户实际想要控制的终端设备。此时,可以发送第二提示信息,例如,本地控制设备200发送第二提示信息,例如可以向自身的显示屏或者音频应用发送第二提示信息,以显示或者播放第二提示信息,以指示用户从多个终端设备中确定第二终端设备;或者服务器400向智能终端300发送第二提示信息,以指示用户从多个终端设备中确定第二终端设备。接收用户反馈的第二应答信息,由于该第二应答信息中包含第二终端设备对应的第二标识信息,因此能够直接控制第二标识信息对应的第二终端设备执行该控制指令。
本实施例中,在当前无法确定出用户实际想要控制的终端设备时,通过上述方法能够确定第二终端设备,从而满足用户的控制需求,提高用户的使用体验。
图24A为本申请实施例提供的另一种语音控制方法的流程示意图,图24B为本申请实施例提供的另一种语音控制方法的原理示意图。本实施例是在上述实施例的基础上进一步扩展与优化。可选的,本实施例中S2304的一种可能的实现方式如下:
S23041,确定与控制指令匹配的第二候选终端设备集合中包含的所有第二候选终端设备的数量。
由于第二候选终端设备集合中可能包含了多个第二候选终端设备,因此为了确定与控制指令匹配的第二终端设备,需要确定与控制指令匹配的第二候选终端设备集合中包含的所有第二候选终端设备的数量,以便后续根据数量与预设阈值的大小关系,从第二候选终端设备集合中确定第二终端设备。
S23042,根据数量与预设阈值的大小关系,从第二候选终端设备集合中确定第二终端设备,并控制第二终端设备执行控制指令。
其中,预设阈值可以为预先设定的数值,例如1个、3个等,也可以视具体情况而定,本实施例不做具体限制。
在得到第二候选终端设备集合中包含的所有第二候选终端设备的数量之后,比较该数量与预设阈值的大小,得到二者的大小关系,以便后续根据二者的大小关系从第二候选终端设备集合中确定出第二终端设备,例如将第二候选终端设备集合中包含的所有第二候选终端设备均为第二终端设备,或者将第二候选终端设备集合中包含的部分第二候选终端设备为第二终端设备。在确定了第二终端设备之后,还要控制第二终端设备执行控制指令,从而实现通过语音进行智能家居控制,减少用户的操作。
在本实施例中,通过上述方法确定第二终端设备简单快捷,能够提高工作效率。
图25A为本申请实施例提供的又一种语音控制方法的流程示意图,图25B为本申请实施例提供的又一种语音控制方法的原理示意图。本实施例是在上述实施例的基础上进一步 扩展与优化。可选的,本实施例中S23042的一种可能的实现方式如下:
S230421,确定第二候选终端设备的数量是否小于或者等于预设阈值。
在得到第二候选终端设备集合中包含的所有第二候选终端设备的数量之后,比较该数量与预设阈值之间的大小关系,能够确定第二候选终端设备的数量是否小于或者等于预设阈值。
若是,执行S230422-S230423;若否,执行S230424-S230426。
S230422,将第二候选终端设备集合中包含的所有第二候选终端设备确定为第二终端设备。
若第二候选终端设备的数量小于或者等于预设阈值,则说明第二候选终端设备的数量未超过上限,因此,将第二候选终端设备集合中包含的所有第二候选终端设备确定为第二终端设备。
S230423,控制各第二终端设备分别执行控制指令。
在将第二候选终端设备集合中包含的所有第二候选终端设备确定为第二终端设备之后,还需要向各第二终端设备发送控制指令,以控制各第二终端设备分别执行该控制指令。
S230424,发送第一提示信息,其中,第一提示信息用于指示用户从第二候选终端设备集合中确定第二终端设备。
若第二候选终端设备的数量大于预设阈值,则说明第二候选终端设备的数量超过了上限,为了避免同时对多个终端设备执行同样的控制指令,从而影响用户的正常使用,此时需要发送第一提示信息,例如,本地控制设备200发送第一提示信息,例如可以向自身的显示屏或者音频应用发送第一提示信息,以显示或者播放第一提示信息,以指示用户从多个终端设备中确定第二终端设备;或者服务器400向智能终端设备204发送第一提示信息,以指示用户从多个终端设备中确定第二终端设备。
S230425,接收第一应答信息,其中,第一应答信息中包含第二终端设备对应的第一标识信息。
接收用户反馈的第一应答信息,以便后续控制第一标识信息对应的第二终端设备执行控制指令。
S230426,控制第一标识信息对应的第二终端设备执行控制指令。
由于该第一应答信息中包含第二终端设备对应的第一标识信息,因此能够直接控制第一标识信息对应的第二终端设备执行该控制指令。
在本实施例中,根据第二候选终端设备集合中包含的所有第二候选终端设备的数量与预设阈值之间的两种大小关系,分别执行相应的步骤,能够进一步提高智能家居语音控制过程的智能性和准确性。
图26A为本申请实施例提供的又一种语音控制方法的流程示意图,图26B为本申请实施例提供的又一种语音控制方法的原理示意图。本实施例是在上述实施例的基础上进一步扩展与优化。可选的,本实施例中S2301的一种可能的实现方式如下:
S23011,通过语音识别方法对语音指令进行文本识别,得到语音指令对应的文本信息。
其中,语音识别方法为将语音转化为文本的方法,例如语音识别软件。
通过语音识别方法能够对语音指令进行文本识别,从而得到语音指令对应的文本信息。
S23012,通过语义理解方法对文本信息进行语义理解,得到文本信息中包含的控制信息,控制信息包括功能类别和控制指令。
其中,语义理解方法可以包括关键字提取方法、信息抽取方法等。
在得到文本信息之后,由于机器识别出的文本信息可能包含冗余信息、重复信息等,为了进一步提高识别过程的准确性,通过语义理解方法对文本信息进行语义理解,得到文本信息中包含的控制信息,该控制信息包括功能类别和控制指令。
在本实施例中,通过上述方法得到控制信息更为准确,也更符合实际情况,有利于保证后续过程的顺利进行。
示例性的,图26C为本申请实施例中得到控制信息的过程的示意图,如图26C所示:
首先对语音指令进行语音识别得到第一信息,接着对第一信息进行语义理解,即可得到控制信息。
示例性的,图27A为本申请实施例中一种本地控制设备的结构示意图,如图27A所示:
该本地控制设备200包括语音识别服务、语义理解服务以及终端设备控制服务。其中,语音识别服务主要用于录音以及对用户的语音指令进行识别,得到识别结果;语义理解服务主要用于根据识别结果确定控制信息;家居控制服务用于维护终端设备信息表、接收终端设备上报的设备信息以及根据控制信息控制对应的终端设备。
图27B为本申请实施例中一种本地控制设备与终端设备进行交互的结构示意图,如图27B所示:
语音识别服务中包括录音模块和识别引擎,其中,录音模块用于录音,识别引擎用于根据用户的语音指令进行识别,得到识别结果。语义理解服务中包括功能类别和控制指令。家居控制服务中包括终端设备信息表、确定第二终端设备以及语音指令控制。家居控制服务与各终端设备,例如终端设备A、终端设备B、…、终端设备N,之间进行交互,家居控制服务根据各终端设备上报的设备信息获取终端设备信息表;根据终端设备信息表以及功能类别确定第一候选终端设备集合;根据第二候选终端设备集合以及控制指令确定第二候选终端设备集合,以及从第二候选终端设备集合中确定第二终端设备,并控制第二终端设备执行该控制指令,从而实现通过语音指令对智能家居进行控制。终端设备负责上报设备信息以及接收并执行家居控制服务下发的控制指令。
在一些实施例中,假设终端设备信息表如下表2所示:
设备标识号 设备名称 功能类别 功能状态
1 窗帘 亮度 关闭
2 电视 亮度 正常
3 电视 音量 正常
4 电视 菜谱场景 展示UI
5 智能音箱 音乐场景 正在播放
6 烤箱 食材场景 已放置牛排
7 冰箱 开启
8 洗衣机 关闭
表2
表2中各终端设备包含的信息如下:
1、窗帘已关闭;
2、电视亮度正常、音量正常且正在展示菜谱UI;
3、智能音箱正在播放音乐;
4、烤箱里已放置牛排,等待开启烹饪。
5、冰箱的门是开启状态。
6、洗衣机的门是关闭状态。
需要说明的是:表1中包含的各设备均为终端设备。
示例1:假设语音指令为“太暗了”,功能类别为亮度,控制指令为增加,预设阈值为1,则根据功能类别和表1能够确定第一候选终端设备集合为:1窗帘和2电视;接着根据第一候选终端设备集合中各终端设备的功能状态以及控制指令可以确定第二候选终端设备集合为:1窗帘,由于第二候选终端设备集合中包含的所有第二候选终端设备的数量等于预设阈值,则确定第二终端设备为1窗帘,并控制窗帘执行开启功能。
示例2:假设语音指令为“我要烤牛排”,功能类别为食材场景和菜谱场景,控制指令为烹饪和查询,预设阈值为1,则根据功能类别和表1能够确定第一候选终端设备集合为:4电视和6烤箱;接着根据第一候选终端设备集合中各终端设备的功能状态以及控制指令可以确定第二候选终端设备集合为:6烤箱,由于第二候选终端设备集合中包含的所有第二候选终端设备的数量等于预设阈值,则确定第二终端设备为6烤箱,并控制烤箱执行烤牛排功能。
在一些实施例中,若检测到烤箱里不是牛排,但电视支持菜谱查询功能,则执行电视的烤牛排菜谱介绍。
示例3:假设语音指令为“音量太大了”,功能类别为音量,控制指令为降低,预设阈值为1,则根据功能类别和表1能够确定第一候选终端设备集合为:3电视和5智能音箱;接着根据第一候选终端设备集合中各终端设备的功能状态以及控制指令可以确定第二候选终端设备集合为:5智能音箱,由于第二候选终端设备集合中包含的所有第二候选终端设备的数量等于预设阈值,则确定第二终端设备为5智能音箱,并控制智能音箱执行音量降低功能。
在一些实施例中,若检测到电视也在播放视频,则提示用户选择调低音量的设备是电视还是音箱。
示例4:假设语音指令为“关门”,功能类别为门,控制指令为关闭,预设阈值为1,则根据功能类别和表1能够确定第一候选终端设备集合为:7冰箱和8电视机;接着根据第一候选终端设备集合中各终端设备的功能状态以及控制指令可以确定第二候选终端设备集合为:7冰箱,由于第二候选终端设备集合中包含的所有第二候选终端设备的数量等于预设阈值,则确定第二终端设备为7冰箱,并控制冰箱执行关门功能。
在一些实施例中,如果检测到烤箱门也是打开状态,则提示用户要关闭门的设备是冰箱还是烤箱。
在一些实施例中,本申请实施例提供了一种电子设备,所述电子设备至少包括处理器和存储器,所述处理器用于执行存储器中存储的计算机程序时实现上述中任意一种终端设备的语音控制方法。
在一些实施例中,本申请实施例提供了一种计算机可读非易失性存储介质,其存储有 计算机程序,所述计算机程序被处理器执行时实现如上述中任意一种终端设备语音控制方法。

Claims (33)

  1. 一种进行语音控制的服务器,所述服务器,用于执行:
    接收第一终端设备发送的语音信号,根据所述语音信号生成语音指令,以及将所述语音指令反馈至所述第一终端设备;
    在所述第一终端设备不可执行所述语音指令对应的操作时,接收所述第一终端设备发送的指令分发请求,所述指令分发请求携带有所述语音指令;
    根据所述指令分发请求,查找可执行所述语音指令对应操作的第二终端设备,以及将所述语音指令发送至所述第二终端设备,以使所述第二终端设备响应于所述语音指令执行对应的操作;
    在所述第一终端设备可执行所述语音指令对应的操作时,不接收所述第一终端设备发送的指令分发请求。
  2. 根据权利要求1所述的服务器,在所述语音指令只携带有设备名称时,根据所述指令分发请求,将所述语音指令发送至第二终端设备,包括:
    根据所述指令分发请求,查找所述设备名称对应的所述第二终端设备,以及将所述语音指令发送至所述第二终端设备。
  3. 根据权利要求1所述的服务器,在所述语音指令只携带有设备能力参数时,根据所述指令分发请求,将所述语音指令发送至第二终端设备,包括:
    根据所述指令分发请求,查找具备所述设备能力参数的所述第二终端设备,以及将所述语音指令发送至所述第二终端设备。
  4. 根据权利要求1所述的服务器,在所述语音指令为自定义规则对应的指令时,其中,在所述自定义规则中所述语音指令与所述终端设备具有对应关系,根据所述指令分发请求,将所述语音指令发送至第二终端设备,包括:
    根据所述指令分发请求,查找与所述自定义规则具有对应关系的所述第二终端设备,以及将所述语音指令发送至所述第二终端设备。
  5. 根据权利要求1所述的服务器,所述语音指令包括至少两条匹配项,每一条所述匹配项设置有权重属性值;
    根据所述指令分发请求,将所述语音指令发送至第二终端设备,包括:
    在存在至少两个终端设备满足所述语音指令中的至少一条所述匹配项时,计算所述终端设备满足的所述匹配项的权重属性总值,将所述语音指令发送至所述第二终端设备,其中,所述权重属性总值为所述匹配项的权重值的总和,所述第二终端设备的权重属性总值最大。
  6. 根据权利要求5所述的服务器,所述匹配项为设备名称、设备响应时间段、设备存在的空间以及设备能力参数中的其中一种。
  7. 根据权利要求1所述的服务器,所述服务器用于执行:
    在所述语音指令中解析业务需求信息;
    根据所述业务需求信息筛选第二终端设备,所述第二终端设备为所述设备状态能够实现所述业务需求信息的终端设备;
    所述服务器还用于:向当前语音控制系统中所述第二终端设备以外的其他终端设备发送静默指令。
  8. 根据权利要求7所述的服务器,所述服务器进一步用于执行:
    获取所述语音指令对应的语音音频数据,从所述语音音频数据中识别唤醒词;
    如果所述语音音频数据中包括所述唤醒词,定位第一终端设备所在的语音控制系统;
    向所述语音控制系统发送状态获取请求,以使所述语音控制系统中的全部终端设备在接收到所述状态获取指令后,上报所述设备状态。
  9. 根据权利要求7所述的服务器,所述业务需求信息包括业务类型和业务状态,所述服务器进一步用于执行:
    在根据所述业务需求信息筛选第二终端设备的步骤中,从所述业务需求信息中提取所述业务类型和业务状态;
    在所述设备状态中匹配满足所述业务类型的候选终端设备,所述候选终端设备具有符合所述业务类型需要的设备类型;
    遍历所述候选终端设备的设备状态,以筛选出所述设备状态符合所述业务状态的第二终端设备。
  10. 根据权利要求9所述的服务器,所述业务需求信息还包括业务执行位置,所述服务器进一步用于执行:
    在根据所述业务需求信息筛选第二终端设备的步骤中,从所述业务需求信息中提取所述业务执行位置;
    获取当前语音控制系统中各候选终端设备的设备位置;
    如果所述候选终端设备的设备位置与所述业务执行位置重合,执行遍历所述候选终端设备的设备状态的步骤;
    如果所述候选终端设备的设备位置与所述业务执行位置不重合,标记所述候选终端设备不是所述第二终端设备。
  11. 根据权利要求10所述的服务器,所述服务器进一步用于执行:
    在根据所述业务需求信息筛选第二终端设备的步骤中,获取所述设备状态能够实现所述业务需求信息的终端设备数量;
    如果所述终端设备数量大于或等于2,查找主终端设备,以使用所述主终端设备与用户交互确定所述第二终端设备,所述主终端设备为能够实现所述业务需求信息的多个终端设备中的一个;
    如果所述终端设备数量等于1,标记所述能够实现所述业务需求信息的终端设备为所述第二终端设备。
  12. 根据权利要求11所述的服务器,所述服务器进一步用于执行:
    在查找主终端设备的步骤后,向所述主终端设备发送问询指令,以使所述主终端设备播放询问语音,所述问询指令为多轮免唤醒语音交互指令;
    接收用户通过所述主终端设备输入的确认语音指令;
    从所述确认语音指令中提取第二终端设备识别信息;
    根据所述第二终端设备识别信息在能够实现所述业务需求信息的多个终端设备中筛选所述第二终端设备。
  13. 根据权利要求7所述的服务器,所述服务器进一步用于执行:
    从所述语音指令中解析第二终端设备的识别信息;
    如果所述语音指令中包括所述第二终端设备的识别信息,根据所述语音指令生成控制 命令和反馈语音信息;
    按照所述第二终端设备的识别信息将所述控制命令发送给所述第二终端设备,以及将所述反馈语音信息发送给第一终端设备。
  14. 根据权利要求7所述的服务器,所述服务器进一步用于执行:
    向所述第二终端设备发送响应指令的步骤后,接收所述第二终端设备上报的执行结果数据,所述执行结果数据中包括运行所述响应指令后的设备新状态;
    从所述执行结果中提取所述设备新状态;
    使用所述设备新状态更新所述存储模块中存储的设备状态。
  15. 根据权利要求1所述的服务器,所述服务器被配置为:
    接收第一终端设备发送的包含用户标识的语音指令,
    查找与所述用户标识相关的所有终端设备;
    在不存在与所述用户标识相关的终端设备时,反馈表征不存在终端设备的参数,以使所述第一终端设备播报不存在执行语音指令的终端设备;
    在存在与所述用户标识相关的终端设备时,利用预设的过滤规则筛选出最匹配的第二终端设备,反馈表征最匹配的第二终端设备的参数,以使所述第一终端设备播报存在执行语音指令的第二终端设备,并控制最匹配的第二终端设备执行所述语音指令。
  16. 根据权利要求15所述的服务器,所述过滤规则表征所述语音指令与所述终端设备之间的映射关系,所述过滤规则包含第一组规则和第二组规则,或者只包含第一组规则不包含第二组规则,其中,所述第一组规则指的是为了筛选出最匹配的第二终端设备所必需的规则,所述第二组规则指的是在没有筛选出最匹配的第二终端设备时逐一叠加利用的规则。
  17. 根据权利要求16所述的服务器,所述第一组规则包含终端设备功能权限子规则,在所述在存在与所述用户标识相关的终端设备时,利用预设的过滤规则筛选出最匹配的第二终端设备的步骤中,所述服务器还被配置为:
    利用所述第一组规则筛选当前终端设备与所述用户标识相关的终端设备;
    若与所述用户标识相关的终端设备不具备执行所述语音指令权限时,则反馈表征不存在第二终端设备的参数,以使所述第一终端设备播报不存在执行语音指令的第二终端设备;
    若与所述用户标识相关的终端设备具备执行所述语音指令权限时,则确认具备执行所述语音指令权限的第二终端设备的数量。
  18. 根据权利要求17所述的服务器,所述第二组规则包含多个子规则,多个所述子规则存在优先级,在所述确认具备执行所述语音指令权限的第二终端设备的数量之后,所述服务器还被配置为:
    在存在一个具备执行所述语音指令权限的第二终端设备时,则反馈表征存在相应权限的第二终端设备的参数,以使所述第一终端设备播报具备相应权限的第二终端设备,并控制当前第二终端设备执行所述语音指令;
    在存在多个具备执行所述语音指令权限的第二终端设备时,则按照优先级由高到低的顺序逐一利用所述第二组规则中的子规则筛选多个具备执行所述语音指令权限的第二终端设备,直至筛选出一个最匹配的第二终端设备。
  19. 根据权利要求16所述的服务器,所述第二组规则包括用户使用频次子规则、与第一终端设备的距离子规则以及终端设备优先级子规则的至少一个。
  20. 根据权利要求19所述的服务器,在利用所述用户使用频次子规则筛选第二终端设备时,所述服务器被配置为:
    分别检测多个具备执行所述语音指令权限的第二终端设备的执行频次,其中,所述执行频次指的是第二终端设备在历史行为中所执行过相同功能的语音指令的次数;
    保留执行频次最多的第二终端设备。
  21. 根据权利要求19所述的服务器,在利用所述与第一终端设备的距离子规则筛选第二终端设备时,所述服务器被配置为:
    分别检测多个具备执行所述语音指令权限的第二终端设备与第一终端设备的距离;
    保留与第一终端设备的距离最近的第二终端设备。
  22. 根据权利要求19所述的服务器,在利用所述终端设备优先级筛选第二终端设备时,所述服务器被配置为:
    按照用户设置的终端设备优先级,保留优先级最高的第二终端设备。
  23. 根据权利要求15所述的服务器,在所述接收第一终端设备发送的语音指令之后,所述服务器还被配置为:
    将与所述用户标识相关的所有终端设备及设备属性从数据库加载至缓存中,以使所述服务器在所述缓存中查找第二终端设备。
  24. 根据权利要求1所述的服务器,所述服务器用于执行:
    对所述语音指令进行识别,得到对应的控制信息,所述控制信息包括功能类别和控制指令;
    根据预先建立的终端设备信息表,确定与所述功能类别对应的第一候选终端设备集合;
    基于所述第一候选终端设备集合中各候选终端设备对应的功能状态,确定与所述控制指令匹配的第二候选终端设备集合;
    从所述第二候选终端设备集合中确定与所述控制指令匹配的第二终端设备。
  25. 根据权利要求24所述的服务器,所述服务器具体用于执行:
    确定与所述控制指令匹配的第二候选终端设备集合中包含的所有第二候选终端设备的数量;
    根据所述数量与预设阈值的大小关系,从所述第二候选终端设备集合中确定所述第二终端设备,并控制所述第二终端设备执行所述控制指令。
  26. 根据权利要求25所述的服务器,所述服务器具体用于执行:
    若所有第二候选终端设备的数量小于或者等于所述预设阈值,则将所述第二候选终端设备集合中包含的所有第二候选终端设备确定为所述第二终端设备;
    控制各第二终端设备分别执行所述控制指令。
  27. 根据权利要求26所述的服务器,所述服务器还用于执行:
    若所有第二候选终端设备的数量大于所述预设阈值,则发送第一提示信息,其中,所述第一提示信息用于指示用户从所述第二候选终端设备集合中确定所述第二终端设备;
    接收第一应答信息,其中,所述第一应答信息中包含所述第二终端设备对应的第一标识信息;
    控制所述第一标识信息对应的第二终端设备执行所述控制指令。
  28. 根据权利要求24所述的服务器,所述服务器具体用于执行:
    通过语音识别方法对所述语音指令进行文本识别,得到所述语音指令对应的文本信息;
    通过语义理解方法对所述文本信息进行语义理解,得到所述文本信息中包含的控制信息。
  29. 根据权利要求24所述的服务器,所述服务器具体用于执行:
    获取在预设场景中包含的各终端设备分别对应的设备名称、功能名称、功能类别以及功能状态;
    根据所有的设备名称、功能名称、功能类别以及功能状态,建立或更新对应的终端设备信息表。
  30. 根据权利要求24-29任一项所述的服务器,所述服务器还用于执行:
    若所述第一候选终端设备集合为空集合,或者若所述第一候选终端设备集合为非空集合且所述第二候选终端设备集合为空集合,则发送第二提示信息,其中,所述第二提示信息用于指示用户从多个终端设备中确定所述第二终端设备;
    接收第二应答信息,其中,所述第二应答信息中包含所述第二终端设备对应的第二标识信息;
    控制所述第二标识信息对应的第二终端设备执行所述控制指令。
  31. 一种进行语音控制的终端设备,包括:
    声音采集器,被配置为采集用户输入的语音信号;
    控制器,被配置为:
    从所述声音采集器接收用户输入的语音信号,将所述语音信号发送至服务器,以及从所述服务器接收语音指令,其中,所述语音指令为根据所述语音信号生成的;
    在所述终端设备可执行所述语音指令对应的操作时,响应于所述语音指令,执行所述语音指令对应的操作;
    在所述终端设备不可执行所述语音指令对应的操作时,生成指令分发请求,以及将所述指令分发请求发送至所述服务器,以使所述服务器根据所述指令分发请求,查找可执行所述语音指令对应操作的其他终端设备,将所述语音指令发送至其他终端设备。
  32. 根据权利要求31所述的终端设备,所述终端设备配置有本机能力属性参数,所述终端设备确定是否可执行所述语音指令对应的操作的具体步骤为:
    从所述语音指令中解析待处理能力属性参数;
    在所述本机能力属性参数与所述待处理能力属性参数匹配时,所述终端设备可执行所述语音指令对应的操作;
    在所述本机能力属性参数与所述待处理能力属性参数不匹配时,所述终端设备不可执行所述语音指令对应的操作。
  33. 根据权利要求31所述的终端设备,所述控制器,被进一步配置为:
    接收所述服务器下发的响应指令或静默指令;
    运行所述响应指令或静默指令。
CN202280038248.XA 2021-06-22 2022-06-22 一种进行语音控制的终端设备及服务器 Pending CN117882130A (zh)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
CN2021106888670 2021-06-22
CN202110688867.0A CN113450792A (zh) 2021-06-22 2021-06-22 终端设备的语音控制方法、终端设备及服务器
CN2021109177134 2021-08-11
CN202110917713.4A CN115910050A (zh) 2021-08-11 2021-08-11 服务器及语音控制方法
CN202111521226.2A CN114172757A (zh) 2021-12-13 2021-12-13 服务器、智能家居系统及多设备语音唤醒方法
CN2021115212262 2021-12-13
CN2022101515264 2022-02-18
CN202210151526.4A CN114609920A (zh) 2022-02-18 2022-02-18 智能家居控制方法、装置、计算机设备和介质
PCT/CN2022/100547 WO2022268136A1 (zh) 2021-06-22 2022-06-22 一种进行语音控制的终端设备及服务器

Publications (1)

Publication Number Publication Date
CN117882130A true CN117882130A (zh) 2024-04-12

Family

ID=84544127

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280038248.XA Pending CN117882130A (zh) 2021-06-22 2022-06-22 一种进行语音控制的终端设备及服务器

Country Status (2)

Country Link
CN (1) CN117882130A (zh)
WO (1) WO2022268136A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116009748B (zh) * 2023-03-28 2023-06-06 深圳市人马互动科技有限公司 儿童互动故事中图片信息交互方法及装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107818782B (zh) * 2016-09-12 2020-10-09 上海声瀚信息科技有限公司 一种实现家用电器智能控制的方法及系统
CN109474843B (zh) * 2017-09-08 2021-09-03 腾讯科技(深圳)有限公司 语音操控终端的方法、客户端、服务器
CN108682419A (zh) * 2018-03-30 2018-10-19 京东方科技集团股份有限公司 语音控制方法及设备、计算机可读存储介质及设备
CN108538291A (zh) * 2018-04-11 2018-09-14 百度在线网络技术(北京)有限公司 语音控制方法、终端设备、云端服务器及系统
CN108766432A (zh) * 2018-07-02 2018-11-06 珠海格力电器股份有限公司 一种控制家电间协同工作的方法
CN112017652A (zh) * 2019-05-31 2020-12-01 华为技术有限公司 一种交互方法和终端设备
CN111722824B (zh) * 2020-05-29 2024-04-30 北京小米松果电子有限公司 语音控制方法、装置及计算机存储介质
CN111883129B (zh) * 2020-08-03 2024-05-03 海信视像科技股份有限公司 终端设备控制方法、装置及终端设备
CN113450792A (zh) * 2021-06-22 2021-09-28 海信视像科技股份有限公司 终端设备的语音控制方法、终端设备及服务器

Also Published As

Publication number Publication date
WO2022268136A1 (zh) 2022-12-29

Similar Documents

Publication Publication Date Title
CN111989741B (zh) 具有动态可切换端点的基于语音的用户接口
CN105700389B (zh) 一种智能家庭自然语言控制方法
CN106448658B (zh) 智能家居设备的语音控制方法及智能家居网关
US10985936B2 (en) Customized interface based on vocal input
WO2019205134A1 (zh) 智能家居语音控制方法、装置、设备和系统
CN108899023B (zh) 控制方法和装置
US11929844B2 (en) Customized interface based on vocal input
JP2018531404A6 (ja) ホームオートメーションシステムの音声制御のための履歴ベースのキーフレーズの提案
CN112051743A (zh) 设备控制方法、冲突处理方法、相应的装置及电子设备
CN114172757A (zh) 服务器、智能家居系统及多设备语音唤醒方法
CN105892324A (zh) 控制设备、方法及电器系统
CN111665737B (zh) 一种智能家居场景控制方法及系统
CN105161099A (zh) 一种语音控制的遥控装置及其实现方法
CN110942773A (zh) 语音控制智能家居设备的方法及装置
CN114067798A (zh) 一种服务器、智能设备及智能语音控制方法
CN105757896A (zh) 控制运行模式的方法及装置
CN111367188A (zh) 智能家居的控制方法、装置、电子设备和计算机存储介质
CN111477230A (zh) 一种智能音箱系统、智能音箱系统的控制方法及存储介质
CN117882130A (zh) 一种进行语音控制的终端设备及服务器
CN113450792A (zh) 终端设备的语音控制方法、终端设备及服务器
CN107171760B (zh) 一种收音机播放方法、云端服务器及收音机
CN110418243B (zh) 一种智能音箱控制系统及控制方法
CN113132191A (zh) 智能设备的语音控制方法、智能设备及存储介质
CN115497474A (zh) 基于语音识别的控制方法
CN113296415A (zh) 智能家电控制方法、智能家电控制装置与系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination