Menuekopf

Dienstag, 4. Juli 2017

GPS Daten oder spezifische Sensor Daten (Part 1: die leidige Sache mit der Genauigkeit)

Vorweg: die hier getätigten Ausführungen beziehen sich auf den Consumer-Bereich, also auf GPS-Geräte, wie wir sie in Form - bezahlbarer - Sportcomputer nutzen. Es gibt im Profi- und militärischen Bereich auch Geräte, die jene Ungenauigkeiten in der hier genannten Form nicht aufweisen (z.B. Differential Global Positioning System)!

(Anmerkung des Verfassers 30.09.2017: möglicherweise wird sich das hier Beschriebene in absehbarer Zeit grundlegend ändern, aber Stand September 2017 sind GPS Daten im Consumer Bereich immer noch 'verlustbehaftet' und mit einer Ungenauigkeit belastet)

Dieses Thema kommt immer wieder auf: sei es die Frage, weshalb Strava andere Zeiten, Geschwindigkeiten, Aufstiegsmeter, etc. berechnet oder ob das GPS-Gerät z.B. auch ohne gekoppelten SPD-Sensor zuverlässige Werte liefert, etc.

Um in kurzer Form auf die letzte Frage zu antworten: meiner Erfahrung nach eher nein (jein). Auch wenn die GPS-Geräte auf den ersten Blick womöglich brauchbare Ergebnisse liefern - die aber auf den zweiten Blick doch etwas hinterfragt werden können -, sind die rein mit einem GPS-Gerät berechneten Geschwindigkeitswerte mit Vorsicht zu genießen. 

Dieser Blog-Beitrag erörtert folgende Punkte:

  • GPS-Koordinaten
  • GPS-Höhenwerte 
  • GPS-Geschwindigkeiten
  • Software
    (was mit Auswertungssoftware nachträglich korrigiert werden kann)

GPS-Koordinaten:


Ich möchte bei den GPS-Koordinaten anfangen, da diese die Basis für alle weiteren (daraus) berechneten Daten bilden.
Häufig wird die Qualität eines GPS-Gerätes an der Qualität der von ihm protokollierten GPS-Koordinaten festgemacht (was ja streng betrachtet auch Sinn macht).
In den diversen Tests und Reviews werden gerne Screenshots der aufgezeichneten Tracks gezeigt:

  • stimmt ein protokollierter Track dabei relativ gut mit den den Strassen/Wegen, die auf der Karte sichtbar sind, überein, dann spricht das für die Qualität des GPS-Gerätes
  • liegt ein Track hingegen des öfteren mal neben dem Strassen-/Wegenetz, dann gibt das natürlich Punktabzüge. 

Soweit so gut. Was man dabei leider verkennt, ist die Tatsache, dass GPS-Tracks im Rohformat quasi immer eine (leichte) zittrige Zickzack-Kurve aufweisen, was alleine schon in der (Un)Genauigkeit des GPS-Systems begründet liegt.

Die smoothen Tracks, die man den Geräten hinterher entnehmen kann, sind immer Folge einer speziellen Datenglättung, die (meistens) bereits im Gerät stattfindet. 
Zum Teil werden die Daten bereits im GPS-Chipsatz entsprechend geglättet, was optional mittels diverser Settings in gewisser Weise vom Firmwareentwickler noch etwas justiert werden kann. Mitunter findet diese Glättung aber auch erst in der Firmware oder - bei einem Smartphone direkt in der App - statt (also nachdem der GPS Chipsatz die Koordinaten an die Firmware/App bereits durchgereicht hat). 

Manche Geräte glätten die Daten bereits direkt während der Aufzeichnung, was ihnen etwas zusätzliche Rechenleistung abverlangt, andere Geräte hingegen glätten die Daten erst am Ende des Prozesses, also just in dem Moment, in dem der Track im TCX-, GPX-, FIT-Format - oder welches Format auch immer genutzt wird - final auf dem Gerät abgespeichert wird.

Wie auch immer, das sind jetzt nur technische Details. Wichtig ist halt zu wissen, dass das GPS-Gerät die GPS-Daten in gewisser Weise nachbehandeln muss. Und natürlich kommt einem Hersteller eine gewisse Erfahrung dabei zugute, auch wenn die Datenglättung als solches sicherlich keine Raketenwissenschaft ist, aber der Teufel steckt auch hier wieder mal im Detail -> übertreibt man es nämlich mit der Glättung, ist das auch wieder suboptimal, bleibt die Glättung aus oder wird zu konservativ geglättet, dann kommt der Track - wie oben beschrieben - oft sehr zittrig über!

Um das kurz zu skizzieren, hier eine kleine Animation, die eine kurze Testrunde in ihrer Rohdatenform zeigt (einer GPS Beta Firmware entnommen, bei der noch keine Glättung implementiert war) und gegenübergestellt dieselbe Testrunde, protokolliert mit der einer etwas verbesserten Firmware.
Diese Aufzeichnungen wurden simultan angefertigt, also exakt gleiche Empfangsbedingungen, etc.
In der erwähnten Beta Firmware war eine hohe Samplerate eingestellt, sonst wäre die Zickzack-Trackskizze noch ausgeprägter (man sollte den Unterschied im angezeigten Track - nur um den geht es in dieser Grafik! - der Animation trotzdem entnehmen können).


Halten wir also fest, etwas 'Voodoo' Zauberei ist immer dabei und wir sehen hinterher Daten bzw. Tracks, die mitunter akkurater erscheinen, als sie ursprünglich in Rohrform protokolliert wurden. 

Die Hersteller verwenden unterschiedliche Verfahren bzw. greifen natürlich auch auf einen Erfahrungspool zurück. Kartentaugliche Geräte können unter Umständen die Tracks sogar mit dem hinterlegten Kartenmaterial abgleichen, wobei das allerdings auch wieder zu einer Verzerrung führen kann (wenn man z.B. nicht auf der Straße gefahren ist, sondern bewusst knapp neben der Straße, etc.).

Hält man sich diese systemimmanente Ungenauigkeit vor Augen, liegt es auf der Hand, dass die daraus berechneten Parameter eben auch verlustbehaftet sein müssen.

Womöglich werden jetzt einige Leser einwerfen, dass vor allem die Sampling-Rate, mit der die Activities protokolliert werden, großen Einfluss auf die Genauigkeit hat. Ja und nein, natürlich können viele zusätzliche Messpunkte die Genauigkeit erhöhen, wenn aber die Eingangsdaten bereits systembedingt mit einer Ungenauigkeit behaftet sind, dann führt selbstredend auch eine kleine Samplerate zu verrauschten Daten, sodass auch in diesem Fall zwingend geglättet werden muss!


Höhenwerte:


Was die  Höhendaten betrifft, so sollte mittlerweile bekannt sein, dass jene rein auf GPS-Daten basierten Höhenwerte mit Vorsicht zu genießen sind. Diesbezüglich findet man im Netz zum Teil wirklich sehr gute Erklärungen, die diese Problematik detailreich erörtern (stellvertretend sei hier auf einen Strava Artikel verwiesen, der sich dem Thema annimmt).

Ich würde die mit einem Barometer (Druckmesssonde) erfassten Höhenwerte immer vorziehen, wenn es darum geht, Auf- und Abstiegsmeter zu erfassen. 
Zwar spielen bei diesen rein errechneten Werten auch noch andere Dinge mit rein, wie die (hoffentlich) verwendete Hysterese, also der Algorithmus, der letztlich bestimmt, welche Höhenänderungen in die Berechnung einfließen und welche nicht, aber die Drucksonde weist in der Regel sowieso eine gewisse Trägheit auf, die verhindert, dass die Daten durch sprunghafte Werte verfälscht werden.
Dadurch hat man schon viel gewonnen. Selbst bei unbeständigem Wetter (Luftdruckänderungen, die das Barometer natürlich beeinflussen), hat der dadurch bedingte Drift eher wenig Einfluss auf die Berechnung der Auf- und Abstiegsmeter.

Die Abweichungen bei den berechneten Auf- und Abstiegsmeter, die immer mal wieder zu Diskussionen führen, liegen m.E. eher in den unterschiedlichen Algorithmen begründet, die die Hersteller verwenden.

Bei dem alten, damals richtig genialen CicloSport HAC4 Bikecomputer, war m.E. ein sehr guter Algorithmus implementiert, der recht sinnige kumulierte Werte berechnet hat.

Auch die alten Avocet Bikecomputer und die Avocet Vertech Bergsteigeruhr berechneten relativ akkurate Auf- und Abstiegswerte. Soweit ich weiß, hat kein geringerer als der in der Radszene sehr bekannte Jobst Brandt, den in den Avocet Bike Computern verwendeten (Hysterese)-Algorithmus beigesteuert (hier ein interessanter Newsgroup-Beitrag von Jobst Brandt, der das Thema ansatzweise beleuchtet: Altimeters).

Leider gingen irgendwann viele Hersteller dazu über, eher mehr Höhenmeter zu berechnen (unter anderem, weil der Kunde das angeblich so wollte (!) -> mehr ist schließlich immer gut :) ). Es gab/gibt auch Geräte, die auf eine Hysterese komplett verzichten und jeden noch so kleinen Hubbel - als auch Luftzug! - in die Berechnung der Auf- und Abstiegsmeter miteinbeziehen. Das ist natürlich Käse - aber es kommen auf diese Weise (sehr) viele Höhenmeter zuammen - was wiederum dazu führt, dass man diese Werte gar nicht mehr miteinander vergleichen kann, da jedes Gerät irgendeinen (Phantasie)Wert berechnet bzw. vorgibt.

Anders verhält es sich bei den absoluten Höhenwerten, die bei unbeständigem Wetter schon mal dazu führen können, dass die Max.-Höhe nicht der Realität entspricht oder bei einem Rundkurs die Ausgangshöhe ungleich der Zielhöhe ist (was natürlich nicht sein sollte!). Von einem heftigen Gewitter einmal abgesehen, das zu einem starken Luftdruckabfall und dann -anstieg führen kann, wird man bei normalen Wetterlagen aber - wenn überhaupt - nur einen leichten Drift haben, der in der Höhenprofilgrafik kaum auffallen dürfte.

Bei rein auf GPS-Daten basierten Höhenwerten sieht das anders aus, hier wird man der Aufzeichnung fast immer eine Höhenkurve entnehmen können, die irgendwas abbildet, nur nicht das reale Höhenprofil.

Sämtliche meiner derzeit genutzten Laufuhren, die allesamt nur GPS-basiert die Höhe messen, weisen daher recht schaurige Höhenprofile auf. Wobei TomTom das bei der Spark3 gut kaschiert, da die Höhendaten m.W. beim Importieren über das Web korrigiert bzw. sogar erst zugewiesen werden, sodass die GPS Höhenwerte gar nicht in der späteren Auswertung aufschlagen :-).

Vergleicht man ein Höhenprofil, das einem Bikecomputer mit Barometermessung entnommen wurde mit einem Höhenprofil, das rein auf GPS-Höhendaten basiert, so wird man sehr große Abweichungen feststellen.

Hier das GPS basierte Höhenprofil gegenüber einem parallel aufgezeichneten Barometer basierten Höhenprofil:


Daher kommen Strava und Konsorten bei GPS basierten Messungen auch nicht umhin, die Höhendaten anhand einer Datenbank (SRTM Daten) zu korrigieren, um halbwegs vergleichbare Segmente zu erhalten.

Hier ein animiertes GIF, das die Abweichungen zwischen barometerbasierten, SRTM-Daten basierten und rein auf GPS-Daten basierten Höhendaten sehr gut verdeutlichen dürfte (kleine Wandertour im schönen Taunus -> GPX-Datei: Rund um den Glaskopf)
.


Abschließend noch eine Gegenüberstellung GPS basierter Höhendaten <-> SRTM Höhendaten (die SRTM Daten wurden in dieser Grafik allerdings etwas geglättet):


Da die SRTM-Daten selbst eine Ungenauigkeit aufweisen, wird man die mittels SRTM-Daten korrigierten Höhenwerte nur sehr schwer mit barometerbasierten Höhenwerten vergleichen können, zumal nach Zuweisung der SRTM-Höhenwerte - aufgrund der groben Rasterung dieser Daten - auch wieder eine Glättung obligatorisch ist.
Die auf Barometerdaten basierten Höhenprofile werden sich hingegen - sofern stabile Wetterverhältnisse herrschten! -  immer sehr ähneln, gleich welches Gerät die Daten aufgezeichnet hat (zumindest was aktuelle Geräte, die Luftdrucksonden mit einer Auflösung <= 1 m verwenden, betrifft).


Geschwindigkeitsdaten:


Auch hier wird meiner Erfahrung nach - zumindest im Consumerbereich - kein GPS-Gerät wirklich verlässliche Werte liefern. Die native GPS-basierte Geschwindigkeit ist immer sprunghaft (was schon darin begründet liegt, dass bereits die GPS-Koordinaten sprunghaft sind (siehe weiter oben)).

Zwar gibt es Bike-/Laufcomputer, die das sehr gut kaschieren können und auf dem Display recht konstante SPD-Werte (SPD steht hier als Synonym für Geschwindigkeit) anzeigen - d.h. große SPD-Sprünge sind auf dem Display nicht sichtbar -, aber das kommt nur durch eine Glättung der SPD-Werte zustande.
Anders gesagt, die SPD-Werte werden künstlich moduliert, um für uns User als zuverlässig zu erscheinen (vielleicht erinnert sich jetzt wer an die Augsburger Puppenkiste, da gab es auch eine Geschichte mit einem Scheinriesen, der dann aber in der Realität gar nicht so riesig war) :)

Bei Laufuhren kann man das sehr gut erkennen, da schnelle Änderungen der Pace (kurze Sprints, etc.) oftmals einen Nachlauf aufweisen, also der Sprint muss schon ein paar Sekunden durchgezogen werden, damit man die Max-SPD auf dem Display überhaupt einsehen kann. Das GPS Gerät muss nämlich erst erkennen, ob es sich um einen Ausreißerwert handelt oder die Tempoverschärfung real ist (vereinfacht formuliert).

Ob diese geglätteten Werte, die man auf dem Display des Gerätes zu sehen bekommt, hinterher in der Aufzeichnung landen oder dort die SPD-Daten in Reinform gespeichert werden, ist noch einmal eine andere Frage. Mir sind GPS-Computer untergekommen, die die SPD-Werte in geglätteter Form speichern, aber auch GPS-Geräte, welche die SPD-Werte ungeglättet abspeichern, was dann spätestens in der Auswertungssoftware als sehr sprunghafte SPD-Kurve aufschlagen wird.

Hier eine Grafik, die das Rauschen der GPS-SPD hoffentlich einigermaßen veranschaulicht:


Und zum Vergleich eine Laufrunde, die mit einem Garmin FR620 in Kombination mit dem im Pulsgurt integrierten Lauf-Pod, aufgezeichnet wurde. Deutlich zu sehen, dass die protokollierten Daten kaum Rauschen aufweisen und daher die in der TrainingLab Pro optionale Glättung weniger stark aufschlägt.



Bei Aufzeichnungen von Bike-Aktivitäten sind die Auswirkungen ähnlich, wenngleich aufgrund der deutlich höheren Geschwindigkeiten, die GPS-Geräte verlässlichere SPD-Werte modulieren können.

Faustformel: je geringer die Geschwindigkeit, desto größer ist oft das Rauschen -> prinzipiell wird der Bike-Computer mit einem spezifischen SPD-Sensor aber auch in diesem Fall genauere SPD-Werte ermitteln können.

Daher auch an dieser Stelle nochmal der Hinweis: wenn das GPS-Gerät bei Verwendung der GPS-SPD auf dem Display konstante SPD-Werte anzeigt, dann ist das eher Folge einer guten Glättung, die im Hintergrund stattfindet und nicht der validen GPS-Rohdaten, die das Gerät durchreicht! 

Hierbei spielen die verwendeten GPS-Chipsätze, die in euren GPS-Geräten werkeln, eine sehr große Rolle: es gibt GPS-Chipsätze, die etwas besser mit niedrigen Geschwindigkeiten klarkommen und andere, die unterhalb einer gewissen Mindestgeschwindigkeit sehr zum Rauschen neigen, was die Modulation der Geschwindigkeit betrifft. Und es ist leider auch nicht immer gesagt, dass neuere GPS-Geräte, mit neuen moderneren GPS-Chipsätzen, generell bessere Ergebnisse erzielen, wie man das diesem Thread, der sich mit aktuellen Laufuhren befasst, im Forum des Tour-Magazins entnehmen kann.

Die Hintergründe aufzuzählen, würde an dieser Stelle allerdings den Rahmen sprengen. Falls es interessiert, hier ist eine sehr gute Zusammenfassung von Jörn Weber, die zwar nicht mehr ganz aktuell ist, aber einige Zusammenhänge immer noch sehr gut erklärt: GPS-Empfänger Handbuch (PDF-Datei). Auch wenn sich bei den GPS-Chipsätzen viel getan hat, die dahinterstehende Physik hat sich nicht verändert und es ist für die Ingenieure immer noch eine große Herausforderung, akkurate Daten zu modulieren und dabei die Laufzeit (den Batteriehunger) nicht aus dem Blickwinkel zu verlieren.


Software:

(was mit Auswertungssoftware nachträglich korrigiert werden kann)

Um diesen Beitrag nicht unnötig aufzublähen, werde ich das Software Thema später in einem gesonderten Blog-Beitrag erörtern. Sonst würde dieser Beitrag zu sehr TrainingLab Pro lastig werden, was einer geschickt eingebetteten Werbung gleichkäme (das will ich in diesem Artikel, der primär der Information dienen soll, aber vermeiden).


Summa summarum:


Unschwer zu erkennen, dass das mit der gewünschten Genauigkeit so eine Sache ist. Immer wieder wurde von mir auf die Datenglättung hingewiesen und damit sollte eigentlich klar sein, dass diese gesamte Technik mehr oder weniger eine Approximation ist. Man sollte seine Datenausbeute also nicht überwerten :).


To be continued...

Keine Kommentare: