Hallo, hier sind sicher ein paar Filterexperten.
Ich habe das Problem, dass ich aus einen Datenstrom von Messwerten
Ausreißer raus filtern muss:
Momentan mache ich es so, dass ich mir ein Fenster von 5 (bzw. 7)
Punkten ansehe und anhand der Daten ein Approximationspolynom vom Grad 2
(bzw. 3) bestimme.
Dann berechne ich den Abstand vom mittleren Punkt zum Polynom. Ist
dieser zu groß, so wird der Punkt als Störung erkannt.
Konkret:
x=Datenpunkte
Ausreisser
x
_ ] Abstand
_,' '._
x /x x\ x
/ \
Approximationspolynom
So weit klappt das auch hervorragend, allerdings hab ich ein Problem bei
Sprungstellen:
x x x_
_ -''
_,'
x /x
/
da auch hier die Punkte am Rand einen zu großen Abstand zum Polynom
haben und fänschlicherweise als Ausreißer erkannt werden.
Ich möchte konkret bis zu 2 aufeinanderfolgende Ausreißer zuverlässig
erkennen können ohne dass ich mir den Datensatz an den Sprungstellen und
anderen Stellen "versaue".
hat jemand eine Idee wie ich das machen könnte.
Gruß
Roland
Gast
#563249
Einzelstehende Aureisser kriegt man mit dem Medianfilter raus. Ein meidanfilter nimmt die umgebenden Punkte, [-5..+5], sortiert deren wert und nimmt den mittleren der Folge.
Danke für den Tip, schaut auf den ersten Blick nicht schlecht aus