minkowski_sub1minkowski_sub1MinkowskiSub1MinkowskiSub1minkowski_sub1 (Operator)

Name

minkowski_sub1minkowski_sub1MinkowskiSub1MinkowskiSub1minkowski_sub1 — Verdünnen von Regionen.

Signatur

minkowski_sub1(Region, StructElement : RegionMinkSub : Iterations : )

Herror minkowski_sub1(const Hobject Region, const Hobject StructElement, Hobject* RegionMinkSub, const Hlong Iterations)

Herror T_minkowski_sub1(const Hobject Region, const Hobject StructElement, Hobject* RegionMinkSub, const Htuple Iterations)

void MinkowskiSub1(const HObject& Region, const HObject& StructElement, HObject* RegionMinkSub, const HTuple& Iterations)

HRegion HRegion::MinkowskiSub1(const HRegion& StructElement, Hlong Iterations) const

static void HOperatorSet.MinkowskiSub1(HObject region, HObject structElement, out HObject regionMinkSub, HTuple iterations)

HRegion HRegion.MinkowskiSub1(HRegion structElement, int iterations)

def minkowski_sub1(region: HObject, struct_element: HObject, iterations: int) -> HObject

Beschreibung

minkowski_sub1minkowski_sub1MinkowskiSub1MinkowskiSub1MinkowskiSub1minkowski_sub1 berechnet die Minkowski-Subtraktion der Eingaberegionen mit einem Strukturierenden Element. Die Anwendung von minkowski_sub1minkowski_sub1MinkowskiSub1MinkowskiSub1MinkowskiSub1minkowski_sub1 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 Minkowski-Subtraktion ist eine mengentheoretische Regionenoperation. Sie verwendet die Operation Durchschnitt.

Seien M (StructElementStructElementStructElementStructElementstructElementstruct_element) und R (RegionRegionRegionRegionregionregion) 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 Minkowski-Differenz der Region R mit M. Der Unterschied zwischen minkowski_sub1minkowski_sub1MinkowskiSub1MinkowskiSub1MinkowskiSub1minkowski_sub1 und erosion1erosion1Erosion1Erosion1Erosion1erosion1 ist die Punktspiegelung des strukturierenden Elemente (Negation des Verschiebungsvektors) bei erosion1erosion1Erosion1Erosion1Erosion1erosion1. Die Position von StructElementStructElementStructElementStructElementstructElementstruct_element ist ohne Bedeutung, da die Verschiebungsvektoren bzgl. des Schwerpunktes bestimmt werden.

Der Parameter IterationsIterationsIterationsIterationsiterationsiterations 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 (StructElementStructElementStructElementStructElementstructElementstruct_element) können mit Operatoren wie gen_circlegen_circleGenCircleGenCircleGenCirclegen_circle, gen_rectangle1gen_rectangle1GenRectangle1GenRectangle1GenRectangle1gen_rectangle1, gen_rectangle2gen_rectangle2GenRectangle2GenRectangle2GenRectangle2gen_rectangle2, gen_ellipsegen_ellipseGenEllipseGenEllipseGenEllipsegen_ellipse, draw_regiondraw_regionDrawRegionDrawRegionDrawRegiondraw_region, gen_region_polygongen_region_polygonGenRegionPolygonGenRegionPolygonGenRegionPolygongen_region_polygon, gen_region_pointsgen_region_pointsGenRegionPointsGenRegionPointsGenRegionPointsgen_region_points, etc. erzeugt werden.

Ausführungsinformationen

Parameter

RegionRegionRegionRegionregionregion (input_object)  region(-array) objectHRegionHObjectHRegionHobject

Regionen die verarbeitet werden sollen.

StructElementStructElementStructElementStructElementstructElementstruct_element (input_object)  region objectHRegionHObjectHRegionHobject

Strukturierendes Element.

RegionMinkSubRegionMinkSubRegionMinkSubRegionMinkSubregionMinkSubregion_mink_sub (output_object)  region(-array) objectHRegionHObjectHRegionHobject *

Ergebnis der Minkowski-Subtraktion.

IterationsIterationsIterationsIterationsiterationsiterations (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

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 Iterations Iterations Iterations iterations iterations (lin)

Minimale Schrittweite: 1

Empfohlene Schrittweite: 1

Komplexität

Sei F1 die Fläche einer Eingaberegion und F2 die Fläche des strukturierenden Elementes, dann ist die Laufzeitkomplexität für eine Region:

Ergebnis

Bei korrekter Parametrisierung liefert die Funktion minkowski_sub1minkowski_sub1MinkowskiSub1MinkowskiSub1MinkowskiSub1minkowski_sub1 den Wert 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

thresholdthresholdThresholdThresholdThresholdthreshold, regiongrowingregiongrowingRegiongrowingRegiongrowingRegiongrowingregiongrowing, connectionconnectionConnectionConnectionConnectionconnection, union1union1Union1Union1Union1union1, watershedswatershedsWatershedsWatershedsWatershedswatersheds, class_ndim_normclass_ndim_normClassNdimNormClassNdimNormClassNdimNormclass_ndim_norm, gen_circlegen_circleGenCircleGenCircleGenCirclegen_circle, gen_ellipsegen_ellipseGenEllipseGenEllipseGenEllipsegen_ellipse, gen_rectangle1gen_rectangle1GenRectangle1GenRectangle1GenRectangle1gen_rectangle1, gen_rectangle2gen_rectangle2GenRectangle2GenRectangle2GenRectangle2gen_rectangle2, draw_regiondraw_regionDrawRegionDrawRegionDrawRegiondraw_region, gen_region_pointsgen_region_pointsGenRegionPointsGenRegionPointsGenRegionPointsgen_region_points, gen_region_polygon_filledgen_region_polygon_filledGenRegionPolygonFilledGenRegionPolygonFilledGenRegionPolygonFilledgen_region_polygon_filled

Nachfolger

reduce_domainreduce_domainReduceDomainReduceDomainReduceDomainreduce_domain, select_shapeselect_shapeSelectShapeSelectShapeSelectShapeselect_shape, area_centerarea_centerAreaCenterAreaCenterAreaCenterarea_center, connectionconnectionConnectionConnectionConnectionconnection

Alternativen

minkowski_sub2minkowski_sub2MinkowskiSub2MinkowskiSub2MinkowskiSub2minkowski_sub2, erosion1erosion1Erosion1Erosion1Erosion1erosion1

Siehe auch

transpose_regiontranspose_regionTransposeRegionTransposeRegionTransposeRegiontranspose_region

Modul

Foundation