2017-04-13 3 views
1

誰かが私を助けることがありますか?実験中に記録されたデータセットには、アーティファクトがいくつか導入されています。より詳細には、連続スパイクは、データの大部分をより高いまたはより低い値にシフトさせる。データセットからのアーティファクトの削除:長い不連続性/永続的な「スパイク」

データは、t = 0とt = 9の間で1から1000までスムーズに増加しています。 t = 10では、データは急激に400に減少し、次にt = 11とt = 20との間で400から1400まで滑らかに増加する。 t = 21では、データは突然再び変化する...このプロセス(おそらくレコーダの誤動作に起因する)は、データセット全体にわたって繰り返され、時間的に完全にランダムである(特定の周波数はない)が、シフトは常に同じである強度。

私はmatlab(hampel、medfilt1、...)でさまざまなフィルタを使用しようとしましたが、これらの大きな "ジャンプ"は削除しません。私は手でそれを行うことができます(各部分を順番に選択する)が、私はいくつかの非常に大きなデータセットを持っており、これらのアーティファクトが多すぎます。

誰かが同じ問題を抱えていて解決策を見つけたのかどうか疑問に思っていました。私はあなたの助けを事前に感謝します!

バーバラ

+0

通常、medfilt1はあなたが言及したジャンプの種類を削除します。フィルタのウィンドウのサイズはどのくらいでしたか? –

+0

サンプルデータを提供すれば、私は助けることができます! – Ozcan

答えて

0

加速器からの信号を処理するときに、私は同様の問題を抱えていた - センサのダイナミックレンジに等しいシフトがありました。あなたがしなければならないことは、データの一次導関数をとり、ピークを一定の閾値で見つけることだけです。次に、これらのピークをピーク直前と直後の平均値で置き換えることができます。

関連する問題