| Operatoren |
connect_grid_points — Erstellt Verbindungen zwischen den Gitterpunkten des Entzerrungsgitters.
connect_grid_points sucht die Verbindungslinien zwischen den Gitterpunkten (Row,Column) des Entzerrungsgitters. Die Verbindungslinien werden durch Kombination je eines Kanten-, Glättungs- und Linienfilters der Größe aus dem Eingabebild Image extrahiert. Das verwendete wird dazu wie folgt bestimmt: Wird in Sigma ein einzelner Wert übergeben, so wird dieser Wert benutzt. Wird in Sigma ein Tupel mit drei Werten ('sigma_min', 'sigma_max','sigma_step') übergeben, so überprüft connect_grid_points alle im Bereich von 'sigma_min' bis 'sigma_max' mit einer Schrittweite von 'sigma_step' und wählt jenes aus, das die größte Anzahl an Verbindungslinien zur Folge hat. Das gleiche passiert, wenn in Sigma ein Tupel mit nur zwei Werten 'sigma_min' und 'sigma_max' übergeben wird. In diesem Fall wird dann eine feste Schrittweite von 0.05 verwendet.
Die gefundenen Verbindungslinien werden dann an den Gitterpunkten aufgebrochen und diejenigen Linienstücke ausgewählt, die sowohl an einem Gitterpunkt beginnen, als auch an einem Gitterpunkt enden. Dabei ist zu beachten, dass Kantenfilter rund um Kreuzungspunkte typischerweise keine genauen Resultate liefern und somit die Verbindungslinien kaum die Gitterpunkte direkt treffen werden. Folglich werden tatsächlich diejenigen Linien aufgebrochen und ausgewählt, die in einer Entfernung von einem Gitterpunkt von höchstens MaxDist beginnen, enden oder den Punkt passieren. Die ausgewählten Verbindungslinien werden noch derart modifiziert, dass sie genau in den jeweiligen Gitterpunkten beginnen und enden, und in ConnectingLines als XLD Konturen zurückgegeben.
Darüberhinaus wird für jede Ausgabekontur ihr Typ von Hell-Dunkel-Übergang berechnet und im globalen Attribut 'bright_dark' abgespeichert. Das Attribut bekommt den Wert 1.0, wenn an der Verbindungslinie ein Hell-Dunkel-Übergang stattfindet (von links nach rechts, vom Anfangs- zum Endpunkt gesehen), ansonsten 0.0.
Sowohl für die zuverlässige Bestimmung des Typs von Hell-Dunkel-Übergang als auch für die spätere Entzerrung ist es unabdinglich, dass jede Verbindungslinie mindestens drei Konturpunkte aufweist. Verbindungslinien mit nur zwei Konturpunkten werden daher nicht ausgegeben. Dabei ist zu beachten, dass der Parameter MaxDist einen erheblichen Einfluss auf die Länge der zurückgegebenen Verbindungslinien hat, da alle Konturpunkte einer möglichen Verbindungslinie, die näher als MaxDist an einem Gitterpunkt liegen, durch einen einzigen Konturpunkt ersetzt werden. Ist MaxDist zu groß, dann gehen unter Umständen einige der Verbindungslinien verloren.
Eingabebild.
Ausgabekonturen.
Zeilenkoordinaten der Gitterpunkte.
Spaltenkoordinaten der Gitterpunkte.
Restriktion: number(Column) == number(Row)
Größe der verwendeten Gaußkerne.
Parameteranzahl: 1 <= Sigma && Sigma <= 3
Defaultwert: 0.9
Wertevorschläge: 0.7, 0.9, 1.1, 1.3, 1.5
Restriktion: 0.7 <= Sigma
Maximalabstand der Verbindungslinien von den Gitterpunkten.
Defaultwert: 5.5
Wertevorschläge: 1.5, 3.5, 5.5, 7.5, 9.5
Restriktion: 0.0 <= MaxDist
Sind die Parameterwerte korrekt, dann liefert connect_grid_points den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
Calibration
| Operatoren |