AW: GPS-Logger I-BLUE 747 mit 32MB
Ich möchte mir jetzt doch eine Routine zusammenbasteln, die Ausreißer eliminiert - zumindest die gröbsten. Um das Rad nicht zweimal zu erfinden, kennt jemand einen einfachen Algorithmus "Delta Breiten-/Längen-Grad" -> "Entfernung in Meter"? Rund 40000km/360° gilt ja nur am Äquator.
Für diesen Teil habe ich mir nun eine Formel zusammen gebastelt.
Für den Erdradius nehme ich folgendes an:
Länge einer Bogenminute am Äquator = 1.852km (darauf beruht wohl das Kartenmaterial)
//edit: bei google würde sich durch rückrechnen 1.856km ergeben
Radius der Erde in km
R = 1852 * 60 * 360 / 2 / π
R = 6366,7km
//Edit: google wäre R = 6380,3km
Entfernung zweier Punkte in m
L1 ist die geo. Länge am Punkt 1, L2 entsprechend für den zweiten, B deutet auf die geo. Breite hin (Winkelangaben müssen natürlich ins Bogenmaß überführt werden, also mal π / 180).
E = R/1000 * ARCCOS[SIN(B1) * SIN(B2) + COS(B1) * COS(B2) * COS(L1 - L2)]
Höhenunterschied mit berücksichtigen
man rechnet mit der Höhe H1 und H2 weiter
E' = (E^2 + (H1-H2)^2)^(1/2)
Filtern ginge nun wie folgt, hat man die genaue Entfernung, kann man mit der Zeit die Geschwindigkeit berechnen, wenn man nun z.B. in den Bergen herumkraxelt wird man kaum schneller als 8km/h sein, eher unter 5km/h, man kann also alles was darüberliegt als Ausreißer herauswerfen.
Möchte man den Track reduzieren kann man eine Mindestgeschwindigkeit festlegen und alles darunter verwerfen (z.B. wenn man längere Zeit auf einer bank gesessen hat).
Wenn jetzt jemand sagt, dann logge doch die Geschwindigkeit mit, dann wäre das zwar möglich, aber das kostet wertvollen Speicherplatz, braucht man nicht unbedingt die Höhe (etwa für Höhenprofile) kann man die auch noch weglassen (mit der Höhe habe ich eh noch Probleme).