Ich schreibe weiterhin benutzerdefinierten Code, um mit GPS-Tracks zu arbeiten: GPX-Dateien und NMEA-Protokolle von meinem Telefon, dedizierten GPS-Loggern usw. Ich habe das Gefühl, das Rad neu zu erfinden, und frage mich, ob es eine Standardbibliothek / ein Standardwerkzeug gibt, mit dem ich arbeiten kann mit GPS-Tracks. Einige der Dinge, die ich gerne mache:
- Berechnen Sie die zurückgelegte Strecke
- Berechnen Sie die Durchschnittsgeschwindigkeit und die momentanen Geschwindigkeiten entlang der Strecke
- Berechnen Sie die Zeit in Bewegung im Verhältnis zur Standzeit
- Vereinfachen Sie die Spur, beseitigen Sie stationäre Segmente
- Segmentieren Sie eine Spur in separate Spuren, eine pro Fahrt
- Glätten Sie den GPS-Abtastfehler
- Erstellen Sie ein Höhenprofil, indem Sie Punkte in einem DEM nachschlagen
- Konvertieren Sie die Spuren zur Visualisierung in GPX, KML usw.
Es gibt eine Vielzahl von Anwendungen, die GPS-Tracks analysieren. Ich suche nach einer Softwarebibliothek oder einem skriptfähigen Satz von Tools, damit ich meine eigenen Anwendungen schreiben kann. Eingabeformate interessieren mich nicht sonderlich. Jede Art von Lat / Lon-Punkten mit Zeitstempel ist in Ordnung. Ich arbeite hauptsächlich in Python unter Unix, aber so ziemlich jede Sprache wird es tun.
Zu den vorhandenen Werkzeugen, die ich verwende, gehören GPSBabel und GDAL / OGR für die Konvertierung und PostGIS für die Arbeit mit der Spurgeometrie als Linienfolge. Aber meistens schreibe ich meinen eigenen Python-Code, der auf Arrays von Lat / Lon-Paaren funktioniert und sich zu leise anfühlt. Außerdem sind einige der oben genannten Aufgaben (z. B. das Entfernen von GPS-Fehlern) recht subtil. Gibt es eine Bibliothek, die ich benutzen sollte?