声纹识别方法、装置、电子设备、存储介质与流程

文档序号:29414824发布日期:2022-03-26 12:48阅读:330来源:国知局
声纹识别方法、装置、电子设备、存储介质与流程

1.本发明涉及计算机应用技术领域,尤其涉及一种声纹识别方法、装置、电子设备、存储介质。


背景技术:

2.声纹识别,生物识别技术的一种,也称为说话人识别,是一种通过声音判别说话人身份的技术。声纹识别技术有两类,文本相关和文本无关。文本相关要求说话人按照规定内容发音,可以达到较好的识别效果,但是需要用户配合;文本无关则对说话人的发音内容不做限制,模型建立相对困难,但用户体验满意度高,应用范围较广。
3.文本相关的实时声纹识别技术多见于带有声纹认证功能的语音唤醒技术中,设置固定的唤醒词,各目标说话人存有注册语音,只有当目标说话人的讲话内容与唤醒词一致时设备唤醒成功。文本无关的实时声纹识别技术可见于对实时性要求较高的身份校验任务中。因用户较难接受有关验证的多问题询问,且基本需要提供订单号等需要特意查阅的信息,体验感极差且严重影响一线客服的工作效率,故以文本无关的实时声纹识别技术进行验证的同时要求在较短时间内返回验证结果。
4.无论文本相关还是文本无关,为达到较好的应用效果,均对有效音频长度有一定的限制。文本相关有效音频可以较短,但一般也要2秒以上;文本无关由于注册语音与验证语音内容不一致,有效时长需要较文本相关的长,一般要求8秒以上。然而很多场景下支撑声纹识别的有效音频过短。
5.由此,如何优化声纹识别,以避免没有有效音频或者有效音频过短无法支持声纹识别结果,以及避免上游无法支持长时间等待结果返回,同时通话过程中的身份校验要求在较短时间内返回结果的冲突情况,是本领域技术人员亟待解决的技术问题。


技术实现要素:

6.本发明为了克服上述现有技术存在的缺陷,提供一种声纹识别方法、装置、电子设备、存储介质,从而优化声纹识别,以避免没有有效音频或者有效音频过短无法支持声纹识别结果,以及避免上游无法支持长时间等待结果返回,同时通话过程中的身份校验要求在较短时间内返回结果的冲突情况。
7.根据本发明的一个方面,提供一种声纹识别方法,包括:
8.线上音频拼接步骤:对接收的线上音频进行实时拼接,并储存至音频储存器中;
9.声纹识别步骤:以设定睡眠时间为间隔,轮询所述音频储存器,以对储存于所述音频储存器中的线上音频进行声纹识别,并将声纹识别结果发送至消息队列;
10.声纹识别结果拿取步骤:采用异步调用的方式,在设定最大拿取次数自所述消息队列消费声纹识别结果。
11.在本技术的一些实施例中,所述线上音频拼接步骤,包括:
12.实时接收线上音频以及线上音频的音频标识;
13.在所述音频储存器中查询是否存在关联所述音频标识的音频;
14.若存在,则将实时接收的线上音频以及所述音频储存器中储存的音频进行拼接;
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.图1示出了根据本发明实施例的声纹识别方法的流程图。
42.图2示出了根据本发明实施例的线上音频拼接步骤的流程图。
43.图3示出了根据本发明实施例的声纹识别步骤的流程图。
44.图4示出了根据本发明实施例的声纹识别结果拿取步骤的流程图。
45.图5示出了根据本发明实施例的声纹识别装置的模块图。
46.图6示意性示出本公开示例性实施例中一种计算机可读存储介质示意图。
47.图7示意性示出本公开示例性实施例中一种电子设备示意图。
具体实施方式
48.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
49.此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
50.首先参见图1,图1示出了根据本发明实施例的声纹识别方法的示意图。声纹识别方法包括如下步骤:
51.步骤s110:线上音频拼接步骤:对接收的线上音频进行实时拼接,并储存至音频储存器中。
52.具体而言,音频储存器例如为redis(开源的内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理),本技术并非以此为限制。
53.具体而言,线上音频拼接步骤可以对线上音频进行实时拼接以满足最短有效音频长度,从而解决调用时无有效音频以及有效音频过短的问题。实时接收上游抛出的音频流片段,对音频片段做vad(voice activity detection,语音活动检测)后与之前部分拼接,上传至音频储存器进行存储。限制最大存储长度,仅保留最新的音频,支持声纹识别返回结果的同时减少存储空间的占用。
54.步骤s120:声纹识别步骤:以设定睡眠时间为间隔,轮询所述音频储存器,以对储存于所述音频储存器中的线上音频进行声纹识别,并将声纹识别结果发送至消息队列。
55.步骤s130:声纹识别结果拿取步骤:采用异步调用的方式,在设定最大拿取次数自所述消息队列消费声纹识别结果。
56.具体而言,睡眠时间可以按需设置。睡眠时间也可以根据历史音频处理数据中:线
上音频拼接至最短有效长度的时间,进行统计计算获得的平均时间、最短时间、中位时间等。睡眠时间可以以设定周期的历史数据进行更新,以提高声纹识别效率,减少等待时间。
57.由此,在本实施例的声纹识别方法中,优化声纹识别,在无有效音频或有效音频过短情况的调用下,尽快返回声纹识别结果至坐席的系统架构。由此,能够避免调用时无有效音频以及有效音频过短;上游无法支持长时间等待结果返回;实际应用限制结果在较短时间内返回至坐席参考的问题。
58.下面参见图2,图2示出了根据本发明实施例的线上音频拼接步骤的流程图。图2供示出如下步骤:
59.实时接收线上音频以及线上音频的音频标识,并对线上音频进行语音活动检测。语音活动检测的目的是从声音信号流里识别和消除长时间的静音期,以达到在不降低业务质量的情况下节省话路资源的作用,它是ip电话应用的重要组成部分。静音抑制可以节省宝贵的带宽资源,可以有利于减少用户感觉到的端到端的时延。
60.然后执行步骤s201:根据音频标识自音频储存器210中,判断该音频标识是否存在关联的音频数据。
61.音频标识例如可以是为音频分配的标识信息,或者也可以以通话标识以对音频进行区分。在一些实施例中,同一通话中可能存在坐席转接或者其它转接服务,由此,音频标识也可以包含通话标识以及阶段标识,以便于对同一通话中的不同阶段的线上音频进行区分。
62.若步骤s201判断为是,则执行步骤s202:将音频储存器210关联该音频标识的音频数据与实时接收的线上音频进行拼接。步骤s202之后执行步骤s203。
63.具体而言,可以直接将实时接收的线上音频拼接在储存的音频数据之后。本技术并非以此为限制,其它拼接方式也在本技术的保护范围之内。
64.若步骤s201判断为否,则执行步骤s203。
65.步骤s203:判断拼接后的音频长度是否大于最大储存长度。
66.若步骤s203判断为否,则将拼接后的音频关联音频标识储存在音频储存器210中。
67.若步骤s203判断为是,则自拼接的音频中保留最大储存长度的音频数据(例如,保留时间最近的音频数据),将保留的音频关联音频标识储存在音频储存器210中。
68.进一步地,在本实施例中,响应于实时接收所述音频标识关联的通话结束,自所述音频储存器中删除与所述音频标识关联的音频,以减少储存占用空间。
69.由此,通过上述各步骤可以实现线上音频的实时拼接以及实时删除。
70.图3示出了根据本发明实施例的声纹识别步骤的流程图。具体而言,可以游异步调用声纹识别服务,该部分采用轮询机制进行处理,在拿到满足最小有效时长的音频后,进行处理返回声纹识别结果,并推至消息队列,等待上游消费。首先设置最大睡眠次数,后续可见下述步骤:
71.在本技术的一些实施例中,所述声纹识别步骤包括:
72.当接收到实时线上音频时,执行步骤s205:等待睡眠时间,并使得轮询次数初始化为1。
73.步骤s206:自音频储存器210中提取该实时线上音频的音频标识关联的音频,判断该音频是否存在且满足最短有效时长。
74.若步骤s206判断为否,则执行步骤s207:判断当前轮询次数是否大于最大轮询次数。
75.若步骤s207判断为是,则结束步骤。
76.若步骤s207判断为否,则执行步骤s208:等待睡眠时间,并使得轮询次数加一。然后继续执行步骤s206。
77.若步骤s206判断为是,则执行步骤s209:对获取的音频执行声纹识别,并将声纹识别结果发送至消息队列中。
78.具体而言,声纹识别可以通过依次提取音频中的声纹特征,与库内声纹比对,从而获得声纹识别结果。
79.具体而言,步骤s208中的睡眠时间小于步骤s205中的睡眠时间。例如,步骤s205中的睡眠时间为步骤s205中的睡眠时间的整数倍。进一步地,步骤s208中的睡眠时间可以按需设置,也可以根据历史音频处理数据中:线上音频拼接至最短有效长度的时间,进行统计计算获得的方差,以提高声纹识别消息。步骤s208中的睡眠时间可以以设定周期的历史数据进行更新,以提高声纹识别效率,减少等待时间。
80.下面参见图4,图4示出了根据本发明实施例的声纹识别结果拿取步骤的流程图。图4共示出如下步骤:
81.当声纹识别服务调用成功后,执行步骤s211:等待设定的拿取时间,并初始化拿取次数为1。
82.然后执行步骤s212:判断消息队列220中是否存在识别结果。
83.若步骤s212判断为否,则执行步骤s213:判断当前拿取次数是否大于最大拿取次数。
84.若步骤s213判断为否,则执行步骤s214:等待拿取时间,并使得拿取次数加一。
85.若步骤s212判断为是,则执行步骤s216:将声纹识别结果推送至坐席。
86.若步骤s213判断为是,则执行步骤s215:返回无声纹识别结果,并继续执行步骤s216,将无声纹识别结果推送至坐席。
87.进一步地,在一些实施例中,在向坐席推送声纹识别结果时,还可以包括如下步骤:根据所述声纹识别结果获取用户标签;将所述声纹识别结果以及所述用户标签推送至坐席。用户标签例如可以包括用户性别、用户偏好、用户意图预测等信息,便于坐席能够根据用户标签针对性地提供服务。
88.以上仅仅是示意性地描述本发明的多个实现方式,本发明并非以此为限制。
89.本发明还提供一种声纹识别装置,图5示出了根据本发明实施例的声纹识别装置的示意图。声纹识别装置400包括线上音频拼接模块410、声纹识别模块420以及声纹识别结果拿取模块430。
90.线上音频拼接模块410用于对接收的线上音频进行实时拼接,并储存至音频储存器中;
91.声纹识别模块420用于以设定睡眠时间为间隔,轮询所述音频储存器,以对储存于所述音频储存器中的线上音频进行声纹识别,并将声纹识别结果发送至消息队列;
92.声纹识别结果拿取模块430用于采用异步调用的方式,在设定最大拿取次数自所述消息队列消费声纹识别结果。
93.在本发明提供的声纹识别装置中,提供一种高时效性的声纹识别系统,能够在无有效音频或有效音频过短情况的调用下,尽快返回声纹识别结果至坐席的系统架构。由此,能够避免调用时无有效音频以及有效音频过短;上游无法支持长时间等待结果返回;实际应用限制结果在较短时间内返回至坐席参考的问题。
94.图5仅仅是示意性的示出本发明提供的声纹识别装置,在不违背本发明构思的前提下,模块的拆分、合并、增加都在本发明的保护范围之内。本发明提供的声纹识别装置可以由软件、硬件、固件、插件及他们之间的任意组合来实现,本发明并非以此为限。
95.在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被例如处理器执行时可以实现上述任意一个实施例中所述声纹识别方法的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述声纹识别方法部分中描述的根据本发明各种示例性实施方式的步骤。
96.参考图6所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品400,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
97.所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
98.所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
99.可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在租户计算设备上执行、部分地在租户设备上执行、作为一个独立的软件包执行、部分在租户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到租户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
100.在本公开的示例性实施例中,还提供一种电子设备,该电子设备可以包括处理器,以及用于存储所述处理器的可执行指令的存储器。其中,所述处理器配置为经由执行所述
可执行指令来执行上述任意一个实施例中所述声纹识别方法的步骤。
101.所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
102.下面参照图7来描述根据本发明的这种实施方式的电子设备600。图7显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
103.如图7所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同系统组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
104.其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述声纹识别方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图1中所示的步骤。
105.所述存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(rom)6203。
106.所述存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
107.总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
108.电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得租户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
109.通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本公开实施方式的上述声纹识别方法。
110.相比现有技术,本发明的优势在于:
111.本发明提供一种高时效性的声纹识别系统,能够在无有效音频或有效音频过短情况的调用下,尽快返回声纹识别结果至坐席的系统架构。由此,能够避免调用时无有效音频
以及有效音频过短;上游无法支持长时间等待结果返回;实际应用限制结果在较短时间内返回至坐席参考的问题。
112.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1