如何使用代码或应用程序创建抗噪声? 它不一定是实时的,只是与整个音轨相反的声音!所以,当你们一起玩时,他们会相互抵消。
答案 0 :(得分:1)
如果你有纯粹的噪音尝试(我没有尝试过我自己)fft你可以使用fftw-3
1仅取一些缓冲容器噪音 2对噪声进行零填充,使其长度与整个信号匹配 3计算噪声频谱N. 4计算信号光谱X. 过滤出N中存在的X中的频率并将结果存储在Y中 6从Y重新构造y
在Matlab或octave中:
n=length(x);
n(1:noise_end-noise_start+1)=x(noise_start:noise_end);
N=fft(n);
X=fft(N);
% Filter noise frquencies
y=ifft(Y);
这个想法是使用噪声信号的频谱来降低所需信号中的噪声。当已知噪声频谱时,将这些频率滤除。
答案 1 :(得分:0)
根据您的描述,听起来您只需要反转源信号。如果你这样做并加上原件,你就会坐在-inf
,没问题。
但是,我认为你真正想做的是根据背景噪音的测量结果降低信号噪音。这基本上是通过以下方式完成的:
你最终会接近一些东西,但毫无疑问,他们希望对那里的信号做更多的工作。这里涉及很多数学,但是如果你在DSP上搜索Stack Overflow,你会发现有几件事需要阅读。希望这会让你开始。