closing_circle
— Ausführen eines Closings mit einer Kreismaske.
closing_circle(Region : RegionClosing : Radius : )
Das Funktionsverhalten von closing_circle
ist analog zu
closing
d.h. es werden die Ränder einer
Eingaberegion geglättet und Löcher innerhalb einer Region deren
Größe kleiner ist als das kreisförmige, strukturierende Element
mit dem Radius
, geschlossen. Die
closing_circle
-Operation ist als die
Hintereinanderschaltung von Dilatation und Minkowski-Subtraktion mit
einer Kreismaske definiert.
closing_circle
wird für jede Region einzeln angewandt.
Sollen Lücken zwischen den Regionen geschlossen werden, dann muss
vorher ein union1
oder union2
ausgeführt
werden.
Region
(input_object) region(-array) →
object
Regionen auf die der Closing-Operator angewandt wird.
RegionClosing
(output_object) region(-array) →
object
Regionen mit aufgefüllten Lücken.
Radius
(input_control) real →
(real / integer)
Radius der Kreismaske.
Defaultwert: 3.5
Wertevorschläge: 1.5, 2.5, 3.5, 4.5, 5.5, 7.5, 9.5, 12.5, 15.5, 19.5, 25.5, 33.5, 45.5, 60.5, 110.5
Typischer Wertebereich: 0.5
≤
Radius
≤
511.5
(lin)
Minimale Schrittweite: 1.0
Empfohlene Schrittweite: 1.0
my_closing_circle(Hobject In, double Radius, Hobject *Out) { Hobject tmp, StructElement; gen_circle(StructElement,100.0,100.0,Radius); dilation1(In,StructElement,&tmp,1); minkowski_sub1(tmp,StructElement,Out,1); }
Sei F1 die Fläche einer Eingaberegion, dann ist die Laufzeitkomplexität für eine Region:
Bei korrekter Parametrisierung liefert die Funktion
closing_circle
den Wert 2 (H_MSG_TRUE). Das Funktionsverhalten
für die beiden Fälle leere und keine Eingaberegion lässt sich wie
folgt kontrollieren:
keine Region: set_system('no_object_result',<RegionResult>)
leere Region: set_system('empty_region_result',<RegionResult>)
Andernfalls wird eine Fehlerbehandlung durchgeführt.
threshold
,
regiongrowing
,
connection
,
union1
,
watersheds
,
class_ndim_norm
reduce_domain
,
select_shape
,
area_center
,
connection
dilation1
,
minkowski_sub1
,
erosion1
,
opening
Foundation