基于MATLAB的声纹识别系统软件的设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于MATLAB的声纹识别系统软件的设计
【摘要】本文基于MATLAB,利用语音模型匹配的方法设计并完成了一个与文本相关的声纹识别软件系统。系统预先由麦克风向计算机录入各个说话人的语音样本,经预处理、基音周期和MFCC参数提取、多重迭代训练后得到各说话人语音的隐马尔可夫(HMM)参考模型。实验时将输入的语音样本进行测试,根据被测试语音模型和参考模型的匹配度来进行识别。实验结果表明,本系统的识别率将随着训练次数的增多而提高,系统基本可达到高于85%的正确识别率和实时识别的要求。
【关键词】声纹识别;Matlab;MFCC参数;HMM模型
0 引言
声纹识别技术[1]为生物识别技术的一种,也称为说话人识别,分为说话人辨认和说话人确认[2]。目前,市场上已经出现了一些声纹识别的应用,比如在军事情报方面,用于电话领域的监听与追踪;在监狱管理中,用于亲情通话对象的管控;在司法取证方面,语音声纹分析识别用于司法鉴定,还有社保身份认证、电话语音声纹考勤甚至现在非常流行的声纹锁屏[3]等等。
每个人的说话声音由于音色的不同可以被区分开来,本文所涉及到的声纹识别系统软件的设计[4]便是提取了声纹中的特征参数,把它作为本系统声纹识别技术的依据。与此同时,声纹识别分为文本相关的(Text-Dependent)和文本无关的(Text-Independent)两种[4]。本识别系统为与文本相关[5]的声纹识别系统,要求用户按照规定的内容发音,建立好说话人的声纹模型,在后期进行语音识别时需要按规定的内容发音进而进行说话人身份的辨别。
1 声纹识别系统设计
本系统整体流程分为设计分为5步:预处理、提取特征参数(基音周期、倒谱系数等)、建立参考模型、带入测试模型、进行匹配。
(1)预处理:包括采样和量化(即A/D转换)、预加重处理、加窗、依据短时能量谱的语音端点检测等几个处理过程。
(2)提取特征参数:为了能够表征说话人语音中说话人特定器官结构或习惯行为,便需要提取特征参数,并且该特征参数对同一说话人应具有相对稳定性。
①基音周期[6]:产生发音时声门的开启和闭合引起声带的周期性振动,形成周期性的脉冲串,用来描述这一串脉冲气流的周期称为基音周期。这种参数的提取主要是基于说话人发声器官,如声门、声道和鼻腔等的特殊结构而提取出说话人语音的短时谱特征(即基音频率谱及其轮廓)。
②倒谱系数[7]:目前主流的声纹特征参数有LPC以及基于Mel频率的倒谱系数(Mel—frequency cepstral coefficients,MFCC)。实验中证明,MFCC是目前声纹特征中识别率最高的一种,本系统便是提取Mel频率倒谱系数MFCC用来模拟人耳听觉系统的感知能力,描述语音信号在频率域上的能量分布。Mel倒谱系数MFCC的提取过程如下:
A.对语音信号进行预处理。
B.离散傅里叶变换(DFT):是信号完成从时域至频域的转换。
C.生成Mel滤波器组。
D.计算经Mel滤波器组加权后的能量值。
E.做离散余弦DCT变换。
(3)建立参考模型:常见的识别模型有模板模型(动态时间规整方法DTW、矢量量化方法VQ)、概率模型(隐马尔科夫模型HMM、高斯混合模型GMM),以及目前正在发展中的人工神经网络(ANN)方法。本实验采用的隐马尔科夫模型HMM[8],并将该模型确定为本系统的模式匹配方法。使用HMM模型可以用短时模型描述平稳段的信号,而且还可以解决每个短时平稳段是如何转变到下一个短时平稳段的问题。
本过程目的是对所提取出来的说话人语音特征进行学习训练,建立声纹模板或语音模型库,或对系统中已有的声纹模板或语音模型库进行适应性修改。
(4)带入测试模型:将用于测试的语音样本参数代入,得测试模型,与参考模型一一匹配。
(5)进行匹配:在识别过程中,声纹识别系统要根据系统已有的声纹模板或语音模型库对输入语音的特征参数进行模式匹配计算,从而实现识别判断,得出识别结果。
2 实验与结果
在声纹识别系统的测试实验中,从所在班级随机抽取了15名学生(其中男生10名、女士5名),每人6个样本,共计90个语音样本,男性说话人有Yjd,Zsl,Mj,Zqy,Gcx,Mgj,Mz,Mjp,Srf,Jd,女性说话人有Hj,Whj,Gxx,Yhr,Zm。在使用该语音库的前提下,要求他们对指定文本“温州医科大学”应用普通话进行自然发音,录制环境为室内。并把每一个说话人的6份样本中3份样本用于训练,3份样本用于测试,建立不同的HMM模型,观察不同训练的样本数对识别结果的影响。
实验表明,运用MATLAB建立的HMM模型确实可以进行说话人身份的识
别,本系统的识别率为85%以上,但如果增加训练次数,则识别率也会相应地得到提高。在系统实时处理上,由于MFCC参数计算量比较大,所花费的计算时间较长,使得本系统的实时性受到了考验,另外由于MFCC参数的计算涉及到DFT计算、对数计算,这使得整个计算的动态范围受到了影响以至于影响本系统的精确度。
3 声纹识别技术的研究进展
声纹识别技术仍需要在研究方法和市场应用进行相应的改进,一方面,要寻找更为优良的研究方法,另一方面,由于建模方法的选择与使用都会对声纹识别结果带来很大的影响,这要求我们能够寻找到一种更为稳定的声纹特征参数来帮助说话人身份的识别,一方面,要保证乃至提高系统的精确性,另一方面,也要保证独一性,能够区分不同说话人的特质。随着声纹技术的不断发展,所对应的声纹市场也日趋成熟,必定会与当今的信息化时代相契合,提供一种切实有效的安全保障。
【参考文献】
[1]http:///view/116450.htm[OL].
[2]Joseph P. Campbell,Jr. Speaker recognition:a tutorial[J]. Proceedings of the IEEE,1997,85:1437-1462.
[3]http:///[OL].
[4]陈怀琛.数字信号处理教程:MATLAB释义与实现[M].2版.北京:电子工业出版社,2008.
[5]Chi-Wei Che,Qi-guang Lin,Dong-SukYuk. An HMM Approach to Text-Prompted Speaker Verification[C]//The 1996 IEEE International Conference on Acoustics,Speech and Signal.Processing Conference Proceedings,1996,2:673-676.
[6]蔡莲红,黄德智,蔡锐.现代语音技术基础与应用[M].北京:清华大学出版社,2003.
[7]张万里,刘桥.Mel频率倒谱系数提取及其在声纹识别中的作用[J].贵州大学学报,2005,22(2):5.
[8]王书沼.基于高斯混合模型的说话人识别系统的研究[D].大连理工大学,2006.