本发明涉及信号处理及信息融合领域,尤其是涉及一种车内噪声信号的重构方法。
背景技术:
为了实现车内乘员耳侧噪声的主动控制(anc),首先要为控制系统提供初级参考信号。对于初级参考信号的拾取,传统方法是在乘员耳侧附近安装传声器以获取初级参考信号,此方法不可避免的引入了次级声源二次污染,不利于系统的快速收敛。因此,研究车内乘员耳侧噪声的重构方法,获取anc的参考信号具有一定的意义。
目前,声场重构的主要方法包括近场声全息(nah)和多传感器数据融合(msdf)等。时域nah方法需要建立在自由声场假设的基础上,但实际应用中通常难以满足。考虑到乘员耳侧噪声重构,为了实现利用车外噪声源信号,重构得到乘员耳侧信号。数据融合方法的出现为解决多源数据特征提取以及融合建模提供了理论依据。多源数据融合通过已建立的规则和分析方法,从多传感器数据和信息综合,并在此基础上获取对被观测目标的一致性的认识。
msdf方法已经从卡尔曼滤波法、贝叶斯估计法、最大似然估计法、聚类分析法等传统方法向基于自组织映射(som)、自适应加权融合(awf)、模糊逻辑识别(fli)、支持向量机(svm)和人工神经网络(ann)的智能方向发展。其中ann被广泛运用,其中大部分采用bp(反向传播)算法。bp神经网络根据数据本身的内在联系建立模型,自动从数据中提取相关知识,并具有自学习,自组织和自适应能力。
然而,车内噪声信号属于机械振动和声学信号,具有强非线性和非平稳性,虽然bp神经网络具有很好的非线性拟合能力,能很好地应用于多源数据融合技术,但是处理具有非平稳性特点的信号,带来的误差不可避免。
技术实现要素:
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种车内噪声信号的重构方法。
本发明的目的可以通过以下技术方案来实现:
一种车内噪声信号的重构方法,包括以下步骤:
1)信号分解分析:获取正常的噪声源信号数据并进行预处理,并对源信号进行信号分解分析得到三个平稳的信号分量类别,即高频分量、中频分量和低频分量;
2)分量适应度计算:分别以三个类别的噪声源信号分量作为输入,以车内噪声信号分量作为期望输出,构建bp神经网络模型分别进行训练,并将bp神经网络模型的权重和阈值作为分量适应度值,得到最优分量适应度值;
3)信号重构模型:根据输入信号分量的类别,将最优分量适应度值赋予噪声重构bp网络作为初始权重和阈值,通过误差反向传播法进行训练,在收敛后获取每类信号分量对应的重构算法模型,根据重构算法模型进行重构叠加完成乘员耳侧噪声信号的重构。
所述的步骤1)具体包括以下步骤:
11)基于本征模态分解对源信号x(t)进行分解,则有:
其中,ci(t)为信号的第i个imf分量,n为imf分量总数,rn为输出信号的残余分量;
12)获取每个imf分量在每秒内的极值点数,以及每个imf分量在原信号的能量占比;
13)设定极值点个数阈值(n,m),根据每个分量的极值点个数将imf分量分为高频分量、中频分量和低频分量,则有:
x(t)=d1+d2+d3
其中,d1,d2,d3分别表示高频分量、中频分量和低频分量。
所述的步骤2)中,构建的bp神经网络模型为一三层bp网络。
所述的步骤2)中,分量适应度值的表达式为:
其中,
所述的步骤2)中,当bp神经网络模型的输出学习误差小于期望输出误差时或迭代步数达到最大设定步数时,此时对应的分量适应度值为最优分量适应度值,则有:
其中,
所述的步骤13)中,所述的极值点个数阈值(n,m)取值为(80,20)。
与现有技术相比,本发明具有以下优点:
通过本发明的信号重构方法可以实现车内信号的重构,通过sda方法,从很大程度上降低了信号的非平稳性,降低建模难度;同时通过cfc得到最优适应度值赋予噪声重构bp网络作为初始权重和阈值,可以解决bp网络权值和阈值随机产生问题,进而提高重构精度
附图说明
图1为本发明信号重构方法的流程示意图。
图2为噪声重构的神经网络结构图。
图3为各关键点的贡献量分析图。
图4为各imf分量的能量占比图。
图5(a)为本文提出算法的信号重构与原信号时域结果对比图。
图5(b)为本文提出算法的信号重构与原信号频域结果对比图。
图6(a)为bp重构算法的信号重构与原信号时域结果对比图。
图6(b)为bp重构算法的信号重构与原信号频域结果对比图。
具体实施方式
基于以上现有技术的不足,本发明所解决的技术问题在于提供一种车内信号重构的方法,为了重构车内噪声信号,以影响车内噪声的关键点信号作为输入数据,基于bp神经网络建立噪声重构模型,获得乘员耳侧噪声信号。考虑到高速工况噪声信号特点,bp神经网络的局限性,首先,sda方法将信号分解重建,降低原始信号非平稳性,得到三个相对平稳度较高的信号分量,并基于神经网络模型指导不同分量根据各自类别的运动,并定义cfc来更新分量的适应度值,其中适应度值表示神经网络的权重和阈值。然后,利用大量三类信号分量数据对其进行训练,得到最优的分量适应度值,对网络的权值和阈值进行初始化赋值。最后,利用试验数据得到基于bp神经网络的车内噪声信号智能重构算法模型。通过试验验证,算法是可以有效的重构乘员耳侧噪声信号。
为实现上述目的,本发明采用如下技术方案:
一种基于多源信号的车内噪声信号重构方法,包括以下步骤:
步骤1、获取正常的噪声源信号数据,确定影响车内噪声信号的关键噪声源信号,对数据进行预处理;
在步骤1中:
在半消声室内,基于互易法获取各传递路径的声-声传递函数,保证测试位置与获取路试位置一致,选择最具有相关性的关键测点信号来重构车内噪声;
利用声学传递函数(tpa)贡献量分析方法,计算每个噪声源信号对车内信号的贡献量,如式所示:
其中,pmn为车内乘员耳侧的总声压;
步骤2、数据信号进行sda方法分解重构,在步骤2中:
数据信号经过emd分解处理,得到有限个相对稳定的imf分量和一个趋势项rn;
利用本文提出的eed方法,求解每个imf分量的极值点数和能量占比,确定合适的(n,m)值得到3个分量,即高频分量、中频分量、低频分量。
x(t)=d1+d2+d3(3)
步骤3、设计一个3层bp神经网络结构,噪声源信号作为输入信号,车内噪声信号作为期望输出值;
步骤4、bp网络的权重阈值是随机生成的,并且根据权重阈值对分量适应度值进行编码,在步骤4中:
第i类噪声源信号分量作为输入信号(i=1,2,3),第i类车内噪声信号分量作为期望输出信号,初始的适应度值
采用的是n-m-l的三层神经网络基本结构,其中,n,m,l分别代表输入层,隐层和输出层神经元个数,并且网络的权值和阈值矩阵表示如下;
初始分量适应度值
步骤5、最优的适应度值计算,在步骤5中:
迭代次数初始值r=0;比较最小学习误差满足期望误差;
利用输入数据计算神经元j的前向传播的输出信号oj;
其中,wij和θj分别表示神经元j的权重和阈值,f为激励函数,激励函数使用双曲正切s形函数。
第r次迭代后,更新第i个分量适应度值
计算误差e;
其中yd,k和yk分别代表输出层神经元的期望输出值和真实输出值,n是数据样本个数。
如果e≤γ,或者r≥max_times,输出信号分量di的最优适应度值
步骤6、车内噪声信号重构模型建立,在步骤6中:
对噪声测试信号分解重建,流程步骤1;
判断信号分量di和最优适度值
迭代次数初始值r=0;比较最小学习误差满足期望误差;
利用输入数据计算神经元j的前向传播的输出信号oj;
计算误差e,如果e≤γ,或者r≥max_times,获取信号分量di的噪声重构bp网络。
重复上述流程,获取整个信号重构模型;
步骤7、各噪声源信号输入信号重构模型,输出车内噪声重构信号。
下面结合附图详细说明本发明的具体实施方式,其作为本说明书的一部分,通过实施例来和说明本发明的原理。
实施例
下面利用获取的高速工况下的正常的噪声源信号数据,如图3所示,各关键点的贡献量分析图,确定影响车内噪声信号的关键噪声源信号。数据进行预处理,获取噪声源信号样本库,确定bp网络的输入层神经元个数为n=4,输出层l=1。
如图1所示,为本发明实施例信号重构的流程示意图,
第一步,sda方法对数据信号进行分解重建,数据信号经过emd分解处理,得到有限个相对稳定的imf分量和一个趋势项rn;
利用本文提出的emd方法,求解每个imf分量的极值点数和能量占比,见图和表1,确定合适的(n,m)=(80,20)得到3个分量,即高频分量、中频分量、低频分量。
x(t)=d1+d2+d3(2)
表1车内噪声信号imf分量的极值点个数(/s)和能量比
第二步,确定采用的是4-m-1的3层bp神经网络基本结构,基于本信号源m=128,如图2所示,噪声源信号作为输入信号,车内噪声信号作为期望输出值;
网络的权值和阈值矩阵表示如下;
神经网络的权值和阈值作为分量适应度值,初始分量适应度值
第三步,最优的适应度值计算:
第i类噪声源信号分量作为输入信号(i=1,2,3),第i类车内噪声信号分量作为期望输出信号,初始的适应度值
迭代次数初始值r=0;比较最小学习误差满足期望误差;
利用输入数据计算神经元j的前向传播的输出信号oj;
其中,wij和θj分别表示神经元j的权重和阈值,f为激励函数,激励函数使用双曲正切s形函数。
第r次迭代后,更新第i个分量适应度值
计算误差e;
其中yd,k和yk分别代表输出层神经元的期望输出值和真实输出值,n是数据样本个数。
如果e≤γ,或者r≥max_times,输出信号分量di的最优适应度值
第四步,建立信号重构模型:
对噪声测试信号分解重建;
判断信号分量di和最优适度值
迭代次数初始值r=0;比较最小学习误差满足期望误差;
利用输入数据计算神经元j的前向传播的输出信号oj;
计算误差e,如果e≤γ,或者r≥max_times,获取信号分量di的噪声重构bp网络。
重复上述流程获取整个信号重构模型。
对本发明车内噪声信号重构算法模型进行有效性验证。
图5表示信号重构的结果与原始信号的对比。从图中可以看出,本文的提出的神经网络算法,对车内噪声信号能够正确重构出原信号的位置和幅值,结果表明此方法具有较高的信号重构性能。
不同算法进行性能对比
图5和图6对信号重构bp网络和本文提出的网络算法模型进行性能对比。从图中可以看出,两种重构算法,对车内噪声信号都能够正确重构出原信号的位置和幅值,结果表明此方法具有较高的信号重构性能。
为了进一步分析重构结果精度,本文采用均方误差e来表征,公式所示。
其中yd,i和yi分别表示重构值和真实值,n为样本数。
为了更好的对结果作出说明,对yd,i、yi进行归一化处理。公式所示。
其中,ymin,ymax分别代表向量y的最小值、最大值。y1表示归一化的结果。
归一化结果代入式(11)中,得到重构的均方根相对误差如表2。
表2重构的均方根相对误差
从表2中可以看出,针对高速工况下乘员耳侧噪声信号重构问题,本文提出的算法模型优于bp算法模型,其中,未进行归一化的结果精度提高了39.33%,归一化的结果精度提高了68.92%,其中归一化结果误差为0.0023小于期望误差0.005,这说明了本文提出的车内噪声信号重构模型可以满足精度要求
综上,通过本发明的车内噪声信号的重构,可以避免次级声源的二次污染。同时通过本发明的信号重构方法可以实现车内信号的重构,通过sda方法,从很大程度上降低了信号的非平稳性,降低建模难度;同时通过cfc得到最优适应度值赋予噪声重构bp网络作为初始权重和阈值,可以解决bp网络权值和阈值随机产生问题,进而提高重构精度。