hough_line_trans
— Liefert die Hough-Transformation für Linien in Regionen.
hough_line_trans(Region : HoughImage : AngleResolution : )
hough_line_trans
berechnet für die in Region
übergebenen Regionen die Hough-Transformation für Linien. Dabei werden
im Parameterraum (bzw. Hough- oder Akkumulatorraum) Winkel und Länge der
Normalenvektoren der Linien eingetragen, d.h. die Parametrisierung der
Linien erfolgt in der Hesseschen Normalform.
Das Ergebnis wird in ein neu erzeugtes Int2-Image (HoughImage
)
eingetragen, bei dem die X-Achse dem Winkel des Normalenvektors zur
X-Achse (im Ausgangsbild) und die Y-Achse dem Abstand der Linie vom Ursprung
entspricht.
Der Winkel läuft von -90 Grad bis 180 Grad, und wird mit einer Auflösung
von 1 / AngleResolution
eingetragen, das bedeutet, dass ein
Pixel in X-Richtung 1 / AngleResolution
Grad entspricht und
dass das HoughImage
270 * AngleResolution
+ 1
Pixel breit ist. Die Höhe von HoughImage
entspricht dem
Abstand der unteren rechten Ecke des umschließenden Rechtecks der
Eingabe-Region vom Ursprung.
Die Maxima im Ergebnisbild entsprechen den Parameterwerten der Linien im Ausgangsbild.
Region
(input_object) region →
object
Binäres Kantenbild, in dem Linien gefunden werden sollen.
HoughImage
(output_object) image →
object (int2)
Hough-Transformierte für Linien.
AngleResolution
(input_control) integer →
(integer)
Einstellen der Auflösung im Winkelbereich.
Defaultwert: 4
Werteliste: 1, 2, 4, 8
hough_line_trans
liefert den Wert 2 (H_MSG_TRUE),
falls die Eingabe nicht leer
ist. Das Verhalten bei leerer Eingabe (keine Eingaberegionen vorhanden)
lässt sich mittels set_system('no_object_result',<Result>)
festlegen.
Das Verhalten bei einer leeren Region (Region ist die leere Menge)
wird mit set_system('empty_region_result',<Result>)
bestimmt.
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
hough_circle_trans
,
gen_region_hline
Foundation