Name
union_straight_contours_xldunion_straight_contours_xldUnionStraightContoursXldunion_straight_contours_xldUnionStraightContoursXldUnionStraightContoursXld — Vereinigen von benachbarten geraden Konturen mit ähnlicher Richtung.
Herror union_straight_contours_xld(const Hobject Contours, Hobject* UnionContours, double MaxDist, double MaxDiff, double Percent, const char* Mode, const char* Iterations)
Herror T_union_straight_contours_xld(const Hobject Contours, Hobject* UnionContours, const Htuple MaxDist, const Htuple MaxDiff, const Htuple Percent, const Htuple Mode, const Htuple Iterations)
Herror union_straight_contours_xld(Hobject Contours, Hobject* UnionContours, const HTuple& MaxDist, const HTuple& MaxDiff, const HTuple& Percent, const HTuple& Mode, const HTuple& Iterations)
HXLDContArray HXLDContArray::UnionStraightContoursXld(const HTuple& MaxDist, const HTuple& MaxDiff, const HTuple& Percent, const HTuple& Mode, const HTuple& Iterations) const
void UnionStraightContoursXld(const HObject& Contours, HObject* UnionContours, const HTuple& MaxDist, const HTuple& MaxDiff, const HTuple& Percent, const HTuple& Mode, const HTuple& Iterations)
HXLDCont HXLDCont::UnionStraightContoursXld(double MaxDist, double MaxDiff, double Percent, const HString& Mode, const HTuple& Iterations) const
HXLDCont HXLDCont::UnionStraightContoursXld(double MaxDist, double MaxDiff, double Percent, const HString& Mode, const HString& Iterations) const
HXLDCont HXLDCont::UnionStraightContoursXld(double MaxDist, double MaxDiff, double Percent, const char* Mode, const char* Iterations) const
void HOperatorSetX.UnionStraightContoursXld(
[in] IHUntypedObjectX* Contours, [out] IHUntypedObjectX** UnionContours, [in] VARIANT MaxDist, [in] VARIANT MaxDiff, [in] VARIANT Percent, [in] VARIANT Mode, [in] VARIANT Iterations)
IHXLDContX* HXLDContX.UnionStraightContoursXld(
[in] double MaxDist, [in] double MaxDiff, [in] double Percent, [in] BSTR Mode, [in] VARIANT Iterations)
static void HOperatorSet.UnionStraightContoursXld(HObject contours, out HObject unionContours, HTuple maxDist, HTuple maxDiff, HTuple percent, HTuple mode, HTuple iterations)
HXLDCont HXLDCont.UnionStraightContoursXld(double maxDist, double maxDiff, double percent, string mode, HTuple iterations)
HXLDCont HXLDCont.UnionStraightContoursXld(double maxDist, double maxDiff, double percent, string mode, string iterations)
Mit union_straight_contours_xldunion_straight_contours_xldUnionStraightContoursXldunion_straight_contours_xldUnionStraightContoursXldUnionStraightContoursXld werden die Konturen
ContoursContoursContoursContoursContourscontours verglichen und unter gewissen Voraussetzungen
vereinigt. In einem Iterationsschritt werden maximal zwei Konturen,
die die entsprechenden Voraussetzungen erfüllen, vereinigt. Mit dem
Parameter IterationsIterationsIterationsIterationsIterationsiterations kann gesteuert werden, wie oft dieser
Vereinigungsschritt wiederholt wird.
Zwei Konturen werden vereinigt, wenn deren kürzester
Endpunktabstand (die Endpunkte sind die Fußpunkte der Lote von den
Konturendpunkten auf die optimale Regressionsgerade) kleiner als
MaxDistMaxDistMaxDistMaxDistMaxDistmaxDist ist und wenn ihre Richtungsdifferenz (bzgl. der
zugehörigen optimalen Regressionsgeraden) kleiner als
MaxDiffMaxDiffMaxDiffMaxDiffMaxDiffmaxDiff (Bogenmaß) ist.
Wenn nur eine der beiden Bedingungen zutrifft, kann die Entscheidung
zugunsten einer Vereinigung durch die Gewichtung PercentPercentPercentPercentPercentpercent
beeinflusst werden, indem die prozentuale Überschreitung des
angegebenen Grenzwertes gegen die prozentuale Unterschreitung des
anderen Grenzwertes angerechnet wird. Dabei wird der
Endpunktabstand mit PercentPercentPercentPercentPercentpercent, die Richtungsdifferenz mit
100 - Percent bewertet.
Das bedeutet, dass zwei Konturen dann vereinigt werden, wenn sie
die folgende Bedingung erfüllen:
(shortest distance)/MaxDist*Percent +
(direction difference)/MaxDiff*(100-Percent) <= 100
Wenn zwei Konturen beispielsweise einen minimalen Endpunktabstand von
5.0 und eine Richtungsdifferenz von 0.5 haben (bei Grenzwerten
MaxDistMaxDistMaxDistMaxDistMaxDistmaxDist = 4.0 und MaxDiffMaxDiffMaxDiffMaxDiffMaxDiffmaxDiff = 0.625),
so weichen beide Werte von den Grenzwerten um 25% ab. Durch die
Wahl von PercentPercentPercentPercentPercentpercent = 60% fällt nun der große
Endpunktabstand stärker ins Gewicht als die geringe
Richtungsdifferenz, weshalb die Konturen nicht
vereinigt werden. Wenn in diesem Fall PercentPercentPercentPercentPercentpercent =
40% gewählt würde, würden die Konturen vereinigt werden.
Bei PercentPercentPercentPercentPercentpercent = 100% geht nur der Endpunktabstand in die
Entscheidung ein, bei PercentPercentPercentPercentPercentpercent = 0% geht nur die
Richtungsdifferenz in die Entscheidung ein, bei PercentPercentPercentPercentPercentpercent =
50% sind beide Merkmale gleichberechtigt.
Bei parallel verlaufenden Konturen besteht die Gefahr, dass
nebeneinander liegende Konturen vereinigt werden. Soll dieser
Effekt verhindert werden, so muss für ModeModeModeModeModemode 'noparallel',
ansonsten 'paralleltoo' angegeben werden. Für 'every' werden die
Konturen bedingungslos vereinigt. Alle anderen Parameter haben in
diesem Fall keinen Einfluss.
Für jede durch Vereinigung neu entstandene Kontur werden die
Regressionsgeradenparameter neu berechnet.
Bevor Konturen mit union_straight_contours_xldunion_straight_contours_xldUnionStraightContoursXldunion_straight_contours_xldUnionStraightContoursXldUnionStraightContoursXld vereinigt werden
können, müssen die Regressionsgeradenparameter mit
regress_contours_xldregress_contours_xldRegressContoursXldregress_contours_xldRegressContoursXldRegressContoursXld berechnet werden.
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Maximaler Abstand der Endpunkte.
Defaultwert: 5.0
Maximale Richtungsdifferenz.
Defaultwert: 0.5
Gewichtungsfaktor für die zwei Selektionskriterien.
Defaultwert: 50.0
Berücksichtigung paralleler Konturen.
Defaultwert:
'noparallel'
"noparallel"
"noparallel"
"noparallel"
"noparallel"
"noparallel"
Werteliste: 'every'"every""every""every""every""every", 'noparallel'"noparallel""noparallel""noparallel""noparallel""noparallel", 'paralleltoo'"paralleltoo""paralleltoo""paralleltoo""paralleltoo""paralleltoo"
Anzahl Iterationen oder 'maximum'.
Defaultwert:
'maximum'
"maximum"
"maximum"
"maximum"
"maximum"
"maximum"
Wertevorschläge: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 'maximum'"maximum""maximum""maximum""maximum""maximum"
Typischer Wertebereich: 1
≤
Iterations
Iterations
Iterations
Iterations
Iterations
iterations
≤
500 (lin)
Minimale Schrittweite: 1
Empfohlene Schrittweite: 1
regress_contours_xldregress_contours_xldRegressContoursXldregress_contours_xldRegressContoursXldRegressContoursXld
union_collinear_contours_xldunion_collinear_contours_xldUnionCollinearContoursXldunion_collinear_contours_xldUnionCollinearContoursXldUnionCollinearContoursXld,
union_collinear_contours_ext_xldunion_collinear_contours_ext_xldUnionCollinearContoursExtXldunion_collinear_contours_ext_xldUnionCollinearContoursExtXldUnionCollinearContoursExtXld,
union_cocircular_contours_xldunion_cocircular_contours_xldUnionCocircularContoursXldunion_cocircular_contours_xldUnionCocircularContoursXldUnionCocircularContoursXld,
union_cotangential_contours_xldunion_cotangential_contours_xldUnionCotangentialContoursXldunion_cotangential_contours_xldUnionCotangentialContoursXldUnionCotangentialContoursXld,
union_adjacent_contours_xldunion_adjacent_contours_xldUnionAdjacentContoursXldunion_adjacent_contours_xldUnionAdjacentContoursXldUnionAdjacentContoursXld
fit_line_contour_xldfit_line_contour_xldFitLineContourXldfit_line_contour_xldFitLineContourXldFitLineContourXld,
get_contour_xldget_contour_xldGetContourXldget_contour_xldGetContourXldGetContourXld,
get_contour_attrib_xldget_contour_attrib_xldGetContourAttribXldget_contour_attrib_xldGetContourAttribXldGetContourAttribXld,
gen_contours_skeleton_xldgen_contours_skeleton_xldGenContoursSkeletonXldgen_contours_skeleton_xldGenContoursSkeletonXldGenContoursSkeletonXld,
lines_gausslines_gaussLinesGausslines_gaussLinesGaussLinesGauss,
lines_facetlines_facetLinesFacetlines_facetLinesFacetLinesFacet,
edges_sub_pixedges_sub_pixEdgesSubPixedges_sub_pixEdgesSubPixEdgesSubPix,
get_regress_params_xldget_regress_params_xldGetRegressParamsXldget_regress_params_xldGetRegressParamsXldGetRegressParamsXld,
get_contour_global_attrib_xldget_contour_global_attrib_xldGetContourGlobalAttribXldget_contour_global_attrib_xldGetContourGlobalAttribXldGetContourGlobalAttribXld,
query_contour_global_attribs_xldquery_contour_global_attribs_xldQueryContourGlobalAttribsXldquery_contour_global_attribs_xldQueryContourGlobalAttribsXldQueryContourGlobalAttribsXld
Foundation