classify_image_class_knn
— Klassifizieren eines Bildes durch einen k-NN-Klassifikator
classify_image_class_knn(Image : ClassRegions, DistanceImage : KNNHandle, RejectionThreshold : )
classify_image_class_knn
führt auf dem mehrkanaligen Bild
Image
eine Pixelklassifikation mit dem k-NN-Klassifikator
KNNHandle
durch. Der k-NN muss vor der
Verwendung von classify_image_class_knn
mit
train_class_knn
trainiert werden. Image
muss die
bei create_class_knn
mit NumInput
spezifizierte
Anzahl von Kanälen besitzen. Als Ausgabe werden in
ClassRegions
NumClasses
Regionen als Ergebnis der
Pixelklassifikation zurückgegeben. Die Reihenfolge der Regionen in
ClassRegions
entspricht dabei der Reihenfolge der Klassen,
wie sie durch die Trainingsregionen in
add_samples_image_class_knn
definiert wurde. Der Parameter
RejectionThreshold
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_knn
).
Alle Pixel mit einer
Wahrscheinlichkeit unterhalb von RejectionThreshold
werden
keiner Klasse zugeordnet. Da ein k-NN-Klassifikator bei Pixeldaten, die im
Merkmalsraum außerhalb der konvexen Hülle der Trainingsdaten
liegen einer der Klassen zuordnet, empfiehlt es sich in vielen
Fällen, trotz der Verwendung von RejectionThreshold
, eine
Rückweisungsklasse explizit zu trainieren, indem mit
add_samples_image_class_knn
Trainingsmuster für die
Rückweisungsklasse abgespeichert werden und der k-NN mit
train_class_knn
neu trainiert wird.
Image
(input_object) (multichannel-)image →
object (byte / cyclic / direction / int1 / int2 / uint2 / int4 / real)
Eingabebild.
ClassRegions
(output_object) region-array →
object (real)
Segmentierte Klassen.
DistanceImage
(output_object) image →
object
Bild mit Distanzen pro Pixel zum jeweiligen nächsten Nachbarn.
KNNHandle
(input_control) class_knn →
(handle)
Handle des k-NN-Klassifikators.
RejectionThreshold
(input_control) real →
(real)
Schwellenwert für die Rückweisung der Klassifikation.
Defaultwert: 0.5
Wertevorschläge: 0.0, 0.1, 0.2, 0.3, 5.0, 10.0, 255.0
Restriktion: RejectionThreshold >= 0.0
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_knn (3, KNNHandle) add_samples_image_class_knn (Image, Classes, KNNHandle) get_sample_num_class_knn (KNNHandle, NumSamples) train_class_knn (KNNHandle, [], []) classify_image_class_knn (Image, ClassRegions, DistanceImage, KNNHandle, 0.5) dev_display (ClassRegions)
Sind die Parameterwerte korrekt, dann liefert
classify_image_class_knn
den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird
eine Fehlerbehandlung durchgeführt.
train_class_knn
,
read_class_knn
classify_image_class_svm
,
classify_image_class_mlp
,
classify_image_class_gmm
,
classify_image_class_lut
,
class_ndim_norm
,
class_2dim_sup
add_samples_image_class_knn
,
create_class_knn
Foundation