绪论
随着人们生活质量的提高,对生活各面都提出了更高的要求。家居安全成了人们关注的问题。同时,钥匙的遗失或失窃成为了普通钥匙的最大弊端。由此人们急需一种更方便,更安全的门锁系统。无疑,声纹识锁是目前最好的考虑。但由于人声易被拷贝,整个锁价格昂贵,所以没法在普通家庭进行推广。另外,一把语音锁只能由一个人开启,不适合家庭等需要多成员的场所使用。于是,作者另辟蹊径,发明了音纹识别锁,用音乐来开锁。它几乎完全具有声纹识别锁的所有功能。同时,它造价低廉,方便携带。只要记住音乐的片段,就可以用音乐播放设备进行开启。完全不怕丢失,如果想把钥匙“配”给其它人,只需要告诉他音乐的片段的信息就可以了,使用起来非常方便。
一,音乐识别实现过程介绍
本文介绍的音乐电子门锁是一种在单片机上实现的与文本有关的身份确认系统。该系统主要由语音识别模块、电磁铁以及门锁等部分组成。在训练时,音乐通过音频接口进入音乐信号采集前端电路,由音乐信号处理电路对采集的音乐信号进行特征化和音乐处理,提取音乐音纹的个性特征参数并进行存储,形成音纹参数数据库(母版)。在识别时,将待识别音乐与音纹参数数据库进行匹配,通过输出电路控制电磁铁的通断,最终实现对门锁的控制。
图1
由框架图1可以看出,此识别过程的安全性有4个保证点。第一个是在输入密钥的时候,直接输入数字信号,无法被窃听。剩下的3个保证点分别是三次音乐识别过程。识别三段音乐,这三段音乐可以是一首歌中的音乐,也可以分别来自不同的音乐,不确定性加强了。同时,此识别过程需要三段音乐同时识别成功最后才能成功,每次识别都需要按键,音乐的精准度有了保障。采用不同的按键输入,按键顺序随时改变,因此,从某种意义上来讲又成为了一种密码。因此,如果想拿出一个存满音乐的mp3或者就只是一首歌来逐个的试出打开锁的密码音乐,那样无异于大海捞针。
(母版声纹密码)
(声纹钥匙)
此图可直观的看出,声纹信息不一致,因此无法识别!
二,音纹识别与声纹识别的比较
生物识别技术是利用人体生物特征进行身份认证的一种技术,是目前公认的最为方便与安全的识别技术。在生物识别领域中,声纹识别,也称为说话人识别,以其独特的方便性、经济性和准确性等优势受到世人瞩目,并且日益成为人们日常生活和工作中重要且普遍的安全认证方式。声纹识别技术是一种根据说话人语音波形中反映说话人生理和行为特征的语音参数,自动识别说明人身份的技术。随着技术应用范围的扩大,声纹识别的应用暴露出一些难以克服的缺点,比如同一个人的声音具有易变性,易受身体状况、年龄、情绪等的影响;比如不同的麦克风和信道对识别性能有影响;比如环境噪音对识别有干扰;比如多人混合说话的情形下人的声纹特征不易提取,等等。最新实践表明,声纹识别出现了一个很大的漏洞:声纹信息可被高保真录音设备提取。这个缺点直接影响了声纹识别技术的安全性。
音纹识别与身纹识别最大的区别就是前者用音乐做密码,要求用户按照自己的喜好,往音纹识别系统中输入特定的音乐片段,音纹模型被精确地建立。以后的识别将会以此段音乐为母版,进行音纹比对。如果被识别的音纹能与母版相匹配则识别成功。由于音乐片段是通过音频接口直接在识别系统与音乐播放器中进行传输,传输的是数字信号,因此不会有外界声音的影响,与使用者的身体状况没有任何关系,可以达到较好的识别效果。同时,由于音乐传播的隐蔽性,音纹密码不会被外部录音设备获取,保证了音纹识别系统安全性。
因此,音纹识别技术,它克服了以上所有声纹识别具有的缺点。同时,音纹识别的应用有一些特殊的优势:(1)蕴含音纹特征的语音获取方便、快捷,音纹提取可利用任何音乐载体完成,因此使用者的接受程度也高;(2)获取音乐的识别成本低廉,使用简单,一个音频接口即可,在使用通讯设备时更无需额外的录音设备;(3)适合远程身份确认,只需要一个手机就可以通过网路(通讯网络或互联网络)实现远程登录;(4)音纹辨认和确认的算法复杂度低;……等等。这些优势音预示着音纹识别,这种全新的识别模式必将成为身份识别技术中另一具有发展潜力的技术。
图2
三,算法原理
音纹识别算法原理框图如图2所示。
(一)预处理
1,去噪
对音频接口输入的数字信号;将含噪的音乐信号通过去噪处理,得到干净的音乐信号后并通过预加重技术滤除低频干扰,尤其是50Hz或60Hz的工频干扰,提升语音信号的高频部分,而且它还可以起到消除直流漂移、抑制随机噪声和提升清音部分能量的作用。
2,端点检测
本系统采用音乐信号的短时能量和短时过零率进行端点检测。音乐信号的采样频率为8kHz,每帧数据为20ms,共计160个采样点。每隔20ms计算一次短时能量和短时过零率。通过对音乐信号的短时能量和短时过零率检测可以剔除掉静默帧、白噪声帧和清音帧,最后保留对求取基音等特征参数非常有用的浊音信号。
3,特征提取
在音乐信号预处理后,接着是特征参数的提取。特征提取的任务就是提取音乐信号中表征音乐的基本特征。特征必须能够有效地区分不同的音乐,同时要求特征参数计算简便,最好有高效快速算法,以保证识别的实时性。
(1)音乐特殊性的保证
此识别技术可以采用任何格式的音乐,这也是此系统最大的优点之一。每一段音乐记录了不同演唱者的声纹信息,以及音乐的音色、调性、节拍、音高、音长、音量、速度和持续时间等特定的信息。在此基础上,又可以进一步提取旋律、和声、节奏等复杂特征。这些信息,就像人类的声纹特征一样,有着特殊性,于是谓之为音纹。此识别技术识别音乐基本特征和复杂特征在内的音乐信息并且利用模糊分类器识别出每一个乐段所带有的密码。为了提高系统的识别率,在本系统中最好选择调子起伏较大,音色比较特别的音乐。
(2)参数提取的比较
通过线性预测分析得到的参数。包括线性预测系数(LPC)以及由线性预测导出的各种参数,如线性预测倒谱系数(LPCC)、部分相关系数、反射系数、对数面积比、LSP线谱对、线性预测残差等。根据前人的工作成果和实际测试比较,LPCC参数不但能较好地反馈声道的共振峰特性,具有较好地识别效果,而且可以用比较简单的运算和较快的速度求得。此外,人们还通过对不同特征参数量的组合来提高实际系统的性能。当各组合参量间相关性不大时,会有较好的效果,因为它们分别反映了音乐信号的不同特征。在计算机平台的仿真实验中,通过各种参数的实际比较,采用MFCC参数比采用LPCC参数有更好的识别效果。但在SPCE061A平台上做实时处理时,与LPCC系统相比,MFCC系数计算有两个缺点:一是计算时间长;二是精度难以保证。由于MFCC系统的计算需要FFT变换和对数操作,影响了计算的动态范围;要保证系统识别的实时性,就只有牺牲参数精度。而LPCC参数的计算有递推公式,速度和精度都可以保证,识别效果也满足实际需要。本系统采用了基音周期和线性预测倒谱系数(LPCC)共同作为音乐识别的特征参数。
(3)LPCC参数的提取
基于线性预测分析的倒谱参数LPCC可以通过简单的递推公式由线性预测系数求得。递推公式如下:
其中p为LPC模型的阶数,也是模型的极点个数。
(4)LPC模型阶数p的确定
为使模型假定更好地符合语音产生模型,应该使LPC模型的阶数p与共振峰个数相吻合。通常一对极点对应一个共振峰,10kHz采样的音乐信号通常有5个共振峰,取p=10,对于8kHz采样的音乐信号可取p=8。此外为了弥补音乐片段中存在的零点以及其他因素引起的偏差,通常在上述阶数的基础上再增加两个极点,即分别是p=12和p10。实验表明,选择LPC分析阶数p=12,对绝大多数音乐信号的声道模型可以足够近似地逼近。P值选得过大虽然可以略微改善逼近效果,但也带来一些负作用,一方面是加大了计算量,另一方面有可能增添一些不必要的细节。
(5)线性预测系数的求取
自相关解法主要有杜宾(Durbin)算法、格型(Lattice)算法和舒尔(Schur)算法等几种递推算法。其中在杜宾算法是目前最常用的算法,而且在求取LPC系数时计算量也量小,本系统采用该递推算法。
4,基音参数的提取
基音估计的方法很多,主要有基于短时自相关函数和基于短时平均幅度差函数(AMDF)等基音估计方法。
(1)基于短时自相关函数的基音估计
(2)短时自相关函数在基音周期的整数倍位置存在较大的峰值,只要找出第一最大峰值的位置就可以估计出基音周期。
(3)基于短时平均幅度差函数(AMDF)的基音估计
基于短时平均幅度差函数(AMDF)在基音周期的整数倍位置存在较大的谷值,找到第一最大谷值的位置就可以估计出基音周期。这种方法的缺点是当语音信号的幅度快速变化时,AMFD函数的谷值深度会减小,从而影响基音估计的精度。
实际上第一最大峰(谷)值点的位置有时并不能与基音周期吻合,第一最大峰(谷)值点的位置与短时窗的长度有关且会受到共振峰的干扰。一般窗长至少应大于两个基音周期,才可能获得较好的估计效果。音乐中最长基音周期值约为20ms,本系统在估计基音周期时窗长选择40ms。为了减小共振峰的影响,首先对语音进行频率范围为[60,900]Hz的带通滤波。因为最高基音频率为450Hz,所以将上限频率设为900Hz可以保留语音的一、二次谐波,下降频率为60Hz是为了滤除50Hz的电源干扰。
以上几种方法都是对语音信号本身求相应的函数。本系统采用的基音估计方法是:首先对带通滤波后的短时语音信号进行线性预测,求取预测残差;再对残差信号求自相关函数,找出第一最大峰值点的位置,即得到该段语音的基音估计值。实验表明,通过残差求取的基音轨迹比直接通过语音求取的基音轨迹效果更好,如图2所示。图2中横坐标为语音帧数,纵坐标为8000/f,其中f为基音频率。
5,模式匹配
目前针对各种特征参数提出的模式匹配方法的研究越来越深入。典型的方法有:矢量量化方法、高斯混合模型方法、隐马尔可夫模型方法、动态时间规整(DTW)方法和人工神经网络方法。
这些方法都有各自的优点和缺点。其中DTW算法对于较长音乐的识别,模板匹配运算量太大,但对短音乐(有效音乐长度低于3s)的识别既简单又有效,而且并不比其他方法识别率低,特别适用于短语音、与文本有关的音乐识别系统。本系统采用端点松驰两点的(DTW)算法,端点松驰引起的计算量增加并不大,还可以放松对端点检测的精度要求。
动态时间规整(DTW)算法基于动态规划的思想,解决了音乐不同时期音质长短、音速不一样的匹配问题。DTW算法用于计算两个长度不同的模板之间的相似程度,用失真距离表示。假设测试模板和参考模板分别用T和R表示,按时间顺序含有N帧和M帧的语音参数(本系统为12维LPCC参数),失真距离越小,表示T、R越接近。把测试模板的各个帧号n=1~N在一个二维直角坐标系中的横轴上标出,把参考模板的各帧号m=1~M在纵轴上标出,如图3所示。通过这些表示帧号的整数坐标画出纵横线即形成网络,网格中的每一个交叉点(n,m)表示测试模板中某一帧与参考模式中某一帧的交会点,对应两个向量的欧氏距离。DTW算法可以归结为寻找一条通过此网格中若干交叉点的路径,使得该路径上节点的距离和(即失真距离)为最小。对于端点松弛的情况,路径搜索原理相同,只是增加了搜索路径。
(二) 硬件系统
音纹电子门锁系统的核心是音乐识别模块。包括按键输入、音乐信号采集、音乐信号处理、FLASH存储扩展、扬声器输出、控制输出以及LCD模组等。音乐识别模型的原理框图如图4所示。其核心为音乐信号处理。
音乐识别模块各组成部分完成的功能如下:
(1)按键输入部分:共有数字键、训练键、删除键、确认键和取消键等按键,用于密码输入时的各项操作。其中训练键为隐藏部分,在外部无法直接看到。采用不同的按键输入,按键顺序随时改变,因此,从某种意义上来讲又成为了一种密码。
(2)语音信号采集部分:特定语音芯片
(3)FLASH存储扩展部分:用于存储音乐的个性特征参数参考模板。
(4)扬声器输出部分:扬声器
(5)控制输出部分:用单片机I/O口控制门锁控制电机。
(6)LCD模组部分:用以显示系统的工作状态,以及操作提示。
(三)工作模式
音乐识别模块有三种工作模式:训练模式、认证模式,这两种模式都可通过工作模式按键选择。
(1)训练模式,音乐的声音通过音频线进入语音信号采集前端电路。第一次语音输入时,由单片机对采集的语音信号进行处理,提取音乐的个性特征参数,并存储到外扩的FLASH内,形成音乐特征参数模板。每个密码可以进行三次训练,第二语音输入时,提取的个数特征参数与由第一次语音输入形成的特征参数模板进行匹配,在匹配距离小于模板更新阈值时,将音乐特征参数模板更新为两次特征参数的平均值。第三次语音输入时,提取的个性特征参数与由第一、二次语音输入形成的特征参数模板进行匹配,在匹配距离小于模板更新阈值时,将音乐特征参数模板更新为三次特征参数的平均值,形成最后的该音乐的特征参数模板。训练模式只有识别程序的拥有者可见。
(2)认证模式,同样通过音频线录入音乐的声音,再由单片机对采集的语音信号进行处理,将提取的音乐特征参数与存储在外扩FLASH内的特征参数模板进行匹配,匹配距离小于认证阈值时,通过认证;然后再判断匹配距离是否小于认证模式下的模板更新阈值,决定是否对模板进行更新。
另外,由于单片机的可重复编程功能,如果有必要,此音纹识别系统可以再加入密码输入等安全认证措施。但考虑到本音纹识别本身具有较高的安全性,加入密码输入没有太大的意义,在这里我们并没有加入此功能。
(四)总结
音纹识别不仅使用方便,安全,而且还具有以下特性:用户接受程度高,由于不涉及隐私问题,用户无任何心理障碍;声音输入设备造价低廉,而其他生特识别技术的输入设备通常造价昂贵。与声纹识别,利用虹膜、指纹和人脸等技术的门锁相比,基于单片机构建的语音电子门锁系统具有成本低、使用方便、保密性好等优点。经大量实验测试表明,该系统性能稳定、识别效果好。下一步将进行更多功能的,以及算法的完善。为此技术寻找除了锁之外的其它更广泛的用途。