申晓天 舒童 路梦康 凌智 王旭楠
摘 要:本课题研究的主要意义在于对现有声音技术展开研究分析,通过对基本原理的掌握和系统结构的了解,通过对动物在某一特定行下发出的叫声进行收集,并且建立模型分析,通过对数据标准模型的建立,进行有效地声音识别,根据系统中形成的平均稳定值,反复的对比研究之后,从声音的角度判断动物相应的动作,以便了解动物在此叫声下的行为意义,以此建立一个全面的动物叫声识别系统,更好在动物学领域得到应用。因此选择该研究课题,基于动物叫声的行为意义识别。
关键词:动物叫声;行为意义;识别系统
1 动物行为意义识别系统的设计和结果
1.1 识别的基本流程
目前,利用声音信号进行识别,应用较多的是三步流程识别方法,即原始声音信号的预处理、特征提取和分类建模,如图1所示:
图1 声音识别的基本流程
但此流程存在一些不足,比如:数字信号的预处理不够深入、特征选择的人为主观性太强、系统的可移植性太差等。
本课题主要是建立全新的识别系统,根据分析中提出的不足进行改进,在不断的深入探索过程中不断的创新和提升,确保系统建立能够满足实际的功能需求。基本流程包括原始声音信号的预处理、声音提取、特征提取、特征选择和模型训练。
1.2 原始动物声音信号的预处理
1.2.1 分帧
研究发现,当声音信号大概在30ms左右时,可以被认为是短时平稳的。在进行声音采样的过程中,主要的采样率为44100Hz,以此来确定分帧的合理长度,综合考虑选择256,确保在处理过程中能够平稳进行,避免信号过短。
1.2.2 加窗
通过对以往的研究进行分析,在进行声音信号处理的过程中,采用汉宁窗具有更好的实际效果,从多方面的角度考虑,为了系统效果的更好展现,我们采取汉宁窗的方式对声音信号进行加窗处理。其主要的定义公式如(1)所示:
Xmn=xmnwn,1≤n≤256
其中Xmn代表加窗后的第m帧信号,wn代表汉宁窗,如式(1)所示:
wn=0.54-0.46cos(2πn/256),1≤n≤256
1.2.3 有效声音片段的提取
第一步:根据实际的信息收集,计算出每一个帧频的声音能量Eii=1,2,…N,其中N为语音总帧数,Ei是第i帧信号强度的平方和;
第二步:做好相应的记录EMAX=max(E1,E2,…EN),EMIN=min(E1,E2,…EN),计算Edif=EMAX-EMIN;
第三步:
计算Eup=EMIN-Edif×10%与Elow=EMAX-Edif×10%,选则能量值在Eup与Elow之间的帧,从而得到所需要的有效聲音片段。
1.2.4 特征的提取
声音识别中的特征很多,选择恰当的特征组合对识别准确度有很大影响。以下将介绍本系统将要提取的声音特征。
1)基频。声波一般可以分解为各种不同频率的正弦波,其中频率最低的正弦波称为基因,其对应的频率称为基频。
2)共振峰。共振峰是描述声道中共振的情形,决定声音信号主要特征的是前三个共振峰。
3)过零率。过零率是指一个信号正负变化的次数。
图2 过零点图示
在图2中,标记的点是一个过零点,代表信号从正转到负。
其计算公式如下:
ZCR=1N∑N-1i=1(Sgn(xi)-Sgn(xi+1))2
其中Sgn为符号函数。
4)短时平均幅度差。短时平均幅度差是指每帧信号中,相邻两维之间差值的绝对值和。其计算公式如下:
AMDF=∑N-1i=1xi-xi+1
1.2.5 短时能量
短时能量用来衡量一段语音信号的能量大小。其计算公式为:
Short_energy=∑Ni=1xi2
1.2.6 频谱重心
频谱重心是频谱的中心点,与声音的亮度有关,其计算公式为:
SC=∑Mn=0nXmn2/∑Mn=0Xmn2
其中Xmn是语音信号短时傅里叶变换,M是短时傅里叶变换长度的一半,因每帧的帧长是256,那么M=128。狗的警告、哀求、愤怒与啜泣的频谱重心大致范围依次为[15,22]、[0,30]、[0,13]、[0,15],故利用频谱重心可以把这警告、哀求区分开来,但是哀求和饥饿有重叠,需要其他的特征来区分。
1.2.7 信号宽度
信号宽度的定义为:
BW=∑Mn=0n-SC2Xmn/∑Mn=0Xmn2
1.2.8 信号扩展度
声音扩展度描述的是频谱在均值附近的扩展,定义为:
δ2=∑Ni=1Xmi-μXmi-μ
其中μ是Xmi,i=1,2,…,N的平均值,N是每帧信号的帧长256。通过计算信号扩展度。
1.2.9 短时自相关分析
短时自相关函数的计算公式为:
Rnk=∑N-1-km=0xnmxnm+k
其中k是最大延迟点数。通过计算信号短时系相关函数:
1.2.10 Teager能量
Teager能量的计算公式为:
E=∑N-1i=2xmi2-xmi-1xmi+1
1.2.11 MFCC
MFCC的作用主要是为了更好的识别声音能量,其在精准度方面具有较好的效果。我们通过人耳听到的声音并不能组成一个完全的线性。在进行声音处理的过程中,需要经过特定的梅尔频率倒谱,对短时间内的声音进行分析,通过采用梅尔刻度对一定频率范围内的音频能量进行频谱内的线性预先变换。组成梅尔频率倒谱的系数就是梅尔频率倒谱系数。
1.2.12 特征的选择
本系统选14种特征进入到特征选择环节,在特征选择的时候根据特定的选择算法,对于每个不同的特征进行相应的测试,从而确保检测的准确性,形成一定的特征分类能力,在之后的特征选择过程中,以检测的标準为每个特征的依据,从高到低的原则进行排序。在每组的对比中,选择分类能力最强的一项,添加到特征向量当中,并且进行反复的测试,直到所选择的特征向量与上一次检测结果能形成的平均准确率差值在较小误差的时候,就我我们所需要特征。
2 分类器
本系统采用的是k邻近法,即将一个未知的测试样本归类到与它最接近的k个近邻中出现次数最多的那个类别。k邻近法算法描述为:
第一步:输入每一个样本数据点datai,i=1,2,3,…,n,并且以数字1,2,…,m代表m个类;
第二步:输入待测试数据test_data和k;
第三步:对于test_data,分别与data1,data2,…,datan比较,假定dataj1,dataj2,…,datajn是与test_data距离最近的k个值,其中1≤j1,j2,…,jn≤n且j1,j2,…,jn两两互不相同;
第四步:建立向量cntm,并且全部赋初值为0,其中m代表类的总数,对于i=1,2,3,…,k,分别记dataji的种类标记为Ci,并且令cntCi=cntCi+1;
第五步:遍历cnt 数组,记其中最大的值为cntlable,那么test_data的类别就是lable。
3 结语
本课题在目前语音识别技术水平,以及利用动物叫声进行物种识别研究的基础上,提出针对特定动物,利用其特征叫声判断行为意义;研究动物特定行为,并且根据行为发生过程中叫声的特征进行提取和分析,对叫声信号时间内的音频进行特征提取,并且对此进行后期的整理,根据每个叫声频域的不同,更好的区分在不同行为下的叫声参数,以此了解动物叫声的行为意义。本课题主要以狗为研究对象,对于在愤怒、警告、饥饿、哀求等状态下发出的吠叫声进行收集、分析、研究,通过特定的叫声的功率谱、MFCC、基音频率等形成一定的特征参数,组成特征向量,通过算法进行语音识别。
参考文献:
[1]王岩.基于动物叫声的物种识别技术的研究[D].东北林业大学,2010.
[2]柴泽兴.法语中与动物叫声有关的拟声动词研究[J].法语学习,2013,05:1318.