classify_image_class_mlpT_classify_image_class_mlpClassifyImageClassMlpClassifyImageClassMlpclassify_image_class_mlp (Operator)

Name

classify_image_class_mlpT_classify_image_class_mlpClassifyImageClassMlpClassifyImageClassMlpclassify_image_class_mlp — Klassifizieren eines Bildes durch ein mehrschichtiges Perzeptron.

Signatur

classify_image_class_mlp(Image : ClassRegions : MLPHandle, RejectionThreshold : )

Herror T_classify_image_class_mlp(const Hobject Image, Hobject* ClassRegions, const Htuple MLPHandle, const Htuple RejectionThreshold)

void ClassifyImageClassMlp(const HObject& Image, HObject* ClassRegions, const HTuple& MLPHandle, const HTuple& RejectionThreshold)

HRegion HImage::ClassifyImageClassMlp(const HClassMlp& MLPHandle, double RejectionThreshold) const

HRegion HClassMlp::ClassifyImageClassMlp(const HImage& Image, double RejectionThreshold) const

static void HOperatorSet.ClassifyImageClassMlp(HObject image, out HObject classRegions, HTuple MLPHandle, HTuple rejectionThreshold)

HRegion HImage.ClassifyImageClassMlp(HClassMlp MLPHandle, double rejectionThreshold)

HRegion HClassMlp.ClassifyImageClassMlp(HImage image, double rejectionThreshold)

def classify_image_class_mlp(image: HObject, mlphandle: HHandle, rejection_threshold: float) -> HObject

Beschreibung

classify_image_class_mlpclassify_image_class_mlpClassifyImageClassMlpClassifyImageClassMlpClassifyImageClassMlpclassify_image_class_mlp führt auf dem mehrkanaligen Bild ImageImageImageImageimageimage eine Pixelklassifikation mit dem mehrschichtigen Perzeptron (MLP) MLPHandleMLPHandleMLPHandleMLPHandleMLPHandlemlphandle durch. Das MLP muss vor der Verwendung von classify_image_class_mlpclassify_image_class_mlpClassifyImageClassMlpClassifyImageClassMlpClassifyImageClassMlpclassify_image_class_mlp mit train_class_mlptrain_class_mlpTrainClassMlpTrainClassMlpTrainClassMlptrain_class_mlp trainiert werden. ImageImageImageImageimageimage muss die bei create_class_mlpcreate_class_mlpCreateClassMlpCreateClassMlpCreateClassMlpcreate_class_mlp mit NumInput spezifizierte Anzahl von Kanälen besitzen. Als Ausgabe werden in ClassRegionsClassRegionsClassRegionsClassRegionsclassRegionsclass_regions NumOutput Regionen als Ergebnis der Pixelklassifikation zurückgegeben. Die Reihenfolge der Regionen in ClassRegionsClassRegionsClassRegionsClassRegionsclassRegionsclass_regions entspricht dabei der Reihenfolge der Klassen, wie sie durch die Trainingsregionen in add_samples_image_class_mlpadd_samples_image_class_mlpAddSamplesImageClassMlpAddSamplesImageClassMlpAddSamplesImageClassMlpadd_samples_image_class_mlp definiert wurde. Der Parameter RejectionThresholdRejectionThresholdRejectionThresholdRejectionThresholdrejectionThresholdrejection_threshold erlaubt die Zurückweisung von zu unsicher klassifizierten Pixeln. Er stellt einen Schwellenwert auf dem von der Klassifikation zurückgelieferten Wahrscheinlichkeitsmaß dar (siehe classify_class_mlpclassify_class_mlpClassifyClassMlpClassifyClassMlpClassifyClassMlpclassify_class_mlp und evaluate_class_mlpevaluate_class_mlpEvaluateClassMlpEvaluateClassMlpEvaluateClassMlpevaluate_class_mlp). Alle Pixel mit einer Wahrscheinlichkeit unterhalb von RejectionThresholdRejectionThresholdRejectionThresholdRejectionThresholdrejectionThresholdrejection_threshold werden keiner Klasse zugeordnet. Da ein MLP Pixeldaten, die im Merkmalsraum außerhalb der konvexen Hülle der Trainingsdaten liegen, typischerweise mit einer relativ hohen Wahrscheinlichkeit (Konfidenz) einer der Klassen zuordnet, empfiehlt es sich in vielen Fällen trotz der Verwendung von RejectionThresholdRejectionThresholdRejectionThresholdRejectionThresholdrejectionThresholdrejection_threshold, eine Rückweisungsklasse explizit zu trainieren, indem mit add_samples_image_class_mlpadd_samples_image_class_mlpAddSamplesImageClassMlpAddSamplesImageClassMlpAddSamplesImageClassMlpadd_samples_image_class_mlp Trainingsmuster für die Rückweisungsklasse abgespeichert werden und das Netz mit train_class_mlptrain_class_mlpTrainClassMlpTrainClassMlpTrainClassMlptrain_class_mlp neu trainiert wird.

Ausführungsinformationen

Parameter

ImageImageImageImageimageimage (input_object)  (multichannel-)image objectHImageHObjectHImageHobject (byte / cyclic / direction / int1 / int2 / uint2 / int4 / real)

Eingabebild.

ClassRegionsClassRegionsClassRegionsClassRegionsclassRegionsclass_regions (output_object)  region-array objectHRegionHObjectHRegionHobject *

Segmentierte Klassen.

MLPHandleMLPHandleMLPHandleMLPHandleMLPHandlemlphandle (input_control)  class_mlp HClassMlp, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle des MLP.

RejectionThresholdRejectionThresholdRejectionThresholdRejectionThresholdrejectionThresholdrejection_threshold (input_control)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

Schwellenwert für die Rückweisung der Klassifikation.

Defaultwert: 0.5

Wertevorschläge: 0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0

Restriktion: RejectionThreshold >= 0.0 && RejectionThreshold <= 1.0

Beispiel (HDevelop)

read_image (Image, 'ic')
gen_rectangle1 (Board, 80, 320, 110, 350)
gen_rectangle1 (Capacitor, 359, 263, 371, 302)
gen_rectangle1 (Resistor, 200, 252, 290, 256)
gen_rectangle1 (IC, 180, 135, 216, 165)
concat_obj (Board, Capacitor, Classes)
concat_obj (Classes, Resistor, Classes)
concat_obj (Classes, IC, Classes)
create_class_mlp (3, 3, 4, 'softmax', 'principal_components', 3, 42, \
                  MLPHandle)
add_samples_image_class_mlp (Image, Classes, MLPHandle)
get_sample_num_class_mlp (MLPHandle, NumSamples)
train_class_mlp (MLPHandle, 200, 1, 0.01, Error, ErrorLog)
classify_image_class_mlp (Image, ClassRegions, MLPHandle, 0.5)
dev_display (ClassRegions)

Ergebnis

Sind die Parameterwerte korrekt, dann liefert classify_image_class_mlpclassify_image_class_mlpClassifyImageClassMlpClassifyImageClassMlpClassifyImageClassMlpclassify_image_class_mlp den Wert TRUE. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

train_class_mlptrain_class_mlpTrainClassMlpTrainClassMlpTrainClassMlptrain_class_mlp, read_class_mlpread_class_mlpReadClassMlpReadClassMlpReadClassMlpread_class_mlp

Alternativen

classify_image_class_gmmclassify_image_class_gmmClassifyImageClassGmmClassifyImageClassGmmClassifyImageClassGmmclassify_image_class_gmm, classify_image_class_knnclassify_image_class_knnClassifyImageClassKnnClassifyImageClassKnnClassifyImageClassKnnclassify_image_class_knn, classify_image_class_svmclassify_image_class_svmClassifyImageClassSvmClassifyImageClassSvmClassifyImageClassSvmclassify_image_class_svm, classify_image_class_lutclassify_image_class_lutClassifyImageClassLutClassifyImageClassLutClassifyImageClassLutclassify_image_class_lut, class_ndim_normclass_ndim_normClassNdimNormClassNdimNormClassNdimNormclass_ndim_norm, class_2dim_supclass_2dim_supClass2dimSupClass2dimSupClass2dimSupclass_2dim_sup

Siehe auch

add_samples_image_class_mlpadd_samples_image_class_mlpAddSamplesImageClassMlpAddSamplesImageClassMlpAddSamplesImageClassMlpadd_samples_image_class_mlp, create_class_mlpcreate_class_mlpCreateClassMlpCreateClassMlpCreateClassMlpcreate_class_mlp

Modul

Foundation