Page 24 - 《应用声学》2022年第6期
P. 24

870                                                                                 2022 年 11 月


                                            e↼n↽
                            x ϕ↼n↽     Ĥ                ҒՔܙᄞG↼z↽                          y↼n↽
                                       Ĥ
                                         ֓
                                                                                 Ԫភ٨
                                        f ϕ↼n↽
                                                     η٪උͥᝠ
                                                          ଍҄൦᫂
                                                                           ण௑
                                                     NLMSካข
                                                          ఞழጇ஝
                                                     ᒭᤠऄ໚ฉ٨
                                                                    d↼n↽
                                              图 2  基于信噪比的 NLMS 算法框图
                                        Fig. 2 Block diagram of NLMS algorithm on SNR

                                                                                         (  2   )
                 要估计误差信号的信噪比,需要先估计出误差                                                      σ (n)
                                                                                            s
                                                                          SNR(n) = 10 · lg        .      (17)
                                                                                            2
             信号的噪声能量,本文采用最小值统计法估计噪声                                                        σ (n)
                                                                                            n
             能量,最小值统计法是 Martin          [19]  基于含噪语声功              根据计算得到的输入信号信噪比,由式 (18) 的
             率谱密度的最小统计和最优平滑理论提出的,通过                            步长与信噪比的对应关系计算出自适应算法的步
             跟踪带噪信号能量的最小值估计噪声能量,其实现                            长。当输入信号信噪比越高时,语声成分在信号中
             步骤如下:                                             占比越大,由于语声信号的强相关性会增加自适应
                 先对带噪语声 e(n) 进行希尔伯特变换,求得带                      滤波器的更新误差,因此使更新步长越小;当信噪
             噪语声的能量,假设为Y (n)。对Y (n)进行平滑得到                      比超过最大值 SNR max 时,步长固定为步长最小值
             平滑能量 P(n),P(n) 的计算采用一阶递归的形式,                      µ min 。同理,当输入信号信噪比越低时,噪声成分在
             即                                                 信号中占比越大,噪声信号具有弱相关性,不会增

                  P(n) = αP(n − 1) + (1 − α)Y (n),     (11)    加自适应滤波器的更新误差,因此使更新步长越大,
                                                               加快自适应算法的收敛速度;当信噪比小于最小值
             其中,P(n − 1)为上一时刻的平滑能量,α 为平滑参
                                                               SNR min 时,步长固定为步长最大值µ max 。
             数,0 < α < 1。然后,在长度为 D 的窗内搜索最小
             能量,设置临时变量 P temp ,P temp (1) = Y (1)。如果            µ(n) =
             当前时刻可被 D 整除,则能量最小值 P min 、P tmp 分                  
             别依照式(12)和式(13)更新:                                  µ max ,          SNR(n) 6 SNR min ,
                                                                
                                                                
                                                                
                 P min (n) = min{P temp (n − 1), P(n)},  (12)    β · SNR(n)+η,   SNR min <SNR(n)<SNR max ,
                                                                
                                                                
                                                                
                 P temp (n) = P(n).                    (13)       µ min ,         SNR(n) > SNR max ,
                                                                                                         (18)
                 如果不可被 D 整除,则 P min 、P temp 分别依照
             式 (14)和式 (15)更新:                                  其中,β 和η 由当信噪比等于SNR max 时步长为µ min
                                                               和当信噪比等于 SNR min 时步长为 µ max 的两组数
                 P min (n) = min{P min (n − 1), P(n)},  (14)
                                                               据代入求得,即解式(19)可得:
                 P temp (n) = min{P temp (n − 1), P(n)}.  (15)
                                                                         
                                                                          µ max = β · SNR min + η,
                 因为在估计噪声能量中取的是能量的最小值,                                                                    (19)
             所以需要对噪声能量进行偏差补偿,补偿因子设为                                       µ min = β · SNR max + η.
             o min ,由式(16)可得估计的噪声能量σ (n),                      2.3  计算复杂度分析
                                              2
                                              n
                          2
                         σ (n) = o min · P min (n).    (16)        在实际助听器应用过程中,系统的降噪模块包
                          n
                 由计算得到的含噪语声能量 Y (n) 和噪声能                       含信噪比估计部分,因此在实际应用过程中,可以
                                                    2
                2
             量 σ (n),可计算得纯净语声信号能量 σ (n) =                      借助降噪模块计算得到的信噪比来避免信噪比估
                n                                   s
                     2
             Y (n) − σ (n),那么依式(17)可计算得信噪比:                    计所产生的计算复杂度,因此在计算基于信噪比的
                     n
   19   20   21   22   23   24   25   26   27   28   29