基于说话人声音识别的技术研究_第1页
基于说话人声音识别的技术研究_第2页
基于说话人声音识别的技术研究_第3页
基于说话人声音识别的技术研究_第4页
基于说话人声音识别的技术研究_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数字信号处理课程设计报告题目:基于声音的说话人身份识别技术探讨学院:信息工程学院专业:通信工程指导老师:符茂胜指导时间:2014.12.22-2014.12.28姓名(学号)承担任务艾洲(2012014001)MATLAB程序编写与调试、文档编写、资料搜集王玉贵(2012014035)PPT制作、文档编写、资料搜集余文正(2012014040PPT制作、文档编写、资料搜集宁文雅(2012014025)文档编写、资料搜集刘安邦(2012014020)文档编写、资料搜集汪中日(2012014031)文档编写、资料搜集指导教师评价意见成绩书目一、背景 1二、设计目的 1三、设计基本原理 21.说话人识别的分类 22.说话人识别的基本原理和系统结构 3四、模式匹配与特征提取 41.模式匹配运用方法: 42.特征提取 52.1常用的特征参数 52.2语音的倒谱分析(MFCC)简介 52.3MFCC倒谱系数及其提取算法 62.4求取MFCC系数的详细算法和步骤 8五、模式识别及算法优化 111. GMM模型的基本概念 112.GMM模型的参数估计 122.1EM算法的计算 133.算法优化(MFCC中加入能量信息) 15六、试验代码及设计分析 161.试验代码 162.设计分析 162.1问题的分析 17七、试验体会及总结 17八、参考文献 18一、背景伴随着全球化、网络化、信息化、数字化时代的到来,我们对高牢靠性的身份验证技术与身份识别技术的需求也日益增长。传统的以密码为特征的身份认证技术暴露出巨大的弊端,很难满意高平安性和长效平安性的要求,而在生物学和信息科学高度发展的今日,生物认证技术作为一种便捷、先进的信息平安技术已经在现实生活中得到广泛的应用。这是依据人体自身的生理特征(指纹、手形、脸部、虹膜)和行为特征(声音、签名)来识别身份的技术,它是集光学、传感技术、红外扫描和计算机技术于一身的第三代身份验证技术,能满意现代社会对于身份鉴别的精确性、平安性与好用性的更高要求。在信号检测与处理、模式识别、人工智能、机器学习等理论与技术快速发展的推动下,不久的将来,生物认证技术必将进入一个光辉的时代。比尔盖茨曾经预言“以人类生物特征进行身份验证的生物识别技术,在今后数年内将成为IT产业最为重要的技术革命。”语音是人的自然属性之一,由于说话人发声器官的生理差异以及后天形成的行为差异,每个人的语音都带有剧烈的个人色调,这使得通过分析语音信号来识别说话人成为可能。用语音来鉴别说话人的身份有着很多独特的优点,如语音是人的固有特征,不会丢失或遗忘;语音信号的采集便利,系统设备的成本低;另外利用电话网还可以实现远程客户服务等等。近年来,利用语音特征进行身份鉴别的说话人识别(也叫说话人识别)在生物认证技术领域中越来越受到探讨者的关注。二、设计目的说话人识别(SpeakerRecognition),是近年来兴起的一种生物识别技术,说话人识别以其独特的便利性、经济性和精确性等优势受到世人瞩目。近年来,随着科学技术的发展,说话人识别技术已经得到了极大的发展,它在公安侦察、声控系统、医疗诊断、电子金融等行业和领域有着极其广袤的市场应用前景。说话人识别依据语音波形中反映说话人生理和行为特征的语音参数,自动识别说话人身份。与语音识别不同,说话人识别技术并不留意语音信号中的语义内容,而是希望从语音信号中提取出个人的信息特征。说话人识别有几个关键技术:首先是特征选取的问题,从声学或者统计学的角度从声音信号中提取某些特征参数,用这些特征参数来描述说话人的声音特征。其次是识别模型,用机器学习模型去学习、记忆说话人特征,从而达到识别的目的。基于基本说话人识别理论和技术的探讨,本文基于Mel倒谱系数(MFCC)语音特征参数,采纳人工神经网络作为识别模型,探讨设计了一个说话人识别的原型系统。MFCC是目前运用最广泛的语音特征之一,具有计算简洁、区分实力好等突出的优点.三、设计基本原理1.说话人识别的分类说话人识别按其最终完成的任务可以分成两类:说话人确认(SpeakerVerification,简称SV)和说话人辨识(SpeakerIdentification,简称SI)。本质上它们都是依据说话人所说的测试语句或关键词,从中提取与说话人本人特征有关的信息,再与存储的参考模型比较,做出正确的推断。不过说话人确认是确认一个人的身份,只涉及一个特定的参考模型和待识别模式之间的比较,系统只作出“是”或“不是”的二元判决,如下第一幅图所示,可表示为:f(X,i)={0,1};而对于说话人辨识,系统则须要在一个指定人群当中,确定某测试语音是其中哪一个说话人发出的,有时还要对这个人以外的语音做出拒绝的判别。如下其次幅所示,可表示为:f(x)={1,2,,N},由于须要比较和判决,所以说话人辨识的误识率要说话人确认,并且随着数量的增加,其性能将会渐渐下降。另外,用户在运用说话人识别系统时,须要向系统供应一段语音。2.说话人识别的基本原理和系统结构说话人识别本质上是一个模式识别问题,分为训练阶段和识别阶段在训练阶段系统的每个运用者说出若干训练语料,系统对这些训练语料进行数字化处理,依据特征参量建立每个运用者的模板或模型参数参考集。在识别阶段,把从待识别说话人说出的语音信号中提取的特征参量,与在训练过程中得到的参考参量集或模型模板进行对比,依据肯定的相像性准则进行决策从而得出识别结果。对于说话人辨识来说,所提取的参数要与训练过程中的每一个人的参考模型加以比较,并把与它距离最近的那个参考模型所对应的运用者分辨为是发出输入语音的说话人。对于说话人确认而言,则是将从输入语音中提取的特征参量与其声称为某人的参考模板比较,假如两者之间的距离小于肯定的阀值,则予以确认,否则拒绝。下图是说话人识别系统的结构框图,它由预处理,特征提取,模型训练,模式匹配,和判决等几个大部分组成。自适应自适应模型训练模型参数存储训练判决逻辑模式匹配特征提取预处理模型训练模型参数存储训练判决逻辑模式匹配特征提取预处理语音输入语音输入识别识别结果识别识别结果本次试验采纳基于MFCC和GMM的说话人辨识系统。说话人识别是沿着两个基础设计的,即特征提取和模式匹配。特征提取的任务是选取唯一表现说话人身份的有效且稳定牢靠的特征,模式匹配的任务是对训练和识别时的特征模式做相像性匹配。四、模式匹配与特征提取在目前语义特征与说话人特性特征还不能很好地从语音特征中得到分别地状况下,为每一说话人建立的说话人特性特征模型事实上是话者的语音特征模型。为了对说话人特性特征描述的一样起见,系统一般将每一个说话人的模型结构取得相同,不同的只是模型的参数。1.模式匹配运用方法:动态时间归整方法(DTW)说话人信息不仅有稳定因素(发声器官的结构和发声习惯),而且有时变因素(语速、语调、重音和韵律)。将识别模板与参考模板进行时间比对,依据某种距离测度得出两模板间的相像程度。常用的方法是基于最近邻原则的动态时间归整说话人辨识系统的性能是与用户数量有关的。因为它工作时把输入测试语音的特征参数与系统所存储的每个合法运用者的参考模型相比较,所以当用户数量增多时,不仅处理时间变长,而且各个用户之间变得难以区分,导致差错率增大。而对于说话人确认系统差错率基本上不会随用户数量的增加而改2.特征提取特征提取的原则:a)能够有效地区分不同的说话人,但又能在同一个说话人的语音发生变更时相对保持稳定。b)易于从语音信号中提取。c)不易被仿照。d)尽量不随时间和空间变更。2.1常用的特征参数考虑到特征的可量化性,训练样本的数量和系统性能的评价问题,目前的说话人识别系统主要依靠较低层次的声学特征进行识别。a)语音频谱干脆导出的参数语音短时谱中包含有激励源和声道的特性,因而可以反映说话人生识别。而短时时谱随时间变更,又在肯定程度上反映了说话人的发音习惯,因此,由时谱随时间变更,又在肯定程度上反映了说话人的发音习惯,因此,由率谱、基音轮廓、共振峰及其带宽、语音强度及其变更等。b)鲁棒性参数包括Mel频率倒谱系数,以及经过噪声谱减或者信道谱减的去噪倒谱系数等。综上所述,常用于说话人识别的特征参数有:语音短时能量、基音周期、语音短时谱或BPFG特征、线性预料系数LPC、共振峰频率及带宽、LPC倒谱、MFCC倒谱等,以及反映这些特征动态变更的线性回来系数等。2.2语音的倒谱分析(MFCC)简介本次试验求取语音倒谱特征参数的方法是采纳梅尔倒谱系数(MFCC),人们对频率低的声音,听起来感觉它的音调低,对于频率高的声音,听起来感觉它的音调高。但是音调与声音频率并不成正比关系。为了描写音调,人们采样梅尔(Mel)标度,规定音调的单位为Mel。通常将频率为1000Hz60dB的纯音产生的音调定为1000Me1。假如一个纯音听起来比1000Me1调子高了一倍,则它的音调为2000Me1和Walkman通过试验建立了一张如下图所示的音调一频率表,形象地阐述了在强度不变的状况下,音调和频率之间的关系。从图上可以看出两者之间并不是简洁的线性关系。在1000-4000Hz范围内,两者之间基本上是线性相关的,当频率大于4000Hz时,基本上呈对数关系,而当频率小于1000Hz时,则近似于指数关系。2.3MFCC倒谱系数及其提取算法通过前人试验,人们已经知道:当中心频率在1000Hz以下时,临界带宽一般保持恒定,约为100Hz。当中心频率超过1000Hz时,随着中心频率的增长,临界带宽呈对数增长。临界带宽的计算公式如下:,其中fc为中心频率随音调的频率的变更而变更。频率越低,人耳对频率的变更越敏感,即DL值较小。在强度为40dB时,2000Hz的音调只要变更3Hz即可被觉察;而当音调频率达到10000Hz时,DL值已上升到30Hz。试验表明,只要音调频率高于1000Hz,能觉察到的频率差异所需频率变更是相对恒定的,大约是0.3%.这个结果说明:我们可以设计模型使其在音调轴(Me1)上均等地靠近语音短时功率谱,从而更好地符合人的听觉特性。依据语音信号的同态处理可知,求一般的倒谱系数的方法是:先求一帧语音的FFT,然后取模,再取对数,最终求IFFT即可。MFCC参数的计算要点是将线性功率谱转化成Mel频率下的功率谱。为了实现功率谱的转换,运用临界频带的划分,在语音帧的频率范围内设置一系列带通滤波器组成的滤波器序列,即Me1滤波器组,用该滤波器组模拟人耳听觉的非线性特性。下表给出了临界带滤波器组的一种典型的中心频率和带宽参数。临界频带滤波器组滤波器标号中心频率(Hz)临界带宽(Hz)滤波器标号中心频率(Hz)临界带宽(Hz)110010011114916022001001213201843300100131516211440010014174124255001001520002786600100162297320770010017263936788001001830314229900100193482484每个滤波器其中心频率为f(i),与之对应的各个Mel频率点在Mel频率轴上是匀称分布的。这样,在线性频率上,当m较小时,相邻的f(i)的间隔较小,随着m的增加,相邻的f(i)的间隔会渐渐加大。滤波器的设计可以是各种类型,本次试验滤波器采纳构造一个频带交叉的三角型滤波器组。如下图所示。取每个三角形的滤波器频率带宽内全部信号幅度加权和作为某个带通滤波器的输出,然后对全部滤波器输出做对数运算,再进一步做离散余弦变换(DCT)即得到MFCC。2.4求取MFCC系数的详细算法和步骤如下图所示求取MFCC倒谱系数一般包含如下几个过程:a)预处理预处理一般包括预加重,端点检测,分帧和加窗:预加重由于语音信号的平均功率谱受声门激励和口鼻辐射的影响,高频端大约在800Hz以上按6dB/倍频程跌落,为此要进行预加重。预加重的目的是将更为有用的高频部分的频谱进行提升,使信号的频谱变得平坦,保持在低频到高频的整个频带中,能用同样的信噪比求频谱,以便于进行频谱分析或声道参数分析。预加重一般用具有6dB/倍频程的提上升频特性的数字滤波器来实现,其传递函数为:,其中产为预加重系数,可取为1或比1稍小的值。端点检测端点检测就是对输入语音信号进行推断,从背景噪声中精确找出语音段的起始点和终止点。有效的端点检测不仅能消退无声段的噪音,而且还可以使处理语音信号的时间减到最小。目前的端点检测技术大都是基于语音信号的时域特征来进行的,一般常采纳两种时域特征:短时能量和短时过零率,通过设定它们的门限来进行检测。设某个长度为N的短时语音信号为x(m),其短时能量E可用下式计算:其短时过零率Z可用下式计算:其中sgn[]是符号函数,即分帧由于语音信号的准平稳特性,使得只在短时段上才可视为是一个平稳过程,可以用对平稳过程的分析方法进行分析,因此须要将语音信号划分为一个一个的短时段,每一短时段称为一帧,每一帧的长度也许为10-30ms。分帧可以采纳连续分段的方法,但为了使帧与帧之间平滑过渡,保持其连贯性,一般采纳交叠分段的方法,即每一帧的帧尾与下一帧的帧头是重叠的。加窗为了减小语音帧的截断效应,降低帧两端的坡度,使语音帧的两端不引起急剧变更而平滑过渡到零,就要让语音帧乘以一个窗函数。设帧信号为x(n),窗函数为w(n),则加窗后的信号y(n)为:,N为每帧取样点数目前常用的窗函数是Hamming窗(即升余弦窗):b)快速傅立叶变换(FFT)由于离散傅立叶变换(DFT)的运算量较大,可以采纳高效的快速傅立叶变换(FFT)来把语音帧由时域变换到频域。须要留意的是:在进行FFT运算时要考虑到FFT的点数问题,假如FFT的点数选取过大,则运算的困难度会增大,使系统的响应时间变慢,不能满意系统的实时性;假如FFT的点数选取过小,则可能造成频率辨别率过低,提取的参数的误差过大。一般要依据系统的详细状况选择FFT的点数。c)离散余弦变换(DCT)把上一步获得的mel频谱变换到时域,其结果就是mel频率倒谱系数(MFCC)。因为mel频谱系数都是实数,可以运用离散余弦变换(DCT)把它们变换到时域。d)Mel滤波把上步变换得到的离散频谱用序列三角滤波器进行滤波处理,得到一组系数ml,m2,。该滤波器组的个数P由信号的截止频率确定,全部滤波器总体上覆盖从0Hz到Nyquist频率,即采样率的二分之一。计算mi的公式如下:其中f[i]是三角滤波器的中心频率,满意:五、模式识别及算法优化说话人识别本质上是一个模式识别问题,而模式识别系统的目标是要在表示说话人确认(SV)是要推断某被测语音是否是其声明的说话人发出的,系统须要作出“是”或“不是”的二元判决,可表示为:f(X,i)={0,1},其目的是要在被测语音和“是该说话人”或“不是该说话人”之间找到映射关系,这样就可以把说话人确认看作是具有两个分类的说话人识别问题。假如把用户输入的语音提取成一系列的特征矢量,且特征矢量之间的序列关系被忽视不计的话,这时的说话人建模问题就转化为一个构造静态分类器的问题。考虑到高斯函数(钟型函数)对真实数据的较好描述,另外由于高斯函数的线性组合仍旧是高斯函数,而且在理论上随意形式的总体分布都可以用若干个高斯函数的混合来靠近。所以采纳高斯混合函数来估计语音特征的概率分布,这样就得到了说话人的高斯混合模型(GaussianMixtureModel,简称为GMM).GMM模型的基本概念GMM混合模型可以看作一种状态数为1的连续分布的隐马尔可夫模型CDHMM。它是用M个单高斯分布的线性组合来描述帧特征在特征空间中的分布。一个M阶的混合高斯模型的概率密度函数是由M个单高斯概率密度函数加权和得到的,表示如下:其中M是混合模型的阶数,X是一个D维随机向量,wi,i=1,2,M,是混合权重,且混合权重应满意以下条件:bi(X),i=1,2,M,是子分布,每个子分布是D维的联合高斯概率分布,可表示如下:其中ui是均值向量,∑i是协方差矩阵。完全的高斯混合模型便可由参数均值向量,协方差矩阵和混合权重来描述。因此一个模型兄可以表示为如下一个三元组:GMM的计算结构可以用图来表示。图GMM的计算结构2.GMM模型的参数估计GMM模型的训练就是给定一组训练数据,依据某种准则确定模型的参数。最常用的参数估计方法是最大似然(MaximumLikelihood,简称为ML)估计。最大似然估计是把待估计的量看成固定但未知的量,然后求出能够使学习样本出现概率最大的参数值,并把它作为参数的估值。设某说话人的训练特征矢量序列为X=Xi,t=1,2,,T},它对于模型λ的似然度可表示如下:似然度可看作样本给定时,参数λ的函数。训练的目的就是要找到一组参数λ,使得P(X/λ)最大,即:为了分析便利,通常用log(L(λ/X))即log(P(X/λ))来分析。因为对数函数是单调的,所以使对数似然函数最大的λ也会使原来的似然函数最大。将上式对λ求微分并令它为0的求极值法,可知λ的最大似然估计必定满意方程:由于P(X/λ)是参数λ的非线性函数,很难干脆求出其最大值。因此,经常采纳EM(ExpectationMaximization,简称为EM)算法估计参数λ。2.1EM算法的计算是从参数λ的一个初值起先,采纳EM算法估计出一个新的参数,使得新的模型参数下的似然度。新的模型参数再作为当前参数进行训练,这样迭代运算直到模型收敛oEM算法假设任一帧语音是出自模型的哪个高斯重量这一信息是可知的,来简化极大似然的优化目标函数,分别经过E-step求出期望值,和M-step调整模型参数最大化目标函数来逐步收敛。定义Q函数;其中i为高斯重量序号,或称隐状态号。将上式带入得:其中:

其中:E_Step:求训练数据落在假定的隐状态i的概率:M_Step:分别求Q式中相对于三个参数的偏导为零时的参数值下面给出迭代过程中这些参数的重估公式,这些重估公式保证了每一次迭代运算中模型似然度的单调递增。混合权重的重估公式:另外还需进行均值的重估和方差的重估。在运用EM算法训练GMM时,GMM模型的高斯重量的个数M和模型的初始参数必需首先确定。这些很难从理论上推导出来,只能通过试验确定选择不同参数的性能。另外还有考虑训练数据不充分的问题。在试验应用中,往往得不到大量充分的训练数据对模型参数进行训练。由于训练数据的不充分,GMM模型的协方差矩阵的一些重量可能会很小,这些很小的值对模型参数的似然对函数影响很大,严峻影响系统的性能。为了避开小的值对系统性能的影响,在EM算法的迭代计算中,可以对协方差的值设置一个门限值,在训练过程中令协方差的值不小于设定的门限值。2.3GMM模型的识别算法给定一个语音样本,说话人辨识的目的是要确定这个语音属于N个说话人中的哪一个。在一个封闭的说话人集合里,只须要确认该语音属于语音库中的哪一个说话人。在辨识任务中,目的是找到一个说话人1,其对应的模型不使得待测语音特征矢量组X具有最大后验概率P。基于GMM模型的说话人辨识系统结构框图如下所示。图GMM模型的说话人辨识系统结构框图依据Bayes理论,最大后验概率可表示为:其中()其对数形式为:因为P的先验概率未知,我们假定该语音信号出自封闭集里的每个人的可能性相等,也就是说:对于一个确定的视察值矢量x,P(x)是一个确定的常数值,对全部说话人都相等。因此,求取后验概率的最大值可以通过求取P获得,这样,辨识该语音属于语音库中的哪一个说话人可以表示为:在这里,即为识别出的说话人。3.算法优化(MFCC中加入能量信息)针对MFCC运用的优化措施,包括在MFCC中加入短时能量信息和动态过渡信息。这两种方法的本质都是在原有说话人信息的基础上靠增加信息量来提高识别性能。3.1短时归一化能量短时能量是语音信号处理中的一个重要参数,在说话人识别中,由于能量参数对识别性能有肯定的提高作用,因此可以在语音特征中加入能量参数作为特征向量的一维重量。给定语音段中的长度为N的一帧{s,(n),n=1,2,..,N},计算该帧的短时对数能量公式如下,其中L是语音段的帧数。,i=1,2,…..L由于不同语音段不同语音帧的能量差别比较大,为了使其能够于前面的倒谱系数一起作为向量计算,须要进行归一化处理。其中,即语音段中最大的对数能量依据参考文献MFCC参数中各维重量对说话人识别的贡献不同,最有用的说话人信息包含在MFCC重量c,到C16之间,MFCC重量c。和c:包含有负作用的说话人信息,其中重量C。主要是直流重量,将其作为特征会引起识别率的降低,在实际应用中我们一般用归一化能量取代第0阶倒谱系数C0.以上内容主要是介绍了基于MFCC和GMM的说话人辨识系统试验的设计方案以及试验的环境。通过试验实现了MFCC等特征的提取方法,MFCC以及MFCC中加入归一化能量构成系统识别性能。六、试验代码及设计分析1.试验代码见附件与电子档文件。2.设计分析语音录制时采纳了质量较好的麦克风,录入的语音都转化为wav格式的语音文件。编程主要运用Matlab2010b。识别方法或模型的最重要指标是识别精确率,精确率越高越宜于应用于实际。评价的另外一个重要指标就是识别所花的时间,即输入待识别的说话人语音到识别结果的输出说话的时间,该时间越短越好。那么我们就须要解决了以下几个问题。1)建立代表说话人身份的语音特征模型,通过编程从语音数据中提取说话人特征;2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论