基于声纹识别的智能小区认证系统设计

2011-06-12 08:55李青邓月明王赟莫崇晟刘斌贺洪平李慧玲
网络安全技术与应用 2011年4期
关键词:声纹马尔科夫嵌入式

李青 邓月明 王赟 莫崇晟 刘斌 贺洪平 李慧玲

1湖南师范大学物理与信息科学学院 湖南 410081 2化工部长沙设计研究院 湖南 410116

0 引言

语音识别(Voice Recognition)技术研究如何使机器能准确的辨认语音的发出者或其内容,以便控制其它设备来满足人类的各种需要。

声纹识别的主要任务包括:语音信号处理、声纹特征提取、声纹建模、声纹比对、判别决策等。小区声纹身份认证,分为两个阶段。一是声纹注册阶段:在小区工作人员的现场监督下,小区住户利用麦克风向系统注册语音样本,系统利用从语音样本中提取的声纹特征序列为用户构建声纹模型;二是声纹认证阶段:小区住户向麦克风输入语音,语音识别库将输入的语音与语音样本对比,如果输入语音的声纹能在声纹特征序列找到匹配的声纹,则证实他是小区住户。

1 总体结构与原理

设计小区认证系统是为了满足现代人们对智能安防的需求,为了对本系统有一个较为全面的介绍,本系统的总体框架图(如图1)。

图1 基于声纹识别的小区认证系统结构图

该系统可简便实现小区的安全保证,另外该系统的用户可根据需要,自由选择外围模块和扩展应用,同时也易于产品后期维护和升级更新。

2 声纹识别算法

隐马尔可夫模型是一个双重随机过程,具有一定状态数的隐马尔可夫链和显示随机函数集。一个HMM可以记为λ= (N, M, π, A, B)。式中:N为模型中隐马尔科夫链的状态数,M为各状态对应的观测值的数目,π为起始状态概率分布矢量,A为状态转移概率矩阵,B为观测值概率矩阵。

Viterbi译码算法是由Viterbi于1967年提出的一种最大似然译码办法,译码器根据接收序列R按最大似然准则力图找出正确的原始码序列,用于解决隐马尔科夫模型解码。

系统训练中,先对语音信号特征矢量进行状态分割,动态聚类,再运用模糊统计的方法寻找出B参数,然后进行迭代重估,避免了模型发散,使参数收敛到全局最优点(如图2)。具体训练方法如下:

图2 基于Baum-Welch迭代的声纹识别算法

本文由国家大学生创新性实验计划项目,湖南师范大学科研基金资助项目(青年基金,项目编号:71003)资助。

(1)提取MFCC参数,选择模型参数初始值,初始值应满足隐马尔科夫模型的要求,即:

(2)语音特征的变化表现为状态的转移,利用韦特比算法对每个特征序列做状态切割,每种状态都用若干个概率密度函数(probability density function, PDF)的线性组合来表示。

(3)通过动态聚类算法,将同一状态特征的训练语音帧分为N类,得到的bjk(X)中最大的X归第K类,并计算每个类中的均值及协方差阵,转化为各概率密度函数的权重。

(4)更新模型参数,并判断是否收敛,若不收敛,转(2)。

(5)运用Baum-Welch算法反复迭代,直到收敛,在应用中一般迭代三次即可。

改进后的算法降低了运算量,从而加快了识别速率,可满足较大规模人群的集中辨识,减小了数据的存储空间,提高了系统的整体性能。

3 硬件设计

目前,常用的32位嵌入式处理器主要有:Motorola公司的PowerPC系列、MIPS公司的MIPS系列、ARM公司的ARM系列和其他DSP系列处理器芯片等几种。其中PowerPC系列多用于高端应用,MIPS系列的开发资源不是很丰富,DSP则多用于专用信号处理,而ARM系列处理器芯片以其低功耗、低成本、高集成度等优点在处理器市场已占有很大份额。因此,本系统选用OMAP3530微处理器芯片作为本系统的嵌入式CPU,这是一款高性价比、低功耗、高性能、高集成度的CPU。

3.1 硬件功能模块

CPU部分是系统硬件的核心部件,主要由 OMAP3530以及其辅助电路组成;存储系统负责程序存储并提供程序运行空间和临时数据的存储,主要包括Flash和SDRAM等部件;通信模块包括了串口、以太网接口等部件;调试接口在系统调试过程中发挥作用。

OMAP3530架构包含外部存储器接口、单个内存端口、USB接口、JTAG接口、串口、音频处理接口等。串口通常用作控制台接口,实现人机交互。在保证引导程序工作的基础上,也可以用来下载内核。JTAG接口用来调试裸板,可以将JTAG调试器接在开发板的JTAG口上,通过JTAG口与目标机处理器核进行通信,该方式是目前采用最多的一种调试方式。以下是认证终端结构图(如图3)。

图3 认证识别终端硬件功能模块图

3.2 嵌入式CPU

随着微电子技术的快速发展,嵌入式CPU的处理能力不断加强,而价格不断下降,性价比已远超过了传统的单片机CPU,尤其DSP+ARM的双内核控制器已成发展趋势。ARM内核完成多任务调度和设备资源管理,用于数据采集和传输;DSP内核完成FIR/IIR数字滤波、音频数据的处理。两者通过双端口RAM通信,分工协作,使得终端的整体性能和效率将大为提升。

OMAP3530是TI公司2009年最新推出的一款高度集成的嵌入式双核处理器,为实现下一代嵌入式设备的应用而设计的。它具有独特的双核结构,一个实现控制功能的带 TI增强型ARM Cortex内核的RISC处理器和一个实现数据处理功能的高性能、低功耗的TMS320C64x+ DSP核,带有片上64KB SRAM和112KB ROM存储,提供1个高速USB2.0 OTG接口、2个RS232异步串口。双核之间利用Mailbox消息中断机制来进行数据共享,即ARM核控制各路数据采集模块以及音频模块将数据保持在SDRAM内存中的一块高速缓存区,当一段数据准备完毕后,ARM 核将利用邮箱唤醒DSP开始处理这些数据。如果为了提高数据处理速度的话,可以用DMA功能将SDRAM中的数据搬移到DSP的内部存储空间进行处理。

3.3 声纹识别硬件模块

本系统以PC机为平台,语音库在训练的过程中动态建立。实验模块(如图4)。

图4 声纹识别流程

语音数据采集模块是由话筒、声卡及语音采集软件构成,主要是采集语音信号并转化为数字信号数据。声纹特征提取模块从已采集好的语音数据中提取声纹特征数据,在学习流程中将声纹特征数据传送给数据库管理模块。声纹特征分析比较模块通过数据库管理模块获取库中已有的声纹特征模型,接受匹配未成功的声纹特征数据并存入数据库。在学习流程中直接将声纹特征提取模块传送来的数据作为说话人模型存入数据库。音频输出模块输出匹配结果。

4 软件系统设计

4.1 软件功能模块

系统软件由ARM启动引导程序U-boot、嵌入式Linux操作系统、设备驱动程序、glibc函数库以及 DSP端采用的TI公司提供的DSP/BIOS软件等组成。其中,设备驱动程序按照嵌入式Linux驱动程序的开发原理,根据硬件原理图引脚接口电路设计。应用程序则包括外围接口初始化、命令解析与执行模块等几大部分,在系统引导启动后,采用多进程、多任务的方式在内存中运行(如图5)。

图5 软件功能模块

4.2 声纹识别软件流程图

整个系统的软件是首先完成对终端CPU的初始化工作,如看门狗定时器、存储控制器、Cache启用设置等;然后,外围设备初始化包括控制接口初始化、音频接口初始化、USB主机接口初始化等;接下来是对DSP系统程序的引导、释放DSP复位状态及唤醒DSP工作;最后启动多任务调度程序(如图6)。

图6 声纹识别软件流程

5 小结

声纹识别嵌入式系统设计的重点是保证高准确率的基础上,处理大量语音数据。一方面要考虑声音特征的处理,另一方面要对硬件的各个接口进行匹配和编写驱动程序。最后考虑 Linux操作系统在处理声音的缺陷及可能遇到的问题。从总体来看,本系统基本实现了智能安防的功能。声纹识别具有识别时间短及无需接触的特点,随着硬件性能和算法的改进,该系统会有广阔的前景。

[1]袁里驰.基于改进的隐马尔科夫模型的语音识别方法[J].中南大学学报(自然科学版).2008.

[2]刘辉,杨俊安,许学忠.隐马尔科夫模型和支持向量机混合模型声纹识别[J].探测与控制学报.2009.

[3]朱东华,王仁华,凌震华,李威.基于隐马尔科夫模型的汉语韵律词基频模型[J].声学学报.2002.

猜你喜欢
声纹马尔科夫嵌入式
基于三维马尔科夫模型的5G物联网数据传输协议研究
基于叠加马尔科夫链的边坡位移预测研究
Focal&Naim同框发布1000系列嵌入式扬声器及全新Uniti Atmos流媒体一体机
基于改进的灰色-马尔科夫模型在风机沉降中的应用
TS系列红外传感器在嵌入式控制系统中的应用
屏幕即指纹识别
搭建基于Qt的嵌入式开发平台
基于数字水印的人脸与声纹融合识别算法
连续隐半马尔科夫模型在轴承性能退化评估中的应用
倍福 CX8091嵌入式控制器