• ベストアンサー

IIRフィルタとFIRフィルタ

無限インパルス応答(IIR)フィルタと有限インパルス応答(FIR)フィルタとはアナログでいう、バンドパスフィルタやローパスフィルタ、ハイパスフィルタのデジタル版みたいなものであることは分かるのですが、 無限、有限というのは何を表しているのでしょうか? Wikipediaなどに解説はしてあるのですが、どうしても理解することが出来ません。 どなたか易しく説明して頂けないでしょうか?

  • 科学
  • 回答数4
  • ありがとう数8

質問者が選んだベストアンサー

  • ベストアンサー
  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.3

> つまり、例えば、1秒間だけのパルスに対してフィルタをかける場合、 元の信号の長さは関係ありません。 フィルタの次数が「1秒分」だったら、 入力信号が1秒だろうと10秒だろうと0.1秒だろうと、 > FIRであればパルスが終わった1秒後には信号は完全になくなる ということになります。ただし、次数が1秒のフィルタなら「1秒後以降は無くなっている」のは保証されますが、場合によっては1秒より短い時間で無くなる可能性もあります。それはフィルタのパラメータ次第。 > IIRでは、フィルタ自体がそのパルスの残像を出力し続け、永遠にそのパルスが出力される そういう場合も「あり得る」のがIIRです。実際にそうなるかどうかはフィルタのパラメータ次第です。 (で、先ほどの回答にも書きましたが、IIRでも、実用上は、減衰してそのうち影響が無くなるようなパラメータを設定するのが普通です。)

その他の回答 (3)

noname#101087
noname#101087
回答No.4

>フィルタの持続時間って一体どういうことなのでしょうか? たとえば、単発のパルスを入れたときに出力されるパルス系列の「持続時間」。 FIR と IIR の簡単な例で、シグナル・フロー(時系列)を追跡してみてください。 >時間とともにフィルタの急峻度が変わるということなのですか? パルス応答(時間域)はフィルタ急峻度(周波数域)と対応しています。 パルス応答のフィルタ係数を時間とともに変えない限り、フィルタの急峻度が変わるということはありません。  

  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.2

「無限」か「有限」かは、 ある入力信号が、どれだけ先にまで影響するか、という違いです。 FIRフィルタでは、指定した次数個の「過去の入力データ」から、出力を算出しますので、次数分よりももっと過去の入力データは出力に対しまったく影響しません。言い換えれば、ある時刻の入力は、そこから次数個よりも先の未来の出力に対して影響を与えることはありません。 IIRフィルタでは、「過去の出力データ」も、出力の算出に利用します。 参照している「過去の出力データ」の算出には、そこからさらに過去の出力データが影響していますから、 突き詰めて行くと、ある出力データに対しては、そこから永遠に過去に遡った、全てのデータから影響を受けていることになります。 言い換えれば、ある入力データは、出力に対して、永遠に未来永劫、影響を与えつづけることになるのです。 いわゆる「発振」も、影響が後に与えつづけていくという結果の表れの一つですね。 実際には、IIRフィルタでも、過去のデータは減衰してほとんど影響しなくなっていくようにパラメータを設定します。

FUKUSHU
質問者

お礼

ありがとうございます。 つまり、例えば、1秒間だけのパルスに対してフィルタをかける場合、 FIRであればパルスが終わった1秒後には信号は完全になくなるのに対してIIRでは、フィルタ自体がそのパルスの残像を出力し続け、永遠にそのパルスが出力されるということでよろしいのでしょうか?

noname#101087
noname#101087
回答No.1

>無限、有限というのは何を表しているのでしょうか? 入力信号に対する出力応答の持続時間が、FIR フィルタでは有限時間、IIR フィルタだと無限時間。 FIR フィルタは順方向の経路だけなのに、IIR フィルタには逆向きの帰還経路があるからです。

FUKUSHU
質問者

お礼

ありがとうございます。 IIRはFIRとは異なりフィードバック機構をもつために、発振することがあり、持続応答が無限時間になることがあるというようなことはWikipediaでも書かれているのですが、フィルタの持続時間って一体どういうことなのでしょうか? 時間とともにフィルタの急峻度が変わるということなのですか? このへんのことがどうしても理解出来ません。 易しく教えてください。

関連するQ&A

  • IIRとFIRの違いについて

    IIR(無限インパルス応答) FIR(有限インパルス応答) の違いについて、おしえて頂きたいのですが、 LPF、HPFをブロック図で実現するには、 IIRでしか実現できないのでしょうか? もしできるなら、どのようなブロック図になるのでしょうか?

  • デジタルフィルタ(IIR)

    無限インパルス応答(IIRフィルタ)について、サルでもわかるようにメカニズム・カットオフ周波数について教えて下さい。又は、サルでもわかるように解説された書籍・HPなど御存知でしたら教えて頂けると幸いです。

  • FIRフィルタって

    FIRフィルタって何ですか? おバカにもわかるようお願いします。。 「入力データ」という1500個くらいの数値が入ったcsvファイルと、「フィルタ係数(インパルス応答)」という10個の数値を渡されて 「javaでFIRフィルタ作って」 って言われたんですが(学校の課題) なんのことやら・・・

  • IIRフィルタのインパルス応答の求め方がわかりません

    設計したIIRフィルタがBIBO安定性を満たしているか判断したいのですが、BIBO安定性を判断するにはインパルス応答が絶対加算可能であることが必要十分条件となっています。 しかし、IIRフィルタのインパルス応答の求め方がわからず、安定性の判断ができません。 どなたかIIRフィルタのインパルス応答の求め方を教えてください インパルス応答を求めたいIIRの構成は以下のページとおなじ構成です http://momiji.i.ishikawa-nct.ac.jp/dfdesign/giir/giir.pdf

  • CでIIRフィルタを作りたいのですが。。。

    IIRフィルタで、BPF(バンドパスフィルタ)を作りたいのですが、 どうすればよいでしょうか? インターネットとかで検索してみても、バンドパスについてはぜんぜん発見できませんし、 本を読んでもほぼ同様。式がいきなりバンっと出てきてお終い。おいおい、そんで 係数はどうすればいいんだよ?どう使うんだよ?って感じです。 詳しいIIRフィルタの作り方の解説orプログラム&係数の設定方法、お待ちしてます。

  • FIRフィルタの遅延量補正とIIRフィルタの安定性について教えて頂きた

    FIRフィルタの遅延量補正とIIRフィルタの安定性について教えて頂きたいのですが。  双一次z変換を用いていくつかのIIRフィルタを作る事が出来ました。Scilbが持つIIR関数と比較して同じ結果になっています。IIRフィルタがフィルタ係数によっては不安定=発信したりする、というのはScilab等の結果と同じになる→フィルタ係数も同じ→不安定にならない。と思ってよいのでしょうか?。例えばですが、あるサンプリング周波数の波形データをフィルタする為に、同じサンプリング周波数で作ったImplus波形をIIRフィルタに放り込んで周波数応答を確認したら、実際にフィルタする波形データの最初から最後までその周波数応答でフィルタされると私は理解しているのですが。  私のフィルタを使う用途の場合は、フィルタの計算速度は特に制限は無く、速いに越した事はありませんが得られた結果が正確な事が大切なので、安定性や係数誤差の事を考えるとIIRフィルタではなくFIRフィルタでも構わないのですが、FIRフィルタの場合だとタップ数が多くなるので波形の遅延量が無視出来ません。フィルタを通した波形は次定数fastのレベル波形にして100Hz位で出すとは言え、IIRよりは数秒かコンマ数秒遅延した結果になると思います。そのような場合、遅延量を補正するとしたらどうしたら良いのでしょうか?。個人的にはタップ数が(IIRの場合は次数が)遅延量と思っているのですが。  宜しくお願い致します。

  • FIRフィルタを用いたディジタルイコライザについて

    FIRフィルタを用いたディジタルイコライザの利点は何ですか? 少し調べたら、ほかのフィルタと比べて音質が良いとあったんですが、IIRフィルタでは音質がわるくなるんですか? よろしくお願いします。

  • FIRフィルタに関する周波数変換について教えてくだ

    FIRフィルタに関するフィルタ係数の周波数変換について教えてください. 遮断角周波数ωcのハイパスフィルタのフィルタ係数を求める場合, まず最初,遮断角周波数ωcのローパスフィルタの係数h(LP)を求め, その結果を使って,ハイパスフィルタの係数h(HP)は h(HP)=(-1)^n*h(LP) という変換によって求められるのですが, なぜ,ローパスフィルタのフィルタ係数の奇数の項の符号を反転させるだけで, ハイパスフィルタのフィルタ係数になるのでしょうか? とても困っています. 宜しくお願いします.

  • 信号処理FIRフィルタに関して

    こんにちわ。デジタルフィルタに関するご質問です。 振動工学を勉強しているのですが、回転機械から検出した時系列加速度信号をFIR(ローパス)フィルタに通し、高周波ノイズを除去しようとしています。 FIRフィルタとは、「継続接続された一連の遅延器からなり、各遅延器出力の重み付け和を出力する」と教科書等によく書かれておりますが、例えば、周波数領域でのフィルタの振幅特性が最適なものが300次で求めたものだったとして、フィルタのインパルス応答h(t)を求めて、600個の時系列入力データをフィルタリングする場合、インパルス応答を二個つなげて、各時系列データにあてはめていくので良いのでしょうか? また、その場合、インパルス応答の継ぎ目は連続になっているべきなのでしょうか? もし、原理的にマズいことや、根本から間違えているようならば、ご指導下さいますよう、お願いします。

  • フィルタについて

    高周波技術の本に ・ローパスフィルタ ・ハイパスフィルタ ・バンドパスフィルタ ・バンドリジェクションフィルタ ・バンドエリミネーションフィルタ ・ノッチフィルタ があると書かれているのですが、下3つのフィルタの違いって何なのでしょうか?