• ベストアンサー

FIRフィルタ タップ数の求め方

インパルス応答から振幅特性を求めて、フィルタのタップ数を求めたいのですが、どのように算出するかの手法も計算式もわかりません。どなたか助けてください。宜しくお願いいたします。

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

  • ベストアンサー
noname#64223
noname#64223
回答No.5

>このインパルス応答のピークとディップの数そのものがタップ数であると >解釈してもよろしいのでしょうか? 時間領域ならOKですが、FFTしたのなら駄目です。 時間領域のインパルス応答が得られているのに、 わざわざFFTする理由は何でしょうか?

RISLIM-ric
質問者

お礼

毎回ありがとうございます。 振幅特性を求めるのと同時にフィルタのタップ数を求めたかったのです。 インパルス応答のピークとディップを数え、タップ数を判断したいと思います。ありがとうございました。

その他の回答 (4)

noname#64223
noname#64223
回答No.4

周波数特性ですか? 時間特性ではなしに。 時間特性なら、No.1さんの言うとおり出力が FIRのタップ係数そのものです。 伝達関数がFIRならば、タップ数と同じ数のパルスが立ちます。 10タップなら10本です。 振幅が、タップ係数に比例です。

RISLIM-ric
質問者

お礼

ありがとうございます。 時間特性ではなく、周波数特性です。 >伝達関数がFIRならば、タップ数と同じ数のパルスが立ちます。 今回、私は単位インパルスを系に入力し、得た応答をFFTすることで 振幅特性を測定したのですが このインパルス応答のピークとディップの数そのものがタップ数であると 解釈してもよろしいのでしょうか?

  • rabbit_cat
  • ベストアンサー率40% (829/2062)
回答No.3

まあ、最大限意図を汲み取って回答しますと、 インパルス応答を逆フーリエ変換すると、周波数応答になります。 で、与えられた周波数応答になるような、フィルタを設計します。フィルタには、 ・バターワースフィルタ ・チェビシェフフィルタ ・ベッセルフィルタ なんかがありますが、通過特性・減衰特性・群遅延なんかを考えて、どれが一番いいかを判断して設計します。

RISLIM-ric
質問者

補足

すいません、説明&知識不足で。 ある伝達系にインパルス信号を入力し、周波数特性(振幅特性)を得たのですが、そのフィルタの特性がどういったものかを知りたかったのです。 FIRフィルタであるということはわかったのですが、何タップのフィルタであるかの判断はどうするのかわからずに困っている状況です。

  • rabbit_cat
  • ベストアンサー率40% (829/2062)
回答No.2

>ここはこういった傾斜があり、何タップであると算出できる 傾斜ってなんの傾斜ですか? あと、 >振幅特性 てのはどういう意味ですか?周波数応答のこと?? FIRフィルタなら、単純に、インパルス応答=タップ係数 なんですが。インパルス応答の長さがタップ数です。

  • rabbit_cat
  • ベストアンサー率40% (829/2062)
回答No.1

離散時間系であれば、インパルス応答は、タップ係数そのものです。

RISLIM-ric
質問者

お礼

回答ありがとうございます。 知識不足で申し訳ないのですが、具体的に 「ここはこういった傾斜があり、何タップであると算出できる」といった求め方はないのでしょうか?

関連するQ&A

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

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

  • FIRフィルタの製作

    FIRフィルタの製作で困っていることがあります。 FIRフィルタをローパスとかバンドパス的な遮断の点からではなく 位相をずらす観点から、製作したいと思いつつも なかなか調べても遮断周波数を決めてタップ係数を求める手法 しか見つかりません。 初めてのフィルタ製作もあって、できるだけツールからではなく 手計算で求めたいです。 ご存知の方がいらっしゃったら、ご教授ください。

  • FIRフィルタって

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

  • IIRフィルタとFIRフィルタ

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

  • 時間領域のインパルス応答と周波数領域での位相特性の関係(デジタル信号処理)

    質問失礼します。 デジタル信号処理の分野において、フィルタの特性をみるときに周波数領域にして、振幅特性と位相特性に分けて解析を行っています。 フィルタのインパルス応答をDFTして、振幅成分を正規化して、IDFTしたものと時間領域でのインパルス応答との関係はどうなるのでしょうか? 画像で見てみると、位相限定画像は原画像の特徴を持っているのが視覚的に分かるので何か式などで証明している文献など知っている人がいましたらよろしくお願いします。

  • ディジタルフィルタの周波数特性

    伝達関数H(z)がH(z)=2+2z^-1のディジタルフィルタのインパルス応答h(k)を示し、 このフィルタの周波数特性を示したいのですが、この場合はどう解けばいいのでしょうか。 ご教授していただける方がいらっしゃいましたら宜しくお願いします。

  • 周波数応答の意味

    ディジタルフィルタの周波数応答とはどういうものなのか教えて下さい。 周波数応答の中に振幅特性や位相特性というものが含まれる、ということは分かったのですが、この分野の勉強をいままでしたことが無いので、周波数応答、振幅特性、位相特性という用語の意味が分かりません。 どのサイトを見ても難しい用語や式を使っていてよく分かりません。 できるだけ専門用語を使わないで、これらがどういう意味を持つのかを説明してください。お願いします。

  • 非再帰型デジタルフィルタのタップ数の計算

    基本的なデジタルフィルタで移動平均のフィルタでタップ数を変えればカット周波数を調整できると聞きましたが、計算の仕方がわかりません。確かタップ数の計算はhK=(WcT/π)*(sin(WcKT)/WcKT)のような計算だと思うのですが(Wはオメガです)(左辺と右辺のKはたぶんいっしょです)簡単な例を付け加えてくれたら助かります。またfcと言うのはカットオフ周波数のことですよね?

  • FIRフィルタ 零点から係数を求める。

    FIRフィルタの係数の求め方がわかりません。 測定した信号から特定次数の高調波をカットするフィルタを 設計したいのですが、 どのように計算したらよいのかわからず、困っています。 ちなみに、タップ数は10と決まっています。 カットしたい高調波は 1次調波・3次調波・5次調波・7次調波・・・ という具合に、4~6こ程度あるので、単にBEFやBPFでは思ったような 特性が得られません。 また、Re-Im軸の単位円上から零点としたいn数の調波の座標(an,bn)を 読み取り、 (x-a0-b0i)(x-a+Bi)(x-a1-b1i)… という式に代入し、xの0~2n+1乗までの係数を求めるという方法も あるようなのですが、こちらもよい特性は得られませんでした。 よろしくお願いします。

  • 適応フィルタのタップ数

    アクティブな消音システムを構築するため、DSPを用いた適応フィルタを構成しました。 用いたフィルタ係数決定アルゴリズムはfiltered-x LMSアルゴリズムです。 (filtered-xのフィルタは制御音発生器から観測点までの伝達関数です) このとき、ステップサイズパラメータμを5つほど用意して、 その各々に対して適応フィルタのタップ数を600,300,50と変えていきました。 μがある程度大きくなると、出てくる音(騒音と制御音の重ね合わせ)が収束しなくなるのは、 誤差信号e(n)の二乗推定量が収束しないからだというのは分かりました。 しかし、よく分からない現象を観測してしまって困っています。 上記の3つのタップ数の各々(600,300,50)に対して誤差信号e(n)が収束するようなμを用いている時に、 タップ数が多ければ多いほど誤差信号e(n)は小さくなるはずだと思っていたのですが、 実際にはタップ数が300の時にe(n)が最小(つまり最も消音効果がある)という結果を得ました。 サンプリング周期は10kHzなのでタップ数が原因の計算遅延はないはずです。 プログラミングが間違っているという事はない、 その他のパラメータ設定も適切である、 e(n)が収束するまで十分時間待った、 というような前提として、この現象はどう説明されるのでしょうか。