learn_ndim_normT_learn_ndim_normLearnNdimNormLearnNdimNormlearn_ndim_norm (Operator)

Name

learn_ndim_normT_learn_ndim_normLearnNdimNormLearnNdimNormlearn_ndim_norm — Konstruieren von Clustern für class_ndim_normclass_ndim_normClassNdimNormClassNdimNormclass_ndim_norm.

Signatur

learn_ndim_norm(Foreground, Background, Image : : Metric, Distance, MinNumberPercent : Radius, Center, Quality)

Herror T_learn_ndim_norm(const Hobject Foreground, const Hobject Background, const Hobject Image, const Htuple Metric, const Htuple Distance, const Htuple MinNumberPercent, Htuple* Radius, Htuple* Center, Htuple* Quality)

void LearnNdimNorm(const HObject& Foreground, const HObject& Background, const HObject& Image, const HTuple& Metric, const HTuple& Distance, const HTuple& MinNumberPercent, HTuple* Radius, HTuple* Center, HTuple* Quality)

HTuple HImage::LearnNdimNorm(const HRegion& Foreground, const HRegion& Background, const HString& Metric, const HTuple& Distance, const HTuple& MinNumberPercent, HTuple* Center, double* Quality) const

HTuple HImage::LearnNdimNorm(const HRegion& Foreground, const HRegion& Background, const HString& Metric, double Distance, double MinNumberPercent, HTuple* Center, double* Quality) const

HTuple HImage::LearnNdimNorm(const HRegion& Foreground, const HRegion& Background, const char* Metric, double Distance, double MinNumberPercent, HTuple* Center, double* Quality) const

HTuple HImage::LearnNdimNorm(const HRegion& Foreground, const HRegion& Background, const wchar_t* Metric, double Distance, double MinNumberPercent, HTuple* Center, double* Quality) const   ( Nur Windows)

HTuple HRegion::LearnNdimNorm(const HRegion& Background, const HImage& Image, const HString& Metric, const HTuple& Distance, const HTuple& MinNumberPercent, HTuple* Center, double* Quality) const

HTuple HRegion::LearnNdimNorm(const HRegion& Background, const HImage& Image, const HString& Metric, double Distance, double MinNumberPercent, HTuple* Center, double* Quality) const

HTuple HRegion::LearnNdimNorm(const HRegion& Background, const HImage& Image, const char* Metric, double Distance, double MinNumberPercent, HTuple* Center, double* Quality) const

HTuple HRegion::LearnNdimNorm(const HRegion& Background, const HImage& Image, const wchar_t* Metric, double Distance, double MinNumberPercent, HTuple* Center, double* Quality) const   ( Nur Windows)

static void HOperatorSet.LearnNdimNorm(HObject foreground, HObject background, HObject image, HTuple metric, HTuple distance, HTuple minNumberPercent, out HTuple radius, out HTuple center, out HTuple quality)

HTuple HImage.LearnNdimNorm(HRegion foreground, HRegion background, string metric, HTuple distance, HTuple minNumberPercent, out HTuple center, out double quality)

HTuple HImage.LearnNdimNorm(HRegion foreground, HRegion background, string metric, double distance, double minNumberPercent, out HTuple center, out double quality)

HTuple HRegion.LearnNdimNorm(HRegion background, HImage image, string metric, HTuple distance, HTuple minNumberPercent, out HTuple center, out double quality)

HTuple HRegion.LearnNdimNorm(HRegion background, HImage image, string metric, double distance, double minNumberPercent, out HTuple center, out double quality)

def learn_ndim_norm(foreground: HObject, background: HObject, image: HObject, metric: str, distance: Union[int, float], min_number_percent: Union[int, float]) -> Tuple[Sequence[float], Sequence[float], float]

Beschreibung

learn_ndim_normlearn_ndim_normLearnNdimNormLearnNdimNormlearn_ndim_norm erzeugt aus den in ForegroundForegroundForegroundforegroundforeground enthaltenen Regionen Klassifikationscluster, die im Operator class_ndim_normclass_ndim_normClassNdimNormClassNdimNormclass_ndim_norm verwendet werden. Mit BackgroundBackgroundBackgroundbackgroundbackground kann eine Klasse von Pixeln angegeben werden, die bei der Klassifikation (class_ndim_normclass_ndim_normClassNdimNormClassNdimNormclass_ndim_norm) nicht gefunden werden sollen. Dieser Parameter darf auch leer sein (leeres Objekt).

Mit dem Parameter DistanceDistanceDistancedistancedistance wird der maximale RadiusRadiusRadiusradiusradius für die Cluster festgelegt. Er beschreibt den minimalen Abstand zweier Clusterzentren. Wird der Parameter DistanceDistanceDistancedistancedistance klein gewählt, so können die (kleinen) Hyperkugeln (-Würfel) den Merkmalsraum gut approximieren. Gleichzeitig steigt jedoch der Rechenaufwand beim Klassifizieren.

Das Verhältnis aus Anzahl der Pixel in einem Cluster zu der Gesamtzahl (in Prozent) muss über dem Wert von MinNumberPercentMinNumberPercentMinNumberPercentminNumberPercentmin_number_percent liegen, ansonsten wird dieser Cluster nicht ausgegeben. Der Parameter MinNumberPercentMinNumberPercentMinNumberPercentminNumberPercentmin_number_percent dient dazu, Ausreißer in der Trainingsmenge zu eliminieren. Wird er zu groß gewählt, dann werden zu viele Cluster unterdrückt.

Es können zwei verschiedene Verfahren verwendet werden: Die minimale euklidische Distanz (n-dimensionale Kugeln) und das Maximum-Verfahren (n-dimensionale Würfel) für die Beschreibung der Pixel des zu klassifizierenden Bildobjekts im n-dimensionalen Histogramm (Parameter MetricMetricMetricmetricmetric). Die euklidische Metrik liefert i.A. die besseren Ergebnisse, benötigt jedoch auch mehr Rechenzeit. Der Parameter QualityQualityQualityqualityquality gibt die Qualität der Clusterbildung an. Dabei wird die Überschneidung der abgewiesenen Objekte mit den Klassifizierungsobjekten berechnet. Null bedeutet maximale Überschneidung, Werte größer Null geben das entsprechende Verhältnis der Überlappung an. Wird kein Zurückweisungsobjekt angegeben, so ist dieser Wert 1. Die Objekte in BackgroundBackgroundBackgroundbackgroundbackground haben jedoch keinen Einfluss auf die Konstruktion der Cluster. Sie dienen nur zur Kontrolle der zu erwartenden Ergebnisse.

Ausführungsinformationen

Parameter

ForegroundForegroundForegroundforegroundforeground (input_object)  region(-array) objectHRegionHObjectHObjectHobject

Vordergrundregion

BackgroundBackgroundBackgroundbackgroundbackground (input_object)  region(-array) objectHRegionHObjectHObjectHobject

Hintergrundregion (Rückweisungsklasse)

ImageImageImageimageimage (input_object)  (multichannel-)image(-array) objectHImageHObjectHObjectHobject (byte)

Trainingsbild.

MetricMetricMetricmetricmetric (input_control)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Verwendete Metrik

Default: 'euclid' "euclid" "euclid" "euclid" "euclid"

Werteliste: 'euclid'"euclid""euclid""euclid""euclid", 'maximum'"maximum""maximum""maximum""maximum"

DistanceDistanceDistancedistancedistance (input_control)  number HTupleUnion[int, float]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Maximaler Radius für die Cluster.

Default: 10.0

Wertevorschläge: 1.0, 2.0, 3.0, 4.0, 6.0, 8.0, 10.0, 13.0, 17.0, 24.0, 30.0, 40.0

Wertebereich: 1.0 ≤ Distance Distance Distance distance distance (lin)

Minimale Schrittweite: 0.01

Empfohlene Schrittweite: 1.0

MinNumberPercentMinNumberPercentMinNumberPercentminNumberPercentmin_number_percent (input_control)  number HTupleUnion[int, float]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Das Verhältnis aus Anzahl der Pixel in einem Cluster zur Gesamtzahl (in Prozent) muss über dem Wert von MinNumberPercent liegen (sonst wird der Cluster nicht ausgegeben).

Default: 0.01

Wertevorschläge: 0.001, 0.05, 0.1, 0.2, 0.5, 1.0, 2.0, 5.0, 10.0

Wertebereich: 0.0 ≤ MinNumberPercent MinNumberPercent MinNumberPercent minNumberPercent min_number_percent ≤ 100.0 (lin)

Minimale Schrittweite: 0.01

Empfohlene Schrittweite: 0.1

RadiusRadiusRadiusradiusradius (output_control)  real-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Clusterradien bzw. halbe Clusterkantenlängen.

CenterCenterCentercentercenter (output_control)  real-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Koordinaten aller Clusterzentren.

QualityQualityQualityqualityquality (output_control)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

Überschneidung der abgewiesenen Objekte mit den Klassifizierungsobjekten (1: keine Überschneidung).

Zusicherung: 0 <= Quality && Quality <= 1

Ergebnis

learn_ndim_normlearn_ndim_normLearnNdimNormLearnNdimNormlearn_ndim_norm liefert den Wert 2 ( H_MSG_TRUE) , falls die Parameter korrekt sind. Für das Verhalten bzgl. der Eingabebilder sind die Flags 'no_object_result'"no_object_result""no_object_result""no_object_result""no_object_result" und 'empty_region_result'"empty_region_result""empty_region_result""empty_region_result""empty_region_result" einstellbar (siehe set_systemset_systemSetSystemSetSystemset_system). Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

min_max_graymin_max_grayMinMaxGrayMinMaxGraymin_max_gray, sobel_ampsobel_ampSobelAmpSobelAmpsobel_amp, binomial_filterbinomial_filterBinomialFilterBinomialFilterbinomial_filter, gauss_filtergauss_filterGaussFilterGaussFiltergauss_filter, reduce_domainreduce_domainReduceDomainReduceDomainreduce_domain, diff_of_gaussdiff_of_gaussDiffOfGaussDiffOfGaussdiff_of_gauss

Nachfolger

class_ndim_normclass_ndim_normClassNdimNormClassNdimNormclass_ndim_norm, connectionconnectionConnectionConnectionconnection, dilation1dilation1Dilation1Dilation1dilation1, erosion1erosion1Erosion1Erosion1erosion1, openingopeningOpeningOpeningopening, closingclosingClosingClosingclosing, rank_regionrank_regionRankRegionRankRegionrank_region, shape_transshape_transShapeTransShapeTransshape_trans, skeletonskeletonSkeletonSkeletonskeleton

Siehe auch

class_ndim_normclass_ndim_normClassNdimNormClassNdimNormclass_ndim_norm, histo_2dimhisto_2dimHisto2dimHisto2dimhisto_2dim

Literatur

P. Haberäcker, „Digitale Bildverarbeitung“; Hanser-Studienbücher, München, Wien, 1987

Modul

Foundation