do_ocr_multi_class_mlpT_do_ocr_multi_class_mlpDoOcrMultiClassMlpDoOcrMultiClassMlp (Operator)
Name
do_ocr_multi_class_mlpT_do_ocr_multi_class_mlpDoOcrMultiClassMlpDoOcrMultiClassMlp
— Klassifikation mehrerer Zeichen mit einem OCR-Klassifikator.
Signatur
void DoOcrMultiClassMlp(const HObject& Character, const HObject& Image, const HTuple& OCRHandle, HTuple* Class, HTuple* Confidence)
HTuple HRegion::DoOcrMultiClassMlp(const HImage& Image, const HOCRMlp& OCRHandle, HTuple* Confidence) const
HString HRegion::DoOcrMultiClassMlp(const HImage& Image, const HOCRMlp& OCRHandle, double* Confidence) const
HTuple HOCRMlp::DoOcrMultiClassMlp(const HRegion& Character, const HImage& Image, HTuple* Confidence) const
HString HOCRMlp::DoOcrMultiClassMlp(const HRegion& Character, const HImage& Image, double* Confidence) const
static void HOperatorSet.DoOcrMultiClassMlp(HObject character, HObject image, HTuple OCRHandle, out HTuple classVal, out HTuple confidence)
HTuple HRegion.DoOcrMultiClassMlp(HImage image, HOCRMlp OCRHandle, out HTuple confidence)
string HRegion.DoOcrMultiClassMlp(HImage image, HOCRMlp OCRHandle, out double confidence)
HTuple HOCRMlp.DoOcrMultiClassMlp(HRegion character, HImage image, out HTuple confidence)
string HOCRMlp.DoOcrMultiClassMlp(HRegion character, HImage image, out double confidence)
Beschreibung
do_ocr_multi_class_mlpdo_ocr_multi_class_mlpDoOcrMultiClassMlpDoOcrMultiClassMlpDoOcrMultiClassMlp
berechnet mit dem durch
OCRHandleOCRHandleOCRHandleOCRHandleOCRHandle
gegebenen OCR-Klassifikator zu den durch die
Regionen CharacterCharacterCharacterCharactercharacter
und die Grauwerte ImageImageImageImageimage
gegebenen Zeichen die jeweils beste Klasse und gibt die Klassen in
ClassClassClassClassclassVal
und die zugehörigen Konfidenzen
(Wahrscheinlichkeiten) der Klassen in ConfidenceConfidenceConfidenceConfidenceconfidence
zurück.
Im Gegensatz zu do_ocr_single_class_mlpdo_ocr_single_class_mlpDoOcrSingleClassMlpDoOcrSingleClassMlpDoOcrSingleClassMlp
kann
do_ocr_multi_class_mlpdo_ocr_multi_class_mlpDoOcrMultiClassMlpDoOcrMultiClassMlpDoOcrMultiClassMlp
also mehrere Zeichen gleichzeitig
klassifizieren und ist damit typischerweise schneller als eine
Schleife, die do_ocr_single_class_mlpdo_ocr_single_class_mlpDoOcrSingleClassMlpDoOcrSingleClassMlpDoOcrSingleClassMlp
zur Klassifikation
einzelner Zeichen verwendet. Allerdings kann
do_ocr_multi_class_mlpdo_ocr_multi_class_mlpDoOcrMultiClassMlpDoOcrMultiClassMlpDoOcrMultiClassMlp
nur die beste Klasse des jeweiligen
Zeichens zurückliefern. Da sich die Konfidenzen als
Wahrscheinlichkeiten interpretieren lassen (siehe
classify_class_mlpclassify_class_mlpClassifyClassMlpClassifyClassMlpClassifyClassMlp
und evaluate_class_mlpevaluate_class_mlpEvaluateClassMlpEvaluateClassMlpEvaluateClassMlp
), und
damit auch leicht überprüfbar ist, ob ein Zeichen zu unsicher
klassifiziert worden ist, ist dies im Normalfall kein Nachteil,
außer die Klassen überlappen sich so stark, dass in vielen Fällen
noch die zweitbeste Klasse untersucht werden muss, um sicher zu
entscheiden, welche Klasse vorliegt. In diesem Fall sollte
do_ocr_single_class_mlpdo_ocr_single_class_mlpDoOcrSingleClassMlpDoOcrSingleClassMlpDoOcrSingleClassMlp
verwendet werden.
Eine Zeichenkette des Zahlenwertes
'\032'"\032""\032""\032""\032" (alternativ
als '\0x1A'"\0x1A""\0x1A""\0x1A""\0x1A" dargestellt) im
Resultat ClassClassClassClassclassVal
bedeutet, dass die Region als Rückweisungsklasse
klassifiziert wurde.
Der OCR-Klassifikator muss vor der Verwendung von
do_ocr_multi_class_mlpdo_ocr_multi_class_mlpDoOcrMultiClassMlpDoOcrMultiClassMlpDoOcrMultiClassMlp
mit trainf_ocr_class_mlptrainf_ocr_class_mlpTrainfOcrClassMlpTrainfOcrClassMlpTrainfOcrClassMlp
trainiert werden.
Ausführungsinformationen
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Automatisch parallelisiert auf Tupelebene.
Parameter
CharacterCharacterCharacterCharactercharacter
(input_object) region(-array) →
objectHRegionHRegionHobject
Zu erkennende Zeichen.
ImageImageImageImageimage
(input_object) singlechannelimage →
objectHImageHImageHobject (byte / uint2)
Grauwerte der Zeichen.
OCRHandleOCRHandleOCRHandleOCRHandleOCRHandle
(input_control) ocr_mlp →
HOCRMlp, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle des OCR-Klassifikators.
ClassClassClassClassclassVal
(output_control) string(-array) →
HTupleHTupleHtuple (string) (string) (HString) (char*)
Ergebnis der Klassifikation der Zeichen durch
das MLP.
Parameteranzahl: Class == Character
ConfidenceConfidenceConfidenceConfidenceconfidence
(output_control) real(-array) →
HTupleHTupleHtuple (real) (double) (double) (double)
Konfidenz der Klasse der Zeichen.
Parameteranzahl: Confidence == Character
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
do_ocr_multi_class_mlpdo_ocr_multi_class_mlpDoOcrMultiClassMlpDoOcrMultiClassMlpDoOcrMultiClassMlp
den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird
eine Fehlerbehandlung durchgeführt.
Vorgänger
trainf_ocr_class_mlptrainf_ocr_class_mlpTrainfOcrClassMlpTrainfOcrClassMlpTrainfOcrClassMlp
,
read_ocr_class_mlpread_ocr_class_mlpReadOcrClassMlpReadOcrClassMlpReadOcrClassMlp
Alternativen
do_ocr_word_mlpdo_ocr_word_mlpDoOcrWordMlpDoOcrWordMlpDoOcrWordMlp
,
do_ocr_single_class_mlpdo_ocr_single_class_mlpDoOcrSingleClassMlpDoOcrSingleClassMlpDoOcrSingleClassMlp
Siehe auch
create_ocr_class_mlpcreate_ocr_class_mlpCreateOcrClassMlpCreateOcrClassMlpCreateOcrClassMlp
,
classify_class_mlpclassify_class_mlpClassifyClassMlpClassifyClassMlpClassifyClassMlp
Modul
OCR/OCV