-5

配列のノイズを減らすために、Matlab でメディアン フィルター処理を使用しました。物体の速度と加速度を計算していました。速度部分は問題なく機能し、得られた結果はまさに期待どおりでした。

加速に関する問題に出くわしました。加速がうまく機能していないことに気付きました。予想される滑らかな形状ではなく、長方形の形状に気付きました。

加速度のプロットは、エンジンのカムとフォロアの正弦波になるはずですが、問題は、波のエッジが滑らかではなく、直線の形になっていることです。

私が使用した速度のためにvavg=medfilt2(v, [1 5])

私が使用したアクセルのためにaavg=medfilt2(a, [1 5 ])

正確なエッジを取得するために使用する必要がある他のフィルターはありますか?

他に役立つフィルタ関数はありますか?

4

1 に答える 1

1

何かの微分を取るとノイズが増幅されるため、信号の加速度を見ているときに問題が発生しても驚くことではありません。導関数を取得するために、ノイズに強い方法を使用できます。詳細については、このページを参照してください。

http://www.holoborodko.com/pavel/numerical-methods/numerical-derivative/smooth-low-noise-differentiators/

人々はこれに Savitz-Golay フィルターを頻繁に使用しているようです。Matlab でsgolayandsgolayfilt関数を試してください。

ただし、一般的には、信号とノイズの特性について考える必要があります。信号が非常に滑らかになることがわかっている場合は、最初に信号を近似してその滑らかさを適用してみませんか? スプラインがあなたに適しているようです(splinematlabで)。

于 2011-12-07T20:35:26.613 に答える