| Operatoren |
hough_line_trans_dir — Berechnung der Hough-Transformation für Linien unter Berücksichtigung der lokalen Gradientenrichtung.
hough_line_trans_dir(ImageDir : HoughImage : DirectionUncertainty, AngleResolution : )
hough_line_trans_dir berechnet für die durch den Definitionsbereich von ImageDir übergebene Region die Hough-Transformation für Linien. Dabei werden im Parameterraum (bzw. Hough- oder Akkumulatorraum) Winkel und Länge der Normalenvektoren der Linien eingetragen.
Im Unterschied zu hough_line_trans wird hier jedoch zusätzlich die in ImageDir übergebene Kantenrichtung berücksichtigt, die z.B. mit Hilfe von sobel_dir oder edges_image bestimmt werden kann. Dies führt zu einer effizienteren Berechnung und zu einer Reduktion des Rauschens im Hough-Raum.
Der Parameter DirectionUncertainty beschreibt hierbei, wie stark die Kantenrichtung der einzelnen Punkte innerhalb einer Linie variieren darf. Ist z.B. DirectionUncertainty = 10, werden einer waagrechten Linie (d.h. Kantenrichtung = 0 Grad) nur Punkte mit einer Kantenrichtung zwischen -10 und +10 Grad zugeordnet. Je größer DirectionUncertainty gewählt wird desto langsamer ist die Berechung; für DirectionUncertainty = 180 entspricht das Verhalten von hough_line_trans_dir dem von hough_line_trans, d.h. die Kantenrichtung wird ignoriert. DirectionUncertainty sollte mindestens so groß gewählt werden wie die Winkelschrittweite, in der die Kantenrichtungen in ImageDir gespeichert werden; die minimale Schrittweite beträgt 2 Grad (vorgegeben vom Bildtyp 'direction').
Das Ergebnis wird in ein neu erzeugtes UINT2-Image (HoughImage) eingetragen, bei dem die x-Achse (Spalten) dem Winkel des Normalenvektors zur x-Achse des Ausgangsbildes und die y-Achse (Zeilen) 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.
Kantenrichtungsbild mit auf die Kanten eingeschränktem Definitionsbereich.
Hough-Transformation.
Kantenungenauigkeit (in Grad).
Defaultwert: 2
Typischer Wertebereich: 2 ≤ DirectionUncertainty ≤ 180
Minimale Schrittweite: 2
Auflösung im Winkelbereich (in 1/Grad).
Defaultwert: 4
Werteliste: 1, 2, 4, 8
hough_line_trans_dir liefert den Wert 2 (H_MSG_TRUE), falls die Eingabe nicht leer ist. Das Verhalten bei leerer Eingabe lässt sich mittels set_system('no_object_result',<Result>) festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
edges_image, sobel_dir, threshold, hysteresis_threshold, nonmax_suppression_dir, reduce_domain
binomial_filter, gauss_filter, threshold, local_max, plateaus_center
hough_line_trans, hough_lines, hough_lines_dir
Foundation
| Operatoren |