首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >哪种算法用于消除耳机中的噪声?

哪种算法用于消除耳机中的噪声?
EN

Stack Overflow用户
提问于 2011-06-28 16:19:44
回答 1查看 15.6K关注 0票数 19

我想编写实时降噪的软件,就像有主动降噪功能的耳机一样。有没有开放的算法,或者至少有关于它的科学论文?谷歌搜索只找到关于非实时降噪的信息。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-28 17:09:39

来自This site

有源消噪耳机除了所有正常的耳机电路外,还有一个麦克风和额外的特殊电路。在基本的水平上,耳机上的麦克风拾取你周围的环境噪声,并将其中继到特殊电路。特殊电路解释声音并以相反(相反)的方式模仿它。它产生的相反的声音通过耳机扬声器发送,消除了周围的环境噪音。

所有这些都是基于声波的干扰。当两个相反相位的波干扰时,结果是没有声音。(它也适用于光。)

你应该看看waves interference上的维基百科页面,找到你需要产生的正确相位来消除外部噪音

正弦系统的

让我们来看两个波:

我们想要将结果波表示为:

给定A1,您需要找到A2,使得A0 = 0

这意味着在给定Phi1的情况下,您需要找到Phi2,以便A0=0

你可以证明:

并求解A0 =0,您将获得您需要创建以消除噪声的波的频率。这叫做破坏性干扰。

声波不是一维的.所以你只能得到一个方向上的相消干涉:

现在你只需要找到一些声音信号的东西。

我会试着回答你的意见。

优先:

2D问题并不比1D问题困难得多。

外界噪声可以近似为一个位于无穷远处的声源。您将使用耳机中的源创建破坏性噪声,并且您可以假设在源的相等距离处振幅相同。

你需要把它写在x,y轴上(最好使用极坐标)

你可以使用简单的trigonometry formula得到平面上每个点的振幅,如下所示:

:\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

Second:

所有的延迟都是在你的破坏性源的"Phi“中建模的。可以只调整计算的Phi,以便将延迟考虑在内。

你可能需要更多关于声音的具体信息,因为我的信息对任何类型的波都是非常理论的。

票数 34
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6503562

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档