语音对比方法、终端及计算机可读存储介质与流程

文档序号:15182875发布日期:2018-08-17 06:36阅读:180来源:国知局
本发明涉及通信
技术领域
:,尤其涉及一种语音对比方法、终端及计算机可读存储介质。
背景技术
::随着语音识别技术的不断发展,支持语音识别的应用也越来越多,比如语音开锁,语音支付等等。但在语音识别技术的应用中,其中涉及非常重要的一步就是验证语音与声纹库中n个注册语音的比对。目前传统的语音比对是利用1比n系统,然而1比n系统在识别时,识别语音的i-vector要和声纹库中的n个语音的i-vector(特征语音向量)分别进行比对,一共要有n次计算,耗费大量时间,导致比对效率低下,进而不利于语音识别技术的普及和应用。技术实现要素:有鉴于此,本发明提出一种语音对比方法、终端及计算机可读存储介质,通过实施上述方式,可以克服现有声纹系统在识别时要和声纹库中的n个人分别进行比对,耗费大量时间的弊端,进而提升语音识别的效率,促进语音识别技术的普及和产业化发展。首先,为实现上述目的,本发明提出一种终端,所述移动终端包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的语音对比程序,所述语音对比程序被所述处理器执行时实现如下步骤:计算注册语音的第一特征语音向量;利用k-means聚类将所述第一特征语音向量聚类为k类;获取k类中每一类的质心,所述质心为所述质心所属类中的一个第一特征语音向量;获取用户的验证语音并计算所述验证语音的第二特征语音向量;将所述第二特征语音向量分别与所述每一类的质心进行比对;根据比对结果判断所述验证语音所属的类别;当判断出所述验证语音所属的类别后,将所述第二特征语音向量分别与所述验证语音所属的类别中的所有所述第一特征语音向量进行比对;输出比对结果。可选地,所述处理器在执行所述计算注册语音的第一特征语音向量的步骤时,具体执行如下步骤:使用mfcc方法提取所述注册语音中每帧语音的mfcc特征并组成第一矩阵;使用ubm通用背景模型和语音向量提取器筛选出所述第一矩阵中最核心的特征,组成所述第一特征语音向量;所述计算所述验证语音的第二特征语音向量的步骤时,具体执行如下步骤:使用mfcc方法分别提取所述验证语音中每帧语音的mfcc特征并组成第二矩阵;使用ubm通用背景模型和语音向量提取器筛选出所述第二矩阵中最核心的特征,组成所述第二特征语音向量。可选地,所述处理器还用于在执行所述利用k-means聚类将所述第一特征语音向量聚类为k类的步骤时,具体执行如下步骤:从所述第一特征语音向量中选出k个所述第一特征语音向量作为k-means聚类的样本;以所述k-means聚类的样本中k个所述第一特征语音向量为聚类中心;将所有所述第一特征语音向量中与任何一个所述聚类中心距离最近的所述第一特征向量聚为一类,进而将所有所述第一特征语音向量聚类为k类。可选地,所述处理器在执行所述将所述第二特征语音向量分别与所述每一类的质心进行比对的步骤时,具体执行如下步骤:利用向量点积算法和plda算法对所述第二特征语音向量和所述每一类的质心进行两两对比打分。此外,为实现上述目的,本发明还提供一种语音对比方法,应用于终端,所述方法包括:计算注册语音的第一特征语音向量;利用k-means聚类将所述第一特征语音向量聚类为k类;获取k类中每一类的质心,所述质心为所述质心所属类中的一个第一特征语音向量;获取用户的验证语音并计算所述验证语音的第二特征语音向量;将所述第二特征语音向量分别与所述每一类的质心进行比对;根据比对结果判断所述验证语音所属的类别;当判断出所述验证语音所属的类别后,将所述第二特征语音向量分别与所述验证语音所属的类别中的所有所述第一特征语音向量进行比对;输出比对结果。可选地,所述计算注册语音的第一特征语音向量的步骤具体包括:使用mfcc方法提取所述注册语音中每帧语音的mfcc特征并组成第一矩阵;使用ubm通用背景模型和语音向量提取器筛选出所述第一矩阵中最核心的特征,组成所述第一特征语音向量;所述计算所述验证语音的第二特征语音向量的步骤时,具体执行如下步骤:使用mfcc方法分别提取所述验证语音中每帧语音的mfcc特征并组成第二矩阵;使用ubm通用背景模型和语音向量提取器筛选出所述第二矩阵中最核心的特征,组成所述第二特征语音向量。可选地,所述利用k-means聚类将所述第一特征语音向量聚类为k类的步骤具体包括:从所述第一特征语音向量中选出k个所述第一特征语音向量作为k-means聚类的样本;以所述k-means聚类的样本中k个所述第一特征语音向量为聚类中心;将所有所述第一特征语音向量中与任何一个所述聚类中心距离最近的所述第一特征向量聚为一类,进而将所有所述第一特征语音向量聚类为k类。可选的,所述将所述第二特征语音向量分别与所述每一类的质心进行比对的步骤具体包括:利用向量点积算法和plda算法对所述第二特征语音向量和所述每一类的质心进行两两对比打分。可选的,所述根据比对结果判断所述验证语音所属的类别的步骤具体包括:从所述比对结果中选择分数最低的两两对比打分;将所述验证语音归类到分数最低的两两对比打分对应的类别。进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有语音对比程序,所述语音对比程序可被至少一个处理器执行,以使所述至少一个处理器执行如上所述的语音对比方法的步骤。相较于现有技术,本发明所提出的语音对比方法、终端及计算机可读存储介质,首先计算注册语音的第一特征语音向量;然后,利用k-means聚类将所述第一特征语音向量聚类为k类;接着,获取k类中每一类的质心,所述质心为所述质心所属类中的一个第一特征语音向量;以及,获取用户的验证语音并计算所述验证语音的第二特征语音向量;最后,将所述第二特征语音向量分别与所述每一类的质心进行比对,根据比对结果判断所述验证语音所属的类别,当判断出所述验证语音所属的类别后,将所述第二特征语音向量分别与所述验证语音所属的类别中的所有所述第一特征语音向量进行比对,输出比对结果。这样,可以解决现有声纹系统在识别时要和声纹库中的n个人分别进行比对,耗费大量时间的弊端,进而提升语音识别的效率,促进语音识别技术的普及和产业化发展。而且,大幅度减少计算时间,使终端能够实时返回结果。附图说明图1是实现本发明各个实施例的一种终端的硬件结构示意图;图2是本发明实施例提供的一种通信网络系统架构图;图3是本发明语音对比程序一实施例的程序模块图;图4为本发明语音对比方法一实施例的流程图。本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(personaldigitalassistant,pda)、便捷式媒体播放器(portablemediaplayer,pmp)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字tv、台式计算机等固定终端。后续描述中将以移动终端为例进行说明,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。请参阅图1,其为实现本发明各个实施例的一种终端100的硬件结构示意图,该终端100可以包括:rf(radiofrequency,射频)单元101、wifi模块102、音频输出单元103、a/v(音频/视频)输入单元104、传感器105、显示单元106、用户输入单元107、接口单元108、存储器109、处理器110、以及电源111等部件。本领域技术人员可以理解,图1中示出的终端100的结构并不构成对终端100的限定,终端100可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。尽管图1未示出,终端100还可以包括蓝牙模块等,在此不再赘述。为了便于理解本发明实施例,下面对本发明的终端100所基于的通信网络系统进行描述。请参阅图2,图2为本发明实施例提供的一种通信网络系统架构图,该通信网络系统为通用移动通信技术的lte系统,该lte系统包括依次通讯连接的ue(userequipment,用户设备)201,e-utran(evolvedumtsterrestrialradioaccessnetwork,演进式umts陆地无线接入网)202,epc(evolvedpacketcore,演进式分组核心网)203和运营商的ip业务204。基于上述终端100硬件结构以及通信网络系统,提出本发明方法各个实施例。首先,本发明提出一种语音对比程序300,并通过上述图1中所述终端100并结合可能的通信网络执行所述语音对比程序300进行,进而实现相应功能。参阅图3所示,是本发明语音对比程序300第一实施例的程序模块图。本实施例中,所述的语音对比程序300包括一系列的存储于存储器109上的计算机程序指令,当该计算机程序指令被处理器110执行时,可以实现本发明各实施例的语音的对比操作。在一些实施例中,基于该计算机程序指令各部分所实现的特定的操作,所述语音对比程序300可以被划分为一个或多个模块。例如,在图3中,所述的语音对比程序300可以被分割成计算模块301、聚类模块302、质心获取模块303、比对模块304以及判断模块305。其中:所述计算模块301,用于计算注册语音的第一特征语音向量。所述注册语音可以通过终端100上的语音输入设备进行获取,比如麦克风,当然也可以通过通信网络从远端的语音获取设备上进行注册语音的获取,本发明对此并不做限定。在本实施方式中,所述计算模块301在计算注册语音的第一特征语音向量的步骤具体包括:使用mfcc方法提取所述注册语音中每帧语音的mfcc特征并组成第一矩阵;使用ubm和语音向量提取器(i-vectorextractor)筛选出所述第一矩阵中最核心的特征,组成所述第一特征语音向量。其中,mfcc是mel-frequencycepstralcoefficients的缩写,包含两个关键步骤:转化到梅尔频率,然后进行倒谱分析。在本实施方式中,先对每一份语音进行语音分帧,获取多个帧的语音频谱;再将上述获取的频谱通过mel滤波器组得到mel频谱,其中mel滤波器组可以将不统一的频率转化到统一的频率;最后在mel频谱上面进行倒谱分析,获得mel频率倒谱系数mfcc,这个mfcc就是这帧语音的特征,其中所谓倒谱分析即为对mel频谱取对数,再做逆变换,其中实际逆变换一般是通过dct离散余弦变换来实现,并取dct后的第2个到第13个系数作为mfcc系数。如此,将每一帧语音的mfcc组成一个向量矩阵,并通过背景模型(ubm)和特征语音向量(i-vector)提取器(extractor)筛选出所述矩阵中最核心的向量,将该向量作为所述语音的特征语音向量,其中通过背景模型(ubm)和特征语音向量(i-vector)提取器(extractor)筛选出所述矩阵中最核心的向量属于向量矩阵计算的现有数据算法,本文便不再多做赘述。所述聚类模块302,用于利用k-means聚类将所述第一特征语音向量聚类为k类。在本实施方式中,所述聚类模块302利用k-means聚类将所述第一特征语音向量聚类为k类的步骤具体包括:从所述第一特征语音向量中选出k个所述第一特征语音向量作为k-means聚类的样本;以所述k-means聚类的样本中k个所述第一特征语音向量为聚类中心;将所有所述第一特征语音向量中与任何一个所述聚类中心距离最近的所述第一特征向量聚为一类,进而将所有所述第一特征语音向量聚类为k类。所述质心获取模块303,用于获取k类中每一类的质心,所述质心为所述质心所属类中的一个第一特征语音向量。所述计算模块301还用于获取用户的验证语音并计算所述验证语音的第二特征语音向量。在本实施方式中,所述质心获取模块303从k类中每一类的质心,而所谓的质心实质上是该质心所属类别中个一个第一特征语音向量,即可以用这么一个质心表示其所属类别。计算模块301在计算所述验证语音的第二特征语音向量的步骤具体包括:使用mfcc方法分别提取所述验证语音中每帧语音的mfcc特征并组成第二矩阵;使用ubm(通用背景模型)和语音向量提取器(i-vectorextractor)筛选出所述第二矩阵中最核心的特征,组成所述第二特征语音向量。所述比对模块304,用于将所述第二特征语音向量分别与所述每一类的质心进行比对。在本实施方式中,所述比对模块304具体是利用dot-product(向量点积)算法和plda算法对所述第二特征语音向量和所述每一类的质心进行两两对比打分。其中,向量点积算法和plda算法属于一种现有的算法,本文便不再多做赘述。所述判断模块305,用于根据比对结果判断所述验证语音所属的类别。在本实施方式中,判断模块305根据比对结果判断所述验证语音所属的类别的步骤具体包括:从所述比对结果中选择分数最低的两两对比打分;将所述验证语音归类到分数最低的两两对比打分对应的类别,即两两对比打分中分数最低对应质心所述的类别。所述比对模块304还用于当判断出所述验证语音所属的类别后,将所述第二特征语音向量分别与所述验证语音所属的类别中的所有所述第一特征语音向量进行比对,并输出比对结果。在本实施方式中,上述质心本身就是一个第一语音特征向量(i-vector),而将识别语音的第二特征语音向量i-vector与k个质心的i-vector进行比对,选择最相近的一类,即选择两两对比打分最低的质心所属的一类,则判定该识别语音属于此类。此时只需进行k次比对,节省大量时间。当然在选择完验证语音归属于哪一类后,将识别语音第二语音特征向量i-vector与所在类别中的其他每个第一特征语音向量i-vector进行一一比对,得到距离最近的第二语音特征向量i-vector即为与识别语音最为相似的第二语音特征向量i-vector,则二者来源于同一说话人语音的可能性最大。通过上述程序模块301-305,本发明所提出的语音对比程序300,首先计算注册语音的第一特征语音向量;然后,利用k-means聚类将所述第一特征语音向量聚类为k类;接着,获取k类中每一类的质心,所述质心为所述质心所属类中的一个第一特征语音向量;以及,获取用户的验证语音并计算所述验证语音的第二特征语音向量;最后,将所述第二特征语音向量分别与所述每一类的质心进行比对,根据比对结果判断所述验证语音所属的类别,当判断出所述验证语音所属的类别后,将所述第二特征语音向量分别与所述验证语音所属的类别中的所有所述第一特征语音向量进行比对,输出比对结果。这样,可以解决现有声纹系统在识别时要和声纹库中的n个人分别进行比对,耗费大量时间的弊端,进而提升语音识别的效率,促进语音识别技术的普及和产业化发展。此外,本发明还提出一种语音对比方法。参阅图4所示,是本发明语音对比方法第一实施例的实施流程示意图。在本实施例中,根据不同的需求,图4所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。步骤s401,计算注册语音的第一特征语音向量。在本实施方式中,所述终端100在计算注册语音的第一特征语音向量的步骤具体包括:使用mfcc方法提取所述注册语音中每帧语音的mfcc特征并组成第一矩阵;使用ubm和语音向量提取器(i-vectorextractor)筛选出所述第一矩阵中最核心的特征,组成所述第一特征语音向量。其中,mfcc是mel-frequencycepstralcoefficients的缩写,包含两个关键步骤:转化到梅尔频率,然后进行倒谱分析。在本实施方式中,先对每一份语音进行语音分帧,获取多个帧的语音频谱;再将上述获取的频谱通过mel滤波器组得到mel频谱,其中mel滤波器组可以将不统一的频率转化到统一的频率;最后在mel频谱上面进行倒谱分析,获得mel频率倒谱系数mfcc,这个mfcc就是这帧语音的特征,其中所谓倒谱分析即为对mel频谱取对数,再做逆变换,其中实际逆变换一般是通过dct离散余弦变换来实现,并取dct后的第2个到第13个系数作为mfcc系数。如此,将每一帧语音的mfcc组成一个向量矩阵,并通过背景模型(ubm)和特征语音向量(i-vector)提取器(extractor)筛选出所述矩阵中最核心的向量,将该向量作为所述语音的特征语音向量,其中通过背景模型(ubm)和特征语音向量(i-vector)提取器(extractor)筛选出所述矩阵中最核心的向量属于向量矩阵计算的现有数据算法,本文便不再多做赘述。步骤s402,利用k-means聚类将所述第一特征语音向量聚类为k类。在本实施方式中,所述终端100利用k-means聚类将所述第一特征语音向量聚类为k类的步骤具体包括:从所述第一特征语音向量中选出k个所述第一特征语音向量作为k-means聚类的样本;以所述k-means聚类的样本中k个所述第一特征语音向量为聚类中心;将所有所述第一特征语音向量中与任何一个所述聚类中心距离最近的所述第一特征向量聚为一类,进而将所有所述第一特征语音向量聚类为k类。步骤s403,获取k类中每一类的质心,所述质心为所述质心所属类中的一个第一特征语音向量。在本实施方式中,所述终端100从k类中每一类的质心,而所谓的质心实质上是该质心所属类别中一个第一特征语音向量,即可以用一个质心表示其所属类别。步骤s404,获取用户的验证语音并计算所述验证语音的第二特征语音向量。所述终端100在计算所述验证语音的第二特征语音向量的步骤具体包括:使用mfcc方法分别提取所述验证语音中每帧语音的mfcc特征并组成第二矩阵;使用ubm(通用背景模型)和语音向量提取器(i-vectorextractor)筛选出所述第二矩阵中最核心的特征,组成所述第二特征语音向量。步骤s405,将所述第二特征语音向量分别与所述每一类的质心进行比对。在本实施方式中,所述终端100具体是利用dot-product(向量点积)算法和plda算法对所述第二特征语音向量和所述每一类的质心进行两两对比打分。其中,向量点积算法和plda算法属于一种现有的算法,本文便不再多做赘述。步骤s406,用于根据比对结果判断所述验证语音所属的类别。在本实施方式中,所述终端100根据比对结果判断所述验证语音所属的类别的步骤具体包括:从所述比对结果中选择分数最低的两两对比打分;将所述验证语音归类到分数最低的两两对比打分对应的类别,即两两对比打分中分数最低对应质心所述的类别。步骤s407,当判断出所述验证语音所属的类别后,将所述第二特征语音向量分别与所述验证语音所属的类别中的所有所述第一特征语音向量进行比对,并输出比对结果。在本实施方式中,上述质心本身就是一个第一语音特征向量(i-vector),而将识别语音的第二特征语音向量i-vector与k个质心的i-vector进行比对,选择最相近的一类,即选择两两对比打分最低的质心所属的一类,则判定该识别语音属于此类。此时只需进行k次比对,节省大量时间。当然在选择完验证语音归属于哪一类后,将识别语音第二语音特征向量i-vector与所在类别中的其他每个第一特征语音向量i-vector进行一一比对,得到距离最近的第二语音特征向量i-vector即为与识别语音最为相似的第二语音特征向量i-vector,则二者来源于同一说话人语音的可能性最大。通过上述步骤s401-407,本发明所提出的语音对比方法,首先计算注册语音的第一特征语音向量;然后,利用k-means聚类将所述第一特征语音向量聚类为k类;接着,获取k类中每一类的质心,所述质心为所述质心所属类中的一个第一特征语音向量;以及,获取用户的验证语音并计算所述验证语音的第二特征语音向量;最后,将所述第二特征语音向量分别与所述每一类的质心进行比对,根据比对结果判断所述验证语音所属的类别,当判断出所述验证语音所属的类别后,将所述第二特征语音向量分别与所述验证语音所属的类别中的所有所述第一特征语音向量进行比对,输出比对结果。这样,可以解决现有声纹系统在识别时要和声纹库中的n个人分别进行比对,耗费大量时间的弊端,进而提升语音识别的效率,促进语音识别技术的普及和产业化发展。本发明还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有语音对比程序,所述语音对比程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的语音对比方法的步骤。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的
技术领域
:,均同理包括在本发明的专利保护范围内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1