Hallo,
Vielleicht lässt sich das am besten an Hand eines Beispiels erklären. Mal angenommen, Du hast ein Pixelbild (schwarz-gelb) wie ich es angehängt habe. Aus diesem erzeugt man jetzt ein neues Bild - die sogenannte Hough-Transformation. Bei dem neuen Bild werden horizontal Winkel aufgetragen und vertikal die mögliche Werte für . Das ist hier der Bereich von -5 bis +5. Nun betrachtet man jedes Pixel, welches gesetzt (also gleich 1 bzw. schwarz) ist, und berechnet für jeden der gewählten Winkel (hier 0, 30, 60, ... 150 Grad) den Wert für nach der Gleichung
Das ist die Tabelle ganz unten auf dem zweiten Bild. In der ersten Spalte ergeben sich die vier Werte 0,1,2 und 3 daraus werden die vier Koordinaten (0,0), (0,1), (0,2) und (0,3) im Hough-Bild. Der erste Parameter der Koordinate steht für den Winkel (hier 0 Grad) und der zweite für den berechneten Wert von (gerundet!). Für jede gefundene Koordinate erhöht man den Wert im Hough-Bild um 1. Bei der Spalte mit 120Grad kommt nun immer der Wert heraus. D.h. die Koordinate (120,2) wird viermal um 1 erhöht (rotes Feld). Das macht auch Sinn, da jedes der schwarzen Pixel auf einer Geraden der Form
liegt, was letztlich die Hesseschen Normalform einer Geraden ist.
In einem Nachlauf sucht man nun im Hough-Bild nach dem höchsten Punkt (im einfachsten Fall) und erhält die Werte für und aus den Koordinaten eben dieses Punktes (120,2).
Gruß Werner
|