Ich habe ein Bild, das sich aus mehreren 'Winkeln' zusammensetzt, die eine Gitterform bilden:
Nach einigem Suchen schien Hough gut zu passen, da es nicht durch Zeilenumbrüche gestört wird. Das Problem ist jedoch, dass meine Linien "fett" sind und jede Kantenerkennung, die ich durchführe (in diesem Fall Canny), die Kanten der Linie und nicht die Mitte auswählt:
Dies bedeutet, dass die Hough-Transformation am Ende eine (oder beide) der "Seiten" meiner Gitterlinien auswählt und nicht die Mitte.
Angesichts der Tatsache, dass ich weiß, wonach ich suche (diese gitterartige Form, immer in ungefähr derselben Ausrichtung), gibt es eine bessere Möglichkeit, den Teil "Kantenerkennung" auszuführen, um mir die Mittellinien zu geben, oder sollte ich suchen auf eine ganz andere methode?
Antworten:
Die Hough-Transformation würde in diesem Fall in der Tat helfen, das Gitter aufzunehmen. Wenn Sie die Linien "dünner" machen möchten, sollten Sie den Vorgang der Skelettierung in Betracht ziehen
Das würde ein Bild wie dieses ergeben:
Aufgrund der Art und Weise, wie die Skelettierung funktioniert, werden dennoch einige Linien erzeugt, die für das Raster irrelevant erscheinen, aber diese Linien in Richtung "fehlerhafter" Richtungen sind nicht so zahlreich (zumindest in dem gegebenen Bild), dass sie die Linienerkennung der Hough-Transformation verwirren zu viel und es wird deutlich die beiden Hauptreihen in verschiedenen Richtungen auswählen. (So sieht die HT-Ausgabe aus:)
Wenn Sie MATLAB verwenden, möchten Sie vielleicht prüfen , diese Hilfeseite
quelle
Eine Alternative zur Hough-Transformation wäre die Radon-Transformation ( 1 , 2 ). Eine grobe Beschreibung eines Algorithmus zum Erkennen einer gitterartigen Struktur könnte folgendermaßen aussehen:
EDIT :
Hier ist ein kleines Matlab-Snippet zur Veranschaulichung von Schritt 1-3:
Um Ihre Frage aus den Kommentaren zu beantworten: Aus dem Beispielbild, das Sie zur Verfügung gestellt haben, geht hervor, dass diese Methode robuster gegenüber kleinen Fehlern im erkannten Gitter ist. Skelette ergeben selten gerade Linien, was für die nachfolgende Hough-Transformation von Nachteil sein könnte.
quelle