一种语音唤醒方法、电子设备及芯片系统与流程

文档序号:32311952发布日期:2022-11-23 11:59阅读:88来源:国知局
一种语音唤醒方法、电子设备及芯片系统与流程

1.本技术涉及语音控制技术领域,尤其涉及一种语音唤醒方法、电子设备及芯片系统。


背景技术:

2.随着用户的需求增多,智能电子设备的功能越来越强大。例如,用户可以不通过电子设备上的按钮(或按键)、遥控器等控制电子设备,而是通过语音控制电子设备。当然,通过语音控制电子设备时,首先需要通过唤醒词唤醒电子设备的语音功能。
3.通常,电子设备在出厂时,生产厂家会为电子设备的语音助手设置初始唤醒词、打分策略以及声纹阈值等,用户也可以根据个人喜好自定义唤醒词。然而,用户自定义唤醒词的声纹阈值通常设置较为不合理,导致用户通过自定义唤醒词唤醒电子设备的语音功能时,常常出现唤醒失败的现象。


技术实现要素:

4.本技术提供一种语音唤醒方法、电子设备及芯片系统,可以降低自定义唤醒词唤醒失败的现象。
5.为达到上述目的,本技术采用如下技术方案:
6.第一方面,本技术提供一种语音唤醒方法,包括:
7.在注册阶段,接收到第一语音,将第一语音生成第一唤醒词的第一模板,为第一唤醒词设置第一阈值,第一阈值用于在非注册阶段判断接收到的语音是否可以作为第一唤醒词对应的语音唤醒电子设备的语音功能;
8.在非注册阶段,接收到第二语音,计算第二语音和第一模板的第一声纹匹配分值;
9.若第一声纹匹配分值小于第一阈值,则计算第二语音和第一先验信息的第二声纹匹配分值,以及第一模板和第一先验信息的第三声纹匹配分值,第一先验信息包括该电子设备中存储的至少一个模板,第一先验信息不包括第一模板;
10.计算基于同一第一先验信息的第二声纹匹配分值和第三声纹匹配分值的第一差异值;
11.若第一差异值小于差异阈值的比例大于预设比例,则第二语音作为第一唤醒词的语音成功唤醒该电子设备的语音功能,将第二语音生成第一唤醒词的第二模板,更新第一唤醒词的第一阈值为第一声纹匹配分值。
12.本技术中,可以在支持自定义唤醒词(例如,第一唤醒词)的电子设备中,录入语音信息(例如,第一语音),将录入的语音信息生成语音模板(例如,第一模板),并为设置的自定义唤醒词设置声纹阈值(例如,第一阈值);在后续唤醒过程中,可以将接收到的语音信息(例如,第二语音)与生成的第一模板进行匹配,由于预先设置的第一阈值不太合理,导致匹配结果大概率会小于该第一阈值,从而唤醒失败;为了降低唤醒失败的情况下发生,在小于该第一阈值的情况下,可以将接收到的第二语音和第一模板基于同一先验信息计算声纹匹
配分值,若两类声纹匹配分值相差较大,则说明,第二语音和第一模板差异较大,若两类声纹匹配分值相差较小,则说明第二语音和第一模板差异较小。在第二语音和第一模板差异较小的情况下,就可以唤醒电子设备;同时,还可以将与第一模板差异较小的第二语音进一步生成该自定义唤醒词的第二模板;同时还可以调整该自定义唤醒词的第一阈值为第二语音和第一模板之间的声纹匹配分值;从而使得第一阈值更合适,已在后续的唤醒流程中,降低唤醒失败的情况。
13.作为第一方面的另一实现方式,该电子设备中设置有初始唤醒词,初始唤醒词设置有初始模板和初始阈值;
14.第一阈值为该电子设备中的每个唤醒词的阈值的均值和第一系数的乘积,第一系数大于1;
15.或,第一阈值为初始唤醒词的初始阈值和第一系数的乘积;
16.或,第一阈值为第一值,第一值大于初始阈值。
17.本技术中,若将第一阈值设置的较小,则可能出现误唤醒的情况,例如,随便接收到的语音和模板的声纹匹配分值大于该第一阈值。鉴于本技术中,即使接收到的语音和模板的声纹匹配分值小于第一阈值,也可以通过同一先验信息的方式判断接收的语音和模板的相似度,并在该相似度较大时调整该第一阈值,因此,可以将第一阈值设置的较大。
18.作为第一方面的另一实现方式,在计算第二语音和第一模板的第一声纹匹配分值之前,该方法还包括:
19.将第二语音转换为第一文本信息;
20.基于第一文本信息,确定第二语音为第一唤醒词对应的语音;
21.或者;
22.计算第二语音和初始模板的第一初始声纹匹配分值;
23.确定第一初始声纹匹配分值小于初始阈值。
24.本技术中,电子设备中可能存储至少一个唤醒词的模板,因此,在实际应用中,可以将接收到的语音转化为文本,从而确定该文本和哪个唤醒词匹配,从而确定该语音属于哪个唤醒词对应的语音,从容可以直接执行该语音与对应的唤醒词之间的匹配流程。当然,本技术还提供多样化的方式,例如,可以依次执行该语音与各个唤醒词之间的匹配流程,直到将每个唤醒词匹配结束或者直到唤醒电子设备的语音功能。
25.作为第一方面的另一实现方式,在计算第二语音和第一模板的第一声纹匹配分值之后,该方法还包括:
26.若第一声纹匹配分值大于或等于第一阈值,则第二语音作为第一唤醒词的语音唤醒该电子设备的语音功能。
27.作为第一方面的另一实现方式,在计算基于同一第一先验信息的第二声纹匹配分值和第三声纹匹配分值的第一差异值之后,该方法还包括:
28.若第一差异值小于差异阈值的比例小于或等于预设比例,则第二语音作为第一唤醒词的语音唤醒该电子设备的语音功能失败。
29.作为第一方面的另一实现方式,若第一差异值小于差异阈值的比例大于预设比例,在将第二语音作为第一唤醒词的语音成功唤醒该电子设备的语音功能之前,该方法还包括:
30.确定第二语音的信噪比大于信噪比阈值。
31.本技术中,通过设置信噪比阈值的方式,可以降低误唤醒的情况发生。
32.作为第一方面的另一实现方式,在将第二语音生成第一唤醒词的第二模板,更新第一唤醒词的第一阈值为第一声纹匹配分值之后,该方法包括:
33.在非注册阶段,接收第三语音,计算第三语音和第一唤醒词的比对模板的第四声纹匹配分值,第一唤醒词的比对模板包括第一模板和/或第二模板;
34.若第四声纹匹配分值小于第一阈值,则计算第三语音和第二先验信息的第五声纹匹配分值,以及第一唤醒词的比对模板和第二先验信息的第六声纹匹配分值,第二先验信息包括该电子设备中存储的至少一个模板,第二先验信息不包括第一唤醒词的比对模板;
35.计算基于同一第二先验信息的第五声纹匹配分值和第六声纹匹配分值的第二差异值;
36.若第二差异值小于差异阈值的比例大于预设比例,则第三语音作为第一唤醒词的语音成功唤醒该电子设备的语音功能,将第三语音生成第一唤醒词的第三模板,更新第一唤醒词的第一阈值为第四声纹匹配分值;
37.若第二差异值小于差异阈值的比例小于或等于预设比例,则第三语音作为第一唤醒词的语音唤醒该电子设备的语音功能失败。
38.作为第一方面的另一实现方式,第一唤醒词的比对模板包括第一模板和第二模板,第四声纹匹配分值为:第三语音和第一模板的声纹匹配分值以及第三语音信息和第二模板的声纹匹配分值的均值。
39.作为第一方面的另一实现方式,在计算第三语音和第一唤醒词的比对模板的第四声纹匹配分值之前,该方法还包括:
40.将第三语音转换为第二文本信息;
41.基于第二文本信息,确定第三语音为第一唤醒词对应的语音。
42.作为第一方面的另一实现方式,第一唤醒词的比对模板包括第一模板和第二模板;第二先验信息包括:该电子设备的初始唤醒词的初始模板;第六声纹匹配分值包括与第一模板对应的第六一声纹匹配分值和与第二模板对应的第六二声纹匹配分值;计算基于同一第二先验信息的第五声纹匹配分值和第六声纹匹配分值的第二差异值包括:
43.计算基于初始模板第五声纹匹配分值和第六一声纹匹配分值的第二一差异值;
44.计算基于初始模板的第五声纹匹配分值和第六二声纹匹配分值的第二二差异值;
45.第二差异值包括第二一差异值和第二二差异值。
46.本技术中,一个唤醒词可以对应有多个模板。在匹配阶段,可以计算接收到的语音信息和同一先验信息的声纹匹配分值,以及每个模板与同一先验信息的声纹匹配分值。在语音信息和模板为一对多的情况下,可以计算语音信息和每个模板基于同一先验信息的声纹匹配分值的差异,从而根据差异值小于差异阈值的比例确定是否作为当前唤醒词唤醒电子设备。
47.作为第一方面的另一实现方式,在计算第三语音和第一唤醒词的比对模板的第四声纹匹配分值之后,该方法还包括:
48.若第四声纹匹配分值大于或等于第一阈值,第三语音作为第一唤醒词的语音成功唤醒该电子设备的语音功能。
49.作为第一方面的另一实现方式,在将第三语音生成第一唤醒词的第三模板,更新第一唤醒词的第一阈值为第四声纹匹配分值之前,该方法还包括:
50.确定第一唤醒词的模板的数量小于数量阈值;
51.相应的,该方法还包括:
52.若确定第一唤醒词的模板的数量不小于数量阈值,则更新第一唤醒词的第一阈值为第四声纹匹配分值,不再将第三语音生成第一唤醒词的第三模板。
53.本技术中,为了避免同一唤醒词的模板较多,后续匹配过程功耗过大的问题,可以设置同一唤醒词的模板的数量不能大于数量阈值。当同一唤醒词的模板的数量等于数量阈值时,不再将接收到的匹配的语音信息生成模板,然而,可以更新声纹阈值。
54.作为第一方面的另一实现方式,若更新第一唤醒词的第一阈值为第四声纹匹配分值,不再将第三语音生成第一唤醒词的第三模板之后,该方法还包括:
55.在非注册阶段,接收第四语音,计算第四语音和第一唤醒词的比对模板的第七声纹匹配分值,第一唤醒词的比对模板包括第一模板和/或第二模板;
56.若第七声纹匹配分值小于第一阈值,则第四语音作为第一唤醒词的语音唤醒该电子设备的语音功能失败;
57.若第七声纹匹配分值大于或等于第一阈值,则第四语音作为第一唤醒词的语音成功唤醒该电子设备的语音功能。
58.本技术中,若上一次唤醒流程中未生成唤醒词的新的模板,则在本次唤醒流程中,若针对同一唤醒词的唤醒流程,则不再执行调整声纹阈值的流程。即可以将声纹阈值设置定值。
59.作为第一方面的另一实现方式,在将第三语音生成第一唤醒词的第三模板,更新第一唤醒词的第一阈值为第四声纹匹配分值之后,该方法还包括:
60.在注册阶段,接收到第五语音,将第五语音生成第二唤醒词的第四模板,为第二唤醒词设置第二阈值,第二阈值用于在非注册阶段判断接收到的语音是否可以作为第二唤醒词对应的语音唤醒该电子设备的语音功能;
61.在非注册阶段,接收第六语音,计算第六语音和第四模板的第八声纹匹配分值;
62.若第八声纹匹配分值小于第二阈值,则计算第六语音和第三先验信息的第九声纹匹配分值,以及第四模板和第三先验信息的第十声纹匹配分值,第三先验信息包括该电子设备中存储的至少一个模板,第三先验信息不包括第四模板;
63.计算基于同一第三先验信息的第九声纹匹配分值和第十声纹匹配分值的第三差异值;
64.若第三差异值小于差异阈值的比例大于预设比例,则第六语音作为第二唤醒词的语音成功唤醒该电子设备的语音功能,将第六语音生成第二唤醒词的第五模板,更新第二唤醒词的第二阈值为第八声纹匹配分值;
65.若第三差异值小于差异阈值的比例小于或等于预设比例,则第六语音作为第二唤醒词的语音唤醒该电子设备的语音功能失败。
66.作为第一方面的另一实现方式,该电子设备中设置有初始唤醒词,初始唤醒词设置有初始模板和初始阈值;
67.第二阈值为该电子设备中的每个唤醒词的阈值的均值和第一系数的乘积,第一系
数大于1;
68.或,第二阈值为初始唤醒词的初始阈值和第一系数的乘积;
69.或,第二阈值为第一值,第一值大于初始阈值。
70.作为第一方面的另一实现方式,在计算第六语音和第四模板的第八声纹匹配分值之前,该方法还包括:
71.将第六语音转换为第三文本信息;
72.基于第三文本信息,确定第六语音为第二唤醒词对应的语音;
73.或者;
74.计算第六语音和初始模板的第二初始声纹匹配分值;
75.若第二初始声纹匹配分值小于初始阈值,则判断第六语音是否可以作为第一唤醒词的语音成功唤醒该电子设备的语音功能;
76.确定第六语音作为第一唤醒词的语音唤醒该电子设备的语音功能失败。
77.作为第一方面的另一实现方式,第三先验信息包括初始模板、第一模板、第二模板和第三模板;第九声纹匹配分值包括与初始模板对应的第九一声纹匹配分值、与第一模板相关的第九二声纹匹配分值、与第二模板相关的第九三声纹匹配分值、以及与第三模板相关的第九四声纹匹配分值;第十声纹匹配分值包括与初始模板对应的第十一声纹匹配分值、与第一模板相关的第十二声纹匹配分值、与第二模板相关的第十三声纹匹配分值、以及与第三模板相关的第十四声纹匹配分值;
78.计算基于同一第三先验信息的第九声纹匹配分值和第十声纹匹配分值的第三差异值包括:
79.计算第九一声纹匹配分值和第十一声纹匹配分值的第三一差异值;
80.计算第九二声纹匹配分值和第十二声纹匹配分值的第三二差异值;
81.计算第九三声纹匹配分值和第十三声纹匹配分值的第三三差异值;
82.计算第九四声纹匹配分值和第十四声纹匹配分值的第三四差异值;
83.第三差异值包括:第三一差异值、第三二差异值、第三三差异值和第三四差异值。
84.本技术中,还可以设置多个自定义唤醒词,这样先验信息可能为多个,例如,每个唤醒词的模板均可以作为先验信息。这种情况下,一个语音信息,一个模板,多个先验信息,可以计算接收到的语音信息和模板基于每个同一先验信息的声纹匹配分值的差异值。从而根据差异值小于差异阈值的比例确定是否唤醒该电子设备。
85.作为第一方面的另一实现方式,在将第六语音生成第二唤醒词的第五模板,更新第二唤醒词的第二阈值为第八声纹匹配分值之后,该方法还包括:
86.在非注册阶段,接收第七语音,计算第七语音和第二唤醒词的比对模板的第十五声纹匹配分值,第二唤醒词的比对模板包括第四模板和/或第五模板;
87.若第十五声纹匹配分值小于第二阈值,则计算第七语音和第四先验信息的第十六声纹匹配分值,以及第二唤醒词的比对模板和第四先验信息的第十七声纹匹配分值,第四先验信息包括该电子设备中存储的至少一个模板,第四先验信息不包括第二唤醒词的比对模板;
88.计算基于同一第四先验信息的第十六声纹匹配分值和第十七声纹匹配分值的第四差异值;
89.若第四差异值小于差异阈值的比例大于预设比例,则第七语音作为第二唤醒词的语音成功唤醒该电子设备的语音功能,将第七语音生成第二唤醒词的第六模板,更新第二唤醒词的第二阈值为第十五声纹匹配分值;
90.若第四差异值小于差异阈值的比例小于或等于预设比例,则第七语音作为第二唤醒词的语音唤醒该电子设备的语音功能失败。
91.作为第一方面的另一实现方式,第二唤醒词的比对模板包括第四模板和第五模板;
92.第四先验信息包括该电子设备的初始唤醒词的初始模板、第一模板、第二模板和第三模板;
93.计算基于同一第四先验信息的第十六声纹匹配分值和第十七声纹匹配分值的第四差异值,包括:
94.计算aij和b0j的第四差异值;
95.其中,aij表示与第二唤醒词的第i个比对模板和第j个第四先验信息对应的第十七声纹匹配分值,b0j表示与第j个第四先验信息对应的第十六声纹匹配分值,i为从1到n的自然数,n为第二唤醒词的比对模板的数量,j=为从1到m的自然数,m为第四先验信息的数量。
96.本技术中,还可能存在以下情况:当前匹配的唤醒词中存在多个比对模板,同时存在多个先验信息,这种情况下,仍然可以采用上述方式计算语音信息和比对模板分别基于同一先验信息的声纹匹配分值的差异值,从而根据差异值小于差异阈值的比例确定是否唤醒电子设备的语音功能。
97.第二方面,提供一种电子设备,包括处理器,处理器用于运行存储器中存储的计算机程序,实现本技术第一方面任一项的方法。
98.第三方面,提供一种芯片系统,包括处理器,处理器与存储器耦合,处理器执行存储器中存储的计算机程序,以实现本技术第一方面任一项的方法。
99.第四方面,提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被一个或多个处理器执行时实现本技术第一方面任一项的方法。
100.第五方面,本技术提供了一种计算机程序产品,当计算机程序产品在设备上运行时,使得设备执行本技术第一方面任一项的方法。
101.可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
102.图1为本技术实施例提供的一种电子设备的硬件结构示意图;
103.图2为本技术实施例提供的一种语音唤醒方法的流程示意图;
104.图3为本技术实施例提供的另一种语音唤醒方法的流程示意图;
105.图4为本技术实施例提供的另一种语音唤醒方法的流程示意图;
106.图5为本技术实施例提供的另一种语音唤醒方法的流程示意图;
107.图6为本技术实施例提供的另一种语音唤醒方法的流程示意图;
108.图7为本技术实施例提供的另一种语音唤醒方法的流程示意图;
109.图8为本技术实施例提供的另一种语音唤醒方法的流程示意图。
具体实施方式
110.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。
111.应当理解,当在本技术说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
112.还应当理解,在本技术实施例中,“一个或多个”是指一个、两个或两个以上;“和/或”,描述关联对象的关联关系,表示可以存在三种关系;例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b的情况,其中a、b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
113.另外,在本技术说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”、“第四”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
114.在本技术说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本技术的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
115.本技术实施例提供的语音唤醒方法,可以适用于平板电脑、手机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本、个人数字助理(personal digital assistant,pda)等电子设备。本技术实施例对电子设备的具体类型不作限定。
116.图1示出了一种电子设备的结构示意图。电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,usb)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,传感器模块180,按键190,马达191,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,sim)卡接口195等。其中,传感器模块180可以包括压力传感器180a,触摸传感器180k等。
117.可以理解的是,本技术实施例示意的结构并不构成对电子设备100的具体限定。在本技术另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
118.处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,存储器,视频编解码
器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
119.其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
120.处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
121.usb接口130是符合usb标准规范的接口,具体可以是mini usb接口,micro usb接口,usb type c接口等。usb接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。
122.外部存储器接口120可以用于连接外部存储卡,例如micro sd卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
123.内部存储器121可以用于存储计算机可执行程序代码,可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)。
124.此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,ufs)等。
125.充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过usb接口130接收有线充电器的充电输入。
126.电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。
127.在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
128.电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
129.天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
130.移动通信模块150可以提供应用在电子设备100上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,lna)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对
经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。
131.无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wireless local area networks,wlan)(如无线保真(wireless fidelity,wi-fi)网络),蓝牙(bluetooth,bt),全球导航卫星系统(global navigation satellite system,gnss),调频(frequency modulation,fm),近距离无线通信技术(near field communication,nfc),红外技术(infrared,ir)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
132.在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。
133.电子设备100可以通过音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,以及应用处理器等实现音频功能。例如音乐播放,录音等。
134.音频模块170用于将数字音频信号转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
135.扬声器170a,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170a收听音乐,或收听免提通话。
136.受话器170b,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170b靠近人耳接听语音。
137.麦克风170c,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170c发声,将声音信号输入到麦克风170c。电子设备100可以设置至少一个麦克风170c。在另一些实施例中,电子设备100可以设置两个麦克风170c,除了监听语音信息,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170c,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
138.耳机接口170d用于连接有线耳机。耳机接口170d可以是usb接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,omtp)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the usa,ctia)标准接口。
139.压力传感器180a用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180a可以设置于显示屏194。压力传感器180a的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180a,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180a检测触摸操作强度。电子设备100也可以根据压力传感器180a的检测信号计算触摸的位置。
140.触摸传感器180k,也称“触控面板”。触摸传感器180k可以设置于显示屏194,由触
摸传感器180k与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180k用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180k也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
141.按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
142.马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。
143.电子设备100通过gpu,显示屏194,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏194和应用处理器。gpu用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个gpu,其执行程序指令以生成或改变显示信息。
144.显示屏194用于显示图像,视频等。在一些实施例中,电子设备100可以包括1个或n个显示屏194,n为大于1的正整数。
145.摄像头193用于捕获静态图像或视频。在一些实施例中,电子设备100可以包括1个或n个摄像头193,n为大于1的正整数。
146.sim卡接口195用于连接sim卡。sim卡可以通过插入sim卡接口195,或从sim卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或n个sim卡接口,n为大于1的正整数。
147.本技术实施例并未特别限定一种语音唤醒方法的执行主体的具体结构,只要可以通过运行记录有本技术实施例的一种语音唤醒方法的代码,以根据本技术实施例提供的一种语音唤醒方法进行处理即可。例如,本技术实施例提供的一种语音唤醒方法的执行主体可以是电子设备中能够调用程序并执行程序的功能模块,或者为应用于电子设备中的处理装置,例如,芯片。
148.随着用户的需求增多,智能电子设备的功能越来越强大。例如,用户可以不通过电子设备上的按钮(或按键)、遥控器等控制电子设备,而是通过语音控制电子设备。当然,通过语音控制电子设备时,首先需要通过唤醒词对应的语音信息唤醒电子设备的语音助手。其中,“语音助手”只是作为电子设备的语音控制功能的名称的一个示例,在实际应用中,电子设备的语音控制功能还可以以其他名称命名。
149.通常,电子设备在出厂时,生产厂家会为电子设备的语音助手设置初始唤醒词。例如,“你好,yoyo”。当然,电子设备出厂时,电子设备内部也设置了该初始唤醒词的语音模板、打分策略和声纹阈值等,以确定接收到的语音信息是否可以唤醒该电子设备的语音助手。
150.在实际应用中,为了提高用户体验,通常允许用户根据个人喜好自定义唤醒词,例如“hello,yoyo”、“打开yoyo”等。当然,也会录入与自定义唤醒词对应的语音信息作为自定义唤醒词的语音模板。然而,若仍然采用电子设备原厂自带的声纹阈值,用户通过自定义唤醒词对应的语音信息唤醒电子设备的语音助手时,可能会出现唤醒不成功的情况。
151.鉴于此,本技术实施例提供一种语音唤醒方法,可以在用户通过语音信息唤醒电子设备的语音助手的过程中,将电子设备中原始自带的初始唤醒词的语音模板(还可以包
括已经注册过的自定义唤醒词的语音模板)作为先验信息,对自定义唤醒词的声纹阈值进行配置、调整,从而使得自定义唤醒词具有更匹配的声纹阈值,降低用户通过自定义唤醒词对应的语音信息唤醒不成功的情况。
152.作为本技术一个实施例,电子设备的语音助手的初始唤醒词可以记为w0,电子设备中设置的与初始唤醒词对应的语音模板可以记为m0(可以记为初始模板),与初始唤醒词对应的声纹阈值可以记为t0(可以记为初始阈值)。电子设备中设置的唤醒电子设备的语音助手的唤醒词参照表1。
153.表1电子设备中的唤醒词、该唤醒词对应的语音模板和声纹阈值
154.唤醒词语音模板声纹阈值初始唤醒词w0m0t0
155.用户通过语音信息唤醒电子设备的语音助手的过程可以参照图2所示的流程示意图。
156.s101,在用户发出语音信息v0时,电子设备接收该语音信息v0。
157.s102,电子设备计算该语音信息v0与语音模板m0的声纹匹配分值。
158.s103,判断语音信息v0与语音模板m0的声纹匹配分值是否大于声纹阈值t0。
159.s104,若语音信息v0与语音模板m0的声纹匹配分值大于或等于声纹阈值t0,则该电子设备的语音助手被语音信息v0唤醒。
160.s105,若语音信息v0与语音模板m0的声纹匹配分值小于声纹阈值t0,则该电子设备的语音助手无法被语音信息v0唤醒,即语音助手唤醒失败。
161.当然,实际应用中,在s102之前,还将接收到的语音信息v0转换为文本信息,在确定语音信息v0的文本信息和初始唤醒词匹配(完全相同,或者相似度大于文本相似阈值)的情况下,执行s102。在不一致的情况下,结束唤醒流程。
162.若该电子设备的语音助手支持用户自定义唤醒词,则用户打开电子设备的自定义唤醒词设置功能,用户输入自定义唤醒词w1的文本信息,用户发出自定义唤醒词w1对应的语音信息v1(可以记为第一语音),电子设备接收到该自定义唤醒词w1(可以记为第一唤醒词)对应的语音信息v1之后,将该自定义唤醒词w1对应的语音信息v1生成该自定义唤醒词w1对应的语音模板m11(可以记为第一模板)。当然,实际应用中,电子设备在将该自定义唤醒词w1对应的语音信息v1生成该自定义唤醒词w1对应的语音模板m11之前,也可以先确定语音信息v1转换的文本信息和自定义唤醒词w1匹配。在不匹配的情况下,不再生成语音模板m11。
163.另外,电子设备需要为该自定义唤醒词w1设置声纹阈值t1(可以记为第一阈值),电子设备首先将自定义唤醒词w1对应的声纹阈值t1设置为t1=a
×
t0。其中,a(可以记为第一系数)为大于1的值,以使得自定义唤醒词w1的声纹阈值t1较大,避免出现误唤醒的情况。当然,后续唤醒过程还可以对声纹阈值t1的值进行调整。当然,实际应用中,也可以在注册自定义唤醒词时,直接将自定义唤醒词的声纹阈值设置为相对较大的定值(例如,大于t0的第一值)。当然,若电子设备中存在多个唤醒词(自然存在多个声纹阈值),则t0也可以为多个声纹阈值的均值乘以该第一系数。此时,电子设备中设置的唤醒电子设备的语音助手的唤醒词参照表2。
164.表2电子设备中的唤醒词、该唤醒词对应的语音模板和声纹阈值
165.唤醒词语音模板声纹阈值初始唤醒词w0m0t0自定义唤醒词w1m11t1=a
×
t0
166.需要说明,本技术实施例可以在用户自定义唤醒词时对应的阶段记为注册阶段,例如,得到表2中自定义唤醒词w1的第一个语音模板以及最初的声纹阈值t1的阶段可以记为注册阶段;以及得到后续实施例中的表7中自定义唤醒词w2的第一个语音模板以及最初的声纹阈值t2的阶段可以记为注册阶段;其他阶段可以记为非注册阶段。通常,注册阶段接收到的语音信息用于生成自定义唤醒词的语音模板以及最初的声纹阈值;非注册阶段接受到的语音信息用于唤醒电子设备的语音助手,以及在符合条件的情况下生成自定义唤醒词的更多的语音模板以及调整声纹阈值。注册阶段可以由用户在电子设备的对应的界面上的控件或电子设备本体上的物理按键触发。
167.在电子设备中的唤醒词的配置为表2的情况下,电子设备就可以支持用户发出初始唤醒词w0对应的语音信息唤醒该电子设备的语音助手,同时也支持自定义唤醒词w1对应的语音信息唤醒该电子设备的语音助手。
168.然而,在实际应用中,由于自定义唤醒词的初始阈值设置的可能不太合理,例如,该自定义唤醒词w1的声纹阈值t1(a
×
t0)设置不太合理(可能较高),导致通过该自定义唤醒词的语音信息唤醒该电子设备的语音助手时失败。所以,在后续还可以对自定义唤醒词的声纹阈值t1进行调整,具体可参照后续实施例的描述。
169.当然,若用户自定义了唤醒词,该电子设备也可以不再支持被该初始唤醒词唤醒。具体采用何种方案,可以根据实际情况进行设置,本技术实施例对此不做限制。
170.在电子设备中唤醒词的配置为表2所示的情况下,若用户发出语音信息v2(可以记为第二语音)以唤醒电子设备的语音助手,则电子设备执行的步骤可以参照如图3所示的流程示意图。
171.s201,用户发出语音信息v2之后,电子设备接收到用户发出语音信息v2。
172.电子设备可以首先判断该语音信息v2是否为初始唤醒词w0对应的语音信息。
173.作为一种判断语音信息v2是否为初始唤醒词对应的语音信息的示例。
174.s202,电子设备计算该语音信息v2和语音模板m0的声纹匹配分值s0(v2|m0)。s0(v2|m0)可以记为第一初始声纹匹配分值。
175.s203,电子设备判断声纹匹配分值s0(v2|m0)是否大于声纹阈值t0。
176.s204,若声纹匹配分值s0(v2|m0)大于或等于声纹阈值t0,则认为语音信息v2为初始唤醒词对应的语音信息,该电子设备的语音助手被唤醒。
177.若声纹匹配分值s0(v2|m0)小于声纹阈值t0,则认为语音信息v2不为初始唤醒词对应的语音信息。
178.在实际应用中,可以通过s202至s204的步骤判断语音信息v2是否为初始唤醒词w0对应的语音信息。当然,也可以通过其他方式判断语音信息v2是否为初始唤醒词w0对应的语音信息。
179.在确定语音信息v2不为初始唤醒词w0对应的语音信息的情况下,可以继续判断所述语音信息v2是否为自定义唤醒词w1对应的语音信息,具体可以执行如下s205以及之后的流程。
180.作为另一示例,本技术实施例还可以在电子设备接收到的用户发出的语音信息(s201)之后,通过自动语音识别技术(automatic speech recognition,asr)将语音信息生成文本信息。然后,根据接收到的语音信息的文本信息和电子设备中存储的每个唤醒词(文本信息)进行对比,以确定接收到的语音信息属于哪个唤醒词对应的语音信息。其中,语音信息v2对应的文本信息可以记为第一文本信息。
181.若确定该语音信息不属于任一唤醒词对应的文本信息,则结束唤醒流程。
182.若确定该语音信息属于初始唤醒词对应的文本信息,则执行该语音信息和初始唤醒词的语音模板的比对流程,参照图2所示流程示意图,或者图3所示流程示意图中的s202、s203、s204(或s205’,语音助手唤醒失败)。
183.若确定该语音信息属于某自定义唤醒词对应的文本信息,则执行语音信息和该自定义唤醒词的语音模板的比对流程,例如,图3所示的流程示意图中的步骤s205至步骤s214(或s215),或者后续实施例中的唤醒流程。
184.本技术实施例对采用的何种方案不做限制。
185.作为判断所述语音信息v2是否为自定义唤醒词w1对应的语音信息的流程的示例,或者作为判断语音信息v2是否可以作为自定义唤醒词w1对应的语音信息唤醒电子设备的语音助手的流程的示例,参照s205至s214(或s215)。
186.s205,电子设备计算接收到的语音信息v2和语音模板m11的声纹匹配分值s11(v2|m11)。s11(v2|m11)可以记为第一声纹匹配分值。
187.s206,判断语音信息v2和语音模板m11的声纹匹配分值s11(v2|m11)是否大于或等于声纹阈值t1(a
×
t0)。
188.s207,若语音信息v2和语音模板m11的声纹匹配分值s11(v2|m11)大于或等于声纹阈值t1(a
×
t0),则语音信息v2作为自定义唤醒词w1对应的语音信息唤醒电子设备的语音助手。
189.若语音信息v2和语音模板m11的声纹匹配分值s11(v2|m11)小于t1(a
×
t0),则可能存在如下情况:语音信息v2为自定义唤醒词w1对应的语音信息,然而,由于自定义唤醒词w1的声纹阈值t1(a
×
t0)设置的不合理,导致基于声纹阈值t1(a
×
t0),无法成功唤醒电子设备的语音助手。
190.当然,实际应用中,也可能出现以下情况:语音信息v2根本不为自定义唤醒词w1对应的语音信息。
191.为了确定语音信息v2是否可以作为自定义唤醒词w1的语音信息唤醒电子设备的语音助手(以及调整自定义唤醒词t1的值),可以参照表3所示的对比方式以及后续的步骤。
192.表3判断语音信息v2是否可以作为自定义唤醒词w1对应的语音信息唤醒语音助手
193.唤醒词初始唤醒词w0自定义唤醒词w1语音信息v2语音模板m0m11v2声纹匹配分值 a11(m11|m0)b01(v2|m0)
194.s208,若语音信息v2和语音模板m11的声纹匹配分值s11(v2|m11)小于t1(a
×
t0),则计算语音信息v2和初始唤醒词w0的语音模板m0的声纹匹配分值b01(v2|m0)。
195.该示例中,初始唤醒词w0的语音模板m0作为先验信息。在该实施例中的先验信息可以记为第一先验信息,当然,第一先验信息可以为所述电子设备中除第一模板以外的一
个或多个语音模板。例如,若电子设备中还存在其它唤醒词,则其他唤醒词的语音模板也可以作为第一先验信息。第二语音和第一先验信息的声纹匹配分值记为第二声纹匹配分值;第一模板和第一先验信息的声纹匹配分值记为第三声纹匹配分值。
196.s208’,计算语音模板m11和语音模板m0的声纹匹配分值a11(m11|m0)。
197.在实际应用中,语音模板m11和语音模板m0的声纹匹配分值a11(m11|m0)可以在生成语音模板m11的时候计算,并将该声纹匹配分值a11(m11|m0)存储,以在步骤s209之前获取存储的该声纹匹配分值a11(m11|m0)。
198.即图3中的步骤s208’可以是在步骤s206之后执行,也可以是在生成语音模板m11的时候执行,本技术实施例对此不做限制。
199.s209,计算a11(m11|m0)和b01(v2|m0)的差值的绝对值|a11(m11|m0)-b01(v2|m0)|。
200.本技术实施例中,计算二者的差值的绝对值仅作为计算二者的差异值的一种示例,实际应用中,还可以是其他用于表示二者差异的数值,例如,还可以为二者的比例等。
201.s210,判断a11(m11|m0)和b01(v2|m0)的差值的绝对值|a11(m11|m0)-b01(v2|m0)|是否小于阈值e。其中,阈值e为预先设置的差异阈值。
202.s211,若a11(m11|m0)和b01(v2|m0)的差值的绝对值|a11(m11|m0)-b01(v2|m0)|不小于阈值e,表示语音信息v2和m11差异较大,则语音信息v2作为自定义唤醒词w1的语音信息唤醒电子设备的语音助手失败。
203.反之,若a11(m11|m0)和b01(v2|m0)的差值的绝对值|a11(m11|m0)-b01(v2|m0)|小于阈值e,表示语音信息v2和m11比较相似,则语音信息v2作为自定义唤醒词w1的语音信息成功唤醒电子设备的语音助手。
204.当然,若实际应用中,差异值存在多个的情况下,还可以设置语音信息v2作为自定义唤醒词w1的语音信息成功唤醒电子设备的语音助手的条件包括:所述第一差异值小于差异阈值的比例大于预设比例;相应的,失败的条件包括:所述第一差异值小于差异阈值的比例小于或等于预设比例。
205.然而,实际应用中,还可以计算语音信息v2的信噪比,以避免误唤醒。
206.s212,若a11(m11|m0)和b01(v2|m0)的差值的绝对值|a11(m11|m0)-b01(v2|m0)|小于阈值e,则计算语音信息v2的信噪比。
207.s213,判断语音信息v2的信噪比是否大于信噪比阈值。信噪比阈值可以为预先设置的值。
208.s214,若语音信息v2的信噪比大于信噪比阈值,则语音信息v2作为自定义唤醒词w1的语音信息成功唤醒电子设备的语音助手;将语音信息v2生成自定义唤醒词w1的语音模板m12(可以记为第二模板);将自定义唤醒词w1的声纹阈值设置为t1=s11(v2|m11)。
209.s215,若语音信息v2的信噪比不大于信噪比阈值,则语音信息v2作为自定义唤醒词w1的语音信息唤醒电子设备的语音助手失败。
210.本技术实施例中,可以将语音模板m0作为先验信息,计算语音模板m11和m0之间的声纹匹配分值a11(m11|m0)、以及计算语音信息v2和m0之间的声纹匹配分值b01(v2|m0);若两个声纹匹配分值(a11(m11|m0)和b01(v2|m0))比较接近,则说明语音信息v2和m11之间比较相似,即语音信息v2为自定义唤醒词w1对应的语音信息。若两个声纹匹配分值(a11(m11|
m0)和b01(v2|m0))差值较大,则说明语音信息v2和m11之间差异较大,即语音信息v2不能作为自定义唤醒词w1对应的语音信息。
211.在步骤s214之后,电子设备中设置的唤醒电子设备的语音助手的唤醒词参照表4。
212.表4电子设备中的唤醒词、该唤醒词对应的语音模板和声纹阈值
[0213][0214]
通过图3所示实施例可以将自定义唤醒词w1的声纹阈值设置的更为合理。在后续用户通过自定义唤醒词w1对应的语音信息唤醒电子设备的语音助手时,将降低唤醒失败的情况。当然,若后续用户通过自定义唤醒词w1对应的语音信息唤醒电子设备的语音助手时,还可以继续调整自定义唤醒词w1的声纹阈值t1具体的值,具体可参照后续实施例的描述。
[0215]
在电子设备中唤醒词的配置为表4所示的情况下,若用户发出语音信息v3以唤醒电子设备的语音助手,则电子设备执行的步骤可参照如图4所示的流程示意图。
[0216]
s301,用户发出语音信息v3之后,电子设备接收到用户发出语音信息v3(可以记为第三语音)。
[0217]
电子设备可以首先判断该语音信息v3是否为初始唤醒词w0对应的语音信息。
[0218]
作为一种判断语音信息v3是否为初始唤醒词对应的语音信息的示例。
[0219]
s302,电子设备计算该语音信息v3和语音模板m0的声纹匹配分值s0(v3|m0)。
[0220]
s303,电子设备判断声纹匹配分值s0(v3|m0)是否大于声纹阈值t0。
[0221]
s304,若声纹匹配分值s0(v3|m0)大于或等于声纹阈值t0,则认为语音信息v3为初始唤醒词w0对应的语音信息,该电子设备的语音助手被唤醒。
[0222]
若声纹匹配分值s0(v3|m0)小于声纹阈值t0,则认为语音信息v3不为初始唤醒词对应的语音信息。
[0223]
在实际应用中,可以通过s302至s304的步骤判断语音信息v3是否为初始唤醒词w0对应的语音信息。当然,也可以通过其他方式判断语音信息v3是否为初始唤醒词w0对应的语音信息。
[0224]
在确定语音信息v3不为初始唤醒词w0对应的语音信息的情况下,可以继续判断所述语音信息v3是否为自定义唤醒词w1对应的语音信息,具体可以执行如下s305以及之后的流程。
[0225]
当然,实际应用中,也可以按照上一实施例描述的在s301之后可以根据接收到的语音信息的文本信息确定当前接收到的语音信息为哪个唤醒词对应的语音信息。然后,执行该语音信息作为对应的唤醒词的唤醒流程或结束唤醒流程。本技术实施例将语音信息v3对应的文本信息记为第二文本信息。
[0226]
若确定该语音信息属于初始唤醒词对应的文本信息,则执行该语音信息和初始唤醒词的语音模板的比对流程,参照图2所示流程示意图,或者图4所示流程示意图中的s302、s303、s304(或s305’,语音助手唤醒失败)。
[0227]
若确定该语音信息属于某自定义唤醒词对应的文本信息,则执行语音信息和该自
定义唤醒词的语音模板的比对流程,例如,图4所示的流程示意图中的步骤s305至步骤s314(或s315),或者后续实施例中的唤醒流程。
[0228]
本技术实施例对采用的何种方案不做限制。
[0229]
作为判断所述语音信息v3是否为自定义唤醒词w1对应的语音信息的流程的示例,或者作为判断语音信息v3是否可以作为自定义唤醒词w1对应的语音信息唤醒电子设备的语音助手的流程的示例,参照s305至s214(或s315)。
[0230]
s305,电子设备计算接收到的语音信息v3和语音模板m11的声纹匹配分值s11(v3|m11),以及语音信息v3和语音模板m12的声纹匹配分值s12(v3|m12);计算s11和s12的平均值作为s1(可以记为第四声纹匹配分值),即s1=(s11+s12)/2=(s11(v3|m11)+s12(v3|m12))/2。s1可以理解为语音信息v3和自定义唤醒词w1的语音模板(m11和m12)的声纹匹配分值。
[0231]
其中,语音模板m11和m12作为第一唤醒词当前的比对模板的一种示例,实际应用中,第一唤醒词当前的比对模板可以是第一唤醒词中的一个或多个语音模板。
[0232]
s306,判断语音信息v3和自定义唤醒词w1的语音模板(m11和m12)的声纹匹配分值s1是否大于或等于声纹阈值t1(s11(v2|m11))。
[0233]
需要说明,声纹阈值t1中的s11(v2|m11)为上一次成功唤醒语音助手时的语音信息v2和语音模板m11的声纹匹配分值,而本次计算s1时的s11(v3|m11)为本次接收到的语音信息v3和语音模板m11的声纹匹配分值。
[0234]
s307,若语音信息v3和自定义唤醒词w1的语音模板(m11和m12)的声纹匹配分值s1大于或等于t1(s11(v2|m11)),则语音信息v3作为自定义唤醒词w1对应的语音信息,唤醒电子设备的语音助手。
[0235]
若语音信息v3和自定义唤醒词w1的语音模板(m11和m12)的声纹匹配分值小于t1(s11(v2|m11)),同样可能存在如下情况:
[0236]
语音信息v3为自定义唤醒词w1对应的语音信息,然而,由于自定义唤醒词w1的声纹阈值t1(s11(v2|m11))设置的仍然不合理,导致基于声纹阈值t1(s11(v2|m11)),无法成功唤醒电子设备的语音助手。
[0237]
当然,实际应用中,也可能出现以下情况:语音信息v3根本不为自定义唤醒词w1对应的语音信息。
[0238]
为了确定语音信息v3是否可以作为自定义唤醒词w1的语音信息唤醒电子设备的语音助手(以及调整自定义唤醒词t1的值),可以参照表5所示的对比方式以及后续的步骤。
[0239]
表5判断语音信息v3是否可以作为自定义唤醒词w1对应的语音信息唤醒语音助手
[0240][0241]
s308,若语音信息v3和自定义唤醒词w1的语音模板(m11和m12)的声纹匹配分值s1小于t1(s11(v2|m11)),则计算语音信息v3和语音模板m0的声纹匹配分值b01(v3|m0)。该声纹匹配分值记为第五声纹匹配分值。
[0242]
该示例中,初始唤醒词w0的语音模板m0作为先验信息。本技术实施例中的先验信息可以记为第二先验信息。语音模板m0也仅为第二先验信息的一个示例,实际应用中,第二先验信息包括电子设备中存储的至少一个模板,然而第二先验信息不包括第一唤醒词的比对模板。
[0243]
s308’,获取语音模板m11和语音模板m0的声纹匹配分值a11(m11|m0),计算语音模板m12和语音模板m0的声纹匹配分值a21(m12|m0)。该两个声纹匹配分值可以记为第六声纹匹配分值。其中,a11(m11|m0)记为第六一声纹匹配分值,a21(m12|m0)记为第六二声纹匹配分值。
[0244]
如前所述,语音模板m11和语音模板m0的声纹匹配分值a11(m11|m0)可以在生成语音模板m11的时候计算,并将该声纹匹配分值a21(m11|m0)存储,以在步骤s209之前获取存储的该声纹匹配分值a11(m11|m0)。同理,语音模板m12和语音模板m0的声纹匹配分值a21(m12|m0)可以在生成语音模板m12的时候计算,并将该声纹匹配分值a21(m12|m0)存储,以在步骤s309之前获取存储的该声纹匹配分值a21(m12|m0)。
[0245]
s309,计算a11(m11|m0)和b01(v3|m0)之间的差值的绝对值|a11(m11|m0)-b01(v3|m0)|,以及a21(m12|m0)和b01(v3|m0)之间的差值的绝对值|a21(m12|m0)-b01(v3|m0)|。该两个差值的绝对值可以作为第二差异值(表示同一第二先验信息的所述第五声纹匹配分值和所述第六声纹匹配分值的差异的值)的一个示例。当然,为了区分,与第六一声纹匹配分值对应的差异值记为第二一差异值,与第六二声纹匹配分值对应的差异值记为第二二差异值。
[0246]
当然,若自定义唤醒词w1还存在其它模板,例如,若存在m1i,则还需要计算ai1(m1i|m0)和b01(v3|m0)之间的差值的绝对值|ai0-b10|。
[0247]
需要说明,其中,aij表示当前自定义唤醒词(当前判断语音信息是否可以作为哪个自定义唤醒词的语音唤醒语音助手,则哪个自定义唤醒词为当前自定义唤醒词)中的第i个语音模板和历史自定义唤醒词(当前自定义唤醒词之前生成的自定义唤醒词)的所有语音模板中的第j个语音模板之间的声纹匹配分值。
[0248]
b0j表示当前接收到的语音信息和历史自定义唤醒词的所有语音模板中的第j个语音模板之间的声纹匹配分值。
[0249]
在计算差值绝对值时,需要保证j相同(即先验信息),即需要计算b0j和a1j之间的差值绝对值,
……
,b0j和aij之间的差值的绝对值,
……
,一直计算到b0j和anj之间的差值绝对值。其中,n表示当前自定义唤醒词中的语音模板的数量。
[0250]
该示例中,当前自定义唤醒词为w1(当前判断语音信息是否为该自定义唤醒词对应的语音信息),自定义唤醒词w1中存在2个语音模板,则n=2,即i=1、2。当前自定义唤醒词w1的历史模板为w0,则存在一个历史模板,即j=1。当然,实际应用中,也可以将先验信息的数量设置为m。则j的最大值为m。
[0251]
因此,需要计算b01(v3|m0)和a11(m11|m0)之间的差值的绝对值,b01(v3|m0)和a21(m11|m0)之间的差值的绝对值。
[0252]
上述实施例中,将当前自定义唤醒词中的每个语音模板均作为比对模板。将当前自定义唤醒词的历史自定义唤醒词和初始唤醒词的语音模板作为先验信息,从而计算差值的绝对值。
[0253]
作为本技术另一实施例,也可以将当前自定义唤醒词中的每个语音模板均作为比对模板,将电子设备中的语音模板中除比对模板之外的语音模板均作为先验信息,从而计算差值的绝对值。
[0254]
作为本技术另一实施例,也可以将当前自定义唤醒词中最新注册的语音模板作为比对模板。将当前自定义唤醒词的历史自定义唤醒词(比当前自定义唤醒词注册更早的自定义唤醒词)中的语音模板、初始唤醒词的语音模板和当前自定义唤醒词的语音模板中除比对模板以外的其他语音模板作为先验信息。计算比对模板和先验信息的声纹匹配分值,以及语音信息和先验信息的声纹匹配分值。然后计算基于同一先验信息的两个声纹匹配分值(一个与比对模板相关,一个与接收到的语音信息相关)之间的差值的绝对值。
[0255]
当然,实际应用中,也可以将当前自定义唤醒词中最新注册的语音模板作为比对模板。将电子设备中的语音模板中除比对模板之外的语音模板均作为先验信息,从而计算差值的绝对值。
[0256]
本技术实施例中,将已经验证过的语音模板作为先验信息,以调整自定义唤醒词的声纹阈值,所以,可以选择已经验证过的语音模板中的全部或部分作为先验信息,例如,还可以仅将初始唤醒词的语音模板作为先验信息。
[0257]
本技术实施例对采用哪个或哪些语音模板作为先验信息不做限制。
[0258]
后续实施例中,将以一种先验信息的情况(当前自定义唤醒词的每个语音模板作为比对模板,当前自定义唤醒词的历史自定义唤醒词和初始唤醒词的语音模板作为先验信息)作为示例,其他示例不再一一举例。
[0259]
s310,判断差值的绝对值小于e的比例是否大于预设比例。
[0260]
s311,若计算的差值的绝对值小于e的比例小于或等于预设比例,则语音信息v3作为自定义唤醒词w1的语音信息唤醒电子设备的语音助手失败。
[0261]
其中,a11(m11|m0)为自定义唤醒词w1的语音模板m11(语音信息v1)和语音模板m0之间的声纹匹配分值,a21为自定义唤醒词w1的语音模板m12(语音信息v2)和语音模板m0之间的匹配分值。b01为语音信息v3和语音模板m0之间的匹配分值。即,均为与语音模板m0之间的匹配分值。
[0262]
所以,若a11和b01之间的差值的绝对值较大,则语音信息v3和自定义唤醒词w1的语音模板m11(语音信息v1)之间不相似,若a21和b01之间的差值的绝对值较大,则语音信息v3和自定义唤醒词w1的语音模板(语音信息v2)之间不相似。
[0263]
反之,若a11和b01之间的差值的绝对值较小,则语音信息v3和自定义唤醒词w1的语音模板m11(语音信息v1)之间相似,若a21和b01之间的差值的绝对值较小,则语音信息v3和自定义唤醒词w1的语音模板(语音信息v2)之间相似。
[0264]
因此,可以设置语音信息v3作为自定义唤醒词w1的语音成功唤醒电子设备的语音助手的条件为:上述任一差值的绝对值小于e;相应的,语音信息v3作为自定义唤醒词w1的语音唤醒语音助手失败的条件为:上述差值的绝对值均大于e。
[0265]
当然,还可以设置语音信息v3作为自定义唤醒词w1的语音成功唤醒电子设备的语音助手的条件为:上述差值的绝对值中小于e的比例大于预设比例;相应的,语音信息v3作为自定义唤醒词w1的语音唤醒语音助手失败的条件为:上述差值的绝对值中小于e的比例小于或等于预设比例。
[0266]
另外,为了降低误唤醒的情况发生,还可以在语音信息v3作为自定义唤醒词w1的语音成功唤醒电子设备的语音助手的条件中增加:接收到的语音信息v3的信噪比大于信噪比阈值。即在步骤s301之后,还包括:
[0267]
s312,若计算的差值的绝对值小于e的比例大于预设比例,则计算语音信息v3的信噪比。
[0268]
s313,判断语音信息v3的信噪比是否大于信噪比阈值。
[0269]
s314,若语音信息v3的信噪比大于信噪比阈值,则语音信息v3作为自定义唤醒词w1的语音成功唤醒电子设备的语音助手;将语音信息v3生成自定义唤醒词w1的语音模板m13(记为第三模板);将自定义唤醒词w1的声纹阈值设置为t1=s1=(s11+s12)/2=(s11(v3|m11)+s12(v3|m12))/2。
[0270]
s315,若语音信息v3的信噪比不大于信噪比阈值,则语音信息v3作为自定义唤醒词w1的语音唤醒电子设备的语音助手失败。
[0271]
本技术实施例中,以当前自定义唤醒词中存在多个语音模板为例,描述语音信息是否可以作为当前自定义唤醒词对应的语音信息唤醒电子设备的语音助手。
[0272]
在步骤s314之后,电子设备中设置的唤醒电子设备的语音助手的唤醒词参照表6。
[0273]
表6电子设备中的唤醒词、该唤醒词对应的语音模板和声纹阈值
[0274][0275]
通过这种方式,电子设备中自定义唤醒词w1的声纹阈值将越来越合理。当然,实际应用中,可以设置每个自定义唤醒词最多可以设置p个语音模板。即在自定义唤醒词具有p个语音模板之后,即使执行到步骤s314时,不再执行将当前接收到的语音信息生成自定义唤醒词的语音模板的过程。然而,需要执行设置自定义唤醒词的声纹阈值的过程。同时,该自定义唤醒词的声纹阈值后续将不再调整。其中,p可以记为数量阈值。
[0276]
作为另一示例,在图4所示实施例的基础上,在步骤s314中,执行语音信息v3作为自定义唤醒词w1的语音唤醒语音助手的操作。
[0277]
在步骤s314之后,执行如下步骤:
[0278]
s316,判断自定义唤醒词w1的语音模板的数量是否小于p。
[0279]
s317,若自定义唤醒w1的语音模板的数量小于p,则将语音信息v3生成自定义唤醒词w1的语音模板m13;将自定义唤醒词w1的声纹阈值设置为t1=s1=(s11+s12)/2=(s11(v3|m11)+s12(v3|m12))/2。
[0280]
s318,若自定义唤醒词w1的语音模板的数量不小于p,则将自定义唤醒词w1的声纹阈值设置为t1=s1=(s11+s12)/2=(s11(v3|m11)+s12(v3|m12))/2,不再执行将语音信息v3生成自定义唤醒词w1的语音模板m13。
[0281]
另外,在步骤s318之后,该自定义唤醒w1的声纹阈值t1=s1=(s11+s12)/2=(s11(v3|m11)+s12(v3|m12))/2,后续将不再调整声纹阈值t1的值。即后续在执行到语音信息和
该自定义唤醒词w1的语音模板的声纹匹配分值s1小于声纹阈值t1的情况下,确定当前接收到的语音信息不为自定义唤醒词w1对应的语音信息,则当前接收到的语音信息作为自定义唤醒词w1对应的语音唤醒语音助手失败。
[0282]
作为一种示例,在步骤s318之后,若用户发出语音信息v4,则电子设备执行的步骤参照图6所示的流程示意图。
[0283]
s401,用户发出语音信息v4之后,电子设备接收到用户发出语音信息v4(记为第四语音)。
[0284]
电子设备可以首先判断该语音信息v4是否为初始唤醒词w0对应的语音信息。
[0285]
作为一种判断语音信息v4是否为初始唤醒词对应的语音信息的示例。
[0286]
s402,电子设备计算该语音信息v4和语音模板m0的声纹匹配分值s0(v4|m0)。
[0287]
s403,电子设备判断声纹匹配分值s0(v4|m0)是否大于声纹阈值t0。
[0288]
s404,若声纹匹配分值s0(v4|m0)大于或等于声纹阈值t0,则认为语音信息v4为初始唤醒词w0对应的语音信息,该电子设备的语音助手被唤醒。
[0289]
若声纹匹配分值s0(v4|m0)小于声纹阈值t0,则认为语音信息v4不为初始唤醒词w0对应的语音信息。
[0290]
在确定语音信息v4不为初始唤醒词w0对应的语音信息的情况下,可以继续判断所述语音信息v4是否为自定义唤醒词w1对应的语音信息,具体可以执行s205以及之后的流程。
[0291]
如前所述,也可以通过语音信息v4的文本信息和每个唤醒词进行匹配,已确定语音信息v4为哪个唤醒词对应的语音信息。从而执行与哪个唤醒词的对应的唤醒流程。详细可参照上述实施例的描述。
[0292]
s405,电子设备计算接收到的语音信息v4和语音模板m11的声纹匹配分值s11(v4|m11),以及语音信息v4和语音模板m12的声纹匹配分值s12(v4|m12);计算s11和s12的平均值作为s1,即s1=(s11+s12)/2=(s11(v4|m11)+s12(v4|m12))/2。s1可以理解为语音信息v4和自定义唤醒词w1的语音模板(m11和m12)的声纹匹配分值,该声纹匹配分值可以记为第七声纹匹配分值。
[0293]
如前所述,比对模板可以为当前自定义唤醒词的语音模板中的一个或多个。
[0294]
需要说明,若电子设备接收到语音信息v3之后,执行的步骤为s318,而不是s317,则电子设备中存储的自定义唤醒词w1的语音模板为m11和m12,不包括m13。因此,计算的语音信息和自定义唤醒词w1的每个语音模板的声纹匹配分值,为语音信息分别和自定义唤醒词w1的m11和m12的声纹匹配分值的均值。
[0295]
s406,判断语音信息v4和自定义唤醒词w1的语音模板(m11和m12)的声纹匹配分值s1是否大于或等于声纹阈值t1((s11(v3|m11)+s12(v3|m12))/2)。
[0296]
需要说明,自定义唤醒词w1当前的声纹阈值在执行步骤s318之后,已经更新为定值(s11(v3|m11)+s12(v3|m12))/2。
[0297]
s407,若语音信息v4和自定义唤醒词w1的语音模板(m11和m12)的声纹匹配分值s1大于或等于t1((s11(v3|m11)+s12(v3|m12))/2),则语音信息v4为自定义唤醒词w1对应的语音信息,该电子设备的语音助手被唤醒。
[0298]
s408,若语音信息v4和自定义唤醒词w1的语音模板(m11和m12)的声纹匹配分值s1
小于t1((s11(v3|m11)+s12(v3|m12))/2),则语音信息v4不为自定义唤醒词w1对应的语音信息,而电子设备中的每个唤醒词(w0和w1)均进行过判断,因此,该电子设备的语音助手唤醒失败,不再按照图4和图5所示实施例中步骤s308以及之后的步骤那样执行。
[0299]
实际应用中,用户可以设置多个自定义唤醒词。作为示例,用户还可以设置自定义唤醒词w2(记为第二唤醒词)。
[0300]
用户打开电子设备的自定义唤醒词的设置功能,用户输入自定义唤醒词w2的文本信息,用户发出自定义唤醒词w2对应的语音信息v5(可以记为第五语音),电子设备接收到该自定义唤醒词w2对应的语音信息v5之后,将该自定义唤醒词w2对应的语音信息v5生成该自定义唤醒词w2对应的语音模板m21(可以记为第四模板)。当然,实际应用中,电子设备在将该自定义唤醒词w2对应的语音信息v5生成该自定义唤醒词w2对应的语音模板m21之前,也可以先确定语音信息v5转换的文本信息和自定义唤醒词w2匹配。在不匹配的情况下,不再生成语音模板m21。
[0301]
同时,电子设备为该自定义唤醒词w2设置对应的声纹阈值t2=a(t0+t1)/2=a(t0+(s11(v3|m11)+s12(v3|m12))/2)/2。其中,t1为自定义唤醒词w1的声纹阈值t1的当前值。即新设置的自定义唤醒词的声纹阈值为电子设备中当前存储的每个唤醒词的声纹阈值的均值。如前所述,也可以设置声纹阈值t2=a
×
t0,还可以将声纹阈值t2设置为其他较大的定值(例如,第一值)。声纹阈值t2可以记为第二阈值。
[0302]
此时,电子设备中设置的唤醒电子设备的语音助手的唤醒词参照表7。
[0303]
表7电子设备中的唤醒词、该唤醒词对应的语音模板和声纹阈值
[0304][0305]
这样,电子设备就可以支持用户发出初始唤醒词w0对应的语音信息唤醒该电子设备的语音助手,同时也支持自定义唤醒词w1对应的语音信息唤醒该电子设备的语音助手,还支持自定义唤醒词w2对应的语音信息唤醒该电子设备的语音助手。
[0306]
如前所述,由于自定义唤醒词w2的初始阈值t2设置的可能不太合理,例如,该自定义唤醒词w2的声纹阈值t2(a
×
(t0+(s11(v3|m11)+s12(v3|m12))/2)/2)设置不太合理(可能较高),导致通过该自定义唤醒词w2的语音信息唤醒该电子设备的语音助手时失败。所以,在后续还可以对自定义唤醒词w2的声纹阈值t2进行调整,具体可参照后续实施例的描述。
[0307]
当然,实际应用中,若用户自定义了新的唤醒词,该电子设备也可以不再支持被该初始唤醒词w0唤醒该电子设备的语音助手,同时,也不支持被旧的自定义唤醒词w1唤醒该电子设备的语音助手。具体采用何种方案,可以根据实际情况进行设置,本技术实施例对此不做限制。
[0308]
在电子设备中唤醒词的配置为表7所示的情况下,若用户发出语音信息v6以唤醒电子设备的语音助手,电子设备接收到用户发出语音信息v6。电子设备可以首先判断该语音信息v6(可以记为第六语音)是否为初始唤醒词对应的语音信息。其中,判断语音信息v6是否为初始唤醒词w0对应的语音信息的过程可以参照上述实施例中电子设备判断判断语音信息(v2、v3、v4)是否为初始唤醒词w0对应的语音信息的过程。本技术实施例中,可以将所述第六语音和所述初始模板的声纹匹配分值记为第二初始声纹匹配分值。
[0309]
若语音信息v6不为初始唤醒词对应的语音信息,则继续判断语音信息v6是否为自定义唤醒词w1对应的语音信息。其中,判断语音信息v6是否为自定义唤醒词w1对应的语音信息的过程可以参照上述实施例中电子设备判断语音信息(v2、v3、v4)是否为自定义唤醒词w1的过程(例如,步骤s205至步骤s214,或者,步骤s305至步骤s314,或者步骤s305至步骤s318,或者步骤s405至步骤s408)。
[0310]
若语音信息v6也不为自定义唤醒词w1对应的语音信息,由于电子设备中还存在自定义唤醒词w2,因此,不会做出电子设备的语音助手唤醒失败的判断结果,而是继续判断语音信息v6是否为自定义唤醒词w2对应的语音信息。
[0311]
其中,继续判断语音信息v6是否为自定义唤醒w2对应的语音信息的过程,为在上述任一实施例判断结果为语音助手唤醒失败(即判断结果为语音信息v6不为初始唤醒词w0对应的语音信息,也不为自定义唤醒词w1对应的语音信息)的基础上,继续执行的步骤可以参照如图7所示的流程示意图。
[0312]
当然,实际应用中,也可以先根据语音信息v6的文本信息(可以记为第三文本信息)确定语音信息v6属于哪个唤醒词对应的语音信息(语音信息v6的文本信息与哪个唤醒词匹配),然后,直接执行语音信息v6是否可以作为该唤醒词对应的语音唤醒电子设备。例如,当语音信息v6为初始唤醒词对应的语音时,可以执行图2所示的流程示意图。当语音信息v6为自定义唤醒词w1对应的语音时,可以执行图3中步骤s205以及之后的步骤、图4和图5中步骤s305之后的步骤、或者图6中步骤s405之后的步骤。只是在执行过程中,自定义唤醒词的语音模板包括m11、m12和m13共三个,而不是上述实施例中的一个或两个。
[0313]
s501,电子设备计算接收到的语音信息v6和语音模板m21的声纹匹配分值s21(v6|m21)。s21(v6|m21)可以记为第八声纹匹配分值。
[0314]
s502,判断语音信息v6和语音模板m21的声纹匹配分值s21(v6|m21)是否大于或等于声纹阈值t2(a
×
(t0+(s11(v3|m11)+s12(v3|m12))/2)/2)。
[0315]
s503,若s21(v6|m21)大于或等于t2(a
×
(t0+(s11(v3|m11)+s12(v3|m12))/2)/2),则语音信息v6作为自定义唤醒词w2的语音成功唤醒电子设备的语音助手。
[0316]
如前所述,语音信息v6和自定义唤醒词w2的语音模板m21的声纹匹配分值小于t2(a
×
(t0+(s11(v3|m11)+s12(v3|m12))/2)/2),同样需要参照表8所示的对比方式以及后续的步骤。
[0317]
表8判断语音信息v6是否可以作为自定义唤醒词w2对应的语音信息唤醒语音助手
[0318][0319]
s504,若s21(v6|m21)小于t2(a
×
(t0+(s11(v3|m11)+s12(v3|m12))/2)/2),则计算语音信息v6和当前自定义唤醒词w2的历史唤醒词的语音模板的声纹匹配分值。
[0320]
其中,当前自定义唤醒词w2的历史唤醒词包括w0和w1,相应的,当前自定义唤醒词w2的历史唤醒词的历史语音模板为m0、m11、m12、m13。
[0321]
其中,m0、m11、m12、m13仅作为当前过程中自定义唤醒词w2的第三先验信息的一个示例。实际应用中,第三先验信息可以所述电子设备中存储的至少一个语音模板,然而,第三先验信息不包括m21。
[0322]
所以,需要计算语音信息v6和每个历史语音模板的声纹匹配分值(可以记为第九声纹匹配分值):
[0323]
语音信息v6和初始模板m0的声纹匹配分值b01(v6|m0),该声纹匹配分值记为第九一声纹匹配分值;
[0324]
语音信息v6和自定义唤醒词w1的语音模板m11的声纹匹配分值b02(v6|m11),该声纹匹配分值记为第九二声纹匹配分值;
[0325]
语音信息v6和自定义唤醒词w1的语音模板m12的声纹匹配分值b03(v6|m12),该声纹匹配分值记为第九三声纹匹配分值;
[0326]
语音信息v6和自定义唤醒词w1的语音模板m13的声纹匹配分值b04(v6|m13),该声纹匹配分值记为第九四声纹匹配分值。
[0327]
同时,还需要执行步骤s504’,计算自定义唤醒词w2的语音模板m21和历史语音模板的声纹匹配分值(可以记为第十声纹匹配分值):
[0328]
语音模板m21和初始模板m0的声纹匹配分值a11(m21|m0),该声纹匹配分值记为第十一声纹匹配分值;
[0329]
语音模板m21和自定义唤醒词w1的语音模板m11的声纹匹配分值a12(m21|m11),该声纹匹配分值记为第十二声纹匹配分值;
[0330]
语音模板m21和自定义唤醒词w1的语音模板m12的声纹匹配分值a13(m21|m12),该声纹匹配分值记为第十三声纹匹配分值;
[0331]
语音模板m21和自定义唤醒词w1的语音模板m13的声纹匹配分值a14(m21|m13),该声纹匹配分值记为第十四声纹匹配分值。
[0332]
需要说明,实际应用中,也可以在生成语音模板m21时,执行步骤s504’,然后将计算的声纹匹配分值存储在电子设备中,在执行步骤s505之前,从电子设备中获取存储的声纹匹配分值。
[0333]
步骤s505,计算a1j和b0j之间的差值的绝对值(作为基于同一第三先验信息的所述第九声纹匹配分值和所述第十声纹匹配分值的第三差异值的一个示例)。
[0334]
如前所述,j表示历史语音模板中的第j个语音模板。当前存在4个历史语音模板,
因此,需要计算:
[0335]
a11(m21|m0)和b01(v6|m0)之间的差值的绝对值|a11-b01|,作为第三一差异值的一个示例;
[0336]
a12(m21|m11)和b02(v6|m11)之间的差值的绝对值|a12-b02|,作为第三二差异值的一个示例;
[0337]
a13(m21|m12)和b03(v6|m12)之间的差值的绝对值|a13-b03|,作为第三三差异值的一个示例;
[0338]
a14(m21|m13)和b04(v6|m13)之间的差值的绝对值|a14-b04|,作为第三四差异值的一个示例;
[0339]
如前所述,由于上述差值的绝对值为电子设备当前接收到的语音信息v6和自定义唤醒词w2的语音模板m21相对于同一历史语音模板的声纹匹配分值,因此,若上述差值的绝对值较小,说明语音信息v6与语音模板m21比较相似。
[0340]
鉴于此,可以设置电子设备的语音助手唤醒的条件包括:上述差值的绝对值中小于e的比例大于或等于预设比例。相应的,语音助手唤醒失败的条件为上述差值的绝对值中小于e的比例小于预设比例。
[0341]
步骤s506,判断上述计算的差值的绝对值小于e的比例是否大于预设比例。
[0342]
s507,若计算的差值的绝对值小于e的比例小于或等于预设比例,则电子设备的语音助手唤醒失败。
[0343]
当然,在实际应用中,为了降低误唤醒的情况发生,还可以设置语音助手唤醒的条件还包括:语音信息v6的信噪比大于信噪比阈值。
[0344]
即在确定上述差值的绝对值中小于e的比例大于或等于预设比例之后,继续判断语音信息v5的信噪比是否大于信噪比阈值。
[0345]
s508,若计算的差值的绝对值小于e的比例大于预设比例,则计算语音信息v6的信噪比。
[0346]
s509,判断语音信息v6的信噪比是否大于信噪比阈值。
[0347]
s510,若语音信息v6的信噪比大于信噪比阈值,则电子设备的语音助手被唤醒。
[0348]
s511,若语音信息v6的信噪比不大于信噪比阈值,则电子设备的语音助手唤醒失败。
[0349]
s512,在电子设备的语音助手被唤醒的情况下,判断自定义唤醒词w2的语音模板的数量是否小于p。
[0350]
s513,若自定义唤醒词w2的语音模板的数量小于p,则将语音信息v6生成自定义唤醒词w2的语音模板m22(记为第五模板);设置自定义唤醒词w2的声纹阈值t2=s21(v6|m21)。
[0351]
s514,若自定义唤醒词w2的语音模板的数量不小于p,则不再将语音信息v6生成自定义唤醒词w2的语音模板m22;而是设置自定义唤醒词w2的声纹阈值t2=s21(v6|m21)。
[0352]
在步骤s513之后,电子设备中设置的唤醒电子设备的语音助手的唤醒词参照表9。
[0353]
表9电子设备中的唤醒词、该唤醒词对应的语音模板和声纹阈值
[0354][0355]
通过图7所示实施例可以将自定义唤醒词w2的声纹阈值设置的更为合理。在后续用户通过自定义唤醒词w2对应的语音信息唤醒电子设备的语音助手时,将降低唤醒失败的情况。当然,若后续用户通过自定义唤醒词w2对应的语音信息唤醒电子设备的语音助手时,还可以继续调整自定义唤醒词w2的声纹阈值t2具体的值,具体可参照后续实施例的描述。
[0356]
在电子设备中唤醒词的配置为表9所示的情况下,若用户发出语音信息v7以唤醒电子设备的语音助手,电子设备接收到用户发出语音信息v7(记为第七语音信息)。电子设备可以首先判断该语音信息v7是否为初始唤醒词对应的语音信息。若语音信息v7不为初始唤醒词w0对应的语音信息,则继续判断语音信息v7是否为自定义唤醒词w1对应的语音信息。若语音信息v7也不为自定义唤醒词w1对应的语音信息(具体判断过程可以参照上述任一实施例),由于电子设备中还存在自定义唤醒词w2,因此,继续判断语音信息v7是否为自定义唤醒词w2对应的语音信息。
[0357]
或者,电子设备首先根据语音信息v7的文本信息判断语音信息v7属于哪个唤醒词对应的语音,以判断结果为语音信息v7属于自定义唤醒词w2对应的语音为例。
[0358]
其中,继续判断语音信息v7是否可以作为自定义唤醒w2对应的语音唤醒电子设备的语音助手的过程,可以参照如图8所示的流程示意图。
[0359]
s601,电子设备计算接收到的语音信息v7和自定义唤醒词w2的每个语音模板(m21和m22)的声纹匹配分值s21(v7|m21)和s22(v7|m22),计算s2=(s21(v7|m21)+s22(v7|m22))/2,s2表示接收到的语音信息v7和自定义唤醒词w2的语音模板的声纹匹配分值。本技术实施例中,第二唤醒词的比对模板为第二唤醒词中的每个语音模板。当然,实际应用中,也可以是第二唤醒词的语音模板中的一个或多个。
[0360]
s602,判断语音信息v7和自定义唤醒词w2的语音模板的声纹匹配分值s2是否大于或等于声纹阈值t2(s21(v6|m21))。s603,若s2大于或等于t2(s21(v6|m21)),则唤醒电子设备的语音助手。
[0361]
若s2小于t2(s21(v6|m21)),则参照表10所述的对比方式以后续的步骤。
[0362]
表10判断语音信息v7是否属于自定义唤醒词w2对应的语音信息
[0363][0364]
s604,若s2小于t2(s21(v6|m21)),则计算语音信息v7和当前自定义唤醒词w2的历史唤醒词的语音模板的声纹匹配分值。
[0365]
其中,当前自定义唤醒词w2的历史唤醒词包括w0和w1,相应的,当前自定义唤醒词w2的历史唤醒词的历史语音模板为m0、m11、m12、m13。
[0366]
本技术实施例中,将m0、m11、m12、m13作为第二唤醒词的第四先验信息。实际应用中,第四先验信息包括电子设备中存储的至少一个模板,且第四先验信息不包括所述第二唤醒词的比对模板。
[0367]
所以,需要计算语音信息v7和每个历史语音模板的声纹匹配分值(第十六声纹匹配分值):
[0368]
语音信息v7和初始模板m0的声纹匹配分值b01(v7|m0);
[0369]
语音信息v7和自定义唤醒词w1的语音模板m11的声纹匹配分值b02(v7|m11);
[0370]
语音信息v7和自定义唤醒词w1的语音模板m12的声纹匹配分值b03(v7|m12);
[0371]
语音信息v7和自定义唤醒词w1的语音模板m13的声纹匹配分值b04(v7|m13)。
[0372]
同时,还需要执行步骤s604’,获取之前计算的自定义唤醒词w2的语音模板m21和历史语音模板的声纹匹配分值,以及计算自定义唤醒词w2的语音模板m21和历史语音模板的声纹匹配分值。上述两类声纹匹配分值统称为第十七声纹匹配分值。
[0373]
其中,自定义唤醒词w2的语音模板m21和历史语音模板的声纹匹配分值:
[0374]
语音模板m21和初始模板m0的声纹匹配分值a11(m21|m0);
[0375]
语音模板m21和自定义唤醒词w1的语音模板m11的声纹匹配分值a12(m21|m11);
[0376]
语音模板m21和自定义唤醒词w1的语音模板m12的声纹匹配分值a13(m21|m12);
[0377]
语音模板m21和自定义唤醒词w1的语音模板m13的声纹匹配分值a14(m21|m13)。
[0378]
自定义唤醒词w2的语音模板m22和历史语音模板的声纹匹配分值:
[0379]
语音模板m22和初始模板m0的声纹匹配分值a21(m22|m0);
[0380]
语音模板m22和自定义唤醒词w1的语音模板m11的声纹匹配分值a22(m22|m11);
[0381]
语音模板m22和自定义唤醒词w1的语音模板m12的声纹匹配分值a23(m22|m12);
[0382]
语音模板m22和自定义唤醒词w1的语音模板m13的声纹匹配分值a24(m22|m13)。
[0383]
需要说明,实际应用中,也可以在生成语音模板m22时,计算自定义唤醒词w2的语音模板m22和历史语音模板的声纹匹配分值,然后将计算的声纹匹配分值存储在电子设备中,在执行步骤s605之前,从电子设备中获取存储的声纹匹配分值。
[0384]
步骤s605,计算aij和b0j之间的差值的绝对值(作为基于同一第四先验信息的第十六声纹匹配分值和第十七声纹匹配分值的第四差异值的一个示例)。
[0385]
其中,i表示当前自定义唤醒词w2的第i个模板,自定义唤醒词w2当前具有2个语音模板(m21和m22),因此,i为从1到2的自然数。j表示历史语音模板中的第j个语音模板。当前自定义唤醒词w2的历史语音模板为4个(m0、m11、m12、m13)。因此,j为从1到4的自然数。
[0386]
因此,可以得到8个差值的绝对值:
[0387]
a11(m21|m0)和b01(v7|m0)之间的差值的绝对值|a11-b01|;
[0388]
a12(m21|m11)和b02(v7|m11)之间的差值的绝对值|a12-b02|;
[0389]
a13(m21|m12)和b03(v7|m12)之间的差值的绝对值|a13-b03|;
[0390]
a14(m21|m13)和b04(v7|m13)之间的差值的绝对值|a14-b04|;
[0391]
a21(m22|m0)和b01(v7|m0)之间的差值的绝对值|a21-b01|;
[0392]
a22(m22|m11)和b02(v7|m11)之间的差值的绝对值|a22-b02|;
[0393]
a23(m22|m12)和b03(v7|m12)之间的差值的绝对值|a23-b03|;
[0394]
a24(m22|m13)和b04(v7|m13)之间的差值的绝对值|a24-b04|;
[0395]
通过上述示例可以理解,aij表示与所述第二唤醒词的第i个比对模板和第j个第四先验信息对应的第十七声纹匹配分值,b0j表示与第j个第四先验信息对应的第十六声纹匹配分值,i为从1到n的自然数,n为所述第二唤醒词的比对模板的数量,j=为从1到m的自然数,m为第四先验信息的数量。
[0396]
s606,判断上述计算的差值的绝对值小于e的比例是否大于预设比例。
[0397]
s607,若计算的差值的绝对值小于e的比例小于或等于预设比例,则电子设备的语音助手唤醒失败。
[0398]
s608,若计算的差值的绝对值小于e的比例大于预设比例,则计算语音信息v7的信噪比。
[0399]
s609,判断语音信息v7的信噪比是否大于信噪比阈值。
[0400]
s610,若语音信息v7的信噪比大于信噪比阈值,则电子设备的语音助手被唤醒。
[0401]
s611,若语音信息v7的信噪比不大于信噪比阈值,则电子设备的语音助手唤醒失败。
[0402]
s612,在电子设备的语音助手被唤醒的情况下,判断自定义唤醒词w2的语音模板的数量是否小于p。
[0403]
s513,若自定义唤醒词w2的语音模板的数量小于p,则将语音信息v7生成自定义唤醒词w2的语音模板m23(可以记为第六模板);设置自定义唤醒词w2的声纹阈值t2=(s21(v7|m21)+s22(v7|m22))/2。
[0404]
s514,若自定义唤醒词w2的语音模板的数量不小于p,则不再将语音信息v7生成自定义唤醒词w2的语音模板m23;而是设置自定义唤醒词w2的声纹阈值t2=(s21(v7|m21)+s22(v7|m22))/2。
[0405]
在步骤s613之后,电子设备中设置的唤醒电子设备的语音助手的唤醒词参照表11。
[0406]
表11电子设备中的唤醒词、该唤醒词对应的语音模板和声纹阈值
[0407][0408]
上述实施例中,若按照唤醒词的顺序执行唤醒流程,则在电子设备接收到的语音信息之后,可以按照初始唤醒词、自定义唤醒词注册的顺序,依次判断接收到的语音信息是否为初始唤醒词、自定义唤醒词w1、自定义唤醒词w2
……
对应的语音信息。当然,若确定语音信息为某个唤醒词对应的语音信息的情况下,电子设备的语音助手被唤醒,将不再继续判断该语音信息是否为后面注册的自定义唤醒词对应的语音信息。实际应用中,上述判断的顺序可以进行调整,例如,可以根据历史一段时间内唤醒电子设备的语音助手的语音信息所属的唤醒词的频次从高到低进行排序,按照该顺序依次判断当前接收到的语音信息是否可以唤醒该电子设备的语音助手。
[0409]
本技术中,第一、第二
……
等的命名方式用于区分不同实施例中的同一类型的信息,或者同一实施例中同一类型的信息。虽然同一类型的信息的编号不同,但是并不表示同一类型的信息的内容(或值)必须不同。在实际应用中,同一类型的信息虽然具有的编号不同,然而,内容(或值)可能相同。
[0410]
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
[0411]
本技术实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时可实现上述各个方法实施例中的步骤。
[0412]
本技术实施例还提供了一种计算机程序产品,当计算机程序产品在第一设备上运行时,使得第一设备可实现上述各个方法实施例中的步骤。
[0413]
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质至少可以包括:能够将计算机程序代码携带到第一设备的任何实体或装置、记录介质、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质。例如u盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
[0414]
本技术实施例还提供了一种芯片系统,芯片系统包括处理器,处理器与存储器耦
合,处理器执行存储器中存储的计算机程序,以实现本技术任一方法实施例的步骤。芯片系统可以为单个芯片,或者多个芯片组成的芯片模组。
[0415]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0416]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0417]
以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1