Page 128 - 《应用声学》2020年第4期
P. 128
614 2020 年 7 月
号能量减小时,较小的步长值又会降低降噪量和收 2.3 附加建模白噪声的控制
敛速度,因此步长值应与输入信号能量呈反向关系。 在次级通道建模中当系统达到稳定状态时,将
因此本文对控制模块µ w (n)的更新方式调整为 控制模块和在线建模两者步长值调节方式相结合,
2
′
µ w = β(exp(∂ρ (n))/ε + x(n)x (n)), (8) µ s (n) 和 µ w (n) 均收敛到某个固定范围内。若此时
再不断注入附加白噪声,会增大系统误差,降低系统
其中,β、∂ 为固定参数,ε 为避免分母为零而设置的
的降噪量。因此,本文对附加噪声进行控制,当系统
大于零的修正因子,此处取为0.2。
达到稳态时,停止附加白噪声的注入。若次级通道
在线模块步长值µ s 的更新方式为 [8]
发生突变,则重新加入附加白噪声,启动次级通道建
µ s (n) = µ lg(aρ(n)ρ(n − 1) + b), (9) 模。改进框图如图2 所示,调节准则如下:
其中,a、b、µ为固定参数,ρ(n) 为本次运算所得能量 v(n) = G(n) ∗ v s (n), (12)
值,ρ(n − 1) 为上次运算所得的能量值。
1, µ s ̸= µ 1 ,
G(n) = (13)
2.2 基于步长值减小的次级通道建模方法 0, µ s = µ 1 .
在上述系统收敛过程中,在线建模步长值 在停止注入附加白噪声后,若次级通道再次发
µ s (n) 由小到大变化,但较大步长值会影响建模精 生变化则重新加入附加白噪声。根据残留误差功率
度,降低系统稳定性,甚至导致系统发散。因此,为 判断次级通道的变化 [12] :
了获得较好的稳定性和建模效果,需对建模步长值
1, 20 lg P e > 0,
进行分段调控。前期步长值随能量比增加而增大, G(n) = (14)
后期应减小步长值,步长值的减小程度需要根据 0, 20 lg P e < 0,
系统实际来确定。本文利用 tanh 函数来控制步长 其中,P e 为残余误差信号的能量,计算公式如式 (1)
值,使其随着 tanh 函数的变化而减小。信号能量比 所示。具体调节准则为:当建模步长值等于 µ 1 且误
ρ(n) 的值起始在 1 附近,随着系统的收敛逐渐减小 差功率满足式 (14) 的要求时 G(n) 为 0,即此时的附
至 0。tanh 函数在 (1, 0) 范围内呈单调递减趋势,且 加白噪声为 0;反之 G(n) 为 1,继续注入附加噪声。
最大值不超过 0.6。因此在该范围内,步长值满足次 µ s 为次级通道建模步长值,µ 1 是当系统未对辅助噪
级通道建模的要求。 声进行控制时,仿真实验中系统接近收敛时的建模
本文利用建模精度来检测步长值是否需要调 步长值。
整,同时设置阈值T,其为系统接近收敛时的建模误
差值。图 2 中 C(n) 为在线建模精度的实时值,将其 3 仿真结果分析
作为检测函数,S 代表系统建模误差。函数表达式为
为验证改进算法的性能,以混频信号作为输入
2
C(n) = S . (10) 信号,在 MATLAB 中将文献 [6] 算法、文献 [8] 算法
和本文算法进行仿真实验。建模误差 ∆S 反映系统
基于步长值减小的次级通道建模具体方法为:
在线建模的收敛性及精度,降噪量 R 反映系统的降
在系统初始阶段步长值采用 µ s (n) 的形式,收敛过
程中,当检测函数 C(n) > T 时,建模步长值采用 噪效果,其表达式分别为
∑ M−1
ˆ
µ s1 (n)的形式,从而实现对步长值µ s (n)的下降。反 [S i (n) − S i (n)] 2
S = i=0 , (15)
之,则继续采用原步长值 µ s (n),计算公式如式 (9) ∑ M−1 2
[S i (n)]
所示。µ s1 (n)表达式为 i=0
∆S = 10 lg S, (16)
2
µ s1 (n) = [tanh(ρ(n) )] 2 ∑
e(n) 2
[ ρ(n) 2 −ρ(n) 2 ] 2
e − e R = −10 lg . (17)
= , (11) ∑ 2
e ρ(n) 2 + e −ρ(n) 2 + ε 1 d(n)
其中,ε 1 为避免分母为 0 而设置的大于零的修正因 控制滤波器长度和建模滤波器长度分别设置
子,此处取为 0.04。对函数进行平方是为了避免步 为32和16。因两者均为物理通道,从信号处理的角
长出现负值的情况。 度,两通道的传递函数可表示如式 (18) 所示 [13] ,为