Comment filtrer les données d'accélérométrie de bruit
Ci-joint une parcelle de données de l'accéléromètre à 3 axes. La soudaine des bosses dans la parcelle sont le bruit. Je voudrais m'en débarrasser. Donc, ce filtre doit être utilisé dans ce cas ? Si il est possible de fournir de pseudo-code et les explications.
Vous devez vous connecter pour publier un commentaire.
Il semble que vous voulez juste un filtre passe-bas.
Pour la mesure de données où vous pouvez faire une approximation du modèle de ce qui est physiquement se passe, ou ce qui est physiquement probable, je vous suggère un Le filtre de Kalman. C'est un peu plus complexe que les autres méthodes, mais potentiellement donne nettoyeur de sortie et/ou d'une meilleure réactivité.
En regardant les données, vous ne voulez pas de pics qui permet de changer la valeur d'une certaine quantité (environ 200, laissez-nous appeler cette
max_y_delta
) dans un certain laps de temps (5 à 15 peut-être,max_x_delta
).Donc, comme je ne suis pas sûr de la structure de vos données, je vais partir du principe que c'est 3 tableaux
data_array
de valeurs à virgule flottante qui ont un point de données à chaque position de type entier. La solution que j'ai actuellement est conçu pour être aussi simple que possible et vous devriez essayer différentes valeurs demax_x/y_delta
pour obtenir de bons résultats. Même avec les bonnes valeurs, je suis sûr qu'il ya beaucoup de meilleures solutions, mais peut-être que ce est assez bon pour vous comme un début.Notez que ce code a deux inconvénients que vous pourriez ne pas vouloir:
sont également quelques coups d'oeil dans vos données
sont destinés à être là, de sorte que vous pourriez
perdre une partie de ceux-ci.
max_x_delta
région autour de la pointe est fixée à la valeur moyenne de la région qui vous donnera une ligne droite.Voici comment je l'ai fait
http://levonp.blogspot.com/2010/10/how-to-filter-accelerometer-data-from.html
Essayer filtre médian: http://en.wikipedia.org/wiki/Median_filter, il peut supprimer les pics, mais pas les bords
Médiane filtres sont utilisés pour enlever le sel et le poivre bruit dans les deux dimensions des données. Dans cette seule dimension des données que vous avez les sommets vous souhaitez supprimer sont à haute intensité de points analogue à sel et poivre en 2D. Je vous recommande un filtre médian ainsi, il aidera à se débarrasser de ces pics et de changer très peu de chose. Le seul inconvénient est que c'est un filtre non-linéaire. Il doit être efficace pour mettre en œuvre tant que vous soigneusement mise à jour de vos quartiers.