KlassenKlassenKlassenKlassen | | | | Operatoren

learn_ndim_normT_learn_ndim_normLearnNdimNormlearn_ndim_normLearnNdimNormLearnNdimNorm (Operator)

Name

learn_ndim_normT_learn_ndim_normLearnNdimNormlearn_ndim_normLearnNdimNormLearnNdimNorm — Konstruieren von Clustern für class_ndim_normclass_ndim_normClassNdimNormclass_ndim_normClassNdimNormClassNdimNorm.

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)

Herror learn_ndim_norm(Hobject Foreground, Hobject Background, Hobject Image, const HTuple& Metric, const HTuple& Distance, const HTuple& MinNumberPercent, HTuple* Radius, HTuple* Center, HTuple* Quality)

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

HTuple HRegionArray::LearnNdimNorm(const HRegionArray& Background, const HImageArray& Image, const HTuple& Metric, const HTuple& Distance, const HTuple& MinNumberPercent, HTuple* Center, HTuple* Quality) const

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 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

void HOperatorSetX.LearnNdimNorm(
[in] IHUntypedObjectX* Foreground, [in] IHUntypedObjectX* Background, [in] IHUntypedObjectX* Image, [in] VARIANT Metric, [in] VARIANT Distance, [in] VARIANT MinNumberPercent, [out] VARIANT* Radius, [out] VARIANT* Center, [out] VARIANT* Quality)

VARIANT HImageX.LearnNdimNorm(
[in] IHRegionX* Foreground, [in] IHRegionX* Background, [in] BSTR Metric, [in] VARIANT Distance, [in] VARIANT MinNumberPercent, [out] VARIANT* Center, [out] double* Quality)

VARIANT HRegionX.LearnNdimNorm(
[in] IHRegionX* Background, [in] IHImageX* Image, [in] BSTR Metric, [in] VARIANT Distance, [in] VARIANT MinNumberPercent, [out] VARIANT* Center, [out] double* Quality)

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)

Beschreibung

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

Mit dem Parameter DistanceDistanceDistanceDistanceDistancedistance wird der maximale RadiusRadiusRadiusRadiusRadiusradius für die Cluster festgelegt. Er beschreibt den minimalen Abstand zweier Clusterzentren. Wird der Parameter DistanceDistanceDistanceDistanceDistancedistance 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 MinNumberPercentMinNumberPercentMinNumberPercentMinNumberPercentMinNumberPercentminNumberPercent liegen, ansonsten wird dieser Cluster nicht ausgegeben. Der Parameter MinNumberPercentMinNumberPercentMinNumberPercentMinNumberPercentMinNumberPercentminNumberPercent 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 MetricMetricMetricMetricMetricmetric). Die euklidische Metrik liefert i.A. die besseren Ergebnisse, benötigt jedoch auch mehr Rechenzeit. Der Parameter QualityQualityQualityQualityQualityquality gibt die Qualität der Clusterbildung an. Dabei wird die Überschneidung der Abweisungsobjekte 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 BackgroundBackgroundBackgroundBackgroundBackgroundbackground haben jedoch keinen Einfluss auf die Konstruktion der Cluster. Sie dienen nur zur Kontrolle der zu erwartenden Ergebnisse.

Aus Anwendersicht besteht der wesentliche Unterschied zwischen learn_ndim_normlearn_ndim_normLearnNdimNormlearn_ndim_normLearnNdimNormLearnNdimNorm und learn_ndim_boxlearn_ndim_boxLearnNdimBoxlearn_ndim_boxLearnNdimBoxLearnNdimBox darin, dass bei letzterem die BackgroundBackgroundBackgroundBackgroundBackgroundbackground-Klasse den Klassifikationsprozess selbst mitsteuert. Hier wird eine Trennfläche zwischen ForegroundForegroundForegroundForegroundForegroundforeground- und BackgroundBackgroundBackgroundBackgroundBackgroundbackground-Klasse erzeugt, so dass keine Punkte im Merkmalsraum falsch klassifiziert werden. Bei learn_ndim_normlearn_ndim_normLearnNdimNormlearn_ndim_normLearnNdimNormLearnNdimNorm dagegen ist eine Überlappung von ForegroundForegroundForegroundForegroundForegroundforeground- und BackgroundBackgroundBackgroundBackgroundBackgroundbackground-Klasse erlaubt. Dies schlägt sich dann im Rückgabewert QualityQualityQualityQualityQualityquality nieder: Je größer die Überlappung, desto kleiner die Güte der Klassifikation.

Parallelisierung

Parameter

ForegroundForegroundForegroundForegroundForegroundforeground (input_object)  region(-array) objectHRegionHRegionHRegionHRegionXHobject

Vordergrundregion

BackgroundBackgroundBackgroundBackgroundBackgroundbackground (input_object)  region(-array) objectHRegionHRegionHRegionHRegionXHobject

Hintergrundregion (Rückweisungsklasse)

ImageImageImageImageImageimage (input_object)  (multichannel-)image(-array) objectHImageHImageHImageHImageXHobject (byte)

Trainingsbild.

MetricMetricMetricMetricMetricmetric (input_control)  string HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Verwendete Metrik

Defaultwert: 'euclid' "euclid" "euclid" "euclid" "euclid" "euclid"

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

DistanceDistanceDistanceDistanceDistancedistance (input_control)  number HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

Maximaler Radius für die Cluster.

Defaultwert: 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

Typischer Wertebereich: 0.0 ≤ Distance Distance Distance Distance Distance distance ≤ 511.0 (lin)

Minimale Schrittweite: 0.01

Empfohlene Schrittweite: 1.0

Restriktion: Distance > 0.0

MinNumberPercentMinNumberPercentMinNumberPercentMinNumberPercentMinNumberPercentminNumberPercent (input_control)  number HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (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).

Defaultwert: 0.01

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

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

Minimale Schrittweite: 0.01

Empfohlene Schrittweite: 0.1

Restriktion: 0 <= MinNumberPercent && MinNumberPercent <= 100

RadiusRadiusRadiusRadiusRadiusradius (output_control)  real-array HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Clusterradien bzw. halbe Clusterkantenlängen.

CenterCenterCenterCenterCentercenter (output_control)  real-array HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Koordinaten aller Clusterzentren.

QualityQualityQualityQualityQualityquality (output_control)  real HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

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

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

Ergebnis

learn_ndim_normlearn_ndim_normLearnNdimNormlearn_ndim_normLearnNdimNormLearnNdimNorm 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""no_object_result" und 'empty_region_result'"empty_region_result""empty_region_result""empty_region_result""empty_region_result""empty_region_result" einstellbar (siehe set_systemset_systemSetSystemset_systemSetSystemSetSystem). Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

min_max_graymin_max_grayMinMaxGraymin_max_grayMinMaxGrayMinMaxGray, sobel_ampsobel_ampSobelAmpsobel_ampSobelAmpSobelAmp, binomial_filterbinomial_filterBinomialFilterbinomial_filterBinomialFilterBinomialFilter, gauss_filtergauss_filterGaussFiltergauss_filterGaussFilterGaussFilter, reduce_domainreduce_domainReduceDomainreduce_domainReduceDomainReduceDomain, diff_of_gaussdiff_of_gaussDiffOfGaussdiff_of_gaussDiffOfGaussDiffOfGauss

Nachfolger

class_ndim_normclass_ndim_normClassNdimNormclass_ndim_normClassNdimNormClassNdimNorm, connectionconnectionConnectionconnectionConnectionConnection, dilation1dilation1Dilation1dilation1Dilation1Dilation1, erosion1erosion1Erosion1erosion1Erosion1Erosion1, openingopeningOpeningopeningOpeningOpening, closingclosingClosingclosingClosingClosing, rank_regionrank_regionRankRegionrank_regionRankRegionRankRegion, shape_transshape_transShapeTransshape_transShapeTransShapeTrans, skeletonskeletonSkeletonskeletonSkeletonSkeleton

Alternativen

learn_ndim_boxlearn_ndim_boxLearnNdimBoxlearn_ndim_boxLearnNdimBoxLearnNdimBox, learn_class_boxlearn_class_boxLearnClassBoxlearn_class_boxLearnClassBoxLearnClassBox

Siehe auch

class_ndim_normclass_ndim_normClassNdimNormclass_ndim_normClassNdimNormClassNdimNorm, histo_2dimhisto_2dimHisto2dimhisto_2dimHisto2dimHisto2dim

Literatur

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

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren