冯郁茜 谢将剑 李星光
摘要:针对基于深度学习的识别方法对数据量要求较高、应用比较困难,对于鸟类数据有限的情况,本文开发一种基于深度学习的移动端嵌入式鸟类识别系统,利用单通道盲源分离对鸣声进行预处理,输入到迁移学习VGG-16模型进图像特征提取实现乌类物种的分类。采用基于MFCC的双模态决策级特征并训练Mobilenet轻量化模型,将算法移植到Android客户端,以18种鸟类为研究对象进行测试,实验结果表明,该方法在识别准确率达到99%以上,软件推动了鸟类个体自动识别在鸟类调查和监测领域的广泛应用。
[关键词]深度学习鸟类物种识别特征融合嵌入式软件开发
鸟类是野生动物最具代表性的类群之一,其种类、数量是反应生态系统变化和环境质量的重要指示因子。鸣声具有物种鉴别性和个体差异性,是识别鸟类的重要依据,通过调查研究鸟类种群分布与数量的变化,对科学保护野生鸟类具有重要意义。
国内外围绕基于鸣声的鸟类自动识别的相关问题在有效鸣声信号提取、特征参数计算、分类决策等方面展开了大量的研究。采用信号分离技术分离出纯净鸣声,为后续的鸣声识别提供高信噪比的鸣声信号,有利于提高识别准确率。盲源分离技术可以不需要先验知识,从音频信号中分离出不同鸣声信号以及其他干扰噪声,可以解决自然环境下多只朱鹦同时鸣叫识别效果差的问题。基于该方法,L.J.Zhang[1]提出改进的子空间投影法实现信号分离,可以提高计算效率。C.J.Li[2]提出基于K均值的聚类方法,并引入蚁群算法估计出源信号,对含噪信号的分离效果較好。随着深度学习的推广,充分利用神经网络强大的信息抽取能力,依次使用时间卷积层和频率卷积层提取原始音频信号的特征,将其输入深度学习分类模型。训练时,特征提取和分类的模型参数同时参与更新。训练得到的特征提取模型可以提取到最适合于分类的差异特征。但是分类效果相比基于梅尔频率倒谱特征,优势并不明显。提取鸣声信号的差异特征后,需要对不同的差异特征进行分类完成个体识别。目前,国内外用于鸟类个体自动识别的分类方法包括:
(1)基于模板匹配的分类方法,最具代表性的就是动态时间规整算法,该方法虽然识别精度较高,但是运算量太大,影响识别效率。
(2)通过建立基于特征的分类模型实现分类,常用的模型或方法有隐马尔可夫模型、高斯混合模型、支持向量机、随机森林、自主神经网络、K最近邻以及集成学习等;
(3)基于深度学习的分类方法,包括
深度神经网络(DNN),深度卷积神经网络(DCNN)以及卷积循环神经网络(CRNN)等,该类方法通过选择合适的网络架构及训练参数,得到了比第二类基于特征的分类模型更好的性能。尽管鸟类物种分类识别方法的研究已取得了很大进步,但是依然存在很多问题。设计合理的特征表达方法提取最优的差异特征和构建准确率高、鲁棒性强的野生朱鹦个体自动识别方法仍是亟待解决的难题之一。
本文提出一种基于深度学习的嵌入式鸟类物种识别算法,利用VGG-16进行同构空间下的特征迁移,用ImageNet数据集迁移到鸟类物种识别问题上。为了提高识别率,将鸣声信号和梅尔频谱两种双模态特征进行融合,搭建一种改进的CLSTM模型进行鸣声差异特征提取,与传统的浅层机器学习方法进行分析对比。并将轻量化Mobilenet模型嵌入到安卓平台来验证算法的有效性。
1基于EDA和ICA的单通道盲源分离算法
1.1集合经验模态分解EEDA和FastICA的信号分离
实际环境中采集的音频信号存在多种噪声,噪声的存在会降低识别的准确度,非有效信号的存在会降低识别的效率和分类器的精度,因此必须对有效鸣声信号进行提取。盲源分离技术仅由观测信号估计出混合矩阵,进而恢复出源信号,利用该技术从音频信号中分离出纯净的鸣声信号以及干扰噪声,张文霞[4]提出一种基于FastICA的欠定盲源信号分离方法,引入基于密度的聚类算法估计混合矩阵,将估计得到的混合矩阵作为压缩感知的测量矩阵,最后利用压缩感知重构算法求出信号的稀疏系数进而实现源信号的重构。本文利用基于EEDA和ICA提取背景噪声环境下的有效鸟叫声,对鸣声信号进行前期预处理输入到深度学习模型中实现种类识别。
集合经验模态分解(EnsembleEMD)利用白噪声作为辅助,可以对异常扰动以及因本征模态函数(IMF)不连续引起的模态混叠进行有效的抑制。先利用EEMD将混合信号分解出和信号源数相同个数的分量,进而等效成正定盲源分离的问题,对观测信号进行EEMD分解,可以实现将观测信号到高维空间的映射。IMF分量具有统计独立性,选择分离效率高的快速独立成分分析法(FastICA)作为正定盲源分离算法完成信号重构。利用IMF和源信号的相关性等量化参数,准确区分并去除虚假分量实现降维。从而提升信号分离的准确率,而且输入信号数量变少,可以减小FastICA迭代的次数,进一步提高分离的效率,其算法原理如图1所示。
单通道混合信号表示如公式1所示,其中s.(),<.一..表示的是源信号向量,a为混合系数,y(t)代表分离估计信号。图2所示即为原始信号、分离信号及提取出的有效鸣声信号时频域结果,时域图代表时变信息,只能反应信号随时间的大幅度变化,为了反应时变的频谱信息和能量分布,去除背景噪声对后续识别精度的影响计算其时频声谱图像,而且更能直观地反应每个物种的纹理边缘等图像特征。
1.2VGG-16迁移学习
迁移学习是一种针对小数据集的深度学习技术,首先获得预训练好的卷积神经网络CNN,通过参数迁移获得五层卷积层模型参数,接利用图像对第五层卷积层进行微调获得一个特征提取器。将特征提取器用于提取训练集的深度特征,训练物种检测识别模型。VGGNet模型具有很好的泛化能力,本文采用VGG-16模型,该模型包含5个卷积层,2个FC全连接特征提取层,1个分类层。通过3x3固定大小的卷积核及2*2固定大小的Maxpool交替叠加连接。
本文获取的鸟类音频文件均来自XenoCanto世界野生鸟类声音公开数据集(ttps://www.xeno-canto.org)和北京市松山国家级自然保护区采集的鸟类音频。研究对象选取了朱鹦、大山雀等多种国家二级以上保护动物的鸟类物种,表1列出了实验音频数据的具体参数。搭建window系统下的Keras框架并设置训练参数,采用ReLu作为非线性激活函数,最大池化的方式提取卷积层特征进行降维,参数隐退Dropout为0.5,选择Cross_entropy交叉熵函数作为损失函数并用随机梯度下降SGD优化过程。将计算的声谱图输入到搭建的卷积网络进行样本训练和测试,实验结果表明该算法测试集分类准确率达到97.6%,损失率为0.12。
2基于双模态决策级特征融合
2.1MFCC梅尔频谱特征
基于鸣声的鸟类个体识别可以由人类语音识别类推得到,语音识别中常用的特征参数梅尔倒谱系数(MFCC)在鸟类鸣声特征描述中也得到了广泛的应用。梅尔频谱是一种基于人耳的听觉特性的非线性频率,是最常用的音频特征之一,当信噪比较低时仍然具有较好的识别性能。对鸟鸣声信号进行预加重、分帧加窗等预处理,利用人听觉的临界带效应,在声音频谱范围内设置若干个带通滤波器,每个滤波器具有三角形或正弦形滤波特性。将声音能量谱通过该滤波器组,求各个滤波器输出,对其取对数,并作离散余弦变换(DCT),即可得到梅尔特征系数,如公式1所示。把时域卷积替换为信号的叠加进行倒谱分析。特征提取技术需要从音频信号中提取有效的、具有代表性的特征参数,原始的鸟叫声语音特征参数依据N维MFCC参数=N/3MFCC系数+N/3-阶差分参数+N/3二阶差分参数(倒频谱系数)原理,标准的倒谱系数表示了语音参数的静态特征,图3结合一阶差分和二阶差分描述符表征了鸣声信号的动态性能。
2.2CLSTM网络优化
LSTM(LongShort-TermMemory)是一种长短时记忆序列网络,该时间递归神经网络适合于处理和预测时间序列鸟叫声信号。本文提出优化的CLSTM特征提取模型,将分离后得到的原始鸣声信号通过时间卷积层和频率卷积层得到时频特征,池化降维后输入到3层LSTM提取音节的时序特征,最后输出鸣声信号的差异特征。为了得到模型参数,将特征提取模型连接到含有2层全连接层和1层Softmax层的DNN模型构成分类模型。时间卷积层和频率卷积层的初始参数通过梅尔频谱变换得到,通过对比分类效果选择最终的初始化方法,其他参数采用随机初始化。然后利用已经标记好的个体鸣声对该分类模型进行参数训练,得到差异特征提取模型的最终参数。
2.3实验结果与分析
服务器端实现识别功能后将其进行算法移植,训练mobilenet模型,保存模型生成h5文件,再转换生成基于tf的pb文件,得以在移动设备端使用。本文采用基于MVC架构模式,分为数据模块、View图像模块、控制模块,因为音频文件数据量大,生成过程较繁琐,需在服务器端生成原始数据,客户端进行调用,通过服务器训练Mobilenet轻量化模型,将权重文件迁移到用户端,安装apk文件即可以完成测试;Mobilenet是一种可应用于移动和嵌入式视觉应用的轻量级识别模型。本文采用mobilenet-v1网络结构,通过将标准化卷积分解为深度卷积和1x1卷积减少模型参数,用1x1卷积来组合不同深度卷积的输出,最后将一个标准的卷积过程组合成一组新的输出。深度可分离卷积将其分成两层,一层用于滤波,一层用于组合。这种分解过程能极大减少计算量和模型大小。如表2所示。
为了比较系统在单个物种上的分类性能,本次实验选用北京市松山国家级自然保护区采集的18种鸟类音频进行测试,验证本文提出方法的有效性,对比各个鸟类的实验结果。人机交互界面APP设计如图4所示,Birdiden页面显示识别结果,控件模块包含选定图片(默认来源于相机或相册)、上传图片、图像表示等。系统可供选择的声谱图像可用梅尔频谱图、线性调频小波谱图及傅里叶谱图。图片显示模块显示物种识别结果、物种信息、准确率及测试时间功能。从图中可以看出,选用物种5鹤头山雀的傅里叶频谱,其精度高达99.88%,测试一张图像的时间为73ms,物种14杜鹃的线性调频谱准确度为99.85%,測试时间为93ms,中杜鹃的线性调频谱准确度为99.97%,测试时间为150ms,前者相比后者节约了测试时间,后者虽耗时较长,但分类准确率更好。说明本文设计的软件具有较高的鲁棒性能,实现了基于安卓的鸟类个体的自动识别,推动鸟类资源调查和监测的自动化。
3结语
自然环境中的采集的鸣声存在干扰噪声影响识别效果、手动提取差异特征困难以及鸣叫时无法全面识别的问题,然而针对现有的鸟类识别问题,本文提出基于深度学习的嵌入式鸟类物种识别方法,搭建卷积一长短期记忆网络的特征提取方法,自动提取鸣声的个体差异特征,实现安卓系统端的算法移植,在不同物种测试集的识别准确率和训练时间上均有较大的改进和提升,该软件对鸟类物种识别具有理论和工程应用价值。
参考文献
[1]L.J. Zhang, J. Yang, K.W. Lu,et al.Modified subspace method based on convex model for under determined blind speech separation [J ] .IEEE Transact ions on ConsumerElectronics, 2014, 60 (2): 225-232.
[2]C.J. Li,L.D. Zhu, A.H. Xie, et al.A novel blind source separation algorithm and performance analysis of weak signal against strong interference in passive radar system[J]. International Journal ofAntennas and Propagation, 2016: 1-10.[3]T.N. Sainath, R.J. Weiss, A. Senior,et al. Learning the speech front-end with raw waveform CLDNNs [C] .Interspeech, 2015: 1-5.
[4]张文霞。欠定盲源分离混合矩阵估计及源信号恢复方法研究[D].燕山大学,2016.
[5]刘昊天,姜海燕,舒欣,基于特征迁移的多物种鸟声识别方法[J].数据采集与处理,2017,32(06).
[6]张义德,胡长雨,胡春育。基于卷积神经网络的遥感图像飞机检测[J].光电子技术,2017(01):68.