sam*_*wry 19 algorithm audio noise-reduction
我想要实时编程用于降噪的软件,就像在具有主动降噪功能的耳机中一样.是否有任何开放的算法,或者至少有关于它的科学论文?Google搜索仅发现有关非实时降噪的信息.
Ric*_*bby 34
来自这个网站
主动降噪耳机除了所有普通的耳机电路外,还有一个麦克风和额外的特殊电路.在基本级别,耳机上的麦克风会拾取您周围的环境噪音,并将其传送到特殊电路.特殊电路解释声音并以相反(相反)方式模仿它.它产生的反向声音通过耳机扬声器发出,并消除周围的环境噪音.
所有这些都是基于声波干扰.当相反相位的2波干扰时,结果是没有声音.(它也适用于光.)
您应该查看关于波浪干扰的维基百科页面,找到您需要生成的正确相位以消除外部噪声
对于正弦系统:
我们来看两波:

和

我们想将结果波表达为:

给定A1,您希望找到A2,使得A0 = 0
这意味着给定Phi1你需要找到Phi2,使得A0 = 0
你可以证明:

并且求解A0 = 0,您将获得需要创建的波的频率以消除噪声.它被称为破坏性干扰.

声波不是一维的...所以你只会在一个方向上受到破坏性的干扰:

现在你只需要找一些声音信号......
我会尽力回答你的评论.
第一:
2D问题并不比1D困难得多.
外部噪声可以近似为位于无穷远处的源.您将在耳机中创建具有声源的破坏性噪声,并且可以假设在源的相等距离处振幅相同.
你需要在ax,y轴上写下它(使用极坐标可能会很好)

并且您将能够使用简单的三角公式获得计划中每个点的振幅:
:\ sin(A + B)=\sin A\cdot\cos B +\cos A\cdot\sin B
:\ cos(A + B)=\cos A\cdot\cos B - \sin A\cdot\sin B
:\ sin(A - B)=\sin A\cdot\cos B - \cos A\cdot\sin B
:\ cos(A - B)=\cos A\cdot\cos B +\sin A\cdot\sin B.
第二:
所有延迟都是在破坏性来源的"Phi"中建模的.可以只调整计算的Phi,以便将延迟考虑在内.
您可能需要更多关于声音的特定信息,因为我的信息对任何类型的波都非常理论.