Proposed Import: Bordsteindaten aus Forschungsprojekt BaAn-frei

Hallo zusammen,

wir möchten hiermit einen geplanten Import vorstellen und mit euch diskutieren.
Es geht um Daten aus dem Forschungsprojekt BaAn-frei (Hochschule Furtwangen, gefördert im Rahmen mFUND), Projektseite auf daten.plus, bei dem mit Hilfe einer App und KI-gestützter Bildanalyse Bordsteine für Rollstuhlfahrende erfasst und klassifiziert werden.

Wir befinden uns noch am Anfang: aktuell starten wir erst mit dem Coding für die Konvertierung unserer Daten in OSM-kompatibles Format.
Da dies unser erstes Projekt mit OSM ist, möchten wir transparent und in enger Abstimmung mit der Community vorgehen. Auch Themen wie Konflation müssen wir uns noch genauer anschauen und freuen uns über Hinweise und Erfahrungswerte.


Projektidee in Kürze

  • Rollstuhlfahrende nehmen über eine App Videos auf, die automatisch GPS-Koordinaten enthalten.
  • Eine KI klassifiziert Bordsteine in vier Kategorien:
    • no curb
    • flat curb
    • low curb
    • high curb
  • Ziel ist, dass die Daten in OSM integriert werden, sodass barrierefreie Routenplaner und Karten diese Information berücksichtigen können.

Geplante Umsetzung im OSM-Kontext

  • Datenformat: JSON → Konvertierung in OSM-XML bzw. OsmChange-Dateien
  • Tag-Mapping: Anpassung an [[Key:kerb]] → kerb=raised|lowered|flush|no
  • Topologieprüfung: jeder Bordstein muss an einer Straße liegen
  • Konflation: Abgleich mit bestehenden Daten per JOSM-Conflation oder osmium-tool, keine Überschreibung vorhandener Tags
  • Upload: OSM API v0.6, kleine Changesets (z. B. pro Stadtteil)
  • Revert-Plan: jede Region in separaten Changesets, gezielter Revert möglich
  • Qualitätssicherung:
    • automatische Checks (Abstand zu Straße, Duplikate)
  • Import-Account: Ist es wichtig, einen dedizierten Import Account zu haben? Was sind hier die Vorteile?

Aktueller Stand

Die Details zum geplanten Import haben wir / werden wir hier dokumentieren:
Wiki


Nächste Schritte

Wir möchten den Plan hier gerne mit der Community diskutieren, Feedback einholen und Fragen stellen, sowie beantworten, bevor wir erste Pilot-Importe starten.


Fragen an die Community

  • Habt ihr Hinweise zu QA-Strategien oder Tools, die wir zusätzlich einsetzen sollten?
  • Gibt es Erfahrungen mit automatisierter Konflation bei ähnlichen Projekten?
  • Unsere Daten liegen als Punkte mit Geokoordinate vor (Position des erkannten Bordsteins).
    → Macht es eurer Meinung nach mehr Sinn, diese direkt als einzelne node mit kerb=* zu erfassen?
    → Oder sollten wir stattdessen lieber bestehende Straßenabschnitte (Ways mit highway=*) mit kerb=* ergänzen, auch wenn die Bordsteinhöhe nur für eine Stelle gilt und nicht für den ganzen Abschnitt?
  • Bei unseren Klassifikationsergebnissen liefert die KI zusätzlich einen Confidence-Wert (Wahrscheinlichkeit zwischen 0 und 1), der angibt, wie sicher das Modell bei seiner Vorhersage ist.
    Beispiel: confidence = 0.92 bedeutet, dass die KI mit 92 % Sicherheit glaubt, dass es sich z.B. um einen “low curb” handelt.
    Ab welchem Confidence-Wert würdet ihr automatisierte Vorschläge als akzeptabel ansehen?
    Sollten z. B. nur Ergebnisse >0.9 (90%) automatisch berücksichtigt werden?

Viele Grüße
Euer BaAn-frei Team
Projekt Webseite

3 Likes

Und dann gleich so ein Hammer… :wink:

Folgendes kennt Ihr vermutlich bereits:

1 Like

Das lässt sich wohl nur beurteilen, wenn man die Ergebnisse der KI an bekannten Orten sieht. 92% Sicherheit würde bei mir selbst auch ansetzen, sprich, ich bin ein Mensch und mache Fehler. Je nach Komplexität mal mehr und mal weniger. Die Höhe von Bordsteinen anhand von Fotos zu beurteilen, die vermutlich vom Bürgersteig aus gemacht werden, scheint mir extrem schwer. Aber vielleicht kann die KI die Schatten besser berechnen als ein Mensch, vielleicht habt Ihr auch ein besonders geeignetes Verfahren für die Bilderfassung.

1 Like

Ich habe nur sehr wenig Erfahrung mit kerb=, aber wenn ich mir die Straße vorstelle, an der ich wohne, dann gibt es dort rechts oder links alle paar Meter eine Einfahrt und wenn man diese Wechsel alle mit Tags an highway= Weg erfassen will, dann müsste man die vorhandenen Wege in zig sehr kurze Abschnitte aufteilen. Das würde das Mappen sehr erschweren. Als einzelne Knoten sehe ich keine Möglichkeit, die Information beim Routing zu verwenden.
Vielleicht habt Ihr mal ein Beispiel mit Euren Daten für ein 200 m langes Stück Straße mit ein paar Einfahrten rechts und links? Welche Infos würden da anfallen?

1 Like

Ich habe noch eine Anmerkung fernab der technischen Fragen, die zweifelsohne wichtig sind.

Grundsätzlich sollte ein OSM-Import immer auch die Frage beantworten, ob, wie, und von wem die Daten weiter gepflegt werden. Die in OSM zur Verfügung stehende Arbeitskraft ist begrenzt. Durch ein vom Bund gefördertes Datenimport-Projekt einer Hochschule wird zwar die Datenmenge in OSM größer, die Arbeitskraft wird aber nicht mehr.

(Das wäre anders, wenn die Hochschule und der Bund ihre Mittel darauf verwenden würden, mehr Menschen zu OSM zu bringen; diese Menschen würden dann zumindest teilweise auch noch nach Auslaufen der Mittel ihre Arbeitskraft in OSM einbringen. Aber sowas bringt halt leider weder Prestige noch Fördermittel.)

Wenn ihr ansatzweise “nachhaltig” operieren wollt, dann macht Euch über diese Frage Gedanken. Ein guter Import, das sind nicht einfach Daten, die jemand zu OSM über den Zaun schmeisst und uns, der OSM-Community, dabei noch zuruft “hier, macht was gescheites draus” - ein guter Import bringt etwas ein, was in OSM noch fehlt, und hat einen Plan, wie und von wem das auch künftig, lang nachdem die Fördermittel verbraucht sind, am Leben gehalten wird. Und dieser Plan darf nicht heissen “OSM wird das schon machen, das ist toll und kostet nix”.

13 Likes

Vielleicht sollte man kurz erwähnen, dass Gehwege bei uns mal separat und mal strassenbegleitend gemappt sind, und es oftmals gar nicht so einfach ist, Bordsteine zuzuordnen — insbesondere, wenn beide Methoden aufeinander treffen, oder wenn versehentlich beides gemappt ist.

6 Likes

Wie ist denn der OSM-Datenstand in Furtwangen? Sind die Gehwege separat gemapt? Hängt die Gehwegsinfo an den Fahrbahnen? Wie viele Einfahrten sind denn kartiert, da - wie zuvor erwähnt - dort der Bordstein in der Regel abgesenkt ist.

Die Bordsteinhöhe an highway zu hängen, bringt das was fürs Routing? Gehört das nicht an einen Knoten mit crossing? Denn wenn es nicht an crossing hängt, bedeutet kerb für mich, dass die komplette Fahrbahn über den (abgesenkten) Bordstein führt. In Deutschland zeigt das, dass eine kleinere Straße nicht vorfahrtsbetechtigt ist (Beispiel).

Wenn die Gehwege separat gemappt sind, kann die Bordsteininfo meiner Meinung nach an den Kreuzungsknoten (mit crossing) oder an einen Extraknoten, der an der Position des Bordsteins liegt. Letzteres würde meiner Meinung auch für die Einfahrten gelten.

Mir würde eine Skizze helfen, wie ihr eure Daten auf die vorhandenen OSM-Daten matchen wollt. Geht das überhaupt mit der gps-Genauigkeit eines üblichen Smartphones? Oder verwendet ihr Videos mehrerer Nutzer, um die Lagegenauigkeit zu verbessern?

Danke, dass ihr euer Vorhaben hier zur Diskussion stellt!

3 Likes

→ Ab welchem Confidence-Wert würdet ihr automatisierte Vorschläge als akzeptabel ansehen?
Sollten z. B. nur Ergebnisse >0.9 (90%) automatisch berücksichtigt werden?

0.997 bis 1 würde ich vorschlagen, den Rest kann man nochmal ansehen bevor man es einträgt. Grundsätzlich haben wir den Anspruch, dass die Daten sehr gut sind, so was wie 0.9 ist auf keinen Fall akzeptabel, da wären ja im Mittel 10% falsch.

2 Likes

92% Sicherheit würde bei mir selbst auch ansetzen, sprich, ich bin ein Mensch und mache Fehler.

jede zwölfte deiner Eintragungen schätzst du als falsch ein? Klar kann jeder Fehler machen, aber so viele sicherlich nicht

Wenn man Bordsteinhöhen im größeren Maßstab erfassen will dann bitte entweder als eigene Linie barrier=kerb kerb=* oder evtl. auch nur an den Stellen wo eine Querung eingetragen ist, ersteres ist aber viel besser, und hilft z.B. auch beim Abschätzen der Straßenparkkapazitäten, aber auf keinen Fall am highway=* weil das alles fragmentiert und schwer zu sehen ist für andere Mapper mit anderem Schwerpunkt

2 Likes

Neh, ich habe mir vorgestellt, tausende Fotos von Bordsteinen selber auszuwerten und da würde ich mit so einer Fehlerrate rechnen, weil ich nach 'ner Stunde total abgenervt wäre.
Wenn mir eine KI verspricht, mit 92% Sicherheit gelbe Dreiecke von blauen Vierecken unterscheiden zu können, dann denke ich: Schwach. Die vorgestellte Aufgabe ist deutlich komplexer, da scheinen mir > 92% schon nicht schlecht. Nach meinem Verständnis käme 100% nur dann raus, wenn ein Trainingsbild wiedererkannt wird.

Edit: Der Wert sagt ja nicht wirklich, wie viele Fehler gemacht werden, sondern wie sehr die KI ihren eigenen Fähigkeiten (Trainingsdaten) traut.

1 Like

Edit: Der Wert sagt ja nicht wirklich, wie viele Fehler gemacht werden, sondern wie sehr die KI ihren eigenen Fähigkeiten (Trainingsdaten) traut.

wenn man Straßenbilder auswertet geht es vielleicht auch darum, wie präzise die Stellen lokalisiert werden, an denen sich z.B. abgesenkte Bordsteine befinden, während es quasi egal ist, ob der Bordstein komplett abgesenkt ist (flush) oder nur auf unter 3cm (lowered kerb)

Wenn die KI korrekt kalibriert ist, und nur dann, heißt das, bei einer confidence von 0.92 liegt sie in 92 von 100 Fällen richtig und in 8 von 100 daneben. Das ist nicht automatisch der Fall, das wäre also eine wichtige Frage, um einzuschätzen, was eine confidence von 0.92 konkret bedeutet.

Ich gehe mal davon aus, ihr werdet die Genauigkeit eures Klassifikationsmodells überprüfen, in dem ihr einen kleinen Teil der Videodaten manuell auswertet und mit den KI-Vorhersagen vergleicht. Eventuell eignen sich auch die in OSM bereits gemappten Bordsteine als “ground truth”. Die Auswertungen zur Genauigkeit könnt ihr dann ja mit der Community teilen, um auch die Mappergemeinschaft zu überzeugen, dass eure KI vertrauenswürdig ist.

Sorry, wenn ich da kritisch in den Raum werfe: Ihr macht das, damit man möglichst viel Technik (“KI”) nutzen kann? Vielleicht wäre es einfach schlauer, wenn der “Rollstuhlfahrende” einfach seber sagt, ob er über den Bordstein fahren kann - und nicht Unmengen an Daten (Video) erfasst und dann Energie (Rechenleistung) einsetzt, um so etwas Banales, wie Bordsteinhöhen zu schätzen (und ein Wahrscheinlichkeitswert von 90 % ist für mich hier eine grobe Schätzung).
Im Übrigen bin ich auch der Meinung von @woodpeck.

5 Likes

Selbst das ist streng genommen ungenau, denn sowohl visuelle Auswertung durch Menschen wie auch OSM-Daten können fehlerhaft sein. Die echte Konfidenz ist nur durch Überprüfung vor Ort zu Fuß zu ermitteln. Aber das ist mühsam und wenn die Kontrollmenge zu klein ist, ist die Übertragung auf größere Längen sehr zweifelhaft, da dort viele Verhältnisse (Schattenwurf, Farbe etc) ganz anders sein können.

2 Likes

Rollstuhlfahrende nehmen über eine App Videos auf, die automatisch GPS-Koordinaten enthalten.

wie genau sind die GPS-Geräte, sind das Konsumergeräte oder professionelle GPS mit entsprechenden Profiantennen und Korrekturen mit Hilfe einer Basisstation?

1 Like

Ist schwer zu sagen, aber gefühlsmäßig wären mir selbst 90% zu niedrig, eher 99,x%. Bedenke dabei, dass fehlende Daten schnell ersichtlich sind, falsche Daten aber nur sehr schwer automatisch aufzufinden sind. Ein fehlendes kerb=* an einem gemeinsamen Node von footway=sidewalk und footway=crossing zu finden ist trivial. Ein falsches kerb zu finden ist nur manuell OTG möglich.

Bedeutet dies, die KI ist zu 100% sicher, dass an der Koordinate (sagen wir mal +/- 1m) eine kerb=yes ist und zu 92% sicher dass es kerb=lowered ist?

1 Like

Aber das ist doch nicht der Vergleich. Der Vergleich wäre, der Mapper läuft die Straße entlang und erfasst Bordsteine bspw. mit StreetComplete. Wenn da jeder 12te Bordstein falsch ist, gäbe es hier einen Faden mit “Hilfe, User baut Mist” :smiley:

Eine Kreuzung hat 8 Bordsteine, das bedeutet grob jede zweite Kreuzung hat mehr als einen Fehler.

Das war auch mein Gedanke. Gebt dem Testfahrer ein Smartphone mit StreetComplete und fertig ist die Sache, evtl. noch mit Fördermitteln einen Fork entwickeln, der auf kerb spezialisiert ist…

Mir ist grad aufgefallen, dass nirgendwo ausdrücklich von Kreuzungen die Rede ist — oder habe ich es überlesen?

Es ist doch hoffentlich nicht so, dass jede private Einfahrt einen Node mit Bordsteinhöhe in der Straße generiert, oder? Das würde jede normale Wohnstraße komplett un-editierbar machen.

Ich würde gern mal eine Skizze sehen, wie man sich das Ergebnis vorstellen kann. Im Augenblick muss ich sagen, dass es mich bei „KI + Massenedit“ doch sehr gruselt.

2 Likes

Ich habe es auch so verstanden, dass es um die Bordsteine entlang einer Straße geht. Wie die in OSM erfasst werden könnten ist, aber eher die Frage, die hier gestellt wurde. Das Projekt geht ja gerade erst los.
Vielleicht findet sich hier ja jemand, der Erfahrung mit den vielen Möglichkeiten hat und ein paar Beispiele hat, die die Möglichkeiten, aber auch die Problemfälle zeigen.