基于
频带
能量
特征
提取
汽车
鸣笛
识别
第 42 卷 第 5 期Vol.42,No.52023 年 9 月Journal of Applied AcousticsSeptember,2023 研究报告 基于子频带能量特征提取的汽车鸣笛声识别侯晓飞1穆瑞林1,2周 晋3贾自杰1(1 天津科技大学机械工程学院天津300222)(2 天津市轻工与食品工程机械装备集成设计与在线监控重点实验室天津300222)(3 天津市房地产市场服务中心天津300222)摘要:为了快速准确地识别城市中汽车违法鸣笛声并将不同种鸣笛声进行分类,该文应用子频带能量提取鸣笛声的特征,利用BP神经网络对提取的子频带能量特征值矩阵进行学习训练,且在神经网络学习过程中利用可变学习速度的方法,减小了神经网络的迭代次数。实验表明,利用此种子频带能量特征提取法使鸣笛声与非鸣笛声的平均识别率达到了94.889%;使不同鸣笛声之间的分类正确率最大达到了93.75%,实现了不同鸣笛声之间的分类。利用子频带能量法,能够很好地满足不同种鸣笛声识别与分类的需求。关键词:鸣笛声识别分类;子频带能量;特征提取;神经网络中图法分类号:TN912.34文献标识码:A文章编号:1000-310X(2023)05-1106-09DOI:10.11684/j.issn.1000-310X.2023.05.025Recognition of automobile whistle sound based on sub-frequency band energyfeature extractionHOU Xiaofei1MU Ruilin1,2ZHOU Jin3JIA Zijie1(1 College of Mechanical Engineering,Tianjin University of Science&Technology,Tianjin 300222,China)(2 Tianjin Key Laboratory of Integrated Design and Online Monitoring for Light Industry&Food Machinery and Equipment,Tianjin University of Science&Technology,Tianjin 300222,China)(3 Tianjin Real Estate Market Service Center,Tianjin 300222,China)Abstract:In order to identify different kinds of illegal car whistling in cities quickly and accurately,the methodof sub-frequency band energy feature extraction was applied in the classification and recognition of whistles.And the extracted sub-frequency band energy eigenvalue matrix was trained by BP neural network,and thenumber of iterations of the neural network in the process of learning was reduced by used the method of variablelearning speed.The experiment shows that the average recognition rate of whistle and other sounds is 94.889%;and the classification accuracy rate of different car whistle sound is 93.75%,the classification among differentwhistles can realized by the method of sub-frequency band energy.The requirements of different whistle soundidentification and classification can be well satisfied by using the sub-frequency band energy method.Keywords:Identification and classification of whistle;Sub-frequency band energy;Feature extraction;Neuralnetwork2022-07-20收稿;2022-09-20定稿天津市建委科技项目(2017-10)作者简介:侯晓飞(1996),男,河北衡水人,硕士研究生,研究方向:机械测试理论与技术。通信作者 E-mail:第42卷 第5期侯晓飞等:基于子频带能量特征提取的汽车鸣笛声识别11070 引言近年来,城市中违法乱鸣笛行为随着汽车数量的增加而逐渐增多。鸣笛声制造交通噪声的同时,给人们的生产和生活也带来了巨大的影响,尤其是在学校、医院、居民区等这些需要安静的区域。因此,对乱鸣笛行为的治理非常有必要。车辆的识别与分类在创建城市智能交通系统中至关重要,在传统的鸣笛声识别分类中往往采用的是人工监测的方法,此种方法误检率较高,且依赖人工复核。目前车辆识别与分类研究主要集中于视觉方法,对车辆完整的声学识别与分类研究较少。随着声学研究的深入,为了提高鸣笛声的检测效率,在鸣笛声分类识别方面,能量阈值法、互谱矩阵法以及特征提取法等逐渐被应用在鸣笛声识别当中,例如刘建平等1根据信号短时能量与过零率乘积的双门限检测算法对鸣笛声与非鸣笛声进行了识别;孙懋珩等2提出了一种基于传声器阵列和闭式球形插值法的汽车鸣笛声识别系统,但是此种方法只能单方面地确定目标车辆的位置,且会存在较多误判。神经网络近些年受到了研究者越来越多的重视,侍艳华等3设计了梅尔频率倒谱系数(Mel-frequency cepstrum coefficient,MFCC)和卷积神经网络识别鸣笛声的方法;班琦等4在建立鸣笛声样本的基础上利用改进的BP神经网络算法识别了鸣笛声;白琳等5将小波变换6与BP神经网络相结合实现了车辆声信号的分类。在鸣笛声识别分类中,利用神经网络识别时效率与准确率会受到不同特征提取的影响,例如郑皓7将频谱特征作为卷积深度置信网络(Convolu-tional deep belief networks,CDBN)的输入进行训练后得到鸣笛声的CDBN特征,与MFCC特征进行对比分析后发现利用CDBN特征进行识别的准确率更高。可知鸣笛声识别中提取何种特征进行识别仍是一项关键。在违法鸣笛声监管过程中通常利用传声器阵列进行鸣笛声定位8,但随着距离的增加,可能会产生定位误差,而两辆车如果并排行驶且横向距离较近时,由于定位误差的存在,可能会存在车辆之间的误判。为了更准确地识别违法鸣笛声,提高交通执法效率,本文提出了一种基于子频带能量特征提取的汽车鸣笛声识别与分类的方法。本方法对鸣笛声的时频谱特征进行分析与提取,结合可变学习速率的BP神经网络进行鸣笛声识别,可对不同车型的鸣笛声进行有效区分,获取违法鸣笛车辆的完整声学信息,以作为违法鸣笛的辅助判断和处罚依据。利用车辆的鸣笛声特征对鸣笛车辆车型进行识别分类,其目的是在违法鸣笛声治理过程中进行辅助监管与判断,当有异议时,可通过复核对比鸣笛声定位与鸣笛声车型特征两种依据进行更加科学准确的判断,从而减少鸣笛噪声,对道路交通噪声污染治理具有积极意义。1鸣笛声特征提取与分类方法1.1鸣笛声特征提取城市道路中比较常见的鸣笛声是由电喇叭发出的9,因此在研究时以小汽车上装载的电喇叭发出的鸣笛声为主,主要频率集中在4005000 Hz之间。进一步将鸣笛声信号做短时傅里叶变换得到鸣笛声的时频图,如图1所示。进行鸣笛声识别分类之前,需要对采集到的声音样本进行有效声音段截取以保留鸣笛声信号的主要频率。采用短时能量法10确定鸣笛声信号有效声音段,短时能量法计算式如(1)所示:EK=(1+K)Ni=KN+1x(i)2,(1)式(1)中,x(i)为传声器采集测量信号,EK为第K帧的短时能量。为了进一步对鸣笛声进行分析,并将不同的鸣笛声分类,采用子频带能量法提取特征的方法进行鸣笛声识别。通过划分声信号频谱子频带,对子频带内的频率信息进行分析,找出鸣笛声信号在各个子频带与其他声音不同的特征,即可利用此种特征进行鸣笛声识别。首先将鸣笛声的全频带进行划分,划分为N 个子频带。在对鸣笛声频带进行划分时,为了减小计算量,并将鸣笛声信号的子频带能量特征完整提取,可将信号划分为32个子频带。为了保证各频率能量不被泄漏,相邻两个子频带之间的重合度为50%。每一段子频带上能量初始值等于时频图能量值,如式(2)所示:11082023 年 9 月P(f)=P(f),fl6 f 6 fh,0,其他,(2)式(2)中,P(f)为每个子频带内每个频率f 的能量,fl为子频带起始频率,fh子频带截止频率。子频带的起始和截止频率计算式如式(3)、式(4)所示:fl(k)=fL,k=1,fl(k 1)+fH fLN+1,1 k 6 N,(3)fh(k)=fH,k=N,fl(k 1)+2(fH fL)N+1,16kN,(4)其中,fl(k)、fh(k)为第k个子频带的起始与截止频率,fL、fH为鸣笛声整个频率段的起始与截止频率,N 为子频带总个数。进一步将每个子频带内包络的各频率段分为n段并对每一段能量值进行加窗处理,保证各频率的能量不泄漏且输入到神经网络的特征值矩阵容易计算,在取值时数值等于参数N。求取子频带中每一段加窗后的平均能量,如式(5)所示:Ek(i)=1nni=1Fi(j)h(j),(5)式(5)中,Ek(i)为第k段子频带内第i段包含频率的能量进行加窗后的平均能量,Fi(j)为第k个子频带内第i段对应的各频率j 的能量值,h(j)为窗函数在频率j 对应的系数,n为第k个频带内加窗的个数。将第k个子频带中分成的n个窗的n个平均能量构建为一个行向量,共N 个行向量,将N 个子频带的第i段平均能量值构建为一个列向量,共n个列向量。对所有的n个列向量进行叠加处理,构建出同种鸣笛声的N n维特征值矩阵。C=ni=1C(i),(6)式(6)中,C 是同种鸣笛声的特征值矩阵,C(i)为子频带中的第i段平均能量值的列向量。(a)?1(b)?2(c)?3(d)?45.04.03.02.01.00700600500400300200100?/ms700600500400300200100?/ms700600500400300200100?/ms700600500400300200100?/ms?/kHz5.04.03.02.01.00?/kHz5.04.03.02.01.00?/kHz5.04.03.02.01.00?/kHz图1鸣笛声时频图Fig.1 Time-frequency spectrum of the car whistle第42卷 第5期侯晓飞等:基于子频带能量特征提取的汽车鸣笛声识别1109利用式(6)对图1中鸣笛声信号时频图进行子频带能量特征处理,提取特征值矩阵并进行归一化处理,特征值矩阵包络形成的区域曲线如图2所示。由图2中可以看出,按照上述方法进行特征点提取后,不同种鸣笛声之间的子频带能量特征分布具有较大的差异,具体表现为鸣笛声子频带平均能量归一化后峰值个数、子频带出现的频率位置以及包络形成区域均不相同。因此可利用提取子频带能量特征的方法可以进行鸣笛声的识别以及不同类型鸣笛声的分类。1.2鸣笛声识别与分类BP神经网络应用广泛,具有自适应强的能力11,本文构建3层BP神经网络来对鸣笛声进行识别分类。输入层提取子频带能量特征归一化后的特征值矩阵作为神经网络的输入层参数;中间隐含层对输入的特征值矩阵进行学习与训练,学习过程是通过中间层对输入特征样本的不断逼近来调整神经网络权值和偏置值的过程,如式(7)所示:wij(t+1)=wij(t)+(di yi)xj(t),(7)式(7)中,wij为神经元j 到神经元i的连接权值,di为神经元的期望输出,yi为神经元的实际输出,为学习速率。神经网络初始化权值时从(1/d,1/d)之间任取一值,其中,d 为中间隐含层神经元个数。为了提高算法的收敛速度,在学习过程中将学习速率按式(8)进行调整,以减小神经网络学习过程中的迭代次数。(k)=0+k(1 0 L)/N,(8)式(8)中,k为第k次学习速率,0为初始学习速率,L为最小学习速率,N 为迭代总次数。为了加快迭代速度,减小迭代次数,神经元激活函数选择为tansig函数,如式(9)所示:tansig(x)=ex exex+ex.(9)输出层在被激活之后,将中间层的实际输出与期望输出进行比较,在误差达到最小时将结果输出。利用BP神经网络对鸣笛声识别分类时,将采集到的鸣笛声利用子频带能量法提取特征值矩阵1.00.80.60.40.20302520151050?1.00.80.60.40.20?1.00.80.60.40.20?1.00.80.60.40.20?302520151050?302520151050?302520151050?(a)?1(b)?2(c)?3(d)?4图2鸣笛声子频带能量特征包络曲线Fig.2 Envelope curve of whistle sub-band energy characteristic11102023 年 9 月后输入到训练好的神经网络中进行判别,判断为何种鸣笛声并输出。鸣笛声分类的过程如图3所示。2 实验与分析为了验证子频带能量特征提取法的准确性,在实验时首先进行鸣笛声与非鸣笛声的识别。其次在鸣笛声分类实验时,以福特、丰田、别克、大众、吉利、比亚迪、东风悦达、本田共8种车型为研究对象进行分类实验。2.1鸣笛声与非鸣笛声识别实验首先将鸣笛声与非鸣笛声进行区分,利用STM32开发的控制系统控制微型传声器采集鸣笛声信号和非鸣笛声信号。在采集时,非鸣笛声信号采集了3种常见声音,分别是小汽车行驶经过时的道路噪声、鸟鸣声和犬吠声。图4为鸣笛声与道路噪声、犬吠声和鸟鸣声的时频图的对比。从图4中可以看出:鸣笛声倍频程明显,声能分布较为集中,呈现出典型的脉冲信号特征;而其他非鸣笛声频率分布比较集中,声能分布相对分散。?3?图3鸣笛声分类过程Fig.3 Classification process of car whistle?/s?/s?/s?/s?/kHz?/kHz?/kHz?/kHz(a)?(b)?(c)?(d)?0.10.20.30.40.10.20.30.40.51.01.50.50.60.20.40.80.65.04.03.02.01.004.03.02.01.004.03.02.01.004.03.02.01.00图4鸣笛声与非鸣笛声对比Fig.4 Compaction the whistle with the other sounds第42卷 第5期侯晓飞等:基于子频带能量特征提取的汽车鸣笛声识别1111选择鸣笛声样本数量20个,道路噪声、鸟鸣声和犬吠声样本各10个,利用子频带能量特征提取后进行鸣笛声的识别。图5为鸣笛声与非鸣笛声的识别结果。识别率为采集的鸣笛声信号特征矩阵与训练好的纯净的鸣笛声信号特征矩阵的商值,如式(10)所示:R=ScPc,(10)式(10)中,R为识别率;Sc为提取的实际采集的鸣笛声信号的子频带能量特征值矩阵;Pc为神经网络训练好的纯净鸣笛声的特征值矩阵。0.60.40.20-0.2-0.40.60.40.20-0.2-0.4?Test:R=0.94889图5鸣笛声识别率Fig.5 Recognition rate of car whistles图5实验结果表明,利用子频带能量特征提取的方法可将鸣笛声与非鸣笛声进行识别,识别率可高达94.889%。与文献1中利用双门限检测与频谱间隔进行笛声识别的方法相比,本文实现了鸣笛声与非鸣笛声之间的准确识别。与文献3中利用MFCC特征提取方法相比,本文所提出的特征提取方法,完成了鸣笛声与非鸣笛声之间的识别,并对不同鸣笛声进行分类,使平均识别分类正确率达到了89.718%以上。2.2神经网络验证实验本文构建3层BP神经网络进行鸣笛声的识别分类,学习训练之前需配置每一层的参数。通过子频带能量特征提取获得的鸣笛声声频的32维特征向量参数,作为输入层的输入参数。隐含层的神经元个数为12个,神经元激活函数为tansig函数。本文对8种车型鸣笛声进行了实验研究,因此输出层的神经元个数为8个,对应输出的类别有8种可能性,即输出设置8种对应的标签。本文以上述8种车型各20条样本分为训练组15条和测试组5条对设计的神经网络进行准确性实验验证。首先训练组样本提取子频带能量特征点后输入到BP神经网络进行学习训练,并将学习好的神经网络保存。然后将测试组样本进行测试,验证神经网络的准确性,验证结果如图6所示。识别率是每种车型测试组样本提取的特征值与神经网络训练好的学习组样本对应的特征值的比。实验结果表明,利用子频带能量特征提取方法可以实现对不同种鸣笛声的识别与分类,平均识别率可达93.626%。在学习训练过程中利用改进可变学习速率的BP神经网络同固定学习速率的神经网络进行迭代次数的比较,迭代次数如表1所示。表1迭代次数比较Table 1 Comparison of iterations改进前迭代次数改进后迭代次数福特汽车鸣笛声258207丰田汽车鸣笛声301255别克汽车鸣笛声289223大众汽车鸣笛声365287比亚迪汽车鸣笛声248189吉利汽车鸣笛声253217东风悦达汽车鸣笛声244163本田汽车鸣笛声278224可以看出利用改进的可变学习速率的神经网络进行鸣笛声分类识别时,神经网络的迭代次数明显减少,提高了神经网络的学习效率。2.3鸣笛声识别实验判断为汽车鸣笛声之后,将不同类型的鸣笛声进行区分,以达到对鸣笛车辆进行辅助判断的目的。图7为鸣笛声分类的实验场景。在不同的位置通过STM32控制器开发的系统控制微型传声器采集鸣笛声信号,并通过功率放大器将信号放大,采样频率为10 kHz。进一步将上述8种车型的其他鸣笛声信号共160条样本进行识别分类鸣笛声的实验。在本节中定义识别正确率为样本的准确识别个数与识别总个数的比值。实验结果如表2所示。11122023 年 9 月0.60.40.20-0.20.60.40.20-0.2?0.50-0.5?0.40.60.20-0.2-0.4-0.60.40.60.20-0.2-0.4-0.60.40.60.20-0.2-0.40.40.60.20-0.2-0.40.40.60.20-0.2-0.40.40.60.20-0.2-0.40.60.40.20-0.2-0.40.60.40.20-0.2-0.40.60.40.20-0.2-0.40.60.40.20-0.2-0.4-0.60.60.40.20-0.2-0.40.60.40.20-0.2-0.4-0.60.60.80.40.20-0.2-0.4-0.6?Test:R=0.9145Test:R=0.94183Test:R=0.94896Test:R=0.96933Test:R=0.93548Test:R=0.90908Test:R=0.94304Test:R=0.92782?(a)?(b)?(c)?(d)?(e)?(f)?(g)?(h)?图6鸣笛声测试识别结果Fig.6 Result of whistle test and identification(a)?1(b)?2xyzxyz2.0 m3.5 m?图7鸣笛声分类实验场景Fig.7 Classification experimental scene表2鸣笛声识别分类结果Table 2 Result of classification of car whistles样本样本数量识别正确数平均识别正确率/%福特汽车鸣笛声151386.667丰田汽车鸣笛声181583.334别克汽车鸣笛声211990.476大众汽车鸣笛声262492.308比亚迪汽车鸣笛声161593.75吉利汽车鸣笛声232191.304东风悦达汽车鸣笛声171588.235本田汽车鸣笛声242291.667第42卷 第5期侯晓飞等:基于子频带能量特征提取的汽车鸣笛声识别1113表2实验结果表明,丰田和吉利两种车型鸣笛声的所有样本中提取出的特征点较少,因此在识别时正确率也较小,平均正确识别率只有83.334%和82.608%;而大众和比亚迪两种车型鸣笛声样本提取叠加出的特征点较多,因此识别率也随之增加,识别分类正确率最大达到了92.308%和93.75%。与文献4相比较,本文所提出的子频带能量特征提取方法应用在鸣笛声分类上,使分类正确率有了一定的提升,8种车型的最大识别正确率达到了90%以上。与文献5中利用小波变换提取特征将小轿车与大客车与货车进行区分相比较,本文提出的方法进一步完成了8种小轿车鸣笛声之间的分类,且平均识别正确率达到了89.718%。结果表明,本文所提出的此种子频带能量特征提取方法是有效的。通过移动传声器改变x坐标和y坐标到声源的距离,从而使声源到传声器的距离分别达到为5 m、8 m、10 m、20 m,然后验证测试距离对识别分类正确率的影响。测试过程中,环境噪声在55 dB左右。声源到传声器距离与识别分类正确率的关系如图8所示。46810121416182022657075808590?/%?/m?图8识别正确率与测试距离关系Fig.8 Relationship of the accuracy with test dis-tance图8实验结果表明,测试距离对识别正确率有一定的影响。10 m内的识别正确率相差较小,基本保持在80%90%之间;而10 m和20 m处识别正确率相差较大,最高只能达到80%。识别分类正确率降低的原因如下:(1)随着距离的增加,鸣笛声声能产生了明显的衰减,从而降低了识别正确率。(2)在接收过程中会不可避免地采集到环境其他声音,距离越远,采集到的非相关噪声便会越多,从而导致识别正确率减小。为了降低遗漏检测的可能,将在距离10 m处采集的鸣笛声信号与采集的非鸣笛声信号按照一定的,设置信噪比分别为0 dB、6 dB、15 dB、20 dB。在环境噪声中验证噪声对分类识别正确率的影响。噪声对识别正确率的影响关系如图9所示。051015207075808590?/%?/dB?图9识别正确率与噪声关系Fig.9 Relationship of the accuracy with the noise图9实验结果表明,噪声对识别正确率有一定的影响。当信噪比较小时,识别正确率明显降低,在信噪比为0 dB时平均识别正确率为71.26%;随着信噪比的增大,识别正确率也随之增大,且趋于稳定,信噪比为20 dB时识别正确率最大可达到93.31%。后续可通过对采集的声音进行滤波降噪和声音增强处理来提高鸣笛声的识别正确率。3结论为了在鸣笛声治理过程中提高鸣笛声的识别正确率,对违法鸣笛车辆进行辅助监管,提出了一种子频带能量特征提取法。本方法对鸣笛声信号时频谱图进行特征提取,利用可变学习速率的BP神经网络对特征值矩阵进行学习训练。对此方法进行了实验验证,实验结果表明子频带能量特征提取法可应用于鸣笛声的识别与分类。鸣笛声与非鸣笛声之间的识别率达到了94.889%,并且不同鸣笛声的分类正确率最大达到了93.75%。在不同距离和不同噪声环境下对此方法进行了初步验证,验证了子频带能量特征提取法的有效性。本方法为鸣笛声的识别分类提供了一种新思路。但本文所述方法尚有不足11142023 年 9 月之处,且对同种喇叭发出的鸣笛声识别分类仍需做大量实验进行验证,后续可进一步采集更多车型的鸣笛声以及同种品牌车型的鸣笛声构建鸣笛声样本库,并在更复杂的环境中验证其准确性与稳定性,为提升识别正确率做进一步研究分析。参考文献1 刘建平,张一闻,刘颖.基于麦克风阵列的汽车笛语识别及笛声定位方法 J.西安电子科技大学学报,2012,39(1):163167.Liu Jianping,Zhang Yiwen,Liu Ying.A recognition andlocalization of car whistles using the microphone arrayJ.Journal of Xidian University,2012,39(1):163167.2 孙懋珩,俞莹婷.汽车鸣笛声定位系统仿真 J.声学技术,2009,28(5):640644.Sun Maoheng,Yu Yingting.Simulation of car hornlocalization systemJ.Technical Acoustics,2009,28(5):640644.3 侍艳华,刘菁原,卞飞,等.基于 MFCC 和 CNN 的汽车鸣笛声识别算法J.电声技术,2020,44(5):3033.Shi Yanhua,Liu Jingyuan,Bian Fei,et al.An recogni-tion algorithm for automobile whistle based on MFCC andCNNJ.Audio Engineering,2020,44(5):3033.4 班琦,魏小庆,于洋.基于 BP 神经算法的汽车喇叭声音识别系统设计J.自动化与仪器仪表,2016,11:233235.Ban Qi,Wei Xiaoqing,Yu Yang.Design of automobilehorn sound recognition system based on BP neural al-gorithmJ.Automation and Instrumentation,2016,11:233235.5 白琳,黄梓瑜,叶程,等.基于BP神经网络的车辆声音信号识别J.自动化技术与应用,2014,33(2):6466,86.Bai Lin,Huang Ziyu,Ye Cheng,et al.Recognition ofvehicle acoustic signals based on BP neural networkJ.Techniques of Automation&Applications,2014,33(2):6466,86.6 Averbuch A,Zheludev V A,Rabin N,et al.Wavelet-basedacoustic detection of moving vehiclesJ.MultidimensionalSystems and Signal Processing,2009,20(1):55807 郑皓.基于深度学习的汽车违法鸣笛识别方法研究D.兰州:兰州交通大学,20188 Miao F,Yang D,Wen J,et al.Moving sound source lo-calization based on triangulation methodJ.Journal ofSound and Vibration,2016,385:93103.9 Kim Y S,Shin T,Lee S K,et al.Acoustics character-istic of car horn soundJ.INTER-NOISE and NOISE-CON Congress and Conference Proceedings,2017,255(7):18019110 Kotus J,Lopatka K,Czyzewski A.Detection and localiza-tion of selected acoustic events in acoustic field for smartsurveillance applicationsJ.Multimedia Tools and Appli-cations,2014,68(1):521.11 Yi W,Lawlor B.Speaker recognition based on MFCC andBP neural networksC.2017 28thIrish Signals and Sys-tems Conference(ISSC),2017:2021.