平滑化及び外れ値の削除について

matlab、数学初心者で申し訳ありません。 ある生体データから信号処理を行っております。 データを時系列にプロットしてみたのですが、ノイズが多くまたスパイクも多くあります。 そこでそれらを除去したいと考えております。 しかし、データは滑らかな曲線であり、思うようにいきません。 イメージとしては滑らかな近似曲線よりその残差の標準偏差の3倍以上の値を除去するみたいな、、 このような処理はフィルター処理で行うのでしょうか。また、このようなイメージにマッチする外れ値除去のmatlabコードがあれば教えていただきたいです。 よろしくお願いいたします。

 채택된 답변

Hirokazu Tanaka
Hirokazu Tanaka 2018년 9월 6일

1 개 추천

異常値を検知する isoutlier 関数 は MATLAB 本体の関数ですしお勧めです。
movmethod — 移動メソッドを 'movmedian'/'movmean' と設定すれば、移動平均からのズレを基準に異常値かどうかを判断します。曲線近似を行うわけではないですが、「残差の標準偏差の3倍以上の値を除去」のイメージに近いかと。参考まで。

추가 답변 (1개)

Tohru Kikawada
Tohru Kikawada 2018년 9월 6일

1 개 추천

Signal Processing Toolboxの 信号の平滑化 をベースにはじめていただくのがよいかもしれません。
スパイクノイズの除去については 信号のスパイクの削除 が、外れ値除去については Hampel 識別子を使用した外れ値の排除 が参考になりそうです。

카테고리

질문:

2018년 9월 5일

답변:

2018년 9월 6일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!