跟踪显示方法及提词器、电子设备、存储介质与流程

文档序号:31126189发布日期:2022-08-13 03:31阅读:78来源:国知局
跟踪显示方法及提词器、电子设备、存储介质与流程

1.本技术涉及电子设备技术领域,具体而言,涉及跟踪显示方法及提词器、电子设备、存储介质。


背景技术:

2.在用户进行录播或直播的过程中需要电子设备辅助提示用户相关的目标文本,以实现提词功能的同时帮助用户顺利的进行工作。通常提词功能可以通过独立的电子设备实现如提词器,也可以通过电子设备中以应用程序的形式实现。
3.在用户使用提词功能的过程中,目标文本会实时显示在提词器的屏幕上供用户浏览,同时提词器会根据用户发言时的语音,在显示目标文本的过程中实时标记用户的当前发言位置,以便于用户获取下一刻所需的提示文本。进而在实现提词功能的同时进行语音跟踪。
4.然而,提词器在实现语音跟踪功能的过程中,通常采用自动语音识别(asr)模型对目标文本进行语音识别。在语音识别的过程中,受限于asr模型自身的识别误差,例如在用户在发言时存在语速变化、停顿发言或出现口误的场景下,会出现无法准确识别用户发言位置的问题,进而降低用户的使用体验。针对相关技术中,提词器在工作过程中无法实现理想语音跟踪的问题,尚未提出有效的解决方案。


技术实现要素:

5.本技术实施例提供了跟踪显示方法及提词器、电子设备、存储介质,以至少解决相关技术中无法实现理想语音跟踪的技术问题。
6.在本技术的一个实施例中,提出了一种跟踪显示方法,方法包括:根据用户当前时刻输入的语音数据得到识别文本,并确定识别文本中的初始位置;其中,初始位置为上一时刻进行语音跟踪所确定的文本位置。根据初始位置、预设的候选位置总数以及预设的文本长度,确定多个候选位置以及每个候选位置对应的候选文本片段;其中,候选位置总数用于指示候选位置的数量,文本长度用于指示每一候选文本片段的文本长度。将每个候选位置对应的候选文本片段与识别文本进行相似度匹配,确定文本匹配结果。根据文本匹配结果确定当前时刻的语音跟踪位置,以及将语音跟踪位置呈现在用户界面中。
7.在本技术的一个实施例中,在识别文本为第一语言类型的情况下,根据初始位置、预设的候选位置总数以及预设的文本长度,确定多个候选位置以及每个候选位置对应的候选文本片段,包括:根据候选位置总数选取候选字符集合,候选字符集合包括多个第一字符;其中,第一字符为初始位置之后的多个连续的字符,第一字符的数量与候选位置总数相等;每一第一字符分别对应一个候选位置。根据文本长度与第一字符确定候选文本片段;其中,候选文本片段包括文本长度对应数量的多个连续的字符;第一字符位于对应的候选文本片段的末位。
8.在本技术的一个实施例中,根据初始位置、预设的候选位置总数以及预设的文本
长度,确定多个候选位置以及每个候选位置对应的候选文本片段,包括:根据候选位置总数选取候选字符集合,候选字符集合包括多个第一字符与第二字符;其中,第一字符为初始位置之后的多个连续的字符,第二字符包括初始位置对应的字符以及初始位置之前的多个连续的字符,第一字符与第二字符的总数与候选位置总数相等;每一第一字符以及第二字符分别对应一个候选位置。根据文本长度与第一字符、第二字符确定候选文本片段;其中,候选文本片段包括文本长度对应数量的多个连续的字符;第一字符位于对应的候选文本片段的末位,第二字符位于对应的候选文本片段的末位。
9.在本技术的一个实施例中,将每个候选位置对应的候选文本片段与识别文本进行相似度匹配,确定文本匹配结果;包括:根据每个候选文本片段与识别文本之间的相似度,确定每个候选文本片段对应的第一文本匹配值。根据多个候选位置,确定每个候选文本片段对应的距离惩罚值,距离惩罚值用于表征候选位置与初始位置之间的文本距离。根据每个候选文本片段对应的第一文本匹配值与距离惩罚值,确定每个候选文本片段对应的第二文本匹配值。根据多个候选文本片段对应的第二文本匹配值,确定文本匹配结果。
10.在本技术的一个实施例中,用户界面显示有待跟踪文本,所语音跟踪位置为候选文本片段末端文本对应在待跟踪文本中的位置;将语音跟踪位置呈现在用户界面中,包括:将语音跟踪位置标记在待跟踪文本的显示跟踪位置,以及将显示跟踪位置呈现在用户界面中;其中,显示跟踪位置为语音跟踪位置之后的文本位置。
11.在本技术的一个实施例中,在识别文本为第二语言类型的情况下,根据初始位置、预设的候选位置总数以及预设的文本长度,确定多个候选位置以及每个候选位置对应的候选文本片段,包括:根据候选位置总数选取候选单词集合,候选单词集合包括多个第一单词;其中,第一单词为初始位置之后的多个连续的单词,第一单词的数量与候选位置总数相等;每一第一单词分别对应一个候选位置。根据文本长度与第一单词确定候选文本片段;其中,候选文本片段包括文本长度对应数量的多个连续的单词;第一单词位于对应的候选文本片段的末位。
12.在本技术的一个实施例中,根据初始位置、预设的候选位置总数以及预设的文本长度,确定多个候选位置以及每个候选位置对应的候选文本片段,包括:根据候选位置总数选取候选单词集合,候选单词集合包括多个第一单词与第二单词;其中,第一单词为初始位置之后的多个连续的单词,第二单词包括初始位置对应的单词以及初始位置之前的多个连续的单词,第一单词与第二单词的总数与候选位置总数相等;每一第一单词以及第二单词分别对应一个候选位置。根据文本长度与第一单词、第二单词确定候选文本片段;其中,候选文本片段包括文本长度对应数量的多个连续的单词;第一单词位于对应的候选文本片段的末位,第二单词位于对应的候选文本片段的末位。
13.在本技术的一个实施例中,将每个候选位置对应的候选文本片段与识别文本进行相似度匹配,确定文本匹配结果,包括:根据每个候选文本片段与识别文本之间的相似度,确定每个候选文本片段对应的第三文本匹配值。根据第三文本匹配值确定每个候选文本片段对应的第一比较值和第二比较值;第一比较值用于表征候选文本片段与识别文本同一位置的两个单词中每个字母位置对应的字母相同比例;第二比较值用于表征候选文本片段与识别文本同一位置的两个单词中相同字母占字母总数的比例。根据多个候选位置,确定每个候选文本片段对应的距离惩罚值,距离惩罚值用于表征候选位置与初始位置之间的文本
距离。根据每个候选文本片段对应的第一比较值、第二比较值与距离惩罚值,确定每个候选文本片段对应的第四文本匹配值。根据多个候选文本片段对应的第四文本匹配值,确定文本匹配结果。
14.在本技术的一个实施例中,还包括:识别文本为第一类语言类型时设定的候选位置总数小于识别文本为第二类语言类型或第一类语言与第二类语言混合类型时设定的候选位置总数。
15.在本技术的一个实施例中,确定识别文本中的初始位置之前,还包括:检测识别文本的语言类型,以使根据不同的语言类型确定对应不同的初始位置。
16.在本技术的一个实施例中,还提供了一种提词器,提词器包括:
17.asr模块,asr模块被配置为根据用户当前时刻输入的语音数据得到识别文本;
18.语音跟踪模块,语音跟踪模块被配置为确定识别文本中的初始位置;其中,初始位置为上一时刻进行语音跟踪所确定的文本位置;根据初始位置、预设的候选位置总数以及预设的文本长度,确定多个候选位置以及每个候选位置对应的候选文本片段;其中,候选位置总数用于指示候选位置的数量,文本长度用于指示每一候选文本片段的文本长度;将每个候选位置对应的候选文本片段与识别文本进行相似度匹配,确定文本匹配结果;根据文本匹配结果确定当前时刻的语音跟踪位置;
19.显示模块,显示模块被配置为将语音跟踪位置呈现在用户界面中。
20.在本技术的一个实施例中,用户界面显示有待跟踪文本,所语音跟踪位置为候选文本片段末端文本对应在待跟踪文本中的位置;将语音跟踪位置呈现在用户界面中,显示模块还被配置为:
21.将语音跟踪位置标记在待跟踪文本的显示跟踪位置,以及将显示跟踪位置呈现在用户界面中;其中,显示跟踪位置为语音跟踪位置之后的文本位置。
22.在本技术的一个实施例中,还提出了一种计算机可读的存储介质,存储介质中存储有计算机程序,其中,计算机程序被设置为运行时执行上述方法中的步骤。
23.在本技术的一个实施例中,还提出了一种电子设备,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行上述方法中的步骤。
24.通过本技术实施例,本技术提供了跟踪显示方法及提词器、电子设备、存储介质。解决了相关技术中提词器在工作过程中无法实现理想语音跟踪的技术问题。本技术提出的跟踪显示方法,适用于不同的语言及语境场景。通过判断确定对应的跟踪显示方案以及语言逻辑。具体采用定位与语音跟踪的方式,通过候选位置的筛选与相似度的比较方法实现语音跟踪。一方面令语音跟踪与定位的过程并不严格依赖于语音识别的效果。另一方面,在定位过程中是基于迭代的思路对可能的位置进行筛选并完成定位,其比较的对象不是待跟踪全部文本。进而缩短了处理时间,并可在语音识别错误以及用户口误的情况下,仍可根据用户的实际发言内容实现精准定位。从而实现快速而精准的语音跟踪。
附图说明
25.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
26.图1是根据本技术实施例的一种可选的跟踪显示方法流程图;
27.图2是根据本技术实施例的一种可选的确定候选文本片段流程图;
28.图3是根据本技术实施例的一种可选的确定候选文本片段流程图;
29.图4是根据本技术实施例的一种可选的提词器的结构示意图;
30.图5是根据本技术实施例的一种可选的电子设备的结构示意图。
具体实施方式
31.下文中将参考附图并结合实施例来详细说明本技术。需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。
32.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
33.首先对本技术实施例的应用场景进行说明。在用户进行主持、表演、录播或直播的过程中需要电子设备辅助提示用户相关的目标文本,以实现提词功能的同时帮助用户顺利的进行相应的工作。通常提词功能可以通过独立的电子设备实现如提词器,也可以通过电子设备中以应用程序的形式实现。
34.在用户使用提词功能的过程中,目标文本会实时显示在提词器屏幕的用户界面中供用户浏览,同时提词器会根据用户发言时的语音,在显示目标文本的过程中实时标记用户的当前发言位置,以便于用户获取下一刻所需的提示文本。进而在实现提词功能的同时进行语言跟踪。为便于后续描述,将用户使用的目标文本称为待跟踪文本。
35.示例性的,待跟踪文本为“我觉得你像一个一辈子都得走在路上的香客孜孜不倦地寻找一座完全不存在于这个世界的神庙
……”
。用户可以根据显示的文字进行跟读,在朗读的过程中以一句话为单位或一个字符为单位进行语音跟踪标记。例如用户跟读到“我觉得你像一个”中的“个”,在用户界面中会实时对“个”的位置进行标记。再例如用户朗读到“这个世界的神庙”中的“庙”后,在用户界面中会实时对“庙”的位置进行标记,并自动对下一句进行跟踪标记。若在用户跟读为当前页面的最后一个字的情况下,控制显示当前显示文本的下一页文本,继续进行实时标记。
36.在相关技术中提词器实现语音跟踪功能时,通常采用自动语音识别(asr)模型对目标文本进行语音识别。同时提词器通常仅支持中文以及用户匀速发音的语境。通常,在语音识别的过程中,受限于asr模型自身的识别误差以及提词器通常采用匀速播放的形式,例如用户的语音为除中文之外其他语言和/或用户在发言时存在语速变化、停顿发言或出现口误的场景下,均会出现无法准确识别用户发言位置,以及无法及时更新跟踪位置的问题,进而降低用户的使用体验。
37.为优化上述问题,本技术提供了一种跟踪显示方法,以至少解决相关技术中无法实现理想语音跟踪的技术问题。
38.图1是根据本技术实施例的一种可选的跟踪显示方法流程图,参见图1,本技术提供的一种跟踪显示方法,具体过程如下:
39.s1:根据用户当前时刻输入的语音数据得到识别文本,并确定识别文本中的初始位置;其中,初始位置为上一时刻进行语音跟踪所确定的文本位置。
40.在本实施例中,识别文本为根据用户输入的语音数据进行识别后的文本,即用户当前发言的文本内容。待跟踪文本为用户创作设定的文本,如在场景下中辅助提示用户相
关的台词、台本。其中,当用户根据显示的待跟踪文本进行跟读时,识别文本需与待跟踪文件关联,才能实时对用户跟读的文本位置在待跟踪文本中进行跟踪,以实现语音跟踪以及提词功能。
41.在本实施例中,将上一时刻进行语音跟踪后所定位的位置定义为当前时刻的初始位置。需要说明的是,本技术中提供的跟踪显示方法是不同推进的。即上一时刻的跟踪结果作为当前时刻的初始位置,当前时刻的跟踪结果也作为下一时刻的初始位置,依次进行迭代。
42.示例性的,若用户上一时刻发言的文本内容为“我觉得你像一个一辈子都得走在路上的香客孜孜不倦”中的“倦”字,即上一时刻的语音跟踪结果也为“倦”的位置。进而,当前时刻的初始位置为“倦”。
43.在本实施例中,在确定识别文本中的初始位置之前,还包括:检测识别文本的语言类型,以使根据不同的语言类型确定对应不同的初始位置。
44.在本实施例中,提供的跟踪显示方法适用于不同种语言类型。示例性的,包括第一语言类型、第二语言类型以及第三语言类型。第一语言类型是指中文、日文、韩文等以字符为单位的语言。第二语言类型指英文、法文、德文等以字母为单位的拉丁语系语言。第三语言类型是指混杂类型语言,如第一类语言与第二类语言混合类型即中英文混杂等。需要说明的是,语言类型中的语音包括但不限于上述语言,可根据实际情况自行设计。
45.s2:根据初始位置、预设的候选位置总数以及预设的文本长度,确定多个候选位置以及每个候选位置对应的候选文本片段;其中,候选位置总数用于指示候选位置的数量,文本长度用于指示每一候选文本片段的文本长度。
46.在本实施例中,基于初始位置的基础上构建候选位置列表,其中,候选位置列表包括候选位置总数、预设的文本长度以及候选文本片段。具体地,候选位置总数用于表征候选位置的数量;每个候选位置对应一个候选文本片段;文本长度用于指示每一候选文本片段的文本长度。需要说明的是,候选位置总数、预设的文本长度以及候选文本片段的设置本技术不进行具体限定,可根据实际情况自行设计。例如,不同的文本类型可设置不同的n。还可以通过根据待跟踪文本以及初始位置确定后续文本对应类型进而自动调整n的数值。
47.图2是根据本技术实施例的一种可选的确定候选文本片段流程图,参见图2,具体过程如下:
48.在识别文本为第一语言类型的情况下,根据初始位置、预设的候选位置总数以及预设的文本长度,确定多个候选位置以及每个候选位置对应的候选文本片段,包括:
49.s21、根据候选位置总数选取候选字符集合,候选字符集合包括多个第一字符;其中,第一字符为初始位置之后的多个连续的字符,第一字符的数量与候选位置总数相等;每一第一字符分别对应一个候选位置。
50.s22、根据文本长度与第一字符确定候选文本片段;其中,候选文本片段包括文本长度对应数量的多个连续的字符;第一字符位于对应的候选文本片段的末位。
51.示例性的,候选位置总数n为10,每一个候选位置对应的文本长度k为5。以下述文本作为示例:“我觉得你像一个一辈子都得走在路上的香客孜孜不倦地寻找一座完全不存在于这个世界的神庙
……”
。初始位置为“倦”。则第一字符是以“倦”为出发点,选取“倦”之后的10个字符,分别对应为“地、寻、找、一、座、完、全、不、存、在”。上述10个字符对应10个候
选位置。进一步,以上述每个字符为出发点,向前逐字截取k-1个字符,以得到每一个候选位置。
52.在“地、寻、找、一、座、完、全、不、存、在”,上述每一个字符的基础上,向前截取4个字符,如“地”之前的字符为“孜、孜、不、倦”,则“地”对应的候选位置为“孜孜不倦地”;又如“座”之前的字符为“地、寻、找、一”,则“座”对应的候选位置为“地寻找一座”。以此类推,所有的候选位置为:
53.候选位置1:孜孜不倦地;
54.候选位置2:孜不倦地寻;
55.候选位置3:不倦地寻找;
56.候选位置4:倦地寻找一;
57.……
58.候选位置10:完全不存在。
59.因此,每个候选位置对应一个候选文本片段,每个候选文本片段的文本长度相同。
60.需要说明的是,在提词器实际运用过程中,也会存在部分用户对之前的内容反复诵读的情况,对此,本技术还提供了一种确定多个候选位置以及每个候选位置对应的候选文本片段的实现方式。图3是根据本技术实施例的一种可选的确定候选文本片段流程图,参见图3,具体过程如下:
61.s31、根据候选位置总数选取候选字符集合,候选字符集合包括多个第一字符与第二字符;其中,第一字符为初始位置之后的多个连续的字符,第二字符包括初始位置对应的字符以及初始位置之前的多个连续的字符,第一字符与第二字符的总数与候选位置总数相等;每一第一字符以及第二字符分别对应一个候选位置。
62.s32、根据文本长度与第一字符、第二字符确定候选文本片段;其中,候选文本片段包括文本长度对应数量的多个连续的字符;第一字符位于对应的候选文本片段的末位,第二字符位于对应的候选文本片段的末位。
63.示例性的,候选位置总数n为10,每一个候选位置对应的文本长度k为5。以下述文本作为示例:“我觉得你像一个一辈子都得走在路上的香客孜孜不倦地寻找一座完全不存在于这个世界的神庙
……”
。初始位置为“倦”。设定第二字符为m,则第一字符为n-m。仍以上述示例进行说明,设定m为4,则以“倦”为出发点,选取“倦”之前的“孜、孜、不、倦”以及“倦”之后的“地、寻、找、一、座、完”;再在上述每一个字符的基础上确定对应的候选位置。一般而言,m的设置要远小于n-m。
64.进一步,以上述每个字符为出发点,向前逐字截取k-1个字符,以得到每一个候选位置。
65.其中,候选字符集合为“孜、孜、不、倦、地、寻、找、一、座、完”,上述每一个字符的基础上,向前截取4个字符,如“地”之前的字符为“孜、孜、不、倦”,则“地”对应的候选位置为“孜孜不倦地”;又如“座”之前的字符为“地、寻、找、一”,则“座”对应的候选位置为“地寻找一座”。以此类推,所有的候选位置为:
66.候选位置1:上的香客孜;
67.候选位置2:的香客孜孜;
68.候选位置3:香客孜孜不;
69.候选位置4:孜孜不倦地;
70.……
71.候选位置10:寻找一座完。
72.在识别文本为第二语言类型的情况下,本技术还提供了两种确定多个候选位置以及每个候选位置对应的候选文本片段的实现方式,第一种具体包括以下步骤:
73.根据初始位置、预设的候选位置总数以及预设的文本长度,确定多个候选位置以及每个候选位置对应的候选文本片段,包括:
74.根据候选位置总数选取候选单词集合,候选单词集合包括多个第一单词;其中,第一单词为初始位置之后的多个连续的单词,第一单词的数量与候选位置总数相等;每一第一单词分别对应一个候选位置;
75.根据文本长度与第一单词确定候选文本片段;其中,候选文本片段包括文本长度对应数量的多个连续的单词;第一单词位于对应的候选文本片段的末位。
76.在本实施例中,第二种具体包括以下步骤:
77.根据候选位置总数选取候选单词集合,候选单词集合包括多个第一单词与第二单词;其中,第一单词为初始位置之后的多个连续的单词,第二单词包括初始位置对应的单词以及初始位置之前的多个连续的单词,第一单词与第二单词的总数与候选位置总数相等;每一第一单词以及第二单词分别对应一个候选位置;
78.根据文本长度与第一单词、第二单词确定候选文本片段;其中,候选文本片段包括文本长度对应数量的多个连续的单词;第一单词位于对应的候选文本片段的末位,第二单词位于对应的候选文本片段的末位。
79.需要说明的是,在识别文本为第二语言类型的情况下,初始位置、预设的候选位置总数、预设的文本长度以及每个候选位置对应的候选文本片段的确定方式均与识别文本为第一语言类型相同,在此不再赘述。
80.在本实施例中,识别文本为第一类语言类型时设定的候选位置总数小于识别文本为第二类语言类型或第一类语言与第二类语言混合类型时设定的候选位置总数。
81.s3:将每个候选位置对应的候选文本片段与识别文本进行相似度匹配,确定文本匹配结果。
82.在识别文本为第一语言类型的情况下,将每个候选位置对应的候选文本片段与识别文本进行相似度匹配,确定文本匹配结果;包括:
83.根据每个候选文本片段与识别文本之间的相似度,确定每个候选文本片段对应的第一文本匹配值;
84.根据多个候选位置,确定每个候选文本片段对应的距离惩罚值,距离惩罚值用于表征候选位置与初始位置之间的文本距离;
85.根据每个候选文本片段对应的第一文本匹配值与距离惩罚值,确定每个候选文本片段对应的第二文本匹配值;
86.根据多个候选文本片段对应的第二文本匹配值,确定文本匹配结果。
87.具体实现时,采用第一公式得出第一文本匹配值第一公式如下:
[0088][0089]
其中,表示识别文本中第i个字符的拼音;表示第j个候选位置中第i个字符的拼音;表示针对识别文本中的第i个字符与第j个候选位置中的第i个字符的拼音进行比较,如相同则输出1,反之不同则输出0。
[0090]
在本实施例中,根据多个候选位置,确定每个候选文本片段对应的距离惩罚值,距离惩罚值用于表征候选位置与初始位置之间的文本距离。
[0091]
其中,通常用户的发言是连贯的,所以当前时刻用户发言的位置,在理论上不应与初始位置相隔过远。进而对于候选位置列表中位置较为靠前的候选位置(j较小的候选位置)赋予较高优先级,对位置较为靠后的候选位置(j较大的候选位置)赋予较低优先级。即对于j较小的候选位置,则距离惩罚值较小,对相似度结果的影响小。对j较大的候选位置,则距离惩罚值较大,对相似度结果的影响大。也可以理解为,越靠近初始位置a对应的候选位置距离惩罚值越小,远离初始位置对应的候选位置惩罚值越大。
[0092]
在本技术实施例中,根据每个候选文本片段对应的第一文本匹配值与距离惩罚值,确定每个候选文本片段对应的第二文本匹配值;其中,第二文本匹配值采用第二公式得出,第二公式如下:
[0093][0094]
其中,j表示从0到j
max
之间的多个候选位置;j
max
表示最大的候选位置,即候选位置中列表中最后一个候选位置;k表示第j个候选位置对应的文本长度;α表示允许最大的惩罚值,一般取0.1;表示距离惩罚值。
[0095]
在本技术实施例中,根据多个候选文本片段对应的第二文本匹配值,确定文本匹配结果。其中,文本匹配结果采用第三公式得出,第三公式如下:
[0096]jbest
=argmax(simj);
[0097]
其中,j
best
表示匹配目标最好的候选位置,即与识别文本最相似的候选位置。
[0098]
本技术实施例,将第j个候选位置对应文本中的每一个字符与识别文本中对应位置的字符进行拼音的比对,如相同则输出1,如不同则输出0。在输出结果的基础上进一步引入位置权重,该位置权重用于指示根据该字符在候选位置对应文本中的位置所分配的权重。为了进行语音跟踪,故文本末尾是否相似较于文本其它位置是否相似更为重要。具体而言,该字符越靠近文本的末端,权重越高,反之权重越低。
[0099]
上述i则表示字符在识别文本或候选文本中的位置,以文本末端为起点,例如上述示例中的位置1“孜孜不倦地”,“地”对应的i应为1,“不”对应的i应为3。需要说明的是,每个候选文本片段中的位置i均以文本末尾为起点。
[0100]
在识别文本为第二语言类型的情况下,将每个候选位置对应的候选文本片段与识别文本进行相似度匹配,确定文本匹配结果,包括:
[0101]
根据每个候选文本片段与识别文本之间的相似度,确定每个候选文本片段对应的第三文本匹配值;
[0102]
根据第三文本匹配值确定每个候选文本片段对应的第一比较值和第二比较值;第一比较值用于表征候选文本片段与识别文本同一位置的两个单词中每个字母位置对应的字母相同比例;第二比较值用于表征候选文本片段与识别文本同一位置的两个单词中相同字母占字母总数的比例;
[0103]
根据多个候选位置,确定每个候选文本片段对应的距离惩罚值,距离惩罚值用于表征候选位置与初始位置之间的文本距离;
[0104]
根据每个候选文本片段对应的第一比较值、第二比较值与距离惩罚值,确定每个候选文本片段对应的第四文本匹配值;
[0105]
根据多个候选文本片段对应的第四文本匹配值,确定文本匹配结果。
[0106]
在本技术实施例中,识别文本为第二语言类型区别在于第一语言类型时,是以单词作为定位、截取以及相似度比较的最小单位。具体地,根据每个候选文本片段与识别文本之间的相似度,确定每个候选文本片段对应的第三文本匹配值;
[0107]
具体实现时,采用第四公式得出第三文本匹配值第四公式如下:
[0108][0109]
其中,表示第j个候选位置中第i个单词(下文中的)中第g个字母;表示识别文本中第i个单词(下文中的)中第g个字母。需要说明的是,上述第i个字符与第g个字母,均是从文本或单词的末尾字符/字母为起点向前推算,即文本或单词的末尾字符/字母对应的i或g记为1,倒数第二个字符/字母对应的i或g记为2,以此类推。
[0110]
表示针对识别文本中的第i个单词与第j个候选位置对应文本中的第i个单词进行比较,如上述两个单词中第g个字母相同则输出1,反之不同则输出0。
[0111]
在本技术实施例中,根据第三文本匹配值确定每个候选文本片段对应的第一比较值和第二比较值;第一比较值用于表征候选文本片段与识别文本同一位置的两个单词中每个字母位置对应的字母相同比例;第二比较值用于表征候选文本片段与识别文本同一位置的两个单词中相同字母占字母总数的比例;
[0112]
具体实现时,采用第五公式得出第一比较值和第二比较值,第五公式如下:
[0113][0114]
其中,表示识别文本中第i个单词,i,g为从单词末尾起点;表示第j个候选位
置中第i个单词,表示,针对识别文本中的第i个单词与第j个候选位置对应文本中的第i个单词,计算两个单词中第g个字母相同的比例,其中,z表示第i个单词的字母总数;表示,针对识别文本中的第i个单词与第j个候选位置对应文本中的第i个单词,计算两个单词中存在相同字母占字母总数的比例,即将两个单词所包含的字母分别构建两个集合,比较上述两个集合中字母重合的比例;intersection函数表示w1和wj中的字母集合的重合个数;len函数表示w1与wj对应的字母集合中的字母个数。
[0115]
在本技术实施例中,根据多个候选位置,确定每个候选文本片段对应的距离惩罚值,距离惩罚值用于表征候选位置与初始位置之间的文本距离;
[0116]
根据每个候选文本片段对应的第一比较值、第二比较值与距离惩罚值,确定每个候选文本片段对应的第四文本匹配值;
[0117]
具体实现时,采用第六公式得出第四文本匹配值,第六公式如下:
[0118][0119]
其中,j表示从0到j
max
之间的多个候选位置;j
max
表示最大的候选位置,即候选位置中列表中最后一个候选位置;当后续文本中英文较多时,j
max
取较大值;k表示第j个候选位置对应的文本长度(单词个数);α表示允许最大的惩罚值,一般取0.1;表示距离惩罚值。
[0120]
在本技术实施例中,根据多个候选文本片段对应的第四文本匹配值,确定文本匹配结果。
[0121]
具体实现时,采用第七公式得出文本匹配结果,第七公式如下:
[0122]jbest
=argmax(simj);
[0123]
其中,j
best
表示匹配目标最好的位置,即与识别文本最相似的候选位置。
[0124]
需要说明的是,由于英文受时态、单复数等语法影响,提词器产品在实际使用过程中存在以下情况:用户发言时由于口误,将待跟踪文本中某个单词读成另一个单词,进而造成识别文本与待跟踪文本不同。但从语音跟踪的角度,其所需跟踪的位置仍然是待跟踪文本中对应单词的位置。示例性的,用户将待跟踪文本中的throw读成threw。虽然单词不同,但该不同是因为用户口误造成的,其需要跟踪的位置仍然是待跟踪文本中throw对应的位置。
[0125]
对此,本技术在将第j个候选位置对应文本中的每一个单词与识别文本中对应位置的单词进行字母的比对的过程中,并非单纯的一一比较,而是采取了顺序比较与非顺序比较综合计算的方式。其中,顺序比较指的是上述公式中得到的第一比较值,非顺序比较指的是上述公式中得到的第二比较值。
[0126]
具体而言,在计算l(w1,wj)的过程中,首先对于识别文本中的第j个单词(称为单词
1)与第j个候选位置对应文本中的第j个单词(称为单词2),按照字母的顺序进行一一比较。如单词1与单词2中,同一位置的字母相同,则输出1,反之则输出0。而对于单词1与单词2中的全部字母,通过将上述结果叠加,即可确定顺序比较中单词1与单词2的相似度。在此基础上,进一步将单词1与单词2中的所有字母分别构建一集合,通过比较两个集合中字母重合的比例,即通过即可确定非顺序比较中单词1与单词2的相似度。最后,根据不同的权重赋值,进而最终确定单词1与单词2的相似度。
[0127]
上述实施例是以单词作为定位、截取以及相似度比较中的最小单位,通常识别文本与候选位置文本中的文本长度,即单词个数可取4。从而计算得到的两个文本的相似度表示为整体单词相似度。
[0128]
在此基础上,本技术可以以字母作为定位、截取以及相似度比较中的最小单位的方案,具体计算方式同识别文本为第一语言类型方案,在此不再赘述。在该方案中,通常识别文本与候选位置文本中的文本长度,即字母个数可取10至20。从而计算得到的两个文本的相似度表示为重合相似度。
[0129]
进一步地,对于识别文本为第二语言类型的情况,关于上述整体单词相似度与重合相似度,在实际计算过程中可同时计算,并最终取最大值或取均值作为最终的相似度结果。
[0130]
在本技术实施例中,在语言类型为数字的情况下,由于数字的种类不同,其对应的发言方式也不同。如电话号码等没有大小、顺序、位数概念的数字,一般用户会直接读每一位的数字。而对于金额、计数等有大小、顺序、位数概念的数字,一般用户会在发言中加入“十百千万”等其它内容。对此,本技术可通过预设的nlp模型对于待跟踪文本进行预先检测,预先识别对应的数字类型,如是电话一类的数字,则采用第二语言类型方案,如是金额一类的数字,则采用第一语言类型方案。
[0131]
在本技术实施例中,当识别文本为第三语言类型时,可根据上述第一语言类型方案和第二语言类型方案进行混合运用。对此,相似度计算、候选位置、候选位置总数、文本长度以及每个候选位置对应的候选文本片段均同上述说明,在此不再赘述。本技术并不对此进行具体限定,可根据实际情况自行设置。本技术可实现识别文本如中英文混合时的语音跟踪,适用于中英文混合的待跟踪文本的应用场景。通过相应的计算与调整,提高语音跟踪显示的精度。此外,本技术中的语音跟踪采用迭代的思路进行,进而令整体定位和跟踪效果始终保持在较好的状态,避免了偶然性的定位以及跟踪失误问题。
[0132]
s4:根据文本匹配结果确定当前时刻的语音跟踪位置,以及将语音跟踪位置呈现在用户界面中。
[0133]
示例性的,若“候选位置2:的香客孜孜”为最相似的候选位置,则当前时刻的语音跟踪位置为“的香客孜孜”中的最后一个“孜”。并将语音跟踪位置呈现在用户界面中。即待跟踪文本中“我觉得你像一个一辈子都得走在路上的香客孜孜不倦地寻找一座完全不存在于这个世界的神庙
……”
的“孜”。
[0134]
本技术实施例中,用户界面显示有待跟踪文本,语音跟踪位置为候选文本片段末端文本对应在待跟踪文本中的位置;将语音跟踪位置呈现在用户界面中,还包括:将语音跟踪位置标记在待跟踪文本的显示跟踪位置,以及将显示跟踪位置呈现在用户界面中;其中,显示跟踪位置为语音跟踪位置之后的文本位置。
[0135]
具体实施时,待完成上述语音跟踪位置的确定后,考虑到提词器在实现过程中,提词器进行语音识别以及上述相似度计算均需要一定的时间。进而,在该时间内用户可能又存在后续发言,故将语音跟踪位置呈现在用户界面中时,其标记显示的位置是上述语音跟踪位置之后。示例性的,语音跟踪位置为“的香客孜孜”中的最后一个“孜”。在实际计算得到结果时,用户很有可能往后继续诵读,故在用户界面呈现的最终跟踪位置为在“孜”的基础上直接向后跨越预设数量字符。其中,预设数量字符可根据实际情况自行设置。由上述方案可知,本技术通过上述提前机制,提词器在实际使用过程中不会出现用户实际发言位置提前于显示在用户界面的语音跟踪位置,避免了用户出现延迟感受。
[0136]
应该理解的是,虽然图1至图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1至图3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0137]
在一些实施例中,图4是根据本技术实施例的一种可选的提词器的结构示意图。参见图4,提词器包括:
[0138]
asr模块,asr模块被配置为根据用户当前时刻输入的语音数据得到识别文本;
[0139]
语音跟踪模块,语音跟踪模块被配置为确定识别文本中的初始位置;其中,初始位置为上一时刻进行语音跟踪所确定的文本位置;根据初始位置、预设的候选位置总数以及预设的文本长度,确定多个候选位置以及每个候选位置对应的候选文本片段;其中,候选位置总数用于指示候选位置的数量,文本长度用于指示每一候选文本片段的文本长度;将每个候选位置对应的候选文本片段与识别文本进行相似度匹配,确定文本匹配结果;根据文本匹配结果确定当前时刻的语音跟踪位置;
[0140]
显示模块,显示模块被配置为将语音跟踪位置呈现在用户界面中。
[0141]
需要说明的是,用户界面显示有待跟踪文本,所语音跟踪位置为候选文本片段末端文本对应在待跟踪文本中的位置。
[0142]
将语音跟踪位置呈现在用户界面中的过程中,显示模块还被配置为:
[0143]
将语音跟踪位置标记在待跟踪文本的显示跟踪位置,以及将显示跟踪位置呈现在用户界面中;其中,显示跟踪位置为语音跟踪位置之后的文本位置。
[0144]
进一步地,本技术提供的提词器还被配置为执行上述跟踪显示方法中的所有步骤,在此不再赘述。
[0145]
根据本技术实施例的又一个方面,还提供了一种用于实施上述一种跟踪显示方法的电子设备,上述电子设备可以但不限于应用于服务器中。如图5所示,该电子设备包括存储器502和处理器504,该存储器502中存储有计算机程序,该处理器504被设置为通过计算
机程序执行上述任一项方法实施例中的步骤。
[0146]
可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
[0147]
需要说明的是,在本实施例中,上述处理器可以被设置为通过计算机程序执行上述跟踪显示方法中的所有步骤,在此不再赘述。
[0148]
可选地,本领域普通技术人员可以理解,图5所示的结构仅为示意,电子设备也可以是智能手机(如android手机、ios手机等)、平板电脑、掌上电脑以及移动互联网设备(mobile internet devices,mid)、pad等终端设备。图5其并不对上述电子设备的结构造成限定。例如,电子设备还可包括比图5中所示更多或者更少的组件(如网络接口等),或者具有与图5所示不同的配置。
[0149]
其中,存储器502可用于存储软件程序以及模块,如本技术实施例中的语音跟踪方法和装置对应的程序指令/模块,处理器504通过运行存储在存储器502内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的语音跟踪方法。存储器502可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器502可进一步包括相对于处理器504远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器502具体可以但不限于用于储存语音跟踪方法的程序步骤。
[0150]
可选地,上述的传输装置506用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置506包括一个网络适配器(network interface controller,nic),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置506为射频(radio frequency,rf)模块,其用于通过无线方式与互联网进行通讯。此外,上述电子设备还包括:显示器508,用于显示语音跟踪方法过程;和连接总线510,用于连接上述电子设备中的各个模块部件。
[0151]
本技术的实施例还提供了一种计算机可读的存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
[0152]
在本实施例中,上述存储介质可以被设置为存储用于执行上述跟踪显示方法中的所有步骤的计算机程序,在此不再赘述。
[0153]
可选地,存储介质还被设置为存储用于执行上述实施例中的方法中所包括的步骤的计算机程序,本实施例中对此不再赘述。
[0154]
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-only memory,rom)、随机存取器(random access memory,ram)、磁盘或光盘等。
[0155]
本技术提供了跟踪显示方法及提词器、电子设备、存储介质。适用于不同的语言及语境场景。通过判断确定对应的跟踪显示方案以及语言逻辑。具体采用定位与语音跟踪的方式,通过候选位置的筛选与相似度的比较方法实现语音跟踪。一方面令语音跟踪与定位的过程并不严格依赖于语音识别的效果,从而使得语音识别错误不影响定位精度。另一方面,在定位过程中是基于迭代的思路对可能的位置进行筛选并完成定位,其比较的对象不
是待跟踪全部文本,进而令实际定位过程中不仅缩短了处理时间,并可在语音识别错误以及用户口误的情况下,仍可根据用户的实际发言内容实现精准定位。进一步,在计算过程中通过优化计算方法与公式,以及字符/字母位置与距离等。进行相应的权重分配与调整,从而实现快速而精准的语音跟踪,避免在用户在发言时存在语速变化、停顿发言或出现口误的场景下,出现无法准确识别用户发言位置的问题。
[0156]
上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例方法的全部或部分步骤。
[0157]
在本技术的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0158]
在本技术所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其他的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其他的形式。
[0159]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0160]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0161]
以上所述仅是本技术的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1