なぜ古典的な電子フィルターの代わりにノイズ低減に高速フーリエ変換を使用するのですか?


17

音声記録から環境ノイズを除去する方法を知りたい。

私はいくつかの研究を行いましたが、提案された方法のほとんどが高速フーリエ変換を使用していることに気付きました。しかし、なぜ古典的な電子フィルターを使用してノイズ周波数を除去できないのでしょうか?なぜFFTを行うことに煩わされるのですか?


fftの方が高品質の出力が得られるからですか??
ソーラーマイク

4
5GS / s DSPシステムの価格と多くのインデューターおよびキャップの価格を比較してください
。– PlasmaHH

1
たぶん、あなたはfftでより複雑なフィルタリングを行うことができます。「古典的な電子フィルター」は、特定の範囲のすべての周波数を単に除去します。また、ここにあなたの学生バッジ、私からあなたへの贈り物があります。
アンドリューピクル

1
あなたの質問には2つの問題があります:(1)「古典的な電子フィルター」とはどういう意味ですか?(2)何かが一方向に実行される(FFT)という事実は、それが他の方法(フィルター)で実行できないという意味ではありません。他の方法でそれを行うにはいくつかの欠点があるかもしれません。ただし、古典的な電子フィルター(それが何を意味するにせよ)を使用することは不可能であると想定していますが、これはおそらく間違っています。
カード

音声録音の形式は何ですか(アナログとデジタル)。レイテンシは問題ですか(ライブvs事後)?録音の長さ(歌と録音日)
copper.hat

回答:


25

音声記録から環境ノイズを除去する方法を知りたい。

さて、今はデジタルで保存されていますよね?マイクをアナログフィルターの後にスピーカーの隣に置いて再録音する予定ですか

十分にいじって、真剣になります。


狭い範囲の周波数でフィルターをより減衰させ、周波数応答曲線をより垂直にするには、フィルターの次数を増やす必要があります。

これは、Matlabで簡単に実行できることです。また、後処理を実行するのが適切です。また、再現性も重要です。今日の晴れた日にフィルターを適用すると、雨が降っている明日と同じように機能することが期待されます。まったく同じように動作することを期待していますか?

アナログ回路には、これらすべての「5%抵抗」、「1%コンデンサ」、およびその他すべてのものがあります。そのため、正確なものを作りたい場合は、目的のフィルターに完全に一致するように、後で回路をトリミングする必要があります。フィルターの次数を上げたい場合は、悲しいことに..物理的にフィルターが非常に大きくなります。クレジットカードのサイズを使用する代わりに、フィルターの次数と何を使用するかによって、サイズが使用されます。

再現性については、今日何かをする..暖かい..明日..寒い...抵抗が少しずつ変化し、周波数応答が変化し、そこに数Hz、いくつかはそこに、あなたがあなたの回路に多くの部品を入れた、コンポーネントが値を変更する可能性が高くなります。そして、湿度があり、酸化します...

カセットテープを手に入れない限り、これを後処理することはできません。簡単に録音/削除するために使用されているアナログ音楽メディアが100%確実ではありません。LPディスクは悪夢です...

そして、価格を忘れないでください。1つはソフトウェアです。自分で作成する場合は基本的に無料で、もう1つはコンポーネント、物理部品が必要です。

しかし、アナログフィルターが悪いとは思わないでください。大型DCモーターの厄介な高調波を除去したり、電流を平滑化して3Dプリンター用の超静音ステッピングモーターを作成するなどの用途があります。そして、他の多くの用途。-また、アナログフィルターで解決する場合、誰もそれが悪い解決策だとは思わないでしょう。

後処理の観点から、なぜFFTがより良い方法なのかを間接的に答えていると思います。一番下の行は、それがはるかに安いことです。ノイズの周波数がわかっている場合は、ノッチフィルターを適用することもできます。または、より広い、別名バンドストップフィルター。

最後に付け加えたいのは、この答えが長すぎるのは残念です。しかし、アナログフィルターを使用している場合、...計算を台無しにして、それがすべてうまく機能していると思い、スウェーデンの王(Knugen)にインタビューするなどの重大なイベントでそれを使用します。そして、コンデンサーのサイズをめちゃくちゃにして、16kHzのノイズをフィルターするのではなく、4kHzの「ノイズ」をフィルターにかけています。代わりにデジタルで処理する場合は、いくつかの変数を変更するだけで、はんだを除去する必要はありません->別のコンポーネントをはんだ付けします。また、インタビューは台無しになります。


4
ハンスマジョネスホヌンカール16世グスタフ
パイプ

@pipe Tackar、detbehövdes。(ありがとう、私はそれが必要でした。)
ハリースベンソン

追加の質問(この答えは、アナログの文字通りの定義に依存しすぎるため)。古典的な多項式フィルターではなく、FFTを選択してノイズをフィルター処理するのはなぜですか?
-slebetman

@slebetmanは私がそれに答えることを期待していません。
ハリースベンソン

それはかなり堅実な答えでした!仲間に感謝し、答えてくれた他のみんなに感謝します、私はそれほど助けを期待していませんでした!きっとこのフォーラムでもっと質問をするでしょう。ありがとうございました!
ジャズ

7

しかし、なぜ古典的な電子フィルターを使用してノイズ周波数を除去できないのでしょうか?

あなたはできないと誰が言いますか?これは、デジタル信号処理の前の時代に行われた方法です。問題は、ノイズを低減する一方で、希望する信号(音声、音楽)をそのままに保つことの間で、ノイズのフィルタリングが常に妥協点となることです。

カセットテープおよびDNLやDolbyなどの他のアナログテープ録音システムでは、信号が弱い場合にのみフィルター処理され、ノイズが聞こえやすくなります。その後、信号が強くなると、フィルターはフェードオフします。参照:ノイズ除去に関するウィキペディアの記事

音声は300 Hz〜3 kHzのような狭い周波数帯域に制限できますが、それでも完全に理解できます。その帯域に簡単なアナログフィルターを作成することもできますが、それによりノイズの抑制量が制限されます。この帯域外の周波数をより効果的に除去するには、複雑なアナログフィルターが必要です。このようなフィルターは、設計、構築、製造が困難です。

これがデジタル信号処理の出番です。デジタル領域では、多くの極と零点を持つ複雑なフィルターを実装するのがはるかに簡単です。また、これらの極と零点の位置(周波数領域)は、正確な(水晶)クロックであるDSP(デジタルシグナルプロセッサ)のクロックにリンクされているため、フィルターはアナログ実装と比較してはるかに正確です。 。


+1は、必要な信号を保持することと不要な信号を削除することの間の妥協点に言及したものです。問題は、音声とノイズが同じ周波数を占有するため、FFTフィルターが「ベースライン」ノイズを除去できることです。つまり、音声のない各周波数でノイズ振幅を分析した後、音声がある場合は除去できます。これが、AudacityなどのFFTノイズフィルターの仕組みです。
リバースエンジニア

アナログフィルターの設計と構築が特に困難な理由はわかりません。基本的に必要なのは、1つまたは2つのオペアンプといくつかの抵抗とコンデンサーだけです。また、オペアンプは通常デュアルパッケージで提供されるため、必要なチップは1つだけです。私は通常、アナログフィルターを使用してローパスフィルター処理を行い、信号内にエイリアシングされた高周波信号がほとんどないことを確認します。後でFFTでそれを取り除くことはできません。一方、処理するクリーンな「記録」がある場合、FFTバンドパスフィルターを実行しても問題ありません。
バーリーマン

@Barleyman 「アナログフィルターの設計と構築が特に困難な理由はわかりません。4 次以上のような高次フィルターについて言及していました。いくつかのオペアンプに同意します。抵抗器とコンデンサは、ほぼすべての次数のフィルタを実行できますが、まだ設計を試みましたか?シミュレーターで問題ありませんが、その後、すでに十分に正確ではない標準の市販のコンデンサー遭遇します。高次では、コンポーネントの正確な価値がますます重要になります。
-Bimpelrekkie

また、非常に高いサンプリング周波数を備えたシグマ-デルタADCとDACがあるため、エイリアシングはもはやこれらの問題ではないため、単純なRCだけで十分です。
-Bimpelrekkie

@Bimpelrekkieいくつかのデザインをしましたが、最近では何もしていません。以前は、事前に計算されたパラメーターの選択肢がある本を使用して、ある程度の時間をかけて妥当なコンポーネント値を取得していました。あなたがあまりにも選択的であろうとしないなら、精度は大きな問題ではありません。RCは、例えばオーディオ録音などを行おうとする場合、実際に仕事を終わらせません。-20dB /ディケードでは、ナイキスト周波数で何らかのフィルターをかけるために2.2kHzでフィルターを配置する必要があります。3次のCherbychewは、12kHz fcでより良くなります。5次では-46dBになります。これは「十分」です
-Barleyman

5

さて、FFTが必要な理由を理解するための最初のステップは、デジタルフィルタリングの仕組みを理解することです。

したがって、基本的には、複数のメモリ要素、入力、および出力を持つ、シフトレジスタのような構造を持っています。サンプル値は入力に入り、レジスタを介してシフトされ、出力に移動します。レジスタの各段階で、フィルター係数と呼ばれる数値が乗算されます。

このアイデアは、高速な乗算を実行する高速なレジスタがあり、サンプルが1つずつゆっくり入ってくる場合に有効です。

実際には、その代わりに、多くのサンプルで構成されるフレームを取得する可能性が高くなります。それをフィルタリングしたい場合、サンプルをフィルター係数で畳み込みます。これは前のアプローチと同じですが、見た目が少し異なります。

次に、FFTパートがあります。畳み込みは、サンプルの数とともに数値の複雑さが非常に急速に増加することがわかります。一方、FFTは最初は数値的に複雑ですが、必要な操作の数は、畳み込みと比較してフィルター係数の増加に伴い非常に遅くなります。

上記の意味は、特定のサンプル数を超えると、FFTを使用して信号を周波数領域に変換し、周波数領域で信号をフィルター処理してから、IFFTを使用して元に戻すと、はるかに高速になることです。使用しているトリックは、畳み込みの特性の1つです。つまり、状況によっては、時間領域での畳み込みを周波数領域での乗算としてモデル化することができます。

つまり、フィルタ係数の数が十分に大きい場合、FFTは高速です。「大きい」とは、100ほどの小さいこともあります。


3
「古典的な電子フィルター」とは、畳み込みではなくアナログフィルターを意味すると思います。
jalalipop

1
@jalalipopは可能ですが、FFTの部分を明確に説明したかったのです。当時、アナログではなくデジタルフィルターを使用する理由を説明した回答が既にありました。
-AndrejaKo

2

FFTベースの方法(ウィンドウ処理とオーバーラップ加算またはオーバーラップシフトの修正を行う必要があります)の主な利点として、設計がしっかりと周波数領域にあり、Wienerフィルターまたはスペクトル減算または多くの信号統計とモデルに依存する他のシステムは、基本的に周波数領域で基本的に機能します。

対照的に、エコーキャンセレーションおよびさまざまなバリエーションは、ノイズのモデルに依存するのではなく、ノイズと高度に相関する不完全な記録に依存します。これらは、さまざまなフィルター(通常はFIR)を使用して行われ、信号からノイズ推定値を減算し、フィルターを更新して、残りの信号とノイズチャネルの相関を最小限に抑えます。これらの手法では、FFTはそれほど有用ではありません(結果の信号とフィルター更新のかなりの遅延が許容される場合、パフォーマンス上の理由で遅延のあるブラックボックスFIRのコンポーネントとして使用できますが、実際には有用ではありません周波数領域表現機能)。


周波数領域でしっかりと。トーンとノートがグランドトーンとオーバートーンのプロパティを持っているため、それが無かった場合、特に利点はありません。
mathreadler

2

アナログフィルターは設計が簡単ですが、制限は、特定の周波数のバンドストップフィルターを実現するために物理フィルター要素を追加し続ける必要があることです。ノッチを動かしたい場合は、コンポーネントの値を調整する必要があります。1つのオペアンプで1つのバンドストップノッチを実行できるため、必要なノッチごとに別のアンプを追加する必要があります。より選択的なノッチを作成するには、ノッチごとに2つのアンプが必要です。

実際には、単一のオペアンプで実行できる3次のローパスフィルター、またはおそらく2つを必要とする5次のローパスフィルターが最適です。ローパスフィルターを使用して、ナイキスト周波数(1/2サンプリング周波数)より上の周波数をある程度のマージンで減衰させると、後処理する高品質のデジタルサンプルが得られます。そのようなクリーンな録音では、FFTフィルターを適用して、必要に応じてハイパス、バンドパス、およびバンドストップフィルターを作成できます。


1

「古典的な電子フィルター」が行う線形時不変フィルタリングは、フーリエ領域での「ダム」乗算です。ただし、FFTで見つけた情報は、1つのフィルターの応答(これらのコンポーネントの線形結合)だけでなく、より多くの詳細を示します。その情報を使用して、データ処理を操作し、データに適合させることができます。ノイズには、明瞭なボーカルや音楽のトーンにはないいくつかの特性があります。たとえば、倍音間の相関は、ノイズと音声または音楽の相関はほとんど同じではありません。

したがって、周波数成分間の相関関係を特定できる場合、つまり何らかの方法で「グラウンドトーン」を見つけることができる場合、フィルタリングを操縦して、データにより適合させることができます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.