防止语音命令误识别的方法和装置与流程

文档序号:11136024阅读:1140来源:国知局
防止语音命令误识别的方法和装置与制造工艺

本发明实施例涉及数据处理技术,尤其涉及一种防止语音命令误识别的方法和装置。



背景技术:

随着科学技术的不断发展,以及人们对生活品质不断的更高追求,越来越多的设备具有语音控制功能。

汽车、家用电器以及手机中大多数都会安装语音控制功能,这些设备同时也可以播放歌曲、相声等音频文件,在这些设备在播放音频文件时,有可能会误开启语音控制功能,使得设备做出错误的动作。现有技术中通过提高语音识别算法的复杂度,优化语音识别算法,减小误触发的概率。

现有技术的缺陷在于:提高了CPU的计算负担导致设备功耗上升,语音识别算法移植困难,且无法从根本上避免误触发的可能性。



技术实现要素:

有鉴于此,本发明实施例提供了一种防止语音命令误识别的方法和装置,以优化现有的减小语音误触发概率技术,实现了无需提高语音识别算法的复杂度,也可以可靠的减少由于歌曲歌词导致的语音误识别。

在第一方面,本发明实施例提供了一种防止语音命令误识别的方法,包括:

获取与待播放歌曲匹配的歌词文件;

查找所述歌词文件中的易误触发词组,其中,所述易误触发词组与预设语音控制命令的语言相同或相近;

根据所述歌词文件,计算所述易误触发词组播放的第一起始时间和第一结束时间;

播放所述待播放歌曲,在到达所述第一起始时间时关闭语音识别模块,在到达所述第一结束时间时启动所述语音识别模块。

在上述方法中,优选的是,所述播放所述待播放歌曲,在到达所述第一起始时间时关闭语音识别模块,在到达所述第一结束时间时启动所述语音识别模块之后,还包括:

保存所述易误触发词组和对应的所述第一起始时间和所述第一结束时间;

所述根据所述歌词文件,计算所述易误触发词组播放的第一起始时间和第一结束时间之前,还包括:

确认所述歌词文件不存在已保存的所述易误触发词组;

所述播放所述待播放歌曲,在到达所述第一起始时间时关闭语音识别模块,在到达所述第一结束时间时启动所述语音识别模块之前,还包括:

若存在已保存的所述易误触发词组,读取所述待播放歌曲中所述易误触发词组对应的所述第一起始时间和所述第一结束时间。

在上述方法中,优选的是,所述歌词文件为中文歌词文件;

所述预设语音控制命令为汉语语音控制命令;

所述查找所述歌词文件中的易误触发词组包括:

遍历所述中文歌词文件中所有中文歌词的发音属性,其中,所述发音属性至少包括音调、声母和韵母;

如果所述所有中文歌词中的一个汉字或一个汉字词组中的各个汉字均与所述汉语语音控制命令中对应位置的汉字的所述发音属性相同,则确认该汉字或汉字词组与所述汉语语音控制命令的语言相同;

如果所述所有中文歌词中的一个汉字或一个汉字词组中的各个汉字均与所述汉语语音控制命令中对应位置的汉字的所述发音属性中至少有一种不同且至少有两种相同,则确认该汉字或汉字词组与所述汉语语音控制命令的语言相近;

将所述一个汉字或所述一个汉字词组标记为易误触发词组。

在上述方法中,优选的是,所述根据所述歌词文件,计算所述易误触发词组播放的第一起始时间和第一结束时间包括:

根据所述歌词文件,获取所述易误触发词组所属的歌词语句播放的第二起始时间和第二结束时间;

根据所述第二起始时间、所述第二结束时间、所述歌词语句包含歌词单元的个数、所述易误触发词组包含歌词单元的个数和所述易误触发词组在所述歌词语句中的位置,计算所述易误触发词组播放的所述第一起始时间和所述第一结束时间。

在上述方法中,优选的是,所述根据所述歌词文件,计算所述易误触发词组播放的第一起始时间和第一结束时间包括:

根据所述歌词文件,获取所述易误触发词组所属的歌词语句播放的所述第二起始时间和所述第二结束时间;

获取所述第一起始时间的第一补偿时间和所述第一结束时间的第二补偿时间;

根据所述第二起始时间、所述第二结束时间、所述第一补偿时间、所述第二补偿时间、所述歌词语句包含歌词单元的个数、所述易误触发词组包含歌词单元的个数和所述易误触发词组在所述歌词语句中的位置,计算所述易误触发词组播放的所述第一起始时间和所述第一结束时间。

在上述方法中,优选的是,还包括:

所述待播放歌曲播放结束后,统计引起和未引起所述预设语音控制命令误识别的所述易误触发词组;

修正所述易误触发词组对应的所述第一补偿时间和所述第二补偿时间,重新计算所述易误触发词组播放的所述第一起始时间和所述第一结束时间。

在第二方面,本发明实施例提供了一种防止语音命令误识别的装置,包括:

歌词文件获取模块,用于获取与待播放歌曲匹配的歌词文件;

易误触发词组查找模块,用于查找所述歌词文件中的易误触发词组,其中,所述易误触发词组与预设语音控制命令的语言相同或相近;

播放时间计算模块,用于根据所述歌词文件,计算所述易误触发词组播放的第一起始时间和第一结束时间;

语音识别模块控制模块,用于播放所述待播放歌曲,在到达所述第一起始时间时关闭语音识别模块,在到达所述第一结束时间时启动所述语音识别模块。

在上述装置中,优选的是,所述语音识别模块控制模块之后,还包括:

播放时间保存模块,用于保存所述易误触发词组和对应的所述第一起始时间和所述第一结束时间;

所述播放时间计算模块之前,还包括:

易误触发词组确认模块,用于确认所述歌词文件不存在已保存的所述易误触发词组;

所述语音识别模块控制模块之前,还包括:

播放时间读取模块,用于若存在已保存的所述易误触发词组,读取所述待播放歌曲中所述易误触发词组对应的所述第一起始时间和所述第一结束时间。

在上述装置中,优选的是,所述歌词文件为中文歌词文件;

所述预设语音控制命令为汉语语音控制命令;

所述易误触发词组查找模块包括:

歌词遍历单元,用于遍历所述中文歌词文件中所有中文歌词的发音属性,其中,所述发音属性至少包括音调、声母和韵母;

相同词组确认单元,用于如果所述所有中文歌词中的一个汉字或一个汉字词组中的各个汉字均与所述汉语语音控制命令中对应位置的汉字的所述发音属性相同,则确认该汉字或汉字词组与所述汉语语音控制命令的语言相同;

相近词组确认单元,用于如果所述所有中文歌词中的一个汉字或一个汉字词组中的各个汉字均与所述汉语语音控制命令中对应位置的汉字的所述发音属性中至少有一种不同且至少有两种相同,则确认该汉字或汉字词组与所述汉语语音控制命令的语言相近;

易误触发词组标记单元,用于将所述一个汉字或所述一个汉字词组标记为易误触发词组。

在上述装置中,优选的是,所述播放时间计算模块包括:

第二播放时间确定单元,用于根据所述歌词文件,获取所述易误触发词组所属的歌词语句播放的第二起始时间和第二结束时间;

第一播放时间计算单元,用于根据所述第二起始时间、所述第二结束时间、所述歌词语句包含歌词单元的个数、所述易误触发词组包含歌词单元的个数和所述易误触发词组在所述歌词语句中的位置,计算所述易误触发词组播放的所述第一起始时间和所述第一结束时间。

在上述装置中,优选的是,所述播放时间计算模块包括:

第二播放时间确定单元,用于根据所述歌词文件,获取所述易误触发词组所属的歌词语句播放的所述第二起始时间和所述第二结束时间;

补偿时间获取单元,用于获取所述第一起始时间的第一补偿时间和所述第一结束时间的第二补偿时间;

第二播放时间计算单元,用于根据所述第二起始时间、所述第二结束时间、所述第一补偿时间、所述第二补偿时间、所述歌词语句包含歌词单元的个数、所述易误触发词组包含歌词单元的个数和所述易误触发词组在所述歌词语句中的位置,计算所述易误触发词组播放的所述第一起始时间和所述第一结束时间。

在上述装置中,优选的是,还包括:

误识别统计模块,用于所述待播放歌曲播放结束后,统计引起和未引起所述预设语音控制命令误识别的所述易误触发词组;

补偿时间修正模块,用于修正所述易误触发词组对应的所述第一补偿时间和所述第二补偿时间,重新计算所述易误触发词组播放的所述第一起始时间和所述第一结束时间。

本发明实施例提供的防止语音命令误识别的方法和装置,通过先获取与待播放歌曲匹配的歌词文件,然后查找歌词文件中的易误触发词组,计算易误触发词组播放的第一起始时间和第一结束时间,最后播放待播放歌曲,在到达第一起始时间时关闭语音识别模块,在到达第一结束时间时启动语音识别模块,克服了现有技术中为了减小语音误触发的概率,进而增加语音识别算法的复杂度,导致处理器计算负担增加、设备功耗上升以及语音识别算法移植困难的技术缺陷,实现了无需提高语音识别算法的复杂度,也可以可靠地减少由于播放歌曲导致的语音误识别。

附图说明

图1是本发明实施例一提供的一种防止语音误识别的方法的流程图;

图2是本发明实施例二提供的一种防止语音误识别的方法的流程图;

图3是本发明实施例三提供的一种防止语音误识别的方法的流程图;

图4是本发明实施例四提供的一种防止语音误识别的装置的结构图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。

另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。

实施例一

图1为本发明实施例一提供的一种防止语音命令误识别的方法的流程图,本实施例的方法可以由防止语音误识别装置来执行,该装置可通过硬件和/或软件的方式实现,并一般可集成于具有语音命令控制功能且可以播放音频文件的设备中,例如:手机、汽车等。本实施例的方法具体包括:

步骤110、获取与待播放歌曲匹配的歌词文件。

一般来说,在现有技术中,同时具有语音命令控制功能和音频文件播放功能的设备,在获取到播放音频文件的命令时,都是直接进行播放,而不会在播放前,进行减小由于播放歌曲导致的语音命令误识别的操作。

在本实施例中,在播放待播放歌曲前,会先获取与待播放歌曲匹配的歌词文件。其中,获取的方式具体可以是从本地存储的歌词文件中获取,也可以通过互联网络从存储有所需歌词文件的服务器中获取,本实施例对此不进行限制。

其中,歌词文件具体是指包含待播放歌曲的所有歌词以及每句歌词的起始时间等信息的文件。典型的可以是:后缀名为.LRC、.SNC以及.KRC等的文件。

另外,本方案中所说的歌词并不限定于歌手演唱的歌曲的歌词,也包括其它音频文件中可能导致误识别的内容,例如朗诵、演讲等以声音播放为显示方式,同时朗诵稿或演讲稿可以以歌词文件的方式体现的多媒体内容。

步骤120、查找歌词文件中的易误触发词组,其中,易误触发词组与预设语音控制命令的语言相同或相近。

在本实施例中,易误触发词组具体是指可能会引起预设语音控制命令误触发的词组,也就是发音与预设语音控制命令的语言的发音相同或相近的词组。其中,预设语音控制命令具体是指预先存储的,可以用来实施语音控制的语言。

由于歌词中可能会存在易误触发词组,导致歌曲在播放的过程中,引起语音控制命令误识别,做出错误的操作,因此,在本实施例中,获取待播放歌曲的歌词文件后,首先会查找该歌词文件中的歌词是否包含有易误触发词组。

其中,查找易误触发词组的具体方式可以是遍历歌词文件中的所有歌词查找与预设的语音控制命令中每个汉字的音调、声母以及韵母均相同的词组做为易误触发词组,也可以是遍历歌词文件中的所有歌词查找与预设的语音控制命令中每个英文单词的音标均相同的词组做为易误触发词组等方式。其中,遍历歌词文件中的所有歌词查找易误触发词组的方式可以是在遍历一遍所有歌词的同时只针对一个预设语音控制命令查找与之对应的易误触发词组,也就是说,有多少个预设的语音控制命令就要遍历多少遍所有歌词,也可以是只遍历一遍所有歌词,在遍历的同时与所有的预设语音控制命令相比较查找易误触发词组,也就是说,每遍历到歌词中的任意一个字或词时都要与所有的预设语音控制命令进行对比。

另外需要说明的是,上面仅对歌词为汉语和英语的两种情况进行了说明,当歌词为汉语和英语以外的语言时,本实施例的方法同样适用,因为无论是哪一种语言,都对应有本语言特有的音素集,而本语言的所有单个字或单个词的发音都是由本语言特有的一个或多个音素构成,在查找易误触发词组时,就可以使用本语言特有的音素作为比对的基础,当某个字或某个词组与预设语音控制命令中每个字或每个词的音素都相同或相近时,则判定该字或该词组为易误触发词组。

步骤130、根据歌词文件,计算易误触发词组播放的第一起始时间和第一结束时间。

在本实施例中,第一起始时间具体是指易误触发词组开始播放的时间,第一结束时间具体是指易误触发词组结束播放的时间,其中,第一起始时间和第一结束时间都是相对于待播放歌曲的起始播放时间计算出来的具体时间,待播放歌曲的起始播放时间可以记录为0分0秒0毫秒或0分0秒等时间格式。

在本实施例中,由于在查找易误触发词组时,可以同时获知该易误触发词组在歌词中的具体位置(例如:在第五句歌词的第3至第6个字),并且根据歌词文件可以获知每句歌词的起始播放时间等时间信息,因此,根据易误触发词组在歌词中的具体位置以及每句歌词的起始播放时间等时间信息可以较为容易地计算出易误触发词组播放的第一起始时间和第一结束时间。

进一步地,由于不能保证每一句歌词都是匀速播放的,且歌词文件中一般不会详细记录每一个字或词的起始播放时间,一般只记录每句歌词的起始播放时间,所以,在计算第一起始时间和第一结束时间时,如果默认每一句歌词中的所有字或词都是匀速播放的,计算结果可能会跟易误触发词组实际的起始播放时间和结束播放时间有一定误差,因此,可以对计算得到的第一起始时间和第一结束时间略作调整,使他们更加接近易误触发词组实际的起始播放时间和结束播放时间。其中,调整的方式可以是设置补偿时间,将计算得到的第一起始时间减去该补偿时间,第一结束时间加上该补偿时间,第一起始时间和第一结束时间的补偿时间可以相同,也可以不相同,本实施例对此不进行限制。

步骤140、播放待播放歌曲,在到达第一起始时间时关闭语音识别模块,在到达第一结束时间时启动语音识别模块。

在本实施例中,在完成计算易误触发词组播放的第一起始时间和第一结束时间后,开始播放待播放歌曲,在播放该歌曲时,当到达第一起始时间时,就会关闭语音识别模块,以防止易误触发词组的播放引起语音误识别,导致做出错误的操作,当到达第一结束时间时就会开启语音识别模块,以便实时进行语音控制命令的识别。

本发明实施例提供的防止语音命令误识别的方法,通过先获取与待播放歌曲匹配的歌词文件,然后查找歌词文件中的易误触发词组,计算易误触发词组播放的第一起始时间和第一结束时间,最后播放待播放歌曲,在到达第一起始时间时关闭语音识别模块,在到达第一结束时间时启动语音识别模块,克服了现有技术中为了减小语音误触发的概率,进而增加语音识别算法的复杂度,导致处理器计算负担增加、设备功耗上升以及语音识别算法移植困难的技术缺陷,实现了无需提高语音识别算法的复杂度,也可以可靠地减少由于播放歌曲导致的语音误识别。

实施例二

图2是本发明实施例二提供的一种防止语音命令误识别的方法的流程图。本实施例以上述实施例为基础进行优化,在本实施例中,将歌词文件优化为中文歌词文件;

将预设语音控制命令优化为汉语语音控制命令;

相应的,将查找歌词文件中的易误触发词组优化为:遍历中文歌词文件中所有中文歌词的发音属性,其中,发音属性至少包括音调、声母和韵母;如果所有中文歌词中的一个汉字或一个汉字词组中的各个汉字均与汉语语音控制命令中对应位置的汉字的发音属性相同,则确认该汉字或汉字词组与汉语语音控制命令的语言相同;如果所有中文歌词中的一个汉字或一个汉字词组中的各个汉字均与汉语语音控制命令中对应位置的汉字的发音属性中至少有一种不同且至少有两种相同,则确认该汉字或汉字词组与汉语语音控制命令的语言相近;将一个汉字或一个汉字词组标记为易误触发词组。

进一步地,将根据歌词文件,计算易误触发词组播放的第一起始时间和第一结束时间优化为:根据歌词文件,获取易误触发词组所属的歌词语句播放的第二起始时间和第二结束时间;根据第二起始时间、第二结束时间、歌词语句包含歌词单元的个数、易误触发词组包含歌词单元的个数和易误触发词组在歌词语句中的位置,计算易误触发词组播放的第一起始时间和第一结束时间。

进一步地,在播放待播放歌曲,在到达第一起始时间时关闭语音识别模块,在到达第一结束时间时启动语音识别模块之后,还可以包括:保存易误触发词组和对应的第一起始时间和第一结束时间。

相应的,在根据歌词文件,计算易误触发词组播放的第一起始时间和第一结束时间之前,还可以包括:确认歌词文件不存在已保存的易误触发词组。

相应的,在播放待播放歌曲,在到达第一起始时间时关闭语音识别模块,在到达第一结束时间时启动语音识别模块之前,还可以包括:若存在已保存的易误触发词组,读取待播放歌曲中易误触发词组对应的第一起始时间和第一结束时间。

相应的,本实施例的方法具体包括:

步骤201、获取与待播放歌曲匹配的中文歌词文件。

在本实施例中,待播放歌曲的歌词为中文,匹配的歌词文件为中文歌词文件。

步骤202、判断中文歌词文件是否存在已保存的易误触发词组,若不存在,则执行步骤203,若存在,则执行步骤209。

在本实施例中,如果待播放歌曲之前播放过,那么就会存在已保存的易误触发词组以及对应的第一起始时间和第一结束时间,此时,就无需再查找中文歌词中的易误触发词组和计算易误触发词组播放的第一起始时间和第一结束时间,可以直接调用之前保存的相关内容。

步骤203、遍历中文歌词文件中所有中文歌词的发音属性,其中,发音属性至少包括音调、声母和韵母。

在本实施例中,如果中文歌词文件不存在已保存的易误触发词组,则要从中文歌词中查找易误触发词组,查找易误触发词组的具体方式为遍历中文歌词中的每一个汉字的发音属性,根据该汉字与汉语语音控制命令的语言的发音属性的匹配程度,判定该汉字是否为或是否属于易误触发词组。

其中,发音属性具体是指由音调、声母和韵母等与发音相关的属性组成的属性集合。中文歌词中汉字的发音属性具体可以从中文歌词文件中获取,也可以通过互联网络从服务器中下载,本实施例对此不进行限制。

步骤204、确认与汉语语音控制命令的语言相同的汉字或汉字词组,具体地,如果所有中文歌词中的一个汉字或一个汉字词组中的各个汉字均与汉语语音控制命令中对应位置的汉字的发音属性相同,则确认该汉字或汉字词组与汉语语音控制命令的语言相同。

在一个具体的例子中,当进行对比的汉语语音控制命令为“开”时,在遍历中文歌词文件时,查找到中文歌词文件中有一个汉字的发音属性与“开”字的发音属性相同,则将中文歌词文件中的该汉字确认为易误触发词组。

在一个具体的例子中,当进行对比的汉语语音控制命令为“增加音量”时,在遍历中文歌词文件时,查找到中文歌词文件中有一个汉字A的发音属性与“增”字的发音属性相同,则继续判断汉字A后面的汉字B的发音属性是否与“加”字相同,若不相同,则认为由汉字A和汉字B组成的词组不是对应“增加音量”的易误触发词组;若相同,则继续判断汉字B后面的汉字C的发音属性是否与“音”字的发音属性相同,若不相同,则认为由汉字A、B和C组成的词组不是对应“增加音量”的易误触发词组;若相同,则继续判断汉字C后面的汉字D的发音属性是否与“量”字的发音属性相同,若不相同,则认为由汉字A、B、C和D组成的词组不是对应“增加音量”的易误触发词组;若相同,则认为由汉字A、B、C和D组成的词组是对应“增加音量”的易误触发词组。

步骤205、确认与汉语语音控制命令的语言相近的汉字或汉字词组,具体地,如果所有中文歌词中的一个汉字或一个汉字词组中的各个汉字均与汉语语音控制命令中对应位置的汉字的发音属性中至少有一种不同且至少有两种相同,则确认该汉字或汉字词组与汉语语音控制命令的语言相近。

在本实施例中,在查找与汉语语音控制命令的语言相近的汉字或汉字词组时,只要该汉字或汉字词组的发音属性与汉语语音控制命令中对应位置的汉字的发音属性中至少有一种不同且至少有两种相同,就认为该汉字或汉字词组为易误触发词组。

举例而言,汉语语音控制命令为“关灯”,中文歌词中有紧邻的两个汉字A和B,汉字A的音调和声母与“关”字的音调和声母相同且汉字A的韵母与“关”字的韵母不同,汉字B的声母和韵母与“灯”字的声母和韵母相同且汉字B的音调与“灯”字的音调不同,则认为由汉字A和B组成的词组是对应“关灯”的易误触发词组。

相应的,判断中文歌词中的一个汉字或一个汉字词组是否是易误触发词组的具体方法与步骤204中所举的两个例子相同,在此不再详述,只是本步骤中该汉字或汉字词组的发音属性中至少有一种应与对应的汉语语音控制命令中对应位置的汉字不同且至少有两种应与对应的汉语语音控制命令中对应位置的汉字相同才满足判定为易误触发词组的条件。

步骤206、将一个汉字或一个汉字词组标记为易误触发词组。

在本实施例中,当确定中文歌词中的所有易误触发词组后,需要对这些易误触发词组进行标记,标记方法具体可以是直接在中文歌词文件中直接进行标注,也可以是将易误触发词组的相关信息存储在另外一个可识别的文件中,本实施例对此不进行限制。

步骤207、根据歌词文件,获取易误触发词组所属的歌词语句播放的第二起始时间和第二结束时间。

在本实施例中,歌词语句播放的第二起始时间和第二结束时间具体是指该歌词语句播放的起始时间和结束时间,其中,第二起始时间和第二结束时间都是相对于待播放歌曲的起始播放时间计算出来的具体时间。

在本实施例中,在查找到易误触发词组的同时,会相应地记录下易误触发词组所属的歌词语句,以及其在该歌词语句中的位置。相应的,如果标记易误触发词组时,是直接在中文歌词文件中直接进行标注,那么很容易获知易误触发词组所属的歌词语句以及在该歌词语句中的位置;如果标记易误触发词组时,是将易误触发词组的相关信息存储在另外一个可识别的文件中,那么要在该文件中同时记录下易误触发词组所属的歌词语句以及在该歌词语句中的位置。

本领域技术人员可以理解的是,歌词文件中一般都会记录每一句歌词播放的起始时间,同时还会记录每一句歌词播放的时间长度或每一句歌词播放的结束时间,因此,当易误触发词组所属的歌词语句已经确定的情况下,根据歌词文件可以较为容易地获取或计算出易误触发词组所属的歌词语句播放的第二起始时间和第二结束时间。但是,LRC歌词文件只记录每句歌词的播放起始时间而不记录每句歌词的结束时间或播放的时间长度,因此,当待播放歌曲匹配的歌词文件的类型为LRC文件时,则默认下一句歌词的播放起始时间为上一句歌词的播放结束时间。

步骤208、计算易误触发词组播放的第一起始时间和第一结束时间,具体地,根据第二起始时间、第二结束时间、歌词语句包含歌词单元的个数、易误触发词组包含歌词单元的个数和易误触发词组在歌词语句中的位置,计算易误触发词组播放的第一起始时间和第一结束时间。

在本实施例中,歌词单元具体是指组成歌词的基本单位,例如:中文歌词文件的歌词单元为汉字、英文歌词文件的歌词单元为英文单词等。

在一个具体的例子中,假设每一句歌词都是以匀速演唱,易误触发词组所在歌词语句的起始播放时间为t1,结束播放时间为t2,该歌词语句共有10个汉字,该易误触发词组位于该歌词语句的第3、4、5个字,那么,该易误触发词组的第一起始时间T1和第一结束时间T2的计算公式分别为:

T1=t1+2[(t2-t1)/10]、T2=t1+5[(t2-t1)/10]。

步骤209、读取待播放歌曲中易误触发词组对应的第一起始时间和第一结束时间。

在本实施例中,如果中文歌词文件存在已保存的易误触发词组,则无需重新查找易误触发词组,只需直接调用该已保存的易误触发词组。

步骤210、播放待播放歌曲,在到达第一起始时间时关闭语音识别模块,在到达第一结束时间时启动语音识别模块。

步骤211、保存易误触发词组和对应的第一起始时间和第一结束时间。

在本实施例中,待播放歌曲播放完毕后,需要保存易误触发词组和对应的第一起始时间和第一结束时间,以便下次播放一首歌曲时直接调用。

本发明实施例提供的防止语音命令误识别的方法,通过先获取与待播放歌曲匹配的歌词文件,根据歌词文件是、否存在已保存的易误触发词组,分别进行直接读取易误触发词组及其对应的第一起始时间和第一结束时间的操作,以及通过遍历歌词中所有汉字的发音属性确定易误触发词组、获取易误触发词组所属的歌词语句播放的第二起始时间和第二结束时间,并计算易误触发词组播放的第一起始时间和第一结束时间的操作,然后播放待播放歌曲并适时关、开语音识别模块,最后保存易误触发词组和对应的第一起始时间和第一结束时间,克服了现有技术中为了减小语音误触发的概率,进而增加语音识别算法的复杂度,导致处理器计算负担增加、设备功耗上升以及语音识别算法移植困难的技术缺陷,实现了无需提高语音识别算法的复杂度,也可以可靠地减少由于播放歌曲导致的语音误识别。

实施例三

图3是本发明实施例三提供的一种防止语音命令误识别的方法的流程图。本实施例以上述实施例为基础进行优化,在本实施例中,将根据歌词文件,计算易误触发词组播放的第一起始时间和第一结束时间优化为:根据歌词文件,获取易误触发词组所属的歌词语句播放的第二起始时间和第二结束时间;获取第一起始时间的第一补偿时间和第一结束时间的第二补偿时间;根据第二起始时间、第二结束时间、第一补偿时间、第二补偿时间、歌词语句包含歌词单元的个数、易误触发词组包含歌词单元的个数和易误触发词组在歌词语句中的位置,计算易误触发词组播放的第一起始时间和第一结束时间。

进一步地,还可以包括:待播放歌曲播放结束后,统计引起和未引起预设语音控制命令误识别的易误触发词组;修正易误触发词组对应的第一补偿时间和第二补偿时间,重新计算易误触发词组播放的第一起始时间和第一结束时间。

相应的,本实施例的方法具体包括:

步骤301、获取与待播放歌曲匹配的歌词文件。

步骤302、判断中文歌词文件是否存在已保存的易误触发词组,若不存在,则执行步骤303,若存在,则执行步骤307。

步骤303、查找歌词文件中的易误触发词组,其中,易误触发词组与预设语音控制命令的语言相同或相近。

步骤304、根据歌词文件,获取易误触发词组所属的歌词语句播放的第二起始时间和第二结束时间。

步骤305、获取第一起始时间的第一补偿时间和第一结束时间的第二补偿时间。

根据实施例一中的说明可知,如果假设待播放歌曲是完全匀速播放的,那么按照这种情况计算出来的易误触发词组播放的第一起始时间和第一结束时间可能与实际情况有误差,因此,为了使易误触发词组播放的第一起始时间和第一结束时间更加准确,本实施例中增加了第一补偿时间和第二补偿时间,以对易误触发词组播放的第一起始时间和第一结束时间进行修正。

其中,第一补偿时间具体用于调整第一起始时间,第二补偿时间具体用于调整第一结束时间,第一补偿时间和第二补偿时间可以相同,也可以不同,本实施例对此不进行限制。第一补偿时间和第二补偿时间的具体数值可以是经验数值(例如:1秒钟等),也可在合理的范围内随意设置。

另外,由于LRC歌词文件只记录每句歌词的播放起始时间而不记录每句歌词的结束时间或播放的时间长度,因此,当待播放歌曲匹配的歌词文件的类型为LRC文件时,且当易误触发词组所在的歌词语句与下一歌词语句之间有音乐伴奏时,如果默认下一句歌词的播放起始时间为上一句歌词的播放结束时间,那么该上一句歌词默认的播放结束时间与实际的播放结束时间不相同,因此,按照默认的下一句歌词的播放起始时间为上一句歌词的播放结束时间计算出来的所需时间点与实际的时间点有误差,补偿时间的引入可以减小甚至消灭这种误差。

步骤306、计算易误触发词组播放的第一起始时间和第一结束时间,具体地,根据第二起始时间、第二结束时间、第一补偿时间、第二补偿时间、歌词语句包含歌词单元的个数、易误触发词组包含歌词单元的个数和易误触发词组在歌词语句中的位置,计算易误触发词组播放的第一起始时间和第一结束时间。

在本实施例中,计算易误触发词组播放的第一起始时间T1’和第一结束时间T2’的方法为:首先计算出易误触发词组不考虑补偿时间时的播放的第一起始时间T1和第一结束时间T2,具体步骤可以参见步骤208中的具体说明,然后根据第一补偿时间T’和第二补偿时间T”计算T1’和T2’,公式为:

T1'=T1-T',T2'=T2+T”,其中,T’和T”均为正数。

步骤307、读取待播放歌曲中易误触发词组对应的第一起始时间和第一结束时间。

步骤308、播放待播放歌曲,在到达第一起始时间时关闭语音识别模块,在到达第一结束时间时启动语音识别模块。

步骤309、待播放歌曲播放结束后,统计引起和未引起预设语音控制命令误识别的易误触发词组。

在本实施例中,待播放歌曲播放结束后,会对引起和未引起预设语音控制命令误识别的易误触发词组进行统计。

步骤310、修正易误触发词组对应的第一补偿时间和第二补偿时间,重新计算易误触发词组播放的第一起始时间和第一结束时间。

在本实施例中,当易误触发词组在待播放歌曲的播放过程中引起了预设语音控制命令的误识别,则认为该易误触发词组对应的第一起始时间和第一结束时间不准确,需要进行调整。调整的方法具体可以是将第一补偿时间和第二补偿时间相应增大,两者增大的时间量可以相同,也可以不同,例如可以将第一补偿时间和第二补偿时间同时增加10%,然后使用增加后的第一补偿时间和第二补偿时间重新计算该易误触发词组播放的第一起始时间和第一结束时间。

在本实施例中,当易误触发词组在待播放歌曲的播放过程中没有引起了预设语音控制命令的误识别,则可以相应减小第一补偿时间和第二补偿时间的数值,两者减小的时间量可以相同,也可以不同,例如可以将第一补偿时间和第二补偿时间同时减小5%,然后使用减小后的第一补偿时间和第二补偿时间重新计算该易误触发词组播放的第一起始时间和第一结束时间。

步骤311、保存易误触发词组和对应的第一起始时间和第一结束时间。

本发明实施例提供的防止语音命令误识别的方法,通过先获取与待播放歌曲匹配的歌词文件,根据歌词文件是、否存在已保存的易误触发词组,分别进行直接读取易误触发词组对应的第一起始时间和第一结束时间的操作,以及通过遍历歌词中所有汉字的发音属性确定易误触发词组、获取易误触发词组所属的歌词语句播放的第二起始时间和第二结束时间以及第一补偿时间和第二补偿使劲,并计算易误触发词组播放的第一起始时间和第一结束时间的操作,然后播放待播放歌曲并适时关、开语音识别模块,播放结束后统计易误触发词组是否引起语音识别误的情况并相应地对第一起始时间和第一结束时间进行修正,最后保存易误触发词组和对应的第一起始时间和第一结束时间,克服了现有技术中为了减小语音误触发的概率,进而增加语音识别算法的复杂度,导致处理器计算负担增加、设备功耗上升以及语音识别算法移植困难的技术缺陷,实现了无需提高语音识别算法的复杂度,也可以可靠地减少由于播放歌曲导致的语音误识别,并在播放歌曲的同时最大限度地开启语音识别模块。

实施例四

图4是本发明实施例四提供的一种防止语音命令误识别的装置的结构图。如图4所示,所述装置包括:歌词文件获取模块101、易误触发词组查找模块102、播放时间计算模块103和语音识别模块控制模块104。其中:

歌词文件获取模块101,用于获取与待播放歌曲匹配的歌词文件;

易误触发词组查找模块102,用于查找歌词文件中的易误触发词组,其中,易误触发词组与预设语音控制命令的语言相同或相近;

播放时间计算模块103,用于根据歌词文件,计算易误触发词组播放的第一起始时间和第一结束时间;

语音识别模块控制模块104,用于播放待播放歌曲,在到达第一起始时间时关闭语音识别模块,在到达第一结束时间时启动语音识别模块。

本发明实施例提供的防止语音命令误识别的装置,通过先获取与待播放歌曲匹配的歌词文件,然后查找歌词文件中的易误触发词组,计算易误触发词组播放的第一起始时间和第一结束时间,最后播放待播放歌曲,在到达第一起始时间时关闭语音识别模块,在到达第一结束时间时启动语音识别模块,克服了现有技术中为了减小语音误触发的概率,进而增加语音识别算法的复杂度,导致处理器计算负担增加、设备功耗上升以及语音识别算法移植困难的技术缺陷,实现了无需提高语音识别算法的复杂度,也可以可靠地减少由于播放歌曲导致的语音误识别。

在上述各实施例的基础上,语音识别模块控制模块之后,还可以包括:

播放时间保存模块,用于保存易误触发词组和对应的第一起始时间和第一结束时间;

播放时间计算模块之前,还可以包括:

易误触发词组确认模块,用于确认歌词文件不存在已保存的易误触发词组;

语音识别模块控制模块之前,还可以包括:

播放时间读取模块,用于若存在已保存的易误触发词组,读取待播放歌曲中易误触发词组对应的第一起始时间和第一结束时间。

在上述各实施例的基础上,歌词文件可以为中文歌词文件;

预设语音控制命令可以为汉语语音控制命令;

易误触发词组查找模块可以包括:

歌词遍历单元,用于遍历中文歌词文件中所有中文歌词的发音属性,其中,发音属性至少包括音调、声母和韵母;

相同词组确认单元,用于如果所有中文歌词中的一个汉字或一个汉字词组中的各个汉字均与汉语语音控制命令中对应位置的汉字的发音属性相同,则确认该汉字或汉字词组与汉语语音控制命令的语言相同;

相近词组确认单元,用于如果所有中文歌词中的一个汉字或一个汉字词组中的各个汉字均与汉语语音控制命令中对应位置的汉字的发音属性中至少有一种不同且至少有两种相同,则确认该汉字或所汉字词组与汉语语音控制命令的语言相近;

易误触发词组标记单元,用于将一个汉字或一个汉字词组标记为易误触发词组。

在上述各实施例的基础上,播放时间计算模块可以包括:

第二播放时间确定单元,用于根据歌词文件,获取易误触发词组所属的歌词语句播放的第二起始时间和第二结束时间;

第一播放时间计算单元,用于根据第二起始时间、第二结束时间、歌词语句包含歌词单元的个数、易误触发词组包含歌词单元的个数和易误触发词组在歌词语句中的位置,计算易误触发词组播放的第一起始时间和第一结束时间。

在上述各实施例的基础上,播放时间计算模块可以包括:

第二播放时间确定单元,用于根据歌词文件,获取易误触发词组所属的歌词语句播放的第二起始时间和第二结束时间;

补偿时间获取单元,用于获取第一起始时间的第一补偿时间和第一结束时间的第二补偿时间;

第二播放时间计算单元,用于根据第二起始时间、第二结束时间、第一补偿时间、第二补偿时间、歌词语句包含歌词单元的个数、易误触发词组包含歌词单元的个数和易误触发词组在歌词语句中的位置,计算易误触发词组播放的第一起始时间和第一结束时间。

在上述各实施例的基础上,还可以包括:

误识别统计模块,用于待播放歌曲播放结束后,统计引起和未引起预设语音控制命令误识别的易误触发词组;

补偿时间修正模块,用于修正易误触发词组对应的第一补偿时间和第二补偿时间,重新计算易误触发词组播放的第一起始时间和第一结束时间。

本发明实施例所提供的防止语音命令误识别的装置可用于执行本发明任意实施例提供的防止语音命令误识别的方法,具备相应的功能模块,实现相同的有益效果。

显然,本领域技术人员应该明白,上述的本发明的各模块或各步骤可以通过如上所述的服务器实施。可选地,本发明实施例可以用计算机装置可执行的程序来实现,从而可以将它们存储在存储装置中由处理器来执行,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等;或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。

以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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