-1

LPCMデータの1秒あたり44100サンプルの配列があります。実際、私は2チャンネル分のデータを持っています。

11.61ミリ秒ごとに、約512のサンプルを取得します。

今、私はオーディオからのノイズをキャンセルする方法の指示に従いたいです

ただし、その説明は、入力が正弦波であることを前提としています。

ノイズをキャンセルするには、LPCMを正弦波に変換する必要がありますか?つまり、この手法を適用するには、LPCMでFFTを実行する必要がありますか?

その場合、結果の波形をLPCMに変換して再生できるようにするにはどうすればよいですか?

4

2 に答える 2

0

周波数領域から時間領域に変換し直す必要がある場合は、逆フーリエ変換を使用できます。そうでなければ、ノイズリダクションアルゴリズムはもっとたくさんあると思います。

于 2012-04-21T16:45:32.573 に答える
0

どこでノイズをキャンセルしたいですか?検出器(マイクがある場所)でノイズをキャンセルするには、信号を反転し(+ケーブルと-ケーブルを交換)、振幅を一致させ、周波数を整形して機器を補正するだけです。ソースとマイクを結ぶライン上の他のポイントでノイズをキャンセルするには、遅延を追加するか(さらに離れてキャンセルする場合)、または何らかの方法でサウンドを「進める」(ソースとマイクの間でキャンセルする場合)必要があります。軸外をキャンセルすると、状況はさらに複雑になります(両方の信号が必要になります)。

複雑なケース(軸外またはマイクの前)では、ある種のより高度な信号処理を行う必要があります。これを行う1つの方法は、fftsを使用することですが、デジタルフィルターを使用する近似を見つける方が効率的かもしれません。

ボーズのヘッドホンなどは、信号の反転、増幅、かなり単純な周波数整形に加えて、おそらく何らかのフィードバック検出を使用していると思います(すべてがうまくいかない場合に耳をつんざくような人を避けるため)。

更新:ここにヘッドフォンがどのように機能するかについての本当に良い論文があります。ホワイトノイズのフィルターをトレーニングするなど、さまざまなアプローチがあります。そしてそれは私が上で推測したよりも複雑です。

于 2012-04-21T20:23:42.230 に答える