Hallo zäme
Besonders freut mich, dass endlich mal wer Verwendung für all die Fussgängerstreifennodes hat, die ich eingetragen habe.
In diesem Kontext: Ich habe (angestossen durch diese Diskussion) mit Versuchen begonnen, Fussgängerstreifen auf den Bing Maps automatisiert durch Objekterkennung (OpenCV) und Klassifizierer (ev. SVMs oder Neuronale Netze) zu erkennen. Ev sind Haar Features eine der Möglichkeiten, kenne mich da noch nicht soo genau aus. Die Streifen sind aber ziemlich markant, da müsste es schon möglich sein sowas hinzukriegen.
Die Idee ist folgende:
1. Ein Script lädt sich Bilder in einer bestimmten Region herunter. 2. Jede Kachel wird klassifiziert (Fussgängerstreifen vorhanden? Ja/Nein). 3. Die Fussgängerstreifen werden identifiziert (-> X/Y Position) 4. Die Punkte werden mit den OSM Daten abgeglichen. Ist kein Way in der Nähe des Punktes, kann er verworfen werden. 5. Ist eine Strasse in der Nähe, könnte automatisch eine neue Node darauf gesetzt werden. Ev noch als überwachtes System, bei dem ein Nutzer alle Punkte bestätigen muss.
Für den ersten Punkt habe ich bereits ein Script geschrieben. Den zweiten Punkt könnte man rein mit Farb-Thresholding machen, da hab ich auch bereits Python/OpenCV Code. An Punkt 3 arbeite ich gerade.
Möglicherweise könnte man Punkte 2 und 3 sogar kombinieren, wenn die Methode schnell genug ist.
Ich habe mal auf SO eine Frage gepostet: https://stackoverflow.com/questions/21150711/recognizing-crosswalk-on-aerial... Da wurden Haar Features empfohlen, die müsste man einfach trainieren. Das sollte aber gut möglich sein. Muss mich da etwas einlesen.
Kennt sich jemand mit diesen Themen aus und hat Lust mir da etwas weiterzuhelfen?
Grüsse Danilo
Tönt interessant, 2 Anmerkungen:
- Fussgängerstreifen ohne entsprechende Strasse in OSM tönt doch eigentlich interessant, sprich die Koordinaten sollte man auch verfügbar machen. - Dem automatischen Eintragen stehen relativ hohe Hürden entgegen (völlig zurecht) siehe die mechanical edit policy, liever schon von anfang an etwas mit händischer Überprüfung vorsehen.
Gruss
Simon
Am 17.01.2014 23:08, schrieb Danilo:
Hallo zäme
Besonders freut mich, dass endlich mal wer Verwendung für all die Fussgängerstreifennodes hat, die ich eingetragen habe.
In diesem Kontext: Ich habe (angestossen durch diese Diskussion) mit Versuchen begonnen, Fussgängerstreifen auf den Bing Maps automatisiert durch Objekterkennung (OpenCV) und Klassifizierer (ev. SVMs oder Neuronale Netze) zu erkennen. Ev sind Haar Features eine der Möglichkeiten, kenne mich da noch nicht soo genau aus. Die Streifen sind aber ziemlich markant, da müsste es schon möglich sein sowas hinzukriegen.
Die Idee ist folgende:
- Ein Script lädt sich Bilder in einer bestimmten Region herunter.
- Jede Kachel wird klassifiziert (Fussgängerstreifen vorhanden?
Ja/Nein). 3. Die Fussgängerstreifen werden identifiziert (-> X/Y Position) 4. Die Punkte werden mit den OSM Daten abgeglichen. Ist kein Way in der Nähe des Punktes, kann er verworfen werden. 5. Ist eine Strasse in der Nähe, könnte automatisch eine neue Node darauf gesetzt werden. Ev noch als überwachtes System, bei dem ein Nutzer alle Punkte bestätigen muss.
Für den ersten Punkt habe ich bereits ein Script geschrieben. Den zweiten Punkt könnte man rein mit Farb-Thresholding machen, da hab ich auch bereits Python/OpenCV Code. An Punkt 3 arbeite ich gerade.
Möglicherweise könnte man Punkte 2 und 3 sogar kombinieren, wenn die Methode schnell genug ist.
Ich habe mal auf SO eine Frage gepostet: https://stackoverflow.com/questions/21150711/recognizing-crosswalk-on-aerial... Da wurden Haar Features empfohlen, die müsste man einfach trainieren. Das sollte aber gut möglich sein. Muss mich da etwas einlesen.
Kennt sich jemand mit diesen Themen aus und hat Lust mir da etwas weiterzuhelfen?
Grüsse Danilo _______________________________________________ talk-ch mailing list talk-ch@openstreetmap.ch http://lists.openstreetmap.ch/mailman/listinfo/talk-ch
Hallo Danilo
Ich hatte genau dieselbe Idee (Fussgängerstreifen automatisch erkennen) auch schon. Über das Ideen-Stadium hinaus bin ich aber nicht gekommen.
Meine Überlegung war auch, dass Fussgänger-Streifen bilderkennungstechnisch ziemlich prägnant in der Landschaft stehen: Einerseits hat man immer gelb (oder in einigen Regionen der Welt weiss) auf grau/schwarz. Andererseits sind die Dicken und Abstände der Streifen quasi genormt.
Ich habe mir gedacht, man könnte ein Farbbild zuerst in ein schwarz-weiss oder Graustufen Bild umwandeln (gelblich/weisslich <-> gräulich/schwarz) und danach mittels Fourier-Transformation nach Auftreten der "Fussgängerstreifen-Frequenz" suchen. (Die ist natürlich abhängig von der Zoom-Stufe der Kacheln.)
Falls man nur einen oder wenige Frequenz-Werte berechnen will, gibt es als schnellere Alternative zur FFT noch das Goertzel-Verfahren ( http://de.wikipedia.org/wiki/Goertzel-Algorithmus ).
Neben der reinen Erkennung sehe ich noch zwei andere Punkte, die beachtet werden sollten:
1. Erlaubt Bing das automatische Erfassen von Merkmalen?
2. Ein allfälliger Versatz der Satellitenbilder sollte natürlich korrekt gehandhabt werden.
Gruss
Lukas
Am 18.01.2014 11:00, schrieb Toggenburger Lukas:
Neben der reinen Erkennung sehe ich noch zwei andere Punkte, die
beachtet werden sollten:
- Erlaubt Bing das automatische Erfassen von Merkmalen?
Eigentlich nicht (aber ich geh davon aus das schlussendlich nicht vollautomatisch erfasst wird).
- Ein allfälliger Versatz der Satellitenbilder sollte natürlich
korrekt gehandhabt werden.
Und .... natürlich sind die Bilder nicht unbedingt aktuell (speziell die höchst aufgelösten Bilder sind mehrere Jahre alt in gewissen Gegenden), was zum Beispiel wegen fleissigen Kreiselbau und ähnlichen auch dazu führt das es natuerlich viele Fussgängerstreifen gibt, die nicht mehr da sind oder an einem anderen Ort etc., sprich manuelle Überprüfung auf jeden Fall erforderlich ist.
Simon
sprich manuelle Überprüfung auf jeden Fall erforderlich ist.
Ja, manuelle Kontrolle ist natürlich definitiv eingeplant, ich meinte mehr ein halbautomatisches Verfahren bei dem man die Nodes kontrolliert und dann selber hochlädt, aber nicht extra abzeichnen muss. Vielleicht hat JOSM eine Schnittstelle für sowas?
- Erlaubt Bing das automatische Erfassen von Merkmalen?
Eigentlich nicht (aber ich geh davon aus das schlussendlich nicht vollautomatisch erfasst wird).
Genau, es ist ja kein wirklich automatischer Vorgang, die Kacheln werden nur als Hilfsmittel verwendet um schlussendlich die Nodes manuell hochzuladen. Entspricht eigentlich mehr einem computergestützten Abzeichnen.
Grüsse Danilo
Hallo,
Es gibt nebst Bing noch Mapbox Satellite. Die decken nicht alles ab, haben aber passable Nutzungsbedingungen und sind OSM grundsätzlich wohlgesinnt.
Es gibt übrigens noch andere Image Processing Libraries für Python, nebst OpenCV [1].
--Stefan
[1] http://stackoverflow.com/questions/94875/image-processing-in-python
Am 18. Januar 2014 11:44 schrieb Simon Poole simon@poole.ch:
Am 18.01.2014 11:00, schrieb Toggenburger Lukas:
Neben der reinen Erkennung sehe ich noch zwei andere Punkte, die beachtet werden sollten:
- Erlaubt Bing das automatische Erfassen von Merkmalen?
Eigentlich nicht (aber ich geh davon aus das schlussendlich nicht vollautomatisch erfasst wird).
- Ein allfälliger Versatz der Satellitenbilder sollte natürlich korrekt
gehandhabt werden.
Und .... natürlich sind die Bilder nicht unbedingt aktuell (speziell die höchst aufgelösten Bilder sind mehrere Jahre alt in gewissen Gegenden), was zum Beispiel wegen fleissigen Kreiselbau und ähnlichen auch dazu führt das es natuerlich viele Fussgängerstreifen gibt, die nicht mehr da sind oder an einem anderen Ort etc., sprich manuelle Überprüfung auf jeden Fall erforderlich ist.
Simon
talk-ch mailing list talk-ch@openstreetmap.ch http://lists.openstreetmap.ch/mailman/listinfo/talk-ch
Hallo Danilo,
In diesem Kontext: Ich habe (angestossen durch diese Diskussion) mit Versuchen begonnen, Fussgängerstreifen auf den Bing Maps automatisiert durch Objekterkennung (OpenCV) und Klassifizierer (ev. SVMs oder Neuronale Netze) zu erkennen. Ev sind Haar Features eine der Möglichkeiten, kenne mich da noch nicht soo genau aus. Die Streifen sind aber ziemlich markant, da müsste es schon möglich sein sowas hinzukriegen.
Interessantes Projekt! Ich denke auch, dass so was im Prinzip möglich sein müsste. Beim Erstellen von Trainingssets würde ich empfehlen, verschiedene Varianten von Sperrstreifen als Negativbeispiele aufzunehmen. Die sehen den Zebrastreifen (insbesondere schrägen) am ähnlichsten, unterscheiden sich aber in Strichstärke und -abständen und Umriss. Noch ein Sache: In vielen Ländern haben Fussgängerüberwege mit Fussgängerampeln keine Zebrastreifen, sondern werden durch (gestrichelte) Linien begrenzt.
Grüsse, Thorsten