apply_dl_classifier
— Klassifizieren einer Menge an Bildern durch einen Deep Learning-basierten
Klassifikator.
apply_dl_classifier
ist veraltet und wird nur aus Gründen
der Rückwärtskompatibilität zur Verfügung gestellt. Neue
Applikationen sollten stattdessen den allgemeinen CNN-basierten Operator
apply_dl_model
verwenden.
apply_dl_classifier(Images : : DLClassifierHandle : DLClassifierResultHandle)
apply_dl_classifier
klassifiziert die Menge an Bildern
Images
durch des Deep Learning-basierten Klassifikators
DLClassifierHandle
.
Die daraus resultierende Ergebnisse sind in
DLClassifierResultHandle
abgespeichert und können mit
get_dl_classifier_result
abgefragt werden.
Die Menge Images
kann eine beliebige Anzahl an Bildern enthalten,
die in einem Operatoraufruf verarbeitet werden sollen, und ist im
Allgemeinen unabhängig von dem Parameter 'batch_size' . Beachten
Sie bitte, dass dies nur für apply_dl_classifier
gilt und nicht für
train_dl_classifier_batch
. Der Operator apply_dl_classifier
klassifiziert stets einen Batch mit bis zu 'batch_size' Bildern
simultan, unabhängig davon, ob dieser aufgefüllt ist oder nicht.
Falls die Menge Images
mehr als 'batch_size' Bilder
enthält, iteriert apply_dl_classifier
über die nötige Anzahl
Batches der Größe 'batch_size' , um alle Bilder in
Images
zu verarbeiten. Bei einer Menge Images
mit weniger
als 'batch_size' Bildern wird diese bis zu einem vollen Batch
aufgefüllt, was bedeutet, dass die Laufzeit zur Verarbeitung eines solchen
Batches unabhängig davon ist, ob dieser gefüllt ist oder nur ein einzelnes
Bild enthält. Außerdem benötigt das Netzwerk stets den vollen Speicher,
selbst wenn in einem Operatorenaufruf weniger als 'batch_size'
Bilder klassifiziert werden sollen. Deswegen ist es bei der Wahl der
'batch_size' zu empfehlen, die Anzahl der Bilder, die in einem
Operatorenaufruf übergeben werden, mit zu berücksichtigen, um eine
größere Effizienz zu erzielen. Der aktuelle Wert von 'batch_size'
kann mittels get_dl_classifier_param
abgefragt werden.
Es ist zu beachten, dass die Bilder für die Klassifikation Anforderungen
erfüllen müssen betreffend Größe, Grauwertbereich, Anzahl Kanäle und Typ.
Die genauen Bildanforderungen des Netzwerkes können mit
get_dl_classifier_param
abgerufen werden.
Besonders hervorheben möchten wir den Datentyp: Die Bilder müssen vom Typ
'real' sein.
Für eine möglicherweise notwendige Umwandlung steht der Operator
convert_image_type
zur Verfügung.
Die Prozedur preprocess_dl_classifier_images
hilft Ihnen bei der
Vorverarbeitung der Bilder entsprechend den spezifischen Anforderungen.
Das Konzept der Deep Learning-basierten Klassifikation ist in der Einleitung zu Kapitel Deep Learning / Klassifikation beschrieben. Der Ablauf mit diesem veralteten Operator ist im Kapitel Legacy / DL Klassifikation beschrieben.
Um diesen Operator ausführen zu können, werden cuDNN und cuBLAS benötigt,
falls 'runtime' auf 'gpu' gesetzt ist.
Für weitere Details wird auf den „Installation Guide“
, Abschnitt
„Requirements for Deep Learning“, verwiesen.
Dieser Operator liefert ein Handle zurück. Es ist zu beachten, dass der Zustand einer Instanz dieses Handletyps durch bestimmte Operatoren geändert werden kann, obwohl das Handle als Eingabeparameter in diesen Operatoren verwendet wird.
Images
(input_object) (multichannel-)image(-array) →
object (real)
Tupel von Eingabebilder.
DLClassifierHandle
(input_control) dl_classifier →
(handle)
Handle des Deep Learning-basierten Klassifikators.
DLClassifierResultHandle
(output_control) dl_classifier_result →
(handle)
Handle der Ergebnisse eines Deep Learning-basierten Klassifikators.
Sind die Parameterwerte korrekt, dann liefert
apply_dl_classifier
den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine
Fehlerbehandlung durchgeführt.
read_dl_classifier
,
train_dl_classifier_batch
,
set_dl_classifier_param
get_dl_classifier_result
,
clear_dl_classifier
apply_dl_model
,
classify_class_mlp
,
classify_class_svm
Deep Learning Inference