| Operatoren |
hough_lines_dir — Finden von Linien in Kantenbildern mit Hilfe der Hough-Transformation unter Berücksichtigung der lokalen Gradientenrichtung und Ausgabe in Hessescher Normalform.
hough_lines_dir(ImageDir : HoughImage, Lines : DirectionUncertainty, AngleResolution, Smoothing, FilterSize, Threshold, AngleGap, DistGap, GenLines : Angle, Dist)
Mit Hilfe von hough_lines_dir können in einer Region linienhafte Strukturen selektiert werden. Dabei müssen die einzelnen Punkte einer Linie nicht zusammenhängen. Das Verfahren basiert auf der Hough-Transformation. Die Region muss als Definitionsbereich in ImageDir übergeben werden. Linien werden in Hessescher Normalform, d.h durch Richtung und Länge ihres Normalenvektors repräsentiert.
Im Unterschied zu hough_lines 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_lines_dir dem von hough_lines, 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').
Mit AngleResolution wird die Genauigkeit bei der Bestimmung der Winkel definiert. Sie beträgt 1 / AngleResolution Grad. Eine Glättung des Hough-Raumes nach der Transformation erhöht die Stabilität des Verfahrens. Die Art der Glättung kann mit Smoothing festgelegt werden. Der Glättungsgrad kann mit FilterSize analog zu gauss_filter oder mean_image angegeben werden. Der Parameter Threshold bestimmt, durch wieviel Punkte der Ausgangsregion eine Linienhypothese wenigstens gestützt werden muss, um in die Ausgabe zu gelangen. AngleGap und DistGap definieren eine Umgebung um die Punkte im Hough-Bild für die Bestimmung der lokalen Maxima: AngleGap beschreibt den minimalen Abstand zweier Maxima im Hough-Bild in Richtung des Winkels und DistGap entsprechend Richtung der Distanz. Dadurch werden Maxima, die zwar die vorgegebene Schwelle Threshold überschreiten, jedoch sehr nahe an einem noch höheren Maximum liegen, eliminiert. Dies kann vor allem bei der gleichzeitigen Suche nach langen und kurzen Linien hilfreich sein. Neben dem ungeglätteten Hough-Bild HoughImage werden die Linien in Hessescher Normalform (Angle, Dist) zurückgeliefert. Mit Hilfe des Parameters GenLines kann darüberhinaus festgelegt werden, ob zusätzlich diejenigen Regionen in ImageDir zurückgeliefert werden sollen, die zur Bildung der lokalen Maxima beigetragen haben. Für GenLines = 'true' werden diese dann in Lines gespeichert.
Kantenrichtungsbild mit auf die Kanten eingeschränktem Definitionsbereich.
Hough-Transformation.
Regionen des Eingabebildes, die zur Bildung der lokalen Maxima beigetragen haben.
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
Glättungsfilter für Hough-Bild.
Defaultwert: 'mean'
Werteliste: 'gauss', 'mean', 'none'
Gewünschte Größe des Glättungsfilters.
Defaultwert: 5
Werteliste: 3, 5, 7, 9, 11
Schwellenwert im Hough-Bild.
Defaultwert: 100
Typischer Wertebereich: 1 ≤ Threshold
Minimaler Abstand zwischen zwei Maxima im Hough-Bild (in Richtung des Winkels).
Defaultwert: 5
Typischer Wertebereich: 0 ≤ AngleGap
Minimaler Abstand zwischen zwei Maxima im Hough-Bild (in Richtung der Distance).
Defaultwert: 5
Typischer Wertebereich: 0 ≤ DistGap
Generiert Geraden-Regionen, wenn 'true'.
Defaultwert: 'true'
Werteliste: 'false', 'true'
Winkel (im Bogenmaß) der Normalenvektoren der gefundenen Linien.
Typischer Wertebereich: -1.5707963 ≤ Angle ≤ 3.1415927
Abstände der gefundenen Linien vom Koordinatenursprung.
Parameteranzahl: Dist == Angle
Typischer Wertebereich: 0 ≤ Dist
hough_lines_dir 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. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
edges_image, sobel_dir, threshold, nonmax_suppression_dir, reduce_domain, skeleton
gen_region_hline, select_matching_lines
hough_line_trans_dir, hough_line_trans, gen_region_hline, hough_circles
Foundation
| Operatoren |