Startseite
Über Mich
AHP4
Galerie
Sehschlangen
Tourenbuch
Bookmarks
Elektronik
Bewertung
Geschichten

Einleitung

Nie zuvor war es bei Outdoor-Aktivitäten so einfach, Wegstrecken aufzuzeichnen. Smartphones und GPS-Geräte tracken Wege unterwegs mit, somit kann dann zuhause eine Auswertung erfolgen.
Ich habe mich dann einmal mit dem Gedanken beschäftigt, wie man die Höhenmessungen aus dem Garmin auswerten kann, um zum Beispiel von einer Wanderung die bewältigten Höhenmeter korrekt auszuwerten. Bei den Überlegungen kam schließlich dieses Skript heraus. Im Skript werden zunächst die Höhendaten von Nachkommmastellen bereinigt. Dies erfolgt durch einfaches Abtrennen (untere Gaußsche Klammer) der zwei Nachkommastellen. Numerisch ist dies nicht ganz korrekt, aber es ist erstens praktikabel, da in einem Shell-Skript das korrekte Runden ein gewisses Problem darstellt. Zweitens wage ich zu bezweifeln, dass das Garmin in der Lage ist, in der Bewegung im Gelände die Höhe auf den Zentimeter genau zu messen!
Das Skript analysiert die Höhendaten dann auf drei Arten:
  1. Exakte Differenzen: Höhenänderungen nach oben und nach unten werden mit zwei Zählern mitgeschrieben und am Ende ausgegeben. Messfehler und Schwankungen aufgrund schlechten Empfangs werden hierbei voll mitgenommen. Die Ergebnisse sind daher normalerweise viel zu groß. Bei meinen Tests liegt der Messfehler bei ca. 100 Prozent, d.h. es wird doppelt so viel Höhe ausgegeben, wie eigentlich wirklich im Gelände absolviert wurde. Zur groben Orientierung ist diese Funktion aber dennoch hilfreich.
  2. Schwellwert-Differenzen: Deutlich verbessertes Verfahren, um die Höhenmeter zu summieren. Im Vergleich zur letzten Höhenmessung muss die vorgefundene Differenz eine bestimmte Schranke überwinden. Erst dann wird die Änderung auch auf die Summenzähler aufgeschlagen. Man könnte dieses Verfahren auch als Integral mit vorgeschaltetem Schmitt-Trigger bezeichnen. In meinen Tests habe ich für den Schwellwert mit 11 einen sinnvollen Wert gefunden. Selbstverständlich kann dieser Wert auch angepasst werden.
    Bei diesem Verfahren wird auch mitverfolgt, welchen maximalen Sprung der Höhenwert in der GPX-Datei nach oben und nach unten mit Einfluss des Schwellwertes hat. Dieser Maximalsprungwert kann ein Maß für die Güte der Track-Datei sein. Niedrige Werte, die nur gering über dem eingestellten Schwellwert liegen, zeigen an, dass der GPS-Empfang unterwegs sehr gut war. Hohe Werte deuten auf schlechte Empfangsverhältnisse hin.
  3. Schwellwert-Differenzen mit Limit: Dieses Verfahren stellt nochmals eine kleine Verbesserung gegenüber den reinen Schwellwert-Differenzen dar. Bei schlechtem Empfang neigen die GPS-Empfänger zu Peaks in der Höhenmessung, also zu lokal begrenzten Ausreißern. Mit einem Peak-Limit versucht dieses Verfahren, solche Ausreißer herauszufiltern. Per Default ist die Grenze, aber der ein Ausreißer erkannt wird, auf den Wert 11 gesetzt. Bei der Auswertung mit diesem Verfahren werden erkannte Peaks ausgegeben. Ich habe dieses Verfahren mit der Strecke Ilsenburg- Brocken getestet. Bei Schwellwert 11 und Limit 11 liefert die Trackauswertung der Bergaufstrecke fast exakt die reine Höhendifferenz, die sich aus Start- und Endhöhe der Wanderung ergibt.
DISCLAIMER: Ich habe das Skript für den privaten Gebrauch geschrieben, stelle es aber gerne zur Verfügung. Die Verwendung dieses Skripts erfolgt auf eigene Gefahr, ich übernehme für entstehende Schäden keinerlei Haftung.

Voraussetzungen

Das Skript ist sehr genügsam, was das Vorhandensein von Software angeht. Zwei Kommmandozeilen-Tools sind jedoch für den Einsatz unbedingt erforderlich:
  1. grep: DAS Linux-Kommandozeilen-Tool zum Filtern nach gewissen Suchkriterien. Normalerweise auch bei jeder Linux-Installation dabei.
  2. tidy: Dieses nützliche Programm kann XML und HTML formatieren. Es ist zum Einlesen der GPX-Dateien essentiell. Nicht unbedingt fester Bestandteil der bekannten Linux-Distributionen, muss sehr wahrscheinlich nachinstalliert werden.
  3. Schreibrechte in /tmp. Dies sollte normalerweise immer gegeben sein. Ansonsten müssen die Pfade der temporären Dateien (hoehendatei und hdat) angepasst werden.

Kurzanleitung

  1. Der Dateiname der GPX-Trackaufzeichnung aus dem Garmin wird im ersten Aufrufargument übergeben.
  2. Das Skript läuft einige Sekunden. Die Laufzeit hängt natürlich von der Größe der GPX-Datei ab. Ich habe Werte von 42 Sekunden bei einer Datei mit 3000 Messwerten gemessen.
  3. Fertig!

Versionshistorie

V1.00 (23.12.2014)
Erste lauffähige Version erstellt.

Download

TrackHoehenprofil.sh, Version V1.00 vom 23.12.2014

Letzte Änderung : 22-Aug-2023
Copyright Jens Köhler, Wolfsburg, Obere Dorfstraße 10d