欢迎光临
我们一直在努力

主动降噪原理,耳机主动降噪和被动降噪原理

概述

  ANC指Active Noise Control,主动降噪。基本原理是降噪系统产生与外界噪音相等的反向声波,将噪音中和。图1是feedforward式主动降噪耳机的示意图。ANC芯片放置在耳机内。Ref mic(reference microphone)在耳机耳罩上,采集环境噪音。Error mic(Error Microphone)在耳机内,采集降噪处理后的残差噪声。Speaker播放ANC处理后的anti-noise。?

?
图1?

?

原理

?

?
图2?

  图2是ANC系统的原理图,一共三层,用虚线分隔。最上一层primary path是从ref mic到error mic的声学通道,响应函数用P(z)P(z)表示;中间一层是模拟通道,其中secondary path是adaptive filter输出到返回残差的通路,包括DAC、reconstruction filter、power amplifier、speaker播放、再采集、pre-amplifier、anti-aliasing filter、ADC;最下一层是数字通路,其中adaptive filter不断调整滤波器权系数来削减残差,直到收敛。最常用的方案是用FIR滤波器结合LMS算法来实现adaptive filter。简化图2,得到图3。

?

?

?
图3?

?

  先简要说几句adaptive filter和LMS(Least mean square)算法的原理,再说图3。如图4,给定输入xx和desired output?dd,adaptive filter每次迭代会更新系数,使其输出yy与dd之差越来越小,直到残差足够接近0且收敛。LMS是adaptive filter的一种更新算法。LMS的目标函数是瞬时误差的平方e2(n)=(d(n)?y(n))2e2(n)=(d(n)?y(n))2,为了minimize目标函数,对其应用梯度下降就得到算法的更新公式。(这种利用gradient descent来最小化某个objective,从而得到待求参数的更新公式的算法思想非常常见,比如linear regression。)采用FIR滤波器的LMS算法的更新公式为:w(n+1)=w(n)+μe(n)x(n)w(n+1)=w(n)+μe(n)x(n)?,其中μμ为step size。如果随着迭代进行调整μμ的大小,就是变步长的LMS算法。

?

?
图4?

?

  再来说图3。这里adaptive filter输出后还要经过S(z)S(z)才去和desire output比较,S(z)S(z)会引起instability,用文献的话说,“the error signal is not correctly ‘aligned’ in time with the reference signal”,破坏了LMS的收敛性。(这里还没弄懂什么意思T__T)一种有效的方法是FXLMS(Filtered-X LMS),也就让x(n)经过S?(z)S^(z)再输入给LMS 模块,?S?(z)S^(z)是S(z)S(z)的估计。FXLMS的objective:

e2(n)=(d(n)?s(n)?[wT(n)x(n)])2,e2(n)=(d(n)?s(n)?[wT(n)x(n)])2,

所以gradient=?2e(n)s(n)?x(n)?2e(n)s(n)?x(n),其中s(n)s(n)未知,用其estimate近似,所以FXLMS的更新公式是

w(n+1)=w(n)+μe(n)x′(n),w(n+1)=w(n)+μe(n)x′(n),

其中x′(n)=s?(n)?x(n)x′(n)=s^(n)?x(n)?。

?

  当adaptive filter收敛时,E(z)=X(z)P(z)?X(z)W(z)S(z)≈0E(z)=X(z)P(z)?X(z)W(z)S(z)≈0,因此W(z)≈P(z)/S(z)W(z)≈P(z)/S(z)。也就是说,自适应滤波器的权系数是由耳机的primary path和secondary path决定的。耳机的primary path和secondary path相对稳定,所以adaptive filter的权系数也相对稳定。因此为实现简单,某些厂家的ANC耳机的权系数在出厂时就确定了。当然这种ANC耳机的听感体验明显不及具有真正自适应意义的ANC耳机,因为在实际情况下,外部噪声相对耳机的方向、不同温度等因素会对耳机的通道响应有影响。

Matlab验证

  写Matlab代码,用变步长LMS的adaptive filter,得仿真结果如图5。在0到2KHz范围内,利用feedforward ANC消ajdc白噪,噪声衰减平均30dB+。Matlab库里的FXLMS是定步长的,效果要差一些。

?

?
图5?

?

Q&A

  遇到的困惑写出来分享一下。?
1. ANC为什么只针对2kHz以下的低频噪音??
  一方面,耳机的物理隔音方式(被动降噪)可以有效阻挡高频噪音,没必要用ANC降高频噪声。另一方面,低频噪声波长较长,可以承受一定的相位延迟,而高频噪声波长短,对相位偏差敏感,因此ANC消高频噪声并不理想。?
2. 当electronic delay比primary delay大时,算法性能大大下降如何理解??
  P(z)延时小,S(z)延时大,比如P(z)=z-1, S(z)=z-2,只有当W(z)=z才能满足要求,非因果,unreachable。?
3. Feedforward ANC、narrow-band feedforward ANC、feedback ANC有什么区别??
  Feedforwad结构有一个ref mic和一个error mic,分别采集外部噪音和内部残差信号。feedback结构只有一个error mic,由error mic和adaptive filter output生成reference signal。?
  Broad-band feedforward就是上面所述结构,而narrow-band结构中,noise source会产生某个signal触发signal generator,signal generator再生成reference signal送给adaptive filter。只适用于消除periodic noise。?
  Feedback ANC由于只有error mic,用error mic来恢复feedforward结构中ref mic采集的信号,通路不满足因果约束,因此只消除predictable noise components,即窄带周期性噪声。需要注意的是,feedforward如果不满足因果约束,即electronic delay比主通道acoustic delay长的话,也只能消除窄带周期性噪声。?
  另外还有一种Hybrid ANC的结构,同时包含feedforward和feedback结构,主要的优点是可以节省自适应滤波器的阶数。

Reference

  主要参照[1],非常详细的一篇tutorial review,书[2]详细推导和说明了[1]中的细节。图1截自jabra官网,图2和图3来自[3],图4来自Wikipedia。

[1]: Kuo S M, Morgan D R. Active noise control: a tutorial review[J]. Proceedings of the IEEE, 1999, 87(6):943-973.?
[2]: Kuo S M, Morgan D. Active Noise Control Systems: Algorithms and DSP Implementations[M]. John Wiley & Sons, Inc. 1996.?
[3]: Kajikawa Y, Gan W S, Kuo S M. Recent advances on active noise control: open issues and innovative applications[J]. Apsipa Transactions on Signal & Information Processing, 2012, 1(2):e3.

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。