erosion_rectangle1erosion_rectangle1ErosionRectangle1ErosionRectangle1 (Operator)

Name

erosion_rectangle1erosion_rectangle1ErosionRectangle1ErosionRectangle1 — Ausführen einer Erosion mit einem Rechteck.

Signatur

erosion_rectangle1(Region : RegionErosion : Width, Height : )

Herror erosion_rectangle1(const Hobject Region, Hobject* RegionErosion, const Hlong Width, const Hlong Height)

Herror T_erosion_rectangle1(const Hobject Region, Hobject* RegionErosion, const Htuple Width, const Htuple Height)

void ErosionRectangle1(const HObject& Region, HObject* RegionErosion, const HTuple& Width, const HTuple& Height)

HRegion HRegion::ErosionRectangle1(Hlong Width, Hlong Height) const

static void HOperatorSet.ErosionRectangle1(HObject region, out HObject regionErosion, HTuple width, HTuple height)

HRegion HRegion.ErosionRectangle1(int width, int height)

Beschreibung

erosion_rectangle1erosion_rectangle1ErosionRectangle1ErosionRectangle1ErosionRectangle1 führt eine Erosion auf der/den angegebenen Region(en) RegionRegionRegionRegionregion durch. Das strukturierende Element für diese Operation bildet ein Rechteck mit den Größenparametern WidthWidthWidthWidthwidth und HeightHeightHeightHeightheight. Die Funktion führt zu einer Verkleinerung der Region.

erosion_rectangle1erosion_rectangle1ErosionRectangle1ErosionRectangle1ErosionRectangle1 ist eine sehr schnelle Operation, da die Höhe des Rechtecks nur logarithmisch, die Breite gar nicht in die Komplexität eingeht. Dies führt auch bei sehr großen Rechtecken (Kante > 100) zu einem sehr gutem Laufzeitverhalten.

Regionen, die schmale Verbindungsstege zwischen größeren Flächen besitzen werden zwar optisch getrennt, jedoch bleibt die Region logisch als eine Region erhalten.

Achtung

Damit eine Region in alle Richtungen gleichmäßig verkleinert wird, müssen WidthWidthWidthWidthwidth und HeightHeightHeightHeightheight ungerade sein. Falls das nicht der Fall ist, wird die Region rechts bzw. unten um ein Pixel weiter dilatiert als nach bzw. oben.

Ausführungsinformationen

Parameter

RegionRegionRegionRegionregion (input_object)  region(-array) objectHRegionHRegionHobject

Regionen die verarbeitet werden sollen.

RegionErosionRegionErosionRegionErosionRegionErosionregionErosion (output_object)  region(-array) objectHRegionHRegionHobject *

Ergebnis der Erosions-Operation.

WidthWidthWidthWidthwidth (input_control)  extent.x HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Breite des Rechtecks.

Defaultwert: 11

Wertevorschläge: 1, 2, 3, 4, 5, 11, 15, 21, 31, 51, 71, 101, 151, 201

Typischer Wertebereich: 1 ≤ Width Width Width Width width ≤ 511 (lin)

Minimale Schrittweite: 1

Empfohlene Schrittweite: 1

HeightHeightHeightHeightheight (input_control)  extent.y HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Höhe des Rechtecks.

Defaultwert: 11

Wertevorschläge: 1, 2, 3, 4, 5, 11, 15, 21, 31, 51, 71, 101, 151, 201

Typischer Wertebereich: 1 ≤ Height Height Height Height height ≤ 511 (lin)

Minimale Schrittweite: 1

Empfohlene Schrittweite: 1

Komplexität

Sei F1 die Fläche einer Eingaberegion und H die Höhe des Rechtecks, dann ist die Laufzeitkomplexität für eine Region:

Ergebnis

Bei korrekter Parametrisierung liefert die Funktion erosion_rectangle1erosion_rectangle1ErosionRectangle1ErosionRectangle1ErosionRectangle1 den Wert 2 (H_MSG_TRUE). Das Funktionsverhalten für die beiden Fälle leere und keine Eingaberegion lässt sich wie folgt kontrollieren:

Andernfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

thresholdthresholdThresholdThresholdThreshold, regiongrowingregiongrowingRegiongrowingRegiongrowingRegiongrowing, watershedswatershedsWatershedsWatershedsWatersheds, class_ndim_normclass_ndim_normClassNdimNormClassNdimNormClassNdimNorm

Nachfolger

reduce_domainreduce_domainReduceDomainReduceDomainReduceDomain, select_shapeselect_shapeSelectShapeSelectShapeSelectShape, area_centerarea_centerAreaCenterAreaCenterAreaCenter, connectionconnectionConnectionConnectionConnection

Alternativen

erosion1erosion1Erosion1Erosion1Erosion1, minkowski_sub1minkowski_sub1MinkowskiSub1MinkowskiSub1MinkowskiSub1

Siehe auch

gen_rectangle1gen_rectangle1GenRectangle1GenRectangle1GenRectangle1

Modul

Foundation