Erkennen geometrischer Formen in einem Kantenbild

slope90

Grünschnabel
Hallo allerseits,

ich hab mir einen Kantendetektor programmiert und möchte nun im Ergebnisbild Objekte geometrischer Figuren (in meinem Fall Dreiecke, Kreise und ein Sechseck; sprich Formen von Straßenschildern) erkennen und farbig markieren. Nach einer kurzen Recherche bin ich auf die Hough-Transformationn gestoßen. Ich fand die Vorgehensweise und Codebeispiele etwas kompliziert. Deshalb meine Frage an euch:

Kennt ihr vielleicht alternative Methoden zur Objekterkennung geometrischer Figuren oder verständliche quellen, die sich mit dem Thema befassen?

Danke für jeden Tipp
 
Ich bin unwissend, was Java betrifft, aber Muster/Objekterkennung, ja, da solltest Du vielleicht nach
Fiducials suchen oder nach OpenCV und deren Erkennungsalgorithmen, zB Cascade.

mfg chmee
 
(Das sind Bildverfeinerungsverfahren, die Vorstufe zur Erkennung. Erst muß das Bildsignal in ein hinreichend einfaches, auf das Problem angepasstes Datum überführt werden. Danach kann dann die Muster/Objekterkennung umso besser arbeiten.)

OpenCV halte ich für die kompletteste Bibliothek - die Javaportierung soll angeblich bevorstehen.

mfg chmee
 
Bei uns an der Uni habe ich mal einen Vortrag gehört zur Mustererkennung basierend auf Neuronalen Netzen. Gerade bei solchen Problemen, bei denen du schon die geometrischen Figuren schwer beschreiben und aus dem Pixelraster extrahieren kannst, könnte das hilfreich sein.
Hier ein Beispiel mit Neuroph: http://neuroph.sourceforge.net/image_recognition.html
Die Bilddaten müssen natürlich gut aufbereitet werden, damit du überhaupt mit Neuroph arbeiten kannst.
Schnellschuss-Idee: Signalfarben (rot/blau) als eigene s/w Bilder speichern, die Muster mit Opening/Closing möglichst bereinigen. In den Bildern dann zusammenhängende Regionen extrahieren und auf die Bildgröße der Vorlagen bringen und dann mit dem NN analysieren.
 
Zurück