青い曲線で示されている、不要な振動キャリアを含む信号があります。ローパス フィルター (5 次バターワース) を作成し、filtfilt
関数を適用しました。低フィルター出力は赤い曲線です。
[b,a] = butter(5,.7);
y = filtfilt(b,a,y);
x 値 500 から最後までの赤い曲線はまさに私が望んでいたものですが、最初の振動はまだ残っています。フィルタ関数は、フィルタの入力と出力の初期値と終了値を一致させようとするため、発振が維持されるようです。初期値を不一致にして、振動なしでスムーズな出力を得る方法はありますか?
更新: 私の質問は明確ではなかったと思います。黒い曲線(手描き)のようなものが欲しい:振動を完全に取り除き、初期値と一致させない. これどうやってするの?