基于sp的语音门锁设计与实现Word文件下载.docx
《基于sp的语音门锁设计与实现Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于sp的语音门锁设计与实现Word文件下载.docx(17页珍藏版)》请在冰豆网上搜索。
现如今,用于个人身份鉴别主要依靠各种证件和设置密码等手段,然而这些手段存在或多或少的缺点,譬如,携带不便、易折坏、易丢失遗忘等。
所以在这种传统辨别身份的方法正面临着淘汰的趋势之际生物识别技术备受学术界的关注,并有以之取代传统身份识别方式之势。
生物识别技术的发展历史
生物识别的起源可追溯到古埃及时候,当时人们通过测量身高尺寸来鉴别埃及人的身份,像这种通过测量人身体某一部份或者依据某一身体特征来识别身份的技术一直延续了几百年。
而中国和古叙利亚则在公元前7000年到6000年之前,以指纹作为身份鉴别的依据已经开始应用。
考古发现,在这个时代,一些陶艺匠人将指纹留在自己制作的粘土陶器上,这与古时诗人画家,在自己作品上盖章留名同性质,并且在中国的一些重要文件上多是用大拇指按朱砂印。
原本是因为当时人读书者甚少,大多不能书写自己名字,则以这种方式来当做签名,当时称这种行为为画押。
但在19世纪初,经科学研究发现指纹具有两个重要的特征,其一是指纹的唯一特性,即指意两个不同手指的指纹纹路的式样是不相同的,其二是指纹纹路的式样终生不因生长的因素而发生改变。
这个研究成果使得1896年阿根廷首次将指纹识别在犯罪鉴别中得以正式应用,随后是苏格兰在1901年也采用这种方式,20世纪初其他国家也将之相继应用到了犯罪鉴别中。
20世纪60年代,随着计算机的发展,人们开始着手研究利用计算机来处理指纹。
从那时起,世界许多国家将自动指纹识别系统AutomaticFingerprintIdentificationSystem应用于法律中,一种自动识别指纹的设备在60年代末期在FBI得以应用,在70年代末期,已经有一定数量的设备开始在美国大范围使用。
用于商业的高级生物测定设备最早开始于20世纪70年代,一种叫做Identimat的设备出现了,它通过手的形状和手指的长度来辨别身份。
20世纪80年代,个人电脑和光学扫描这两项技术的改进,使得它们作为指纹取像的工具成为现实,从而促使了指纹识别在其他领域的广泛使用,譬如IC卡的替代。
90年代末,精确的比对算法的发现以及低价位取像设备的引入及其飞速发展,为个人身份识别应用的增长提供了舞台。
生物识别的特点
生物识别技术之所以能够作为个人身份鉴别的有效手段,并且在越来越多的领域广泛应用是由它自身的特点所决定的。
生物识别技术具有唯一性、普遍性、稳定性和不可复制性。
生物识别技术的普遍性即指生物识别所依赖的身体特征基本上是人人与生俱来的,不需要向相关部门申请或是制作。
唯一性和稳定性是指经研究和经验表明,每个人的容貌、发音、虹膜、视网膜、骨架、指纹、掌纹等都与别人不同,并且一般情况下终生不会发生改变。
不可复制性:
随着计算机网络技术的发展,配制钥匙、copy密码卡以及盗取密码、口令等都变得越发容易,然而要复制人的活体指纹、掌纹、面部、虹膜等生物特征就困难得多。
生物识别技术所具有的这些特性使得生物识别身份验证方法不依赖各种人造的和附加的物品来证明人的自身,而只要个体存在那么自己就是身份的最好证明物,所以,它不用担心丢失,更加不会遗忘,和配置钥匙和盗用密码等相比复制生物体所具备的生物特征就显得尤为困难,生物识别技术是一种方便安全的只认人不认物的保安手段
2数字信号处理器DSP
数字信号处理器DSP的概述
数字信号处理是指将模拟信号通过采样进行数字化后的信号进行分析、处理、它侧重于理论、算法及软件实现。
它是围绕着数字信号处理的理论、实现、应用等几个方面发展起来的。
数字信号处理的应用促进了数字信号处理理论的发展和提高。
反过来,数字信号处理在理论上的发展又推动了数字信号处理应用的发展。
而数字信号处理的理论和应用则是通过数字信号的实现而连接的。
数字信号处理所涉及的范围极其广泛,以众多的学科为理论基础。
它与网络理论、信号与系统、控制论、通信理论、故障诊断等密切相关。
一些新兴的学科,如人工智能、模式识别、神经网络等,都与数字信号处理密不可分。
它是把许多经典的理论体系作为自身的理论基础,同时又使自己成为一系列新兴学科的理论基础。
DSP(DigitalSingnalProcessor)是一种独特的微处理器,是以数字信号来处理大量信息的器件。
其工作原理是将接受的模拟信号转换为0或者1的数字信号,再对转换后的信号进行修改、删除、强化,并在其他系统芯片中把数字数据转译回模拟数据或实际环境格式。
它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,在数字化电子世界中越发重要的电脑芯片。
它的强大数据处理能力和高运行速度,是最值得称道的两大特色。
自DSP芯片问世以来,在20年的时间里,它得到了极为迅速的发展。
世界上生产DSP芯片的厂家主要有:
美国的德克萨斯仪器公司(TexasInstruments,简称TI)、模拟仪器公司(AnalogDevices,简称AD)和Motorola公司等,其中应用最为广泛的是TI公司生产的系列DSP芯片。
自80年代初TI公司推出第一代产品TMS32010以来,相继推出了定点和浮点两大类别多代产品,现已形成了TMS320C2000、TMS320C5000和TMS320C6000三大DSP芯片系列。
TI公司的DSP芯片市场大约占全世界份额的50%,IT公司已是世界上最大的DSP芯片供应商,它的一系列DSP产品已经成为当今世界上最有影响的DSP芯片。
通过DSP实现语音门锁的设计,在芯片的选择上将采用TI公司的TMS320C5402芯片,因为该芯片在各种语音应用领域被广泛应用,而且它比该系列的其他芯片相比,具有更快的运算速度、更高的性能同时低功耗低价格和性价比高等特点。
DSP的特点
DSP的结构是针对DSP算法模型进行构造的,所有的DSP都包含有DSP算法的特征。
即是,单周期快速运算,能取两个以上操作数,允许任意计算次序,保证快速的乘累加运算(MAC);
能产生循环寻址和位翻转寻址等信号处理算法需要的特殊寻址;
有相应的硬件循环缓冲区,能执行零开销的循环和转移操作;
具有串口、DMA控制器、定时器等丰富的外设资源。
因此,数字信号处理的上述特点要求DSP必须是专门设计的,典型DSP的设计要满足,不论是语言信号,还是图像信号处理算法运算量大,要求速度快且实时;
信号处理算法通常需要执行大量的乘法和累加运算,具有某些特定模式,要求专门的接口。
大部分时间信号处理算法花在执行相对小循环的操作上。
3基于DSP的语音门锁系统
本章介绍了基于矢量量化的说话人识别原理,对于其中的几个方面的问题做了进一步的探索。
编程实现了算法的各个子程序,在编程过程中做了相关的实验充分考虑程序运行时间、精度以及存储量等因素,对系统的识别效果也进行了实际测试。
通过大量比较筛选,确定出最优的算法,应用于语音门锁中。
基于DSP的语音门锁系统概述
语音门锁系统采用一种高效的数据压缩技术,这种技术被称作矢量量化技术,下面对该技术做详细介绍。
矢量量化(VQ—VectorQuantization)是将若干个标量数据组构成一个矢量,然后在矢量空间内将其整体量化,这样既压缩了数据又不会损失多少信息。
矢量量化将N维空间RN中的矢量
按某种准则用N维空间中的矢量{
i|i=1,2,...,K}表示。
:
输入矢量
i:
量化矢量
{
i|i=1,2,...,K}:
码书或码本K:
码书容量
码字
对语音信号,在已知训练数据的情况下,VQ的准则是:
给定的码本容量为K时,使量化最小失真。
图3-1给出了基于VQ的说话人识别系统框图。
对于基于VQ的说话人识别技术来说,码本的产生会直接影响到识别的效果。
码本形成过程是将所提取出的各个特征矢量集合,按照某种准将具有相似特征的矢量归到一个集合里,用一个具有代表性的矢量来表示。
VQ码本形成的基础是初始码本的选择,目前在算法的DSP实现过程中,初始码本的选择采用了一种在训练数据中找到距离最远的K个矢量,这种方法便于DSP实现。
码本设计采用LBG算法,LBG算法是、、三人在1980提出的,LBG是基于最近邻法则把训练序列分配到与它欧式距离最小的码字的簇中,从而形成很多个子集,计算各子集的形心和平均失真,一直迭代计算,并不停地对码本进行修改直到性能满足要求或不能再改进为止。
空胞腔处理
在此主要讨论基于VQ说话人识别模型的LBG(Linde、Buzo、Gray)算法中的空包腔处理问题。
所给方法的优点首先是在分裂大包腔时选择子包腔码字更具有代表性,从而使得系统在重新聚类中避免再次出现空包腔的可能性;
其次,该方法对于系统没有信息冗余的情况下,可避免信息的损失,对保持矢量在空间分布的完备性有一定的意义为了对空包腔处理作出更清楚地说明,图3-2中给出加入空包腔的LBG算法流程。
图中pow(10,n)和delta(m)可以分别表示为10n,(d(m)-d(m-1))/d(m)。
首先为了让每个码字矢量都能对话者特征具有代表性,将所含矢量数目符合下式的胞腔定义为空胞腔。
式中,K为比例因子,一般取为,用于调整空胞腔中所含矢量的个数。
通常空包腔的处理并不认为是绝对空(矢量数为0),实际上这种情况是不可能的。
设空包腔限为num,聚类过程中一次出现v个空包腔,若视空包腔为绝对空,则迭代n次损失的矢量数最坏情况为0(n×
v×
num)级。
在确定了空包腔限后,对码本中的空包腔进行逐个处理,其步骤为:
(1)对任一空包腔码字,找到码本中与其最临近的码字,将该空包腔与其
最临近码字胞腔合并;
(2)找到码本中得分最大的包腔,设第j个包腔内的矢量数为n,码字为
Cj,得分score遵循的准则
其中,index是最大包腔下标号,codeBookLength是码本长度;
(3)计算得分最大包腔的形心centroid。
实验2:
空包腔处理对聚类效果的影响
实验采用的训练语音长度为6s,训练内容均为“开门”,说话人个数选择为2个人(1男,1女),码本容量为16,识别所用的语音特征采用54维组合特征,分别为16维LPCC、18维MFCC、20维ΔMFCC,图3-3给出了男生和女生训练语音采用空包腔处理前后码字聚类的对比情况,其中图形的横坐标为码本容量,纵坐标为码本包腔聚类的码字个数。
图3-2改进的LBG算法流程图
从图3-3可以看出:
(1)空包腔处理后每个胞腔聚类的码字个数较之处理之前更为均匀,代表
说话人特征的更充分;
(2)在分裂大包腔时选择子包腔码字更具有代表性,从而使得系统在重新
聚类中避免再次出现空包腔的可能性;
(3)对于系统没有信息冗余的情况下可避免信息的损失,对保持矢量在空
间分布的完备性有一定的意义。
图3-3空包腔处理前后各胞腔聚类的码字个数对比图
阈值归一化处理
由于人的语音是随着生理、心理和健康的状况变化的,如果说话人识别系统的训练时间与使用时间相差过长,就会使系统的性能明显下降。
为了减小说话人语音变化对系统性能的影响,提出了一种归一化阈值的VQ说话人识别算法。
使用一个参考码本,通过定义语音与码本的失真相对于参考码本的变化量(相对失真),来实现阈值的归一化。
基于阈值归一化的VQ说话人识别系统的实现过程包括训练过程(图3-4)、识别过程、
图3-4训练过程
2、识别过程
(1)从测试语音提取特征矢量序列
(2)由每个模板依次对特征矢量进行矢量量化,计算各自的平均量化误差
(3)根据设定的参考码书,对失真进行阈值归一化处理
(4)利用阈值归一化后处理产生的三个失真进行识别判断
①设置性别标志位sex,初始值为0;
sex=0未定
sex=1男生
sex=2女生
②设置识别成功标志位flag,初始值为1;
flag=1成功
flag=0失败
③设置结果标志位result;
result=1测试语音与男生模板距离最近
result=2测试语音与男生模板距离最近
result=3测试语音与码本距离最近
图3-5阈值归一化的判决流程
④根据图3-5给出的判决流程进行识别判断,图中cons1=100,cons2=500,由实验测得,threshold由训练程序获得。
第四章基因特征在门锁系统中的应用
目前基音提取的算法主要有时域和频域两种:
时域的自相关、AMDF、CAMDF容易受到噪声的干扰;
AWAC、ICWAF算法中的除法在DSP实现时会引起精度的损失;
频域的SIFT(简化逆滤波)求取LPC残差信号的DSP程序需要很大的存储空间、导致程序运行的速度降低;
而基于CEPSTRUM(倒谱)的基音特征提取算法易实现,且算法属于频域提取,抗噪声性强,适合在DSP系统中应用。
基于倒谱的基因提取法
基于倒谱的基音提取算法,首先要计算语音信号的倒谱特征,对于给定的一个语音信号x(n),其倒谱定义为其频谱的绝对值取自然对数后的傅里叶逆变换。
即
()
由于语音信号x(n)可看作是声门脉冲激励g(n)经声道响应v(n)滤波而得,即
s(n)=g(n)∗v(n)
倒谱域中的基音信息和声道信息可以别看做是相对分离的。
采用倒滤波的方法可以分离并恢复出e(n)和v(n)。
对于清音语音,倒谱域中不存在基音特征点。
因而根据激励e(n)及其倒谱的特征可以求出浊音语音的基音周期。
基于倒谱的基音提取算法在DSP系统的实现仍然需要解决几个问题:
(1)帧长需扩大一倍
语音的基音变化范围是2ms~20ms,采样率为8kHz时,基音的变化范围是16~160个采样点。
基音提取帧长应至少是基音周期的2倍,否则会影响基音的提取精度;
以前使用的语音帧长为256个采样点,而基音提取帧长需至少为基音周期的2倍,所以将语音帧扩大一倍,变为512个采样点。
扩大后的语音帧为当前256点帧与前一256点帧合并所得;
(2)基音的存储位置
为了便于平滑处理,需要单独开辟空间存储;
(3)与原有特征组合由于原有的两帧能提取一个基音,进行组合时曾考虑只在偶数帧的特征中加入基音,但是这样会影响最终的识别效果;
考虑将当前要提取基音特征帧与前一帧语音合并来提取所有训练、识别帧数的基音,再将其与原有的特征进行组合,其中联合因子w,即组合后的特征为feature=feature*(w^+pitch*((1-w)^其中feature为原有的语音特征,pitch为提取出的基音周期。
第五章基于DSP实现的语音门锁系统的测试结果
不同处理方法组合对识别效果的影响
在DSP实际系统中,分别对采用不同处理方法组合的识别率进行测试,在进行DSP实际系统测试时,任意选择实验室中的6名用户(3男,3女)进行训练,训练和识别的语音都是“开门”,冒认人数为8,对当天的语音进行开集说话人识别测试,实际结果如表5-1所示。
如表5-1所示,在声刺激初始码本生成方法基础上,加入空包腔处理使得系统的误识率有所降低;
阈值归一化的识别方法使系统的错误拒绝率进一步降低;
将提取出的基音特征与原有特征组合作为说话人的语音特征进行识别时,系统保持了比较低的错误拒绝率。
不同处理方法对存储量和运行时间的影响
针对上述实验中采用的不同处理方法,分别对实际所实现系统的部分指标进行比较。
取参考说话人的个数为M=10,表5-2所示为采用不同方法时的程序存储量和运行时间(设DSP时钟为20MHz)。
下面给出程序存储量和运行时间分析。
对加入基音的特征提取所占用存储量和运行时间分析如下(设需要计算的特征参数的帧数均为N=209):
(1)在进行LPCC+MFCC+ΔMFCC+Pitch组合特征计算时,对于MFCC动
静态组合特征,除了N帧MFCC动静态组合特征所需的存储空间外,还有计
算ΔMFCC时需要保存的40个常数,需要使用40*N+239+190+40个单元,即
需要23269个单元,约。
还要为LPCC和Pithc保存空间,需要17*N个
单元,约。
在进行说话人的码本存储时,需要的存储单元为55*16*M
个,即880个,约。
(2)对参考说话人个数为N=1的系统各部分程序执行时间进行统计,得到
各部分程序的平均执行时间。
由于在实际系统中,设定的采样率为8kHz,则
采样一帧语音信号需要32ms,由表5-8可见,LPCC+MFCC+ΔMFCC+Pitch
组合特征提取时间为s,小于32ms,因此可以满足系统的实时性要求。
第六章总结
本文主要对说话人识别系统中的基音特征提取部分进行了研究,介绍了传
统的基音提取算法,并对各种方法进行仿真,分析了各自的优缺点;
同时提出
了一种新的基于搜索试探平滑的ICWAF带噪语音基音提取算法,该算法在较
低信噪比下能够提取出带噪语音的基音周期。
并与同课题组的同学共同完成了
基于DSP的说话人实时识别系统,利用数字信号处理器DSP对系统的各部分
算法进行实现,该系统目前已应用于汽车语音控制门锁中。
本文所做的主要工
作如下:
(1)对生物识别技术和说话人识别技术的发展和现状进行了概述,并指出
了数字信号处理器DSP在语音信号处理中的应用;
(2)介绍了说话人识别原理、基音周期的相关知识,同时概括地介绍了利
用DSP进行算法实现的软件基础;
(3)对传统的基音特征提取算法进行了研究,并对不同方法进行了比较。
给出仿真结果,对各自的优缺点进行了评价;
(4)提出了一种基于搜索试探平滑的ICWAF带噪语音基音提取算法,并
验证了其在低信噪比下的有效性;
(5)完成了说话人识别系统的DSP实现,实现说话人实时识别系统,对
各部分程序进行调试,并给出对系统部分指标的实际测试结果,将算法应用到
汽车语音控制门锁中。
致谢
至此课题设计完成之际,回顾这一路走来的点点滴滴。
首先,承蒙xxx老师的悉心栽培,孙老师在的学习和课题设计中,从理论到实践给我大量的、极其有益的建议和实际的指导,并在课题设计的撰写和审稿中倾注了大量的心血。
他诲人不倦的精神和对我的谆谆教导,使我受益匪浅;
他严谨的治学态度、积极的进取精神、广博的知识和平易近人的工作作风将使我受益终身。
其次,在论文的选题及研究过程中得到了xxx的