Obs-face -ACV und "Position der Messung (korrigiert):"

Hallo zusammen

Ich nutze OBS-Classic und lade die Messungen jeweils auf meinen Computer. Danach nutze ich das obs-face script und lasse mir die daten auf der Karte darstellen - siehe OpenBikeSensor-Scripts/visualization/README.md at main · openbikesensor/OpenBikeSensor-Scripts · GitHub

Nun kommt es immer wieder vor, dass Messungen auf der falschen Strasse dargestellt werden. Soweit ich es verstanden habe, werden Korrekturen gemacht, wenn ich «obs-face -ACV» laufen lasse.

Ich konnte durch das Lesen des Codes nicht verstehen, wann und warum es zur Korrektur kommt und in welche «Richtung» korrigiert wird.

Ein Beispiel:

Position der Messung (GPS): 46.937707 7.480093

Position der Messung (korrigiert): 46.937936 7.480204

Beide sind nicht korrekt. Richtig wäre 46.937707, 7.480093

Bleibt mir nichts anderes übrig, als die Daten händisch zu korrigieren?

Danke für die Hilfe.

Das obs-face repository haben wir wirklich schon lange nicht mehr angefasst, weil wir mittlerweile komplett auf das Portal umgestiegen sind. Wenn du das face-script benutzen möchtest, bleibt dir leider nicht viel anderes übrig, als die Daten händisch zu korrigieren. Aber vielleicht gibt es ja auch für dich ein passendes Portal.

Die Korrekturen werden normalerweise so gemacht dass versucht wird, die Events auf die nächste plausible Straße zu ziehen - wie genau der Algorithmus in den alten Scripts aufgebaut war, weiß ich nicht genau - im Portal wurde die Logik fast komplett neu geschrieben. Trotzdem ist auch dort die Erkennung nicht 100% - was vor allem daran liegt, dass es keine „für alle OpenBikeSensor“ passende logik geben kann, weil die GPS-Genauigkeit sehr unterschiedlich ist.

Danke für die Erklärung.

Die Logik, die im Portal zur Zuordnung zu einer bestimmten Strasse verwendet wird, ist in diesem script AnnotateMeasurements.py. Wurde ich von chatgpt korrekt informiert?

In der OpenBikeSensor Scripts Collection befindet sich ein script mit dem gleichen Namen (AnnotateMeasurements.py) und auch damit wird die Zuordnung gemacht?

Könnten ich somit die Portal-Variante verwenden? Oder würde es noch weitere Anpassungen benötigen?

Ich möchte meine Messdaten im Moment nicht veröffentlichen. Und ich habe es nicht geschafft das „Portal“ auf meinem Rechner zum laufen zu bringen.

EDIT: Ich habe eben bemerkt, dass ich meine Fahrten, die ich auf https://portal.openbikesensor.org hochlade privat schalten kann. Und ich habe eine fahrt hochgeladen. die abweichungen / fehler bei der Strassenzuurdnung sind auch dort vorhanden. wohl fast identisch.

Du bist auf der Suche nach dem „snapping“ Algoritmus glaube ich:

Ich verlinke mal die Koordinaten die du angegeben hast:

Der Algorithmus soll aber nur auf Straßen snappen, auf denen man zumindest vom Straßentyp her mit dem Fahrrad fahren darf und auf denen auch Autos fahren dürfen (nur dort kann man ja überholt werden). Der Punkt den du als „Richtig wäre“ angegeben hast, liegt auf der A6, da dürfen aber (zumindest laut unserer Heuristik auf Openstreetmapdaten, die zugegebenermaßen von deutschen Autobahnen ausgeht - vermute aber das das in der Schweiz auch zutrifft) keine Fahrräder fahren und deshalb wird darauf nicht gesnapped.

Du könntest versuchen, das snapping.py aus dem neueren Portal zu verwenden - das braucht allerdings eine postgis-datenbank mit einem OpenStreetMap Export und ist sicher nicht einfach zum Laufen zu bringen. Gerade gesehen, du hast das Portal einfach lokal aufgesetzt - Sehr cool! :+1:

Allgemein gehen wir davon aus, dass es immer mal vorkommen kann, dass ein Punkt auf die falsche Straße snapped. Der Algorithmus wurde nicht mit dem Ziel entwickelt, dass alle Punkte richtig snappen - „die meisten“ war das Ziel. Ich gehe davon aus, dass es auch keinen Algorithmus geben kann, der trotz GPS- und Openstreetmapungenauigkeiten in allen Fällen richtig liegt. Verbesserungen am Algorithmus, die die Trefferquote erhöhen sind natürlich immer willkomen.

Du kannst im Portal erkennen, wo dein GPS Track lang ging, und wo der Algorithmus dich daraufhin gesnapped hat. Vielleicht kann man daraus ahnen, warum falsch gesnapped wurde.

Danke an alle. Ich hatte die falsche Strasse als die korrekte Strasse angegeben.

Position der Messung (GPS): 46.937707 7.480093

Position der Messung (korrigiert): 46.937936 7.480204

Die korrekte Strasse wäre die Worbstrasse. 46.937509, 7.479611

Und ja, auf der Autobahn darf auch in der CH nicht mit dem Velo gefahren werden. In diesem Fall hat sich der Algorithmus für die falsche der beiden benachbarten Strassen entschieden.