CN112231510A - 声纹存储方法、声纹查询方法、服务器及存储介质 - Google Patents
声纹存储方法、声纹查询方法、服务器及存储介质 Download PDFInfo
- Publication number
- CN112231510A CN112231510A CN202011490410.0A CN202011490410A CN112231510A CN 112231510 A CN112231510 A CN 112231510A CN 202011490410 A CN202011490410 A CN 202011490410A CN 112231510 A CN112231510 A CN 112231510A
- Authority
- CN
- China
- Prior art keywords
- voiceprint
- target
- query
- index
- features
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 81
- 238000004364 calculation method Methods 0.000 claims abstract description 24
- 238000004590 computer program Methods 0.000 claims description 6
- 230000004044 response Effects 0.000 abstract description 26
- 238000010586 diagram Methods 0.000 description 11
- 230000008859 change Effects 0.000 description 10
- 238000004422 calculation algorithm Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 239000000284 extract Substances 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012163 sequencing technique Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/61—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/68—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/683—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
- G10L15/30—Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/06—Decision making techniques; Pattern matching strategies
- G10L17/14—Use of phonemic categorisation or speech recognition prior to speaker recognition or verification
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- General Physics & Mathematics (AREA)
- Library & Information Science (AREA)
- Acoustics & Sound (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Business, Economics & Management (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Game Theory and Decision Science (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种声纹存储方法、声纹查询方法、服务器及存储介质,其中,声纹存储方法包括:根据查询服务器的计算性能,从声纹库读取与计算性能匹配的数量的目标声纹特征和目标声纹特征对应的目标声纹索引,声纹库中包括多个声纹特征以及各所述声纹特征对应的声纹索引,根据目标声纹特征和目标声纹索引,创建查询服务器的声纹池。在本申请中,根据查询服务器计算性能,调整声纹库在各查询服务器上的大小分布,也即查询服务器读取与计算性能匹配的数量的声纹特征,尽可能使各台查询服务器完成查询服务的时间相近,以便使系统在整体上缩短响应时间、提高响应速度的方法。
Description
技术领域
本申请涉及声纹识别技术领域,具体而言,涉及一种声纹存储方法、声纹查询方法、服务器及存储介质。
背景技术
声纹查询是一种声纹应用服务,调用该服务的是声纹查询服务的客户端,该服务接收客户端提交的语音数据,提取其中的声纹特征,然后和声纹库中大量预先存入的声纹特征进行比对,找出其中最相似的一个或者多个声纹特征,然后返回这些声纹特征所对应的说话人身份信息。
现有技术中,为获得更快的响应时间,声纹查询系统通常包含多台查询服务器,对每个查询请求,系统将其同时分发到多台查询服务器上,每个查询服务器只包含声纹库的一部分声纹特征,通常将声纹库的全部声纹特征平均分配到所有查询服务器上。待全部查询服务器完成查询以后,再将结果汇总,从所有查询服务器的结果中,挑选出最相似的一个或多个声纹特征,回传给客户端。
然而,在多台查询服务器中,最慢的一台查询服务器的查询时间决定了整体查询响应时间,其他更快的查询服务器需要等待最慢的查询服务器完成查询,导致响应时间较长,响应速度较慢。
发明内容
本申请的目的在于,针对上述现有技术中的不足,提供一种声纹存储方法、声纹查询方法、服务器及存储介质,以解决现有技术中声纹查询响应时间较长,响应速度较慢的问题。
为实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请一实施例提供了一种声纹存储方法,应用于查询服务器,所述方法包括:
根据所述查询服务器的计算性能,从声纹库读取与所述计算性能匹配的数量的目标声纹特征和所述目标声纹特征对应的目标声纹索引,所述声纹库中包括多个声纹特征以及各所述声纹特征对应的声纹索引;
根据所述目标声纹特征和所述目标声纹索引,创建所述查询服务器的声纹池。
可选地,所述根据所述查询服务器的计算性能,从声纹库读取与所述计算性能匹配的数量的目标声纹特征和所述目标声纹特征对应的目标声纹索引,包括:
根据所述查询服务器的计算性能以及其它查询服务器的计算性能,对所述声纹库中多个声纹索引的值域进行划分,以获取至少两个索引子集;
从所述至少两个索引子集中确定所述查询服务器对应的目标索引子集,其中,所述目标索引子集内的声纹索引的数量为与所述计算性能匹配的数量;
将所述声纹库中所述目标索引子集内的声纹索引作为所述目标声纹索引;
从所述声纹库读取所述目标声纹索引对应的目标声纹特征。
可选地,所述根据所述查询服务器的计算性能,从声纹库读取与所述计算性能匹配的数量的目标声纹特征和所述目标声纹特征对应的目标声纹索引之前,所述方法还包括:
获取多个声纹特征和各所述声纹特征对应的身份信息;
对所述身份信息进行哈希处理,得到所述声纹特征对应的声纹索引;
根据各所述声纹特征和所述声纹特征对应的声纹索引,创建所述声纹库。
可选地,所述方法还包括:
每隔预设时间间隔查询所述声纹库中的声纹特征是否存在变更;
若所述声纹库中存在变更的声纹特征,则判断所述变更的声纹特征对应的变更声纹索引是否位于所述目标索引子集内;
若是,则根据所述变更的声纹特征以及所述变更声纹索引,对所述声纹池进行更新。
可选地,所述方法还包括:
接收接口服务器发送的待查询语音的声纹特征;
计算所述待查询语音的声纹特征与所述声纹池中各所述目标声纹特征的相似度得分;
根据所述相似度得分,从各所述目标声纹特征中将相似度得分大于或等于预设值的目标声纹特征作为至少一个匹配声纹特征;
向所述接口服务器发送至少一个所述匹配声纹特征对应的相似度得分以及对应的匹配声纹索引。
第二方面,本申请另一实施例提供了一种声纹查询方法,应用于接口服务器,所述方法包括:
接收客户端发送的声纹查询请求,所述声纹查询请求包括:待查询语音;
提取所述待查询语音的声纹特征,并向多个查询服务器发送所述声纹特征,各所述查询服务器用于计算所述声纹特征与声纹池中各所述目标声纹特征的相似度得分,并从各所述目标声纹特征中确定相似度得分大于或等于预设值的至少一个匹配声纹特征;
接收各所述查询服务器发送的至少一个所述匹配声纹特征对应的相似度得分以及对应的匹配声纹索引;
从说话人身份库中确定各所述匹配声纹索引对应的说话人身份信息,其中,所述说话人身份库中包括多个声纹索引以及各所述声纹索引对应的说话人身份信息;
向所述客户端发送所述相似度得分以及所述说话人身份信息。
可选地,所述声纹查询请求中还包括:说话人的数量;
所述从说话人身份库中确定各所述匹配声纹索引对应的说话人身份信息,包括:
根据相似度得分从大到小的顺序,对各所述匹配声纹索引进行排序;
从所述说话人身份库中、确定排序靠前n个匹配声纹索引对应的说话人身份信息,其中,所述n为所述说话人的数量。
第三方面,本申请另一实施例提供了一种声纹存储装置,所述装置包括:
获取模块,用于根据所述查询服务器的计算性能,从声纹库读取与所述计算性能匹配的数量的目标声纹特征和所述目标声纹特征对应的目标声纹索引,所述声纹库中包括多个声纹特征以及各所述声纹特征对应的声纹索引;
处理模块,用于根据所述目标声纹特征和所述目标声纹索引,创建所述查询服务器的声纹池。
可选地,所述获取模块,具体用于:
根据所述查询服务器的计算性能以及其它查询服务器的计算性能,对所述声纹库中多个声纹索引的值域进行划分,以获取至少两个索引子集;
从所述至少两个索引子集中确定所述查询服务器对应的目标索引子集,其中,所述目标索引子集内的声纹索引的数量为与所述计算性能匹配的数量;
将所述声纹库中所述目标索引子集内的声纹索引作为所述目标声纹索引;
从所述声纹库读取所述目标声纹索引对应的目标声纹特征。
可选地,所述获取模块,还用于:
获取多个声纹特征和各所述声纹特征对应的身份信息;
所述处理模块,还用于对所述身份信息进行哈希处理,得到所述声纹特征对应的声纹索引,根据各所述声纹特征和所述声纹特征对应的声纹索引,创建所述声纹库。
可选地,所述处理模块,还用于:
每隔预设时间间隔查询所述声纹库中的声纹特征是否存在变更;
若所述声纹库中存在变更的声纹特征,则判断所述变更的声纹特征对应的变更声纹索引是否位于所述目标索引子集内;
若是,则根据所述变更的声纹特征以及所述变更声纹索引,对所述声纹池进行更新。
可选地,所述装置还包括:
接收模块,用于接收接口服务器发送的待查询语音的声纹特征;
所述处理模块,还用于计算所述待查询语音的声纹特征与所述声纹池中各所述目标声纹特征的相似度得分,根据所述相似度得分,从各所述目标声纹特征中将相似度得分大于或等于预设值的目标声纹特征作为至少一个匹配声纹特征;
发送模块,用于向所述接口服务器发送至少一个所述匹配声纹特征对应的相似度得分以及对应的匹配声纹索引。
第四方面,本申请另一实施例提供了一种声纹查询装置,所述装置包括:
接收模块,用于接收客户端发送的声纹查询请求,所述声纹查询请求包括:待查询语音;
提取模块,用于提取所述待查询语音的声纹特征,并向多个查询服务器发送所述声纹特征,各所述查询服务器用于计算所述声纹特征与声纹池中各所述目标声纹特征的相似度得分,并从各所述目标声纹特征中确定相似度得分大于或等于预设值的至少一个匹配声纹特征;
所述接收模块,还用于接收各所述查询服务器发送的至少一个所述匹配声纹特征对应的相似度得分以及对应的匹配声纹索引;
处理模块,用于从说话人身份库中确定各所述匹配声纹索引对应的说话人身份信息,其中,所述说话人身份库中包括多个声纹索引以及各所述声纹索引对应的说话人身份信息;
发送模块,用于向所述客户端发送所述相似度得分以及所述说话人身份信息。
可选地,所述声纹查询请求中还包括:说话人的数量;
所述处理模块,具体用于:
根据相似度得分从大到小的顺序,对各所述匹配声纹索引进行排序,从所述说话人身份库中、确定排序靠前n个匹配声纹索引对应的说话人身份信息,其中,所述n为所述说话人的数量。
第五方面,本申请另一实施例提供了一种查询服务器,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当服务器运行时,所述处理器与所述存储器之间通过总线通信,所述处理器执行所述机器可读指令,以执行第一方面任一项所述的方法。
第六方面,本申请另一实施例提供了一种接口服务器,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当服务器运行时,所述处理器与所述存储器之间通过总线通信,所述处理器执行所述机器可读指令,以执行第二方面任一项所述的方法。
第七方面,本申请另一实施例提供了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如上述第一方面和第二方面任一所述的方法。
本申请提供的声纹存储方法、声纹查询方法、服务器及存储介质,其中,声纹存储方法包括:根据查询服务器的计算性能,从声纹库读取与计算性能匹配的数量的目标声纹特征和目标声纹特征对应的目标声纹索引,声纹库中包括多个声纹特征以及各所述声纹特征对应的声纹索引,根据目标声纹特征和目标声纹索引,创建查询服务器的声纹池。在本申请中,根据查询服务器计算性能,调整声纹库在各查询服务器上的大小分布,也即查询服务器读取与计算性能匹配的数量的声纹特征,尽可能使各台查询服务器完成查询服务的时间相近,以便使系统在整体上缩短响应时间、提高响应速度的方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例提供的声纹处理系统的架构示意图;
图2示出了本申请实施例提供的声纹存储方法的流程示意图一;
图3示出了本申请实施例提供的声纹存储方法的流程示意图二;
图4示出了本申请实施例提供的声纹存储方法的流程示意图三;
图5示出了本申请实施例提供的声纹存储方法的流程示意图四;
图6示出了本申请实施例提供的声纹查询方法的流程示意图;
图7示出了本申请实施例提供的声纹存储装置的结构示意图;
图8示出了本申请实施例提供的声纹查询装置的结构示意图;
图9示出了本申请实施例提供的查询服务器的结构示意图;
图10示出了本申请实施例提供的接口服务器的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
在介绍本申请的技术方案之前,首先对本申请涉及的相关概念进行解释说明。
随着人工智能和语音处理技术的发展,越来越多的语音数据得到了智能化处理。特别是语音中可以提取说话人的声纹特征,存入声纹库,用于未来的查询,即通过语音发现说话人的身份。
声纹的提取和比对对计算性能要求非常高,处理过程涉及大量浮点运算、内存读写和数据传输,声纹识别系统通常包含许多高性能计算机,协同操作,共同完成查询任务,因此声纹库存储和查询系统的设计必须兼顾安全、计算性能和存储性能等多方面的需求。
声纹查询服务的响应时间是从客户端提交声纹查询请求,到从查询服务器获得查询结果之间的时间差。通常需要将客户端提交的语音声纹和声纹库中的所有声纹逐个一一比对,得到相似度得分,然后通过比较所有相似度得分,才能获得声纹库中最相似的声纹。因此,在单线程处理的情况下,服务响应时间和声纹库中声纹特征的数量可以成线性关系。
为获得更快的响应时间,声纹查询系统通常包含多台查询服务器,对每个查询请求,系统将其同时分发到多台查询服务器上,每个查询服务器只包含声纹库的一部分声纹特征,通常将声纹库的全部声纹特征平均分配到所有查询服务器上。
待全部查询服务器完成查询以后,再将结果汇总,从所有查询服务器的结果中,挑选出最相似的一个或多个声纹特征,回传给客户端。
需要说明的是,查询服务器的计算性能随着配置的不同而有差异,计算元件如中央处理器(central processing unit,CPU)和图形处理器(Graphics Processing Unit,GPU)的型号、内存容量、存取速度、网络部署的条件,都会影响到查询服务器返回查询结果的速度。而在上述系统中,需要在所有查询服务器都完成查询以后,才能汇总产生整体的查询结果。也就是说,在多台查询服务器中,最慢的一台查询服务器的查询时间决定了整体查询响应时间,其他更快的查询服务器需要等待最慢的查询服务器完成查询,导致响应时间较长,响应速度较慢。
也就是说,在目前的查询系统实现方法中,通常对声纹库的全部声纹数据平均分配到所有查询服务器上。这样,配置较高、速度较快的查询服务器会比配置较低、速度较慢的查询服务器更早完成查询操作。而配置低、速度慢的查询服务器的速度拖慢了整个服务的响应速度。
基于上述问题,本申请提供了一种声纹存储方法,根据查询服务器计算性能,调整声纹库在各查询服务器上的大小分布,也即查询服务器读取与计算性能匹配的数量的声纹特征,尽可能使各台查询服务器完成查询服务的时间相近,以便使系统在整体上缩短响应时间、提高响应速度的方法。
另外,声纹是说话人的生物特征数据,声纹特征进入声纹库以后,如果保存不当,可能遭到泄露、窃取或者篡改等安全性攻击,形成安全漏洞,造成用户损失,因此,声纹特征必须得到高度安全保护。在目前的技术实现中,声纹库中往往同时存储说话人身份信息和声纹特征,并且将两者关联起来。这样,当查询服务器完成声纹比对时,既能得到最相符的一个或多个声纹,同时也能得到这个或这些声纹对应的说话人身份。
然而,这种做法存在安全隐患,如果声纹库遭到攻击,信息被窃取,则攻击方可以获得说话人信息和声纹特征的对应关系,并加以利用,可能造成严重后果。
基于此,本申请还提供了一种声纹查询方法,将说话人身份信息和声纹特征分开存储,也就是,声纹库中并不存储说话人的身份信息。这样,如果声纹库数据遭到窃取,攻击方尽管获得了声纹特征,但是不能得知这些声纹特征所对应的说话人身份,无法造成更大破坏,并且这种方法符合零信任和微隔离的设计理念,能够达到更高的系统安全度。
下面首先结合几个具体实施例对本申请提供的声纹存储方法进行详细说明。
图1示出了本申请实施例提供的声纹处理系统的架构示意图,如图1所示,包括:客户端设备10、接口服务器20以及多个查询服务器30,其中,客户端设备10和接口服务器20网络连接,接口服务器20和多个查询服务器30网络连接。
其中,每个查询服务器30可以存储有对应的声纹池,声纹池中包括多个目标声纹特征和各目标声纹特征对应的目标声纹索引,其中,多个声纹特征可以是从声纹库中读取的,目标声纹特征的数量可以与查询服务器30的计算性能匹配,也就是,计算性能越强,目标声纹特征的数量越多。
在声纹查询过程中,客户端设备10可以向接口服务器20发送声纹查询请求,声纹查询请求中包括待查询语音,接口服务器20提取待查询语音的声纹特征,并将声纹特征分发给的多个查询服务器30,以使各查询服务器30计算该声纹特征与声纹池中各目标声纹特征的相似度得分,并从各目标声纹特征中确定相似度得分大于或等于预设值的至少一个匹配声纹特征,将各匹配声纹特征的相似度得分以及对应的匹配声纹索引发送给接口服务器20,接口服务器20可以根据匹配声纹索引,从说话人身份库中确定各匹配声纹索引对应的说话人身份信息,并向客户端设备10发送相似度得分以及说话人身份信息,这样用户通过客户端设备10即可获知待查询语音对应的说话人身份信息以及相似度得分。其中,说话人身份库中包括多个声纹索引以及各声纹索引对应的说话人身份信息。
其中,声纹索引和对应的声纹特征存入声纹库,声纹索引和对应的说话人信息存入说话人身份库,声纹特征可以是对声纹数据源进行声纹提取得到的,声纹数据源例如可以包括语音通话数据、即时通讯语音数据,本实施例对此不做特别限定。
图2示出了本申请实施例提供的声纹存储方法的流程示意图一,本实施例的执行主体可以为声纹查询系统中的每个查询服务器。
如图2所示,该方法可以包括:
S101、根据查询服务器的计算性能,从声纹库读取与计算性能匹配的数量的目标声纹特征和目标声纹特征对应的目标声纹索引。
S102、根据目标声纹特征和目标声纹索引,创建查询服务器的声纹池。
其中,查询服务器的计算性能可以由该查询服务器的配置决定,例如,查询服务器A的CPU的数量大于查询服务器B的CPU的数量,查询服务器A的GPU的数量大于查询服务器B的GPU的数量,说明查询服务器A的计算性能强于查询服务器B的计算性能,当然,还可以查询服务器的内存容量、存取速度、网络部署等都可以作为查询服务器的计算性能的考虑因素,本实施例对此不做特别限定。
在另一种示例中,可以使查询服务器A和查询服务器B各自存储有相同的声纹池,针对同一个声纹查询请求,判断查询服务器A和查询服务器B的响应速度,响应速度越快,说明该查询服务器的计算性能越强。
声纹库中包括多个声纹特征以及各声纹特征对应的声纹索引。根据查询服务器的计算性能,从声纹库中读取与计算性能匹配的数量的目标声纹特征和目标声纹特征对应的目标声纹索引,根据目标声纹特征和目标声纹索引,创建查询服务器的声纹池,也就是说,查询服务器的计算性能与声纹特征的数量具有对应关系,查询服务器的计算性能越强,从声纹库中读取的目标声纹特征的数量越多,查询服务器的计算性能越弱,从声纹库中读取的目标声纹特征的数量越少,其中,声纹库中的多个声纹特征包括目标声纹特征,声纹库中的多个声纹索引包括目标声纹索引,由于查询服务器读取的声纹特征越多,查询时间越长,这样可以根据每个查询服务器的计算性能,调整声纹库在查询服务器上的大小分布,使所有查询服务器的响应时间尽可能相近,以减少互相等待的时间,提高整体响应效率。
其中,所有查询服务器读取的目标声纹特征的数量之和可以大于或者等于声纹库中声纹特征的总数量,若所有查询服务器读取的目标声纹特征的数量之和大于声纹库中声纹特征的总数量,说明各查询服务器读取的目标声纹特征存在重叠,例如,查询服务器A读取了声纹特征1,查询服务器B也读取了声纹特征1,这样在各查询服务器之间形成了数据冗余,当某台查询服务器出现故障时,针对同一声纹查询请求,可以使其暂时退出查询服务,由其它存储该声纹特征的查询服务器进行查询服务,从而提高了查询的可用性。若所有查询服务器读取的目标声纹特征的数量等于声纹库中声纹特征的总数量,则各查询服务器读取的目标声纹特征之间没有交集。
本实施例的声纹存储方法,根据查询服务器的计算性能,从声纹库读取与计算性能匹配的数量的目标声纹特征和目标声纹特征对应的目标声纹索引,根据目标声纹特征和目标声纹索引,创建查询服务器的声纹池。在本实施例中,根据查询服务器的计算性能确定各查询服务器从声纹库中读入的声纹数量,尽量使各查询服务器的响应时间相近,减少了查询服务器相互等待完成查询任务的时间,缩短了系统整体响应时间。
可选地,步骤S101可以包括图3实施例所示的步骤。图3示出了本申请实施例提供的声纹存储方法的流程示意图二,如图3所示,步骤S101可以包括:
S1011、根据查询服务器的计算性能以及其它查询服务器的计算性能,对声纹库中多个声纹索引的值域进行划分,以获取至少两个索引子集。
其它查询服务器可以为声纹查询系统中除了该查询服务器之外的查询服务器。其它查询服务器的计算性能同样也可以由其它查询服务器的配置决定,其它查询服务器的计算性能的确定方式和本查询服务器的计算性能的确定方式类似,在此不再赘述。
多个声纹索引可以为声纹库中多个声纹特征的声纹索引,每个声纹特征具有一个声纹索引,每个声纹索引可以对应一个取值,那么多个声纹索引可以具有对应的值域。
根据查询服务器的计算性能以及其它查询服务器的计算性能,可以对多个声纹索引的值域进行划分,以获取至少两个索引子集,其中,至少两个索引子集的数量可以与查询服务器的数量相同,也就是,各查询服务器对应一个索引子集。
举例而言,该查询服务器为查询服务器A,其它查询服务器包括查询服务器B,声纹索引的取值范围为{i|i为整数,且i∈[1,1×1010]},查询服务器A的计算性能是查询服务器B的3倍,那么可以对[1,1×1010]进行划分,将[1,1×1010]划分为2个索引子集,一个索引子集为[1,7.5×109],另一个索引子集为[7.5×109,1×1010],其中,索引子集[1,7.5×109]中元素的数量为索引子集[7.5×109,1×1010]中元素的数量的3倍。
作为另一种示例,将[1,1×1010]划分为2个索引子集,一个索引子集还可以为[1,2.5×109],另一个索引子集还可以为[2.5×109,1×1010],索引子集[2.5×109,1×1010]中元素的数量为索引子集[1,2.5×109]中元素的数量的3倍。
需要说明的是,上述示例采用的连续切割的划分方式仅仅是一种示例,也可以通过分段切割、除法取模、位运算等其它方式对多个声纹索引的值域进行划分,只要划分的结构是至少两个索引子集中元素的数量与各查询服务器的计算性能成正比,都属于本申请的保护范围。
当然,上述示例是以至少两个索引子集之间不存在交集为例进行说明的,在实际应用中,至少两个索引子集还可以不是互斥的,也就是,至少两个索引子集之间可以存在交集,这样,可以在各查询服务器之间形成数据冗余,从而提高了查询的可用性。
S1012、从至少两个索引子集中确定查询服务器对应的目标索引子集。
S1013、将声纹库中目标索引子集内的声纹索引作为目标声纹索引。
S1014、从声纹库读取目标声纹索引对应的目标声纹特征。
根据查询服务器的计算性能以及其它查询服务器的计算性能可以将多个声纹索引划分为至少两个索引子集,那么还可以根据查询服务器的计算性能从至少两个索引子集中确定查询服务器对应的目标索引子集,同样以上述示例为例,查询服务器A的计算性能是查询服务器B的3倍,那么可以说明查询服务器A可以在同样的时间内查询的声纹特征的数量比查询服务器B查询的声纹特征的数量多3倍,那么可以将索引子集[1,7.5×109]作为查询服务器A的目标索引子集,将索引子集[7.5×109,1×1010]作为查询服务器B的目标索引子集。其中,目标索引子集内的声纹索引的数量为与计算性能匹配的数量。
声纹库中包括多个声纹特征和各声纹特征的声纹索引,那么确定出查询服务器对应的目标声纹索引子集,可以从声纹库中获取位于目标索引子集内的声纹索引,将位于目标索引子集内的声纹索引作为目标声纹索引,并从声纹库中获取目标声纹索引对应的匹配声纹特征。
本实施例的声纹存储方法,根据查询服务器的计算性能以及其它查询服务器的计算性能,对多个声纹索引的值域进行划分,以获取至少两个索引子集,从至少两个索引子集中确定查询服务器对应的目标索引子集,将声纹库中目标索引子集内的声纹索引作为目标声纹索引,以及从声纹库中获取目标声纹索引对应的目标声纹特征。在本实施例中,通过划分声纹索引值域,由查询服务器根据计算性能判断自己需要从声纹库中加载哪些匹配声纹特征,从而无需引入其它系统组件来分配各声纹特征在各查询服务器中的归属,从而降低了系统复杂性,提高了系统的可维护性。
可选地,步骤S101之前,还可以创建声纹库。图4示出了本申请实施例提供的声纹存储方法的流程示意图三,如图4所示,步骤S101之前,该方法还可以包括:
S201、获取多个声纹特征和各声纹特征对应的身份信息。
S202、对身份信息进行哈希处理,得到声纹特征对应的声纹索引。
S203、根据各声纹特征和声纹特征对应的声纹索引,创建声纹库。
其中,多个声纹特征可以是对语音通话数据进行声纹识别得到的,也可以是对即时通讯语音数据进行声纹识别得到的,本实施例对声纹特征的语音数据的来源不做特别限定。
多个声纹特征在进入声纹库之前,还可以获取各声纹特征对应的身份信息,对各声纹特征对应的身份信息进行哈希处理,以得到各声纹特征的声纹索引,如下所示:
声纹索引=Hash(声纹特征对应的身份信息)
其中,Hash()为哈希函数即散列函数,各声纹特征对应的身份信息可任意为如下信息中的至少一种:证件号码、系统账号、系统编号。证件号码例如可以为身份证号码、护照号码等,系统账号例如可以为即时通讯工具的账号,系统编号可以是声纹特征对应的说话人的单位编号等,通过证件号码、系统账号、系统编号均可以识别说话人的身份。
需要说明的是,声纹库可以是用于存储声纹特征的数据库,例如可以为MySQL、Oracle、PostgreSQL、SQL Server等关系型数据库,也可以使用HBase、MongoDB、Redis等非关系型数据库,本实施例对预设数据库的具体形式不做特别限定。
另外,声纹索引可以具有如下几个特点:第一、不同的说话人的身份信息产生的声纹索引是不同的;第二、从生成的声纹索引不可能逆向推导出说话人的身份信息;第三、生成的声纹索引是均匀分布的,例如可以将消息摘要算法(Message Digest Algorithm MD5,MD5)或者安全散列算法1(Secure Hash Algorithm 1,SHA1)作为散列函数。
本实施例的声纹存储方法,获取多个声纹特征和各声纹特征对应的身份信息,对身份信息进行哈希处理,得到声纹特征对应的声纹索引,根据各声纹特征和声纹特征对应的声纹索引,创建声纹库。哈希处理后的声纹索引具有不可逆性,因此可以提高声纹库的保密性。
可选地,查询服务器还可以每隔预设时间间隔查询声纹库中的声纹特征是否存在更新,下面结合图5实施例进行说明。图5示出了本申请实施例提供的声纹存储方法的流程示意图四,如图5所示,该方法还可以包括:
S301、每隔预设时间间隔查询声纹库中的声纹特征是否存在变更。
S302、若声纹库中存在变更的声纹特征,则判断变更的声纹特征对应的变更声纹索引是否位于目标索引子集内。
S303、若是,则根据变更的声纹特征以及变更声纹索引,对声纹池进行更新。
查询服务器可以每隔预设时间间隔查询声纹库中的声纹特征是否存在变更,若声纹库中存在变更的声纹特征,则判断变更的声纹特征对应的变更声纹索引是否位于目标索引子集内,若是,则根据变更的声纹特征以及变更声纹索引,对声纹池进行更新。
声纹库中的声纹特征是否存在变更包括三种情况,第一种是声纹库中存在增加的声纹特征,第二种是声纹库中的1个或多个声纹特征被删除,第三种是声纹库中的1个或多个声纹特征被修改,在声纹库中的声纹特征存在变更的情况下,需要及时更新查询服务器的声纹池。
具体地,根据变更的声纹特征以及变更声纹索引,对声纹池进行更新,包括:若声纹库中的声纹特征存在变更,且变更的声纹特征对应的变更声纹索引位于目标索引子集内,则确定变更的声纹特征的变更类型,若变更类型为增加类型,说明声纹库中存在增加的声纹特征,则可以将该变更的声纹特征和变更声纹索引加入到声纹池中,其中,声纹池内的声纹索引均位于目标索引子集内。
若变更类型为变更类型为删除类型,且变更的声纹特征对应的变更声纹索引位于目标索引子集内,说明声纹库中存在删除的声纹特征,则可以从声纹池中将该变更的声纹特征和变更声纹索引删除。
若变更类型为变更类型为修改类型,且变更的声纹特征对应的变更声纹索引位于目标索引子集内,说明声纹库中存在修改的声纹特征,则可以将声纹池中的该声纹特征替换为修改后的声纹特征。
需要说明的是,预设时间间隔例如可以为5分钟、10分钟等,本实施例对此不做特别限定。
本实施例的声纹存储方法,每隔预设时间间隔查询声纹库中的声纹特征是否存在变更,若声纹库中存在变更的声纹特征,则判断变更的声纹特征对应的变更声纹索引是否位于目标索引子集内,若是,则根据变更的声纹特征以及变更声纹索引,对声纹池进行更新。从而可以实现对声纹池的更新。
下面结合几个具体实施例对本申请提供的声纹查询方法进行详细说明。
图6示出了本申请实施例提供的声纹查询方法的流程示意图,如图6所示,该方法还可以包括:
S401、接口服务器接收客户端发送的声纹查询请求。
S402、接口服务器提取待查询语音的声纹特征,并向多个查询服务器发送声纹特征。
用户通过客户端可以向接口服务器发送声纹查询请求,声纹查询请求包括:待查询语音,待查询语音的数量包括但不限于一个。相应的,接口服务器接收客户端发送的声纹查询请求,提取该待查询语音的声纹特征,并向多个查询服务器发送该声纹特征,相应的,各查询服务器接收接口服务器发送的待查询语音的声纹特征。
S403、查询服务器计算待查询语音的声纹特征与声纹池中各目标声纹特征的相似度得分。
S404、查询服务器根据相似度得分,从各目标声纹特征中将相似度得分大于或等于预设值的目标声纹特征作为至少一个匹配声纹特征。
S405、查询服务器向接口服务器发送至少一个匹配声纹特征对应的相似度得分以及对应的匹配声纹索引。
各查询服务器接收到待查询语音的声纹特征,可以计算待查询语音的声纹特征与对应的声纹池中各目标声纹特征的相似度得分,并从各目标声纹特征中将相似度得分大于或等于预设值的目标声纹特征作为至少一个匹配声纹特征,然后从声纹池中获取至少一个匹配声纹特征对应的匹配声纹索引,以及向接口服务器发送至少一个匹配声纹特征对应的相似度得分以及对应的匹配声纹索引。其中,匹配声纹特征对应的相似度得分为匹配声纹特征与待查询语音的声纹特征的相似度得分。
相应的,接口服务器接收各查询服务器发送的至少一个匹配声纹特征对应的相似度以及对应的匹配声纹索引。
需要说明的是,各查询服务器可以采用声纹相似度的计算算法计算得到两个声纹特征的相似度得分,本实施例对该计算算法不做特别限定,并且预设值可以根据实际情况选取,本实施例对预设值的具体取值也不做特别限定。
S406、接口服务器从说话人身份库中确定各匹配声纹索引对应的说话人身份信息。
S407、接口服务器向客户端发送相似度得分以及说话人身份信息。
其中,说话人身份库中包括多个声纹索引以及各声纹索引对应的说话人身份信息,说话人身份信息例如可以包括证件号码、姓名、年龄、职业等。也就是说,接口服务器接收各查询服务器发送的至少一个匹配声纹索引,然后可以从说话人身份库中确定各匹配声纹索引对应的说话人身份信息,向客户端发送相似度得分以及说话人身份信息。这样,用户通过客户端即可获知待查询语音对应的说话人身份信息以及相似度得分。
可选地,声纹查询请求中还包括:说话人的数量。步骤S406可以包括:
根据相似度得分从大到小的顺序,对各匹配声纹索引进行排序。
从说话人身份库中、确定排序靠前n个匹配声纹索引对应的说话人身份信息。
其中,n为说话人的数量。
接口服务器接收各查询服务器发送的至少一个匹配声纹索引的相似度得分以及对应的匹配声纹索引,然后根据相似度得分从大到小的顺序,对各匹配声纹索引进行排序,以及从说话人身份库中、确定排序靠前n个匹配声纹索引对应的说话人身份信息。也就是说,接口服务器根据客户端设置的说话人的数量,根据相似度得分从大到小的顺序,对各匹配声纹索引进行排序,根据排序靠前n个匹配声纹索引,形成结果队列,然后从说话人身份库中、查询得到该n个匹配声纹索引分别对应的说话人身份信息。
相应的,步骤S407可以包括:
接口服务器向客户端发送排序靠前n个匹配声纹索引对应的匹配声纹特征的相似度得分、以及排序靠前n个匹配声纹索引对应的说话人身份信息。
接口服务器向客户端发送排序靠前n个匹配声纹索引对应的n个匹配声纹特征的相似度得分、以及排序靠前n个匹配声纹索引分别对应的说话人身份信息。也就是,接口服务器用结果队列中的所有声纹索引到用户身份库中查询,以确定用户身份。
本实施例的声纹查询方法,接口服务器接收客户端发送的声纹查询请求,接口服务器提取待查询语音的声纹特征,并向多个查询服务器发送声纹特征,查询服务器计算待查询语音的声纹特征与声纹池中各目标声纹特征的相似度得分,查询服务器根据相似度得分,从各目标声纹特征中将相似度得分大于或等于预设值的目标声纹特征作为至少一个匹配声纹特征,查询服务器向接口服务器发送至少一个匹配声纹特征对应的相似度得分以及对应的匹配声纹索引,接口服务器从说话人身份库中确定各匹配声纹索引对应的说话人身份信息,接口服务器向客户端发送相似度得分以及说话人身份信息。在本实施例中,声纹特征和说话人身份信息隔离存储,相互间通过声纹索引相关联,声纹索引不能直接逆向获得说话人身份信息,而是需要到说话人身份库中查询。这样,如果声纹库遭到窃取,攻击方尽管获得了声纹特征,但是不能得知这些声纹特征所对应的说话人身份,无法造成更大破坏,这种方法符合零信任和微隔离的设计理念,能够达到更高的系统安全度。
图7示出了本申请实施例提供的声纹存储装置的结构示意图,声纹存储装置可以集成在图1实施例所示的查询服务器30中。如图9所示,声纹存储装置40包括:
获取模块401,用于根据所述查询服务器的计算性能,从声纹库读取与所述计算性能匹配的数量的目标声纹特征和所述目标声纹特征对应的目标声纹索引,所述声纹库中包括多个声纹特征以及各所述声纹特征对应的声纹索引;
处理模块402,用于根据所述目标声纹特征和所述目标声纹索引,创建所述查询服务器的声纹池。
可选地,所述获取模块401,具体用于:
根据所述查询服务器的计算性能以及其它查询服务器的计算性能,对所述声纹库中多个声纹索引的值域进行划分,以获取至少两个索引子集;
从所述至少两个索引子集中确定所述查询服务器对应的目标索引子集,其中,所述目标索引子集内的声纹索引的数量为与所述计算性能匹配的数量;
将所述声纹库中所述目标索引子集内的声纹索引作为所述目标声纹索引;
从所述声纹库读取所述目标声纹索引对应的目标声纹特征。
可选地,所述获取模块401,还用于:
获取多个声纹特征和各所述声纹特征对应的身份信息;
所述处理模块,还用于对所述身份信息进行哈希处理,得到所述声纹特征对应的声纹索引,根据各所述声纹特征和所述声纹特征对应的声纹索引,创建所述声纹库。
可选地,所述处理模块402,还用于:
每隔预设时间间隔查询所述声纹库中的声纹特征是否存在变更;
若所述声纹库中存在变更的声纹特征,则判断所述变更的声纹特征对应的变更声纹索引是否位于所述目标索引子集内;
若是,则根据所述变更的声纹特征以及所述变更声纹索引,对所述声纹池进行更新。
可选地,所述装置还包括:
接收模块403,用于接收接口服务器发送的待查询语音的声纹特征;
所述处理模块,还用于计算所述待查询语音的声纹特征与所述声纹池中各所述目标声纹特征的相似度得分,根据所述相似度得分,从各所述目标声纹特征中将相似度得分大于或等于预设值的目标声纹特征作为至少一个匹配声纹特征;
发送模块404,用于向所述接口服务器发送至少一个所述匹配声纹特征对应的相似度得分以及对应的匹配声纹索引。
本实施例的声纹存储装置,其实现过程和实现原理可以参见上述方法实施例中查询服务器执行的方法,在此不再赘述。
图8示出了本申请实施例提供的声纹查询装置的结构示意图,声纹查询装置可以集成在图1实施例所示的接口服务器20中。如图9所示,声纹查询装置50包括:
接收模块501,用于接收客户端发送的声纹查询请求,所述声纹查询请求包括:待查询语音;
提取模块502,用于提取所述待查询语音的声纹特征,并向多个查询服务器发送所述声纹特征,各所述查询服务器用于计算所述声纹特征与声纹池中各所述目标声纹特征的相似度得分,并从各所述目标声纹特征中确定相似度得分大于或等于预设值的至少一个匹配声纹特征;
所述接收模块501,还用于接收各所述查询服务器发送的至少一个所述匹配声纹特征对应的相似度得分以及对应的匹配声纹索引;
处理模块503,用于从说话人身份库中确定各所述匹配声纹索引对应的说话人身份信息,其中,所述说话人身份库中包括多个声纹索引以及各所述声纹索引对应的说话人身份信息;
发送模块504,用于向所述客户端发送所述相似度得分以及所述说话人身份信息。
可选地,所述声纹查询请求中还包括:说话人的数量;
所述处理模块503,具体用于:
根据相似度得分从大到小的顺序,对各所述匹配声纹索引进行排序,从所述说话人身份库中、确定排序靠前n个匹配声纹索引对应的说话人身份信息,其中,所述n为所述说话人的数量。
本实施例的声纹查询装置,其实现过程和实现原理可以参见上述方法实施例中接口服务器执行的方法,在此不再赘述。
图9示出了本申请实施例提供的查询服务器的结构示意图,如图9所示,查询服务器30包括:处理器601、存储器602和总线603,所述存储器602存储有所述处理器601可执行的机器可读指令,当查询服务器60运行时,所述处理器601与所述存储器602之间通过总线603通信,所述处理器执行所述机器可读指令,以执行上述方法实施例中查询服务器执行的方法。
图10示出了本申请实施例提供的接口服务器的结构示意图,如图10所示,接口服务器20包括:处理器701、存储器702和总线703,所述存储器702存储有所述处理器701可执行的机器可读指令,当接口服务器70运行时,所述处理器701与所述存储器702之间通过总线703通信,所述处理器执行所述机器可读指令,以执行上述方法实施例中接口服务器执行的方法。
本申请实施例还提供了一种存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考方法实施例中的对应过程,本申请中不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。
Claims (10)
1.一种声纹存储方法,其特征在于,应用于查询服务器,所述方法包括:
根据所述查询服务器的计算性能,从声纹库读取与所述计算性能匹配的数量的目标声纹特征和所述目标声纹特征对应的目标声纹索引,所述声纹库中包括多个声纹特征以及各所述声纹特征对应的声纹索引,所述查询服务器的计算性能由所述查询服务器的配置决定;
根据所述目标声纹特征和所述目标声纹索引,创建所述查询服务器的声纹池。
2.根据权利要求1所述的方法,其特征在于,所述根据所述查询服务器的计算性能,从声纹库读取与所述计算性能匹配的数量的目标声纹特征和所述目标声纹特征对应的目标声纹索引,包括:
根据所述查询服务器的计算性能以及其它查询服务器的计算性能,对所述声纹库中多个声纹索引的值域进行划分,以获取至少两个索引子集;
从所述至少两个索引子集中确定所述查询服务器对应的目标索引子集,其中,所述目标索引子集内的声纹索引的数量为与所述计算性能匹配的数量;
将所述声纹库中所述目标索引子集内的声纹索引作为所述目标声纹索引;
从所述声纹库读取所述目标声纹索引对应的目标声纹特征。
3.根据权利要求2所述的方法,其特征在于,所述根据所述查询服务器的计算性能,从声纹库读取与所述计算性能匹配的数量的目标声纹特征和所述目标声纹特征对应的目标声纹索引之前,所述方法还包括:
获取多个声纹特征和各所述声纹特征对应的身份信息;
对所述身份信息进行哈希处理,得到所述声纹特征对应的声纹索引;
根据各所述声纹特征和所述声纹特征对应的声纹索引,创建所述声纹库。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
每隔预设时间间隔查询所述声纹库中的声纹特征是否存在变更;
若所述声纹库中存在变更的声纹特征,则判断所述变更的声纹特征对应的变更声纹索引是否位于所述目标索引子集内;
若是,则根据所述变更的声纹特征以及所述变更声纹索引,对所述声纹池进行更新。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收接口服务器发送的待查询语音的声纹特征;
计算所述待查询语音的声纹特征与所述声纹池中各所述目标声纹特征的相似度得分;
根据所述相似度得分,从各所述目标声纹特征中将相似度得分大于或等于预设值的目标声纹特征作为至少一个匹配声纹特征;
向所述接口服务器发送至少一个所述匹配声纹特征对应的相似度得分以及对应的匹配声纹索引。
6.一种声纹查询方法,其特征在于,应用于接口服务器,所述方法包括:
接收客户端发送的声纹查询请求,所述声纹查询请求包括:待查询语音;
提取所述待查询语音的声纹特征,并向多个查询服务器发送所述声纹特征,各所述查询服务器用于计算所述声纹特征与声纹池中各目标声纹特征的相似度得分,并从各所述目标声纹特征中确定相似度得分大于或等于预设值的至少一个匹配声纹特征;
接收各所述查询服务器发送的至少一个所述匹配声纹特征对应的相似度得分以及对应的匹配声纹索引;
从说话人身份库中确定各所述匹配声纹索引对应的说话人身份信息,其中,所述说话人身份库中包括多个声纹索引以及各所述声纹索引对应的说话人身份信息;
向所述客户端发送所述相似度得分以及所述说话人身份信息。
7.根据权利要求6所述的方法,其特征在于,所述声纹查询请求中还包括:说话人的数量;
所述从说话人身份库中确定各所述匹配声纹索引对应的说话人身份信息,包括:
根据相似度得分从大到小的顺序,对各所述匹配声纹索引进行排序;
从所述说话人身份库中、确定排序靠前n个匹配声纹索引对应的说话人身份信息,其中,所述n为所述说话人的数量。
8.一种查询服务器,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当服务器运行时,所述处理器与所述存储器之间通过总线通信,所述处理器执行所述机器可读指令,以执行权利要求1-5任一项所述的方法。
9.一种接口服务器,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当服务器运行时,所述处理器与所述存储器之间通过总线通信,所述处理器执行所述机器可读指令,以执行权利要求6或7所述的方法。
10.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011490410.0A CN112231510B (zh) | 2020-12-17 | 2020-12-17 | 声纹存储方法、声纹查询方法、服务器及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011490410.0A CN112231510B (zh) | 2020-12-17 | 2020-12-17 | 声纹存储方法、声纹查询方法、服务器及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112231510A true CN112231510A (zh) | 2021-01-15 |
CN112231510B CN112231510B (zh) | 2021-03-16 |
Family
ID=74124164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011490410.0A Active CN112231510B (zh) | 2020-12-17 | 2020-12-17 | 声纹存储方法、声纹查询方法、服务器及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112231510B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113366567A (zh) * | 2021-05-08 | 2021-09-07 | 腾讯音乐娱乐科技(深圳)有限公司 | 一种声纹识别方法、歌手认证方法、电子设备及存储介质 |
CN113407768A (zh) * | 2021-06-24 | 2021-09-17 | 深圳市声扬科技有限公司 | 声纹检索方法、装置、系统、服务器及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060229881A1 (en) * | 2005-04-11 | 2006-10-12 | Global Target Enterprise Inc. | Voice recognition gateway apparatus |
CN101740031A (zh) * | 2010-01-21 | 2010-06-16 | 安徽科大讯飞信息科技股份有限公司 | 一种基于网络动态负载均衡的声纹识别系统及其识别方法 |
CN104834849A (zh) * | 2015-04-14 | 2015-08-12 | 时代亿宝(北京)科技有限公司 | 基于声纹识别和人脸识别的双因素身份认证方法及系统 |
CN105244031A (zh) * | 2015-10-26 | 2016-01-13 | 北京锐安科技有限公司 | 说话人识别方法和装置 |
-
2020
- 2020-12-17 CN CN202011490410.0A patent/CN112231510B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060229881A1 (en) * | 2005-04-11 | 2006-10-12 | Global Target Enterprise Inc. | Voice recognition gateway apparatus |
CN101740031A (zh) * | 2010-01-21 | 2010-06-16 | 安徽科大讯飞信息科技股份有限公司 | 一种基于网络动态负载均衡的声纹识别系统及其识别方法 |
CN104834849A (zh) * | 2015-04-14 | 2015-08-12 | 时代亿宝(北京)科技有限公司 | 基于声纹识别和人脸识别的双因素身份认证方法及系统 |
CN105244031A (zh) * | 2015-10-26 | 2016-01-13 | 北京锐安科技有限公司 | 说话人识别方法和装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113366567A (zh) * | 2021-05-08 | 2021-09-07 | 腾讯音乐娱乐科技(深圳)有限公司 | 一种声纹识别方法、歌手认证方法、电子设备及存储介质 |
CN113366567B (zh) * | 2021-05-08 | 2024-06-04 | 腾讯音乐娱乐科技(深圳)有限公司 | 一种声纹识别方法、歌手认证方法、电子设备及存储介质 |
CN113407768A (zh) * | 2021-06-24 | 2021-09-17 | 深圳市声扬科技有限公司 | 声纹检索方法、装置、系统、服务器及存储介质 |
CN113407768B (zh) * | 2021-06-24 | 2024-02-02 | 深圳市声扬科技有限公司 | 声纹检索方法、装置、系统、服务器及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112231510B (zh) | 2021-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10181168B2 (en) | Personal safety verification system and similarity search method for data encrypted for confidentiality | |
CN112231510B (zh) | 声纹存储方法、声纹查询方法、服务器及存储介质 | |
US10650274B2 (en) | Image clustering method, image clustering system, and image clustering server | |
CN109766707B (zh) | 基于区块链的数据处理方法、装置、设备和介质 | |
CN111177438B (zh) | 图像特征值的搜索方法、装置、电子设备及存储介质 | |
CN112733545A (zh) | 文本分块方法、装置、计算机设备和存储介质 | |
US10474689B1 (en) | Model score recall for machine learning systems and applications | |
CN112464234B (zh) | 一种云平台上基于svm的恶意软件检测方法 | |
CN112860993A (zh) | 兴趣点的分类方法、装置、设备、存储介质及程序产品 | |
CN111368697A (zh) | 一种信息识别方法和装置 | |
CN117369731B (zh) | 一种数据的缩减处理方法、装置、设备及介质 | |
CN114528421A (zh) | 内容审核方法、装置、电子设备及存储介质 | |
CN109190039B (zh) | 确定相似对象的方法、装置及计算机可读存储介质 | |
CN115169489A (zh) | 数据检索方法、装置、设备以及存储介质 | |
CN114547050A (zh) | 批处理内容判重方法、系统、装置、终端设备及存储介质 | |
CN114201532A (zh) | 基于esop系统的数据查询方法、装置、介质及设备 | |
JP5791666B2 (ja) | ビジュアルキーワードの動的生成装置 | |
CN113760876A (zh) | 一种数据过滤方法和装置 | |
CN110489515B (zh) | 通讯录检索的方法、服务器及存储介质 | |
CN112149481A (zh) | 一种识别方法、终端及计算机存储介质 | |
CN114095239B (zh) | 分片登录方法及装置 | |
CN117093717B (zh) | 一种相似文本聚合方法、装置、设备及其存储介质 | |
CN113360803B (zh) | 基于用户行为的数据缓存方法、装置、设备及存储介质 | |
CN110888900B (zh) | 基于去均值乘积量化的检索方法、存储介质及终端设备 | |
CN104424268B (zh) | 重复数据删除方法和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |