このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
filtfilt
ゼロ位相デジタル フィルター処理
説明
は、入力データ y
= filtfilt(b
,a
,x
)x
を順方向と逆方向の両方で処理することにより、ゼロ位相デジタル フィルター処理を実行します。この関数は、データを順方向でフィルター処理した後、フィルター処理したシーケンスを逆にして、逆方向にフィルター処理を行います。結果には、以下の特性があります。
ゼロ位相の歪み
元のフィルター伝達関数の二乗振幅と等しい、フィルター伝達関数
b
とa
により指定されるフィルターの次数の倍のフィルター次数
filtfilt
は、初期条件を一致させることにより、処理の実行開始時と終了時の過渡状態が最小化します。微分器フィルターやヒルベルト FIR フィルターの演算は位相応答に大きく依存しているため、関数 filtfilt
をこれらのフィルターと共に使うことは避けてください。
ゼロ位相は、デジタル フィルター y
= filtfilt(d
,x
)d
を使用して入力データ x
をフィルター処理します。d
を周波数応答仕様に基づいて生成するには、関数 designfilt
を使用します。
例
入力引数
出力引数
参照
[1] Gustafsson, F. “Determining the initial states in forward-backward filtering.” IEEE® Transactions on Signal Processing. Vol. 44, April 1996, pp. 988–992.
[2] Mitra, Sanjit K. Digital Signal Processing. 2nd Ed. New York: McGraw-Hill, 2001.
[3] Oppenheim, Alan V., Ronald W. Schafer, and John R. Buck. Discrete-Time Signal Processing. 2nd Ed. Upper Saddle River, NJ: Prentice Hall, 1999.
拡張機能
バージョン履歴
R2006a より前に導入