erosion1
— Verdünnen von Regionen.
erosion1(Region, StructElement : RegionErosion : Iterations : )
erosion1
berechnet die Erosion der Eingaberegionen mit
einem strukturierenden Element. Die Anwendung von
erosion1
glättet die Ränder der Regionen.
Gleichzeitig verkleinert sich die Fläche dieser Regionen.
Darüberhinaus kann es vorkommen, dass vorher zusammenhängende
Regionen getrennt werden. Dennoch bleiben solche Regionen logisch
eine Region. Die Erosion ist eine mengentheoretische
Regionenoperation. Sie verwendet die Operation Durchschnitt.
Seien M (StructElement
) und R (Region
)
Regionen, wobei M das „strukturierende Element“ und R die zu
verarbeitende Region darstellt. Sei weiterhin m ein Punkt aus
M, dann wird der Verschiebungsvektor definiert als die Differenz des
Schwerpunktvektors von M mit dem Vektor . Die
Translation einer Region R um einen Vektor sei
mit bezeichnet. Dann ist
Es wird für jeden Punkt aus M eine Translation mit der Region R
durchgeführt. Der Durchschnitt über all diesen Verschiebungen ist
die Erosion der Region R mit M. erosion1
entspricht
dem Operator minkowski_sub1
mit dem Unterschied, dass
bei erosion1
das strukturierende Element punktgespiegelt
wird. Die Position von StructElement
ist ohne Bedeutung,
da die Verschiebungsvektoren bzgl. des Schwerpunktes bestimmt
werden.
Der Parameter Iterations
bezeichnet die Anzahl der
Iterationen, die mit dem strukturierenden Element ausgeführt werden
sollen. Als Eingaberegion für die n-te Iteration wird die
Ergebnisregion der (n-1)-ten Iteration verwendet. Bei Verwendung
eines leeren strukturierenden Elementes wird die maximale Region
erzeugt.
Strukturierende Elemente (StructElement
) können mit
Operatoren wie gen_circle
, gen_rectangle1
,
gen_rectangle2
, gen_ellipse
,
draw_region
, gen_region_polygon
,
gen_region_points
, etc. erzeugt werden.
Region
(input_object) region(-array) →
object
Regionen die verarbeitet werden sollen.
StructElement
(input_object) region →
object
Strukturierendes Element für die Erosion.
RegionErosion
(output_object) region(-array) →
object
Ergebnis der Erosion.
Iterations
(input_control) integer →
(integer)
Anzahl der Iterationen.
Defaultwert: 1
Wertevorschläge: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 15, 17, 20, 30, 40, 50
Typischer Wertebereich: 1
≤
Iterations
(lin)
Minimale Schrittweite: 1
Empfohlene Schrittweite: 1
Sei F1 die Fläche einer Eingaberegion und F2 die Fläche des strukturierenden Elementes, dann ist die Laufzeitkomplexität für eine Region:
Bei korrekter Parametrisierung liefert die Funktion
erosion1
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
,
watersheds
,
class_ndim_norm
,
gen_circle
,
gen_ellipse
,
gen_rectangle1
,
gen_rectangle2
,
draw_region
,
gen_region_points
,
gen_region_polygon_filled
connection
,
reduce_domain
,
select_shape
,
area_center
minkowski_sub1
,
minkowski_sub2
,
erosion2
Foundation