線形位相が要件である場合、それはおそらくFIR実装へとあなたを導くでしょう。近似線形位相を持つIIRフィルターを作成することは可能ですが、線形位相FIRを設計することは簡単です。
レイテンシが気になる場合は、のように前方後方フィルタリングを行うのfiltfilt
はあまり良い方法ではありません。一般に、これは実際にはオフラインプロセスで使用することを目的としています。この手法を正確に実装するには、信号全体を順方向に実行し、次に逆方向に実行する必要があるためです。これは、信号全体に一度にアクセスできることを意味します。これは、低遅延に見合うものではありません。
一般に、FIRフィルターは、所定のパフォーマンス要件のセットに対してより高い次数を必要とします。ただし、FIRフィルターには、安定性の保証、丸め誤差の影響を受けにくいなどの実際の利点があります(量子化誤差はフィルターを通じてフィードバックされないため、複雑さを増すことでこれを補正できます)。線形位相応答。さらに、多くのプロセッサアーキテクチャで効率的なFIRフィルターの実装が利用できるため、追加のタップのコストが多少軽減されます。
状況でFIRフィルターの追加タップコストを軽減する別の方法は、効率的なマルチレート信号処理技術を利用することです。具体的には、多相間引きアプローチを使用して、信号を間引きするプロセスで実行する計算の数を大幅に減らすことができます。これには、デシメーションフィルターの有効なタップ数(計算の複雑さ)を減らす効果があります。さらに、大きな要因で間引きする必要がある場合は、マルチステージアプローチで負荷をさらに削減できます。Lyonsの紹介DSPブックには、これらのトピックに関する読みやすい資料がいくつかあります。
システムのより具体的なパラメーターを考えると、より鋭い推奨を行うことができます。フィルターの設計要件は何ですか?プラットフォームにはどのような計算機能がありますか?あなたはどのサンプルレートを間引きしますか?