重庆快乐十分

一种基于语音特征融合和GMM的说话人识别方法与流程

文档序号:19069038发布日期:2019-11-06 02:50
一种基于语音特征融合和GMM的说话人识别方法与流程

本发明属于语音识别技术领域,尤其是涉及一种基于语音特征融合和GMM的说话人识别方法。



背景技术:

随着信息化、数字化时代的到来,人们对高可靠性的身份认证技术的需求也越来越高。传统的身份认证技术通常采用密码的认证方式,这种方式的安全性严重不足,而如今随着生物技术和信息技术的快速发展,说话人认证技术作为一种更先进、更便捷的信息安全技术开始广泛应用于人们的生活中。由于每个人的发音器官(如声带形状)不同的先天生理差异,以及说话习惯的不同等后天行为差异,导致每个人发出的声音不同。这些差异以某种形式存在于说话人的语音当中,因此每个人的语音都有明显的个人特性。说话人识别的关键技术,主要是语音信号的特征参数提取和识别模型的建立。目前在说话人识别中使用最多的特征是LPC倒谱系数、基音周期、MFCC、线性预测系数LPC等。从语音信号中提取到特征参数后,就需要针对特征参数建立匹配模型。目前根据各种特征而使用到的模式匹配方法包括概率统计方法、动态时间规整方法、VQ、GMM、人工神经网络方法等。本发明提出一种不同类型语音特征参数融合方法,获取新的语音特征参数,并且进行高斯混合模型的串联,优化了识别模型,从而提高说话人识别的准确性。



技术实现要素:

重庆快乐十分本发明的目的就是为了解决现有技术中利用单一语音参数进行说话人识别的准确率不高以及说话人识别系统不稳定的技术问题,提供了一种基于语音特征融合和GMM的说话人识别方法。本发明通过融合不同类型语音特征参数从而获取的新的语音特征参数,此语音特征参数具有多种类型语音特征参数各自的优势,更能表现出说话人的个性特征。在识别模型建立过程中,使用两个高斯混合模型进行串联,优化了识别模型,从而提高说话人识别的准确性。

为达到上述目的,本发明提供如下技术方案:

本发明包括语音信号的预处理过程,语音特征参数的提取、筛选和融合过程,识别模型训练过程,识别模型串联过程,说话人语音信号识别过程。

所述的过程具体步骤如下:

步骤(1)原始语音信号预处理。

录音收集每位说话人原始语音数据后,时间长度为15-20秒的,并对原始语音数据进行预处理。预处理包括语音分割、预加重、分帧、加窗、端点检测。

重庆快乐十分步骤(2)语音特征参数的提取、筛选和融合:

重庆快乐十分通过步骤(1)将每一个说话人的15秒到20秒的长语音均分成8条短语音,提取12维的线性预测倒谱系数(LPCC)、12维的感知线性预测(PLP)、1维的基音周期(Pitch Period)和1维的频谱质心(Spectral Centroid),计算两种12维语音特征参数中,每一维中不同说话人的语音特征参数方差和所有说话人中每一个说话人的语音特征参数方差的总和的比值。

重庆快乐十分在12维的LPCC和12维的PLP中,分别挑选比值较大的6维特征参数,再加上1维的基音周期和1维的频谱质心,组成14维的特征参数作为第一个高斯混合模型的训练参数。在12维的PLP特征参数中,再加入1维的基音周期,组成13维的特征参数作为第二个高斯混合模型的训练参数。

步骤(3)高斯混合模型的训练:将从每个说话人的8条短语音中获取的14维的特征参数和13维的特征参数分别作为训练参数,训练获得第一个高斯混合模型和第二个高斯混合模型。

重庆快乐十分步骤(4)高斯混合模型的串联:从每个人说话人的8条短语音中任选7条短语音,提取步骤(2)中14维的特征参数训练高斯混合模型,剩下一条作为测试数据,进行交叉测试,得到8组测试结果。根据8组测试输出的高斯混合模型决策的投票结果,确定阈值函数。此阈值函数作为串联步骤(3)中两个高斯混合模型的参数。

步骤(5)将录制的待测试的说话人语音经过步骤(1)的预处理后,提取步骤(2)中14维的特征参数输入到步骤(3)中的第一个高斯混合模型,若输出的高斯混合模型决策的投票结果满足阈值函数,则直接输出预测结果。若输出的高斯混合模型决策的投票结果不满足阈值函数,则提取步骤(2)中13维的特征参数输入到步骤(3)中的第二个高斯混合模型,经过第二个高斯混合模型决策后再输出预测结果。

所述步骤(1)预处理方法如下:

1、语音分割:使用音频处理软件将15-20秒的长语音分割成8条等长的短语音。2、预加重:由于语音信号的平均功率谱受声门激励和口鼻辐射的影响,高倍频大约在800Hz以上按6dB/倍频跌落,这就导致语音信号的功率谱随着频率的增加而减小,能量主要集中在低频部分,高频部分的能量很小,相比于低频,高频部分的频谱难以获取。为了能提升高频部分,通常需要对语音信号进行预加重处理,预加重使信号频谱均匀分布在整个频带里,维持低频到高频的平稳过渡,这样就可以用相同的信噪比获取频谱,有利于对信号的频谱进行分析。语音信号的预加重借助于一阶高通滤波器实现,高通滤波器可以过滤掉信号中的低频部分,并对信号的高频部分的频谱进行提升。其传递函数表示为:H(z)=1-αz-1,α为预加重系数,一般取0.9-1之间。3、分帧加窗:由于语音信号具有短时平稳性,需要对语音信号进行分帧加窗处理,便于用短时分析技术对语音信号进行处理。通常情况下,每秒钟的帧数约为33~100帧,分帧既可以采用连续分段的方法,也可以采用交叠分段的方法,后者可以使帧与帧之间平滑过渡,保持其连续性。前一帧和后一帧的交叠部分称为帧移,帧移和帧长的比值一般取为(0~0.5)。一边将语音信号用可移动有限长度的窗口进行截取即分帧,通常采用的窗函数有矩形窗(Rectangular)、汉明窗(Hamming)、汉宁窗(Hanning)等。4、端点检测,端点检测的目的就是检测出语音信号中语音的起始点与结束点,找出信号中的有效语音段。在说话人识别中,对语音信号进行端点检测非常重要,准确找到语音的起始点与结束点,能排除非语音段减少处理的时间,提高处理的效率,进而提升说话人识别系统的性能。结合短时能量和短时过零率的双门限法是结合短时能量与短时过零率两种特征进行检测。该方法首先给短时能量和短时平均过零率设置两个门限,两个门限值一大一小,高门限与低门限。端点检测过程分为四段:静音段、过渡段、语音端、结束。当短时能量与短时平均过零率均低于低门限,就处于静音段,当两者有一个超过低门限,就确认进入过渡段,当短时能量与短时平均过零率中有一个超过高门限,就确认进入语音段并标记此处为语音起始点,直到两者均低于低门限,就确认结束并标记此处为语音结束点,起始点与结束点之间的语音段就是端点检测获取的有效语音信息。

所述步骤(2)语音特征参数的提取、筛选和融合处理方法如下:

在通过步骤(1)得到每一个说话人经过预处理的8条短语音后,提取12维的线性预测倒谱系数(LPCC)、12维的感知线性预测(PLP)、1维的基音周期(Pitch Period)和1维的频谱质心(Spectral Centroid),计算两种12维语音特征参数中,每一维中不同说话人的语音特征参数方差、所有说话人中每一个说话人的语音特征参数方差的总和、以及它们的比值r,计算公式如下:

重庆快乐十分公式中,N表示说话人总数,mi表示第i个人在某一维的特征参数平均值,mall表示所有人在某一维特征参数平均值,Cinter表示不同说话人在某一维的语音特征参数方差,n表示每一个说话人的短语音数量,在步骤(1)中把每个人的语音分割成了8条短语音,所以这里n=8,mj,i表示第i个人的第j条短语音在某一维的特征参数平均值,Cintra表示所有说话人中每一个说话人的语音特征参数方差的总和。Cinter越大,说明不同的说话人在这一维上的特征差异越大。Cintra越小,说明同一个说话人在这一维度上的特征差异越小。所以当r值越大,说明这一维的特征参数的识别特征越明显。在12维的LPCC和12维的PLP中,分别挑选r值较大的6维特征参数,再加上1维的基音周期和1维的频谱质心,组成14维的特征参数作为第一个高斯混合模型的训练参数。在12维的PLP特征参数中,再加入1维的基音周期,组成13维的特征参数作为第二个高斯混合模型的训练参数。

重庆快乐十分所述步骤(3)高斯混合模型的训练方法如下:

步骤(3)高斯混合模型的训练:将从每个说话人的8条短语音中获取的14维的特征参数和13维的特征参数分别作为训练参数,训练获得第一个高斯混合模型和第二个高斯混合模型。高斯混合模型的参数估计就是在某种准则下获取模型参数的过程,其实就是对模型参数进行训练的过程,也就是求解均值μ、协方差∑、权值ω的过程,其目的就是在给出观察序列后对高斯混合模型的参数进行估计。参数估计中用的最多的就是最大似然估计的方法,它的基本思想是在给出观察序列X后,通过计算找到高斯混合模型似然度最大时的模型参数λ={μ,∑,ω},这样λ就是模型的最佳参数,λ能在最大程度上描述观察序列的分布情况。

步骤(4)中所述的高斯混合模型串联的目的是为了通过阈值函数最大程度筛选出第一个高斯混合模型识别时有可能出错的测试样本,使该测试样本能重新通过第二个高斯混合模型进行识别,尽可能将第一个高斯模型识别错误的测试样本通过第二个高斯混合模型进行第二次识别后,实现正确识别,从而提高系统的识别准确率。阈值函数的确定方法如下:

重庆快乐十分首先从步骤(1)中每个人说话人的8条短语音中任选7条短语音,提取步骤(2)中14维的特征参数训练一个高斯混合模型,剩下一条作为测试数据。本系统中使用高斯混合模型的机制是为N个说话人中的每个说话人分别对应建立一个λ={μ,∑,ω}参数集合,当一条测试语音经过预处理可以分为a帧,把每一帧的数据与这N个参数集合进行匹配,与这一帧匹配度最高的参数集合获得这一帧的投票,该条测试语音的所有帧都输入高斯混合模型进行决策。决策完毕后,a帧对应a张投票会投在N个参数集合上。那么得票数最高的参数集合即对应该高斯混合模型判别的该条测试语音的说话人。高斯混合模型输出所有参数集合中得最高的得票数Vtop1,第二高的得票数Vtop2,总票数Vtotal。计算如下两个参数:X=Vtop1/Vtotal,Y=(Vtop1-Vtop2)/Vtotal。X越大,说明该测试语音与最佳候选的参数集合之间的匹配程度越大,正确匹配的可能性越大。Y越大,说明最匹配的参数集合是说话者的可能性越大。我们将8条语音进行交叉测试,得到8组测试结果。我们筛选出每组测试结果中判断错误的测试样本,记录它们的输出数据X,Y。在每组测试样本中,确定每组Xmax和Ymax时,我们将最大值与第二大值进行比较。如果差值大于最大值的5%,则丢弃值最大的点,取第二大的点作为Xmax或Ymax。再次比较这些点,直到差值满足要求为止。在确定下8组测试中各自的Xmax和Ymax后,挑选出8组中最小的Xmax和Ymax,阈值函数设为这样做是为了尽量少地筛选出第一个高斯混合模型正确识别的测试样本。在步骤(5)的识别过程中,当一个测试样本经过第一个高斯混合模型判别后,输出的X,Y不满足阈值函数,则进入第二个高斯混合模型继续判别。

所述步骤(5)将录制的待测试的说话人语音经过步骤(1)的预处理后,提取步骤(2)中14维的特征参数输入到步骤(3)中的第一个高斯混合模型,若输出的X,Y满足阈值函数,则直接输出预测结果。若输出的X,Y不满足阈值函数,则提取步骤(2)中13维的特征参数输入到步骤(3)中的第二个高斯混合模型,经过第二个高斯混合模型决策后再输出预测结果。

与现有技术相比,本发明的有益效果在于:

本发明提出的融合不同类型语音特征参数从而获取的新的语音特征参数,此语音特征参数具有多种类型语音特征参数各自的优势,更能表现出说话人的个性特征,有效提高了说话人识别的准确率。

重庆快乐十分通过阈值函数将两个高斯混合模型串联进行识别,相比较单个高斯混合模型,提高了说话人识别的准确率。

附图说明

重庆快乐十分图1为本发明的实现总体框图。

具体实施方式

以下结合附图对本发明作进一步详细描述。

本发明提出一种基于语音特征融合和GMM的说话人识别方法,其实现总体框图如图1所示,具体包括如下5个步骤:

步骤(1)原始语音信号预处理。具体操作如下:

1、语音分割:使用音频处理软件将15-20秒的长语音分割成8条等长的短语音。2、预加重:语音信号的预加重借助于一阶高通滤波器实现,高通滤波器可以过滤掉信号中的低频部分,并对信号的高频部分的频谱进行提升。其传递函数表示为:H(z)=1-αz-1重庆快乐十分,α为预加重系数,一般取0.9-1之间。3、分帧加窗:由于语音信号具有短时平稳性,需要对语音信号进行分帧加窗处理,便于用短时分析技术对语音信号进行处理。我们使用交叠分段的方法,使帧与帧之间平滑过渡,保持其连续性。我们令30ms的时间长度作为帧长,10ms作为帧移。将语音信号用可移动有限长度的窗口进行截取即分帧,使用的窗函数为汉明窗(Hamming)。4、端点检测,结合短时能量和短时过零率的双门限法是结合短时能量与短时过零率两种特征进行检测。该方法首先给短时能量和短时平均过零率设置两个门限,两个门限值一大一小,高门限与低门限。端点检测过程分为四段:静音段、过渡段、语音端、结束。当短时能量与短时平均过零率均低于低门限,就处于静音段,当两者有一个超过低门限,就确认进入过渡段,当短时能量与短时平均过零率中有一个超过高门限,就确认进入语音段并标记此处为语音起始点,直到两者均低于低门限,就确认结束并标记此处为语音结束点,起始点与结束点之间的语音段就是端点检测获取的有效语音信息。

步骤(2)对预处理后的语音进行特征参数的提取、筛选和融合。

重庆快乐十分在通过步骤(1)得到每一个说话人经过预处理的8条短语音后,提取12维的线性预测倒谱系数(LPCC)、12维的感知线性预测(PLP)、1维的基音周期(Pitch Period)和1维的频谱质心(Spectral Centroid),计算两种12维语音特征参数中,每一维中不同说话人的语音特征参数方差、所有说话人中每一个说话人的语音特征参数方差的总和、以及它们的比值r,计算公式如下:

重庆快乐十分公式中,N表示说话人总数,mi表示第i个人在某一维的特征参数平均值,mall表示所有人在某一维特征参数平均值,Cinter表示不同说话人在某一维的语音特征参数方差,n表示每一个说话人的短语音数量,在步骤(1)中把每个人的语音分割成了8条短语音,所以这里n=8,mj,i表示第i个人的第j条短语音在某一维的特征参数平均值,Cintra表示所有说话人中每一个说话人的语音特征参数方差的总和。在12维的LPCC和12维的PLP中,分别挑选r值较大的6维特征参数,再加上1维的基音周期和1维的频谱质心,组成14维的特征参数作为第一个高斯混合模型的训练参数。在12维的PLP特征参数中,再加入1维的基音周期,组成13维的特征参数作为第二个高斯混合模型的训练参数。

步骤(3)将训练数据输入高斯混合模型进行模型的训练。

我们将从每个说话人的8条短语音中获取的14维的特征参数和13维的特征参数分别作为训练参数,训练获得第一个高斯混合模型和第二个高斯混合模型。高斯混合模型的参数估计就是在某种准则下获取模型参数的过程,其实就是对模型参数进行训练的过程,也就是求解均值μ、协方差∑、权值ω的过程,其目的就是在给出观察序列后对高斯混合模型的参数进行估计。通过计算找到高斯混合模型似然度最大时的模型参数λ={μ,∑,ω},这样λ就是模型的最佳参数,λ能在最大程度上描述观察序列的分布情况。

步骤(4)确定阈值函数,串联两个高斯混合模型。具体操作如下:

首先从步骤(1)中每个人说话人的8条短语音中任选7条短语音,提取步骤(2)中14维的特征参数训练一个高斯混合模型,剩下一条作为测试数据。高斯混合模型输出所有参数集合中得最高的得票数Vtop1,第二高的得票数Vtop2,总票数Vtotal。计算如下两个参数:X=Vtop1/Vtotal,Y=(Vtop1-Vtop2)/Vtotal。我们将8条语音进行交叉测试,得到8组测试结果。我们筛选出每组测试结果中判断错误的测试样本,记录它们的输出数据X,Y。在每组测试样本中,确定每组Xmax和Ymax时,我们将最大值与第二大值进行比较。如果差值大于最大值的5%,则丢弃值最大的点,取第二大的点作为Xmax或Ymax。再次比较这些点,直到差值满足要求为止。在确定下8组测试中各自的Xmax和Ymax后,挑选出8组中最小的Xmax和Ymax,阈值函数设为在步骤(5)的识别过程中,当一个测试样本经过第一个高斯混合模型判别后,输出的X,Y不满足阈值函数,则进入第二个高斯混合模型继续判别。

重庆快乐十分步骤(5)将录制的待测试的说话人语音经过步骤(1)的预处理后,提取步骤(2)中14维的特征参数输入到步骤(3)中的第一个高斯混合模型,若输出的X,Y满足阈值函数,则直接输出预测结果。若输出的X,Y不满足阈值函数,则提取步骤(2)中13维的特征参数输入到步骤(3)中的第二个高斯混合模型,经过第二个高斯混合模型决策后再输出预测结果。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1
我是后台设置的统计JS代码