语音命令词识别方法、装置、设备和介质与流程

文档序号:35663193发布日期:2023-10-06 18:12阅读:100来源:国知局

本技术涉及到语音识别,特别涉及到一种语音命令词识别方法、装置、设备和介质。


背景技术:

1、命令词识别属于语音识别,广泛应用于智能家居领域,比如智能语音音箱、智能语音耳机、智能语音灯、智能语音风扇等。嵌入式设备由于成本考虑,相比手机等智能设备,其算力低、内存和flash小。一般的命令词识别方法是对所有命令词进行打分,然后选取出命令词列表中得分最高的且满足设定阈值的命令词作为语音命令词的识别结果。比如,假设设计的语音产品是控制电风扇,那么,设计如下命令词:打开风扇、关闭风扇、一档风、二档风以及三档风,那么这里对所有命令词进行打分指的是需要分别计算打开风扇、关闭风扇、一档风、二档风以及三档风这些命令词的得分。然后,选取出得分最高的且超过设定阈值的,作为命令词识别的结果。然而,此方式随着命令词个数的增多,解码时间也会线性增加,这对低资源设备而言,增加了语音识别的处理时间,使得识别可能无法做到实时处理。即现有命令词识别方法导致低资源设备支持识别的语音命令词的数量不高。


技术实现思路

1、本技术的主要目的为提供一种语音命令词识别方法、装置、设备和介质,旨在解决现有命令词识别方法导致低资源设备支持识别的语音命令词的数量不高的技术问题。

2、为了实现上述申请目的,本技术第一方面提出一种语音命令词识别方法,所述方法包括:

3、获取待识别的语音信号;

4、对所述待识别的语音信号进行特征提取,生成特征向量;

5、将所述特征向量特征输入声学模型,得到音素概率矩阵;

6、获取预先设定的第一级别命令词列表;其中,所述第一级别命令词列表中包括多个第一级别命令词;

7、根据所述音素概率矩阵计算各个第一级别命令词的得分;

8、根据各个第一级别命令词的得分确定得分最高的第一级别命令词;

9、判断所述得分最高的第一级别命令词是否大于预设的第一阈值;

10、若否,重新获取语音信号进行识别;

11、若是,判断所述得分最高的第一级别命令词是否有对应的第二级别命令词;其中,所述第二级别命令词是所述第一级别命令词的具体命令词;

12、若所述得分最高的第一级别命令词没有对应的第二级别命令词,则将所述得分最高的第一级别命令词作为语音命令词识别结果;

13、若所述得分最高的第一级别命令词有对应的第二级别命令词,则获取所述得分最高的第一级别命令词对应的各个第二级别命令词,作为待计算的第二级别命令词;

14、根据所述音素概率矩阵计算各个待计算的第二级别命令词的得分;

15、根据各个第二级别命令词的得分确定得分最高的第二级别命令词;

16、判断得分最高的第二级别命令词是否大于设定的第二阈值;

17、若是,则将得分最高的第二级别命令词作为语音命令词识别结果;

18、若否,则重新获取语音信号进行识别。

19、进一步的,所述第一级别命令词的得分根据如下步骤计算得到:

20、在所述第一级别命令词每个字的中间以及所述第一级别命令词的前面和后面插入blank符号,得到变更后的第一级别命令词;

21、根据字典中的字与音素的关系,将所述变更后的第一级别命令词转换为音素序列;

22、根据所述音素概率矩阵,采用前向算法计算所述音素序列对应的所有路径的概率和,得到总概率值;

23、按照预先设定的规则,将所述总概率值映射为得分,将所述得分作为所述第一级别命令词的得分。

24、进一步的,所述根据所述音素概率矩阵,采用前向算法计算所述音素序列对应的所有路径的概率和,得到总概率值的步骤包括:

25、根据所述音素概率矩阵,采用前向算法进行解码,当解码走到通配符号时,将所述通配符的概率设定为1,继续前向算法直至得到所述音素序列对应的所有路径的概率和,得到总概率值。

26、进一步的,所述按照预先设定的规则,将所述总概率值映射为得分,将所述得分作为所述第一级别命令词的得分的步骤之前,还包括:

27、对所述总概率值进行归一化,得到归一化后的总概率值。

28、进一步的,所述对所述总概率值进行归一化,得到归一化后的总概率值的步骤包括:

29、根据公式 normlen =a-b-c计算归一化长度;其中,normlen 表示归一化长度,a表示解码的时间区间长度,b表示该时间区间长度范围内blank概率的累加值,c表示通配符的长度

30、根据公式p总=exp(log p(y|x)/normlen)计算归一化后的总概率值;其中,x表示待识别的语音信号, y表示音素序列,p(y|x)表示所述总概率值。

31、进一步的,所述第二级别的语音命令词得分根据如下步骤计算得到:

32、在所述第二级别命令词每个字的中间以及所述第二级别命令词的前面和后面插入blank符号,得到变更后的第二级别命令词;

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、本技术实施例通过将设定的命令词预先划分为不同的级别,划分为第一级别命令词和第二级别命令词,且令第一级别命令词为先计算的命令词,第二级别命令词为后计算的命令词,还令第二级别命令词是第一级别命令词的具体命令词,这样,在确定命令词识别结果的过程中,先从第一级别命令词列表中确定得分最高的第一级别命令词,然后计算得分最高的第一级别命令词对应的所有第二级别语音命令词的得分,将得分最高且满足设定阈值的第二级别语音命令词作为语音识别结果,由于不需要计算所有命令词的得分便可得到语音识别结果,因此,对于同一数量级的命令词,本技术相比于现有命令词识别方法对低资源设备更加很好,解码时间更少,解码速度更快,命令词识别速度更快,且对同一配置的低资源设备,能够支持识别更多的语音命令词。

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