Name
trainf_ocr_class_mlpT_trainf_ocr_class_mlpTrainfOcrClassMlptrainf_ocr_class_mlpTrainfOcrClassMlpTrainfOcrClassMlp — Trainieren eines OCR-Klassifikators.
Herror trainf_ocr_class_mlp(const HTuple& OCRHandle, const HTuple& TrainingFile, const HTuple& MaxIterations, const HTuple& WeightTolerance, const HTuple& ErrorTolerance, HTuple* Error, HTuple* ErrorLog)
double HOCRMlp::TrainfOcrClassMlp(const HTuple& TrainingFile, const HTuple& MaxIterations, const HTuple& WeightTolerance, const HTuple& ErrorTolerance, HTuple* ErrorLog) const
void TrainfOcrClassMlp(const HTuple& OCRHandle, const HTuple& TrainingFile, const HTuple& MaxIterations, const HTuple& WeightTolerance, const HTuple& ErrorTolerance, HTuple* Error, HTuple* ErrorLog)
double HOCRMlp::TrainfOcrClassMlp(const HTuple& TrainingFile, Hlong MaxIterations, double WeightTolerance, double ErrorTolerance, HTuple* ErrorLog) const
double HOCRMlp::TrainfOcrClassMlp(const HString& TrainingFile, Hlong MaxIterations, double WeightTolerance, double ErrorTolerance, HTuple* ErrorLog) const
double HOCRMlp::TrainfOcrClassMlp(const char* TrainingFile, Hlong MaxIterations, double WeightTolerance, double ErrorTolerance, HTuple* ErrorLog) const
void HOperatorSetX.TrainfOcrClassMlp(
[in] VARIANT OCRHandle, [in] VARIANT TrainingFile, [in] VARIANT MaxIterations, [in] VARIANT WeightTolerance, [in] VARIANT ErrorTolerance, [out] VARIANT* Error, [out] VARIANT* ErrorLog)
double HOCRMlpX.TrainfOcrClassMlp(
[in] VARIANT TrainingFile, [in] Hlong MaxIterations, [in] double WeightTolerance, [in] double ErrorTolerance, [out] VARIANT* ErrorLog)
static void HOperatorSet.TrainfOcrClassMlp(HTuple OCRHandle, HTuple trainingFile, HTuple maxIterations, HTuple weightTolerance, HTuple errorTolerance, out HTuple error, out HTuple errorLog)
double HOCRMlp.TrainfOcrClassMlp(HTuple trainingFile, int maxIterations, double weightTolerance, double errorTolerance, out HTuple errorLog)
double HOCRMlp.TrainfOcrClassMlp(string trainingFile, int maxIterations, double weightTolerance, double errorTolerance, out HTuple errorLog)
trainf_ocr_class_mlptrainf_ocr_class_mlpTrainfOcrClassMlptrainf_ocr_class_mlpTrainfOcrClassMlpTrainfOcrClassMlp trainiert den OCR-Klassifikator
OCRHandleOCRHandleOCRHandleOCRHandleOCRHandleOCRHandle mit den Trainingszeichen, die in den durch
TrainingFileTrainingFileTrainingFileTrainingFileTrainingFiletrainingFile angegebenen OCR-Trainingsdateien enthalten
sind. Die Trainingsdateien müssen zuvor, z.B. mit
write_ocr_trainfwrite_ocr_trainfWriteOcrTrainfwrite_ocr_trainfWriteOcrTrainfWriteOcrTrainf, erzeugt worden sein.
Die restlichen Parameter haben dieselbe Bedeutung wie bei
train_class_mlptrain_class_mlpTrainClassMlptrain_class_mlpTrainClassMlpTrainClassMlp und sind dort ausführlich beschrieben. Eine
Regularisierung des OCR-Klassifikators und eine automatische
Bestimmung der Regularisierungsparameter (siehe
set_regularization_params_ocr_class_mlpset_regularization_params_ocr_class_mlpSetRegularizationParamsOcrClassMlpset_regularization_params_ocr_class_mlpSetRegularizationParamsOcrClassMlpSetRegularizationParamsOcrClassMlp) wird beim Training
berücksichtigt. Weiterhin werden vor dem eigentlichen Training die
Trainingsdaten für die Rückweisungsklasse erzeugt, falls eine
Rückweisungsklasse mittels
set_rejection_params_ocr_class_mlpset_rejection_params_ocr_class_mlpSetRejectionParamsOcrClassMlpset_rejection_params_ocr_class_mlpSetRejectionParamsOcrClassMlpSetRejectionParamsOcrClassMlp spezifiziert wurde.
Es ist zu beachten, dass Trainingszeichen, die keine entsprechende
Klasse im Klassifikator OCRHandleOCRHandleOCRHandleOCRHandleOCRHandleOCRHandle haben, verworfen werden.
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Automatisch parallelisiert auf interner Datenebene.
Dieser Operator modifiziert den Zustand des folgenden Eingabeparameters:
Der Wert dieses Parameters darf nicht über mehrere Threads verwendet werden.
Handle des OCR-Klassifikators.
Namen der Trainingsdateien.
Defaultwert:
'ocr.trf'
"ocr.trf"
"ocr.trf"
"ocr.trf"
"ocr.trf"
"ocr.trf"
Dateiendung: .trf, .otr
Maximale Anzahl von Iterationen des
Optimierungsverfahrens.
Defaultwert: 200
Wertevorschläge: 20, 40, 60, 80, 100, 120, 140, 160, 180, 200, 220, 240, 260, 280, 300
Schwellwert für den Unterschied der Gewichte
des MLP zwischen zwei Iterationen des
Optimierungsverfahrens.
Defaultwert: 1.0
Wertevorschläge: 1.0, 0.1, 0.01, 0.001, 0.0001, 0.00001
Restriktion: WeightTolerance >= 1.0e-8
Schwellwert für den Unterschied des mittleren
Fehlers des MLP auf den Trainingsdaten zwischen
zwei Iterationen des Optimierungsverfahrens.
Defaultwert: 0.01
Wertevorschläge: 1.0, 0.1, 0.01, 0.001, 0.0001, 0.00001
Restriktion: ErrorTolerance >= 1.0e-8
Mittlerer Fehler des MLP auf den Trainingsdaten.
Mittlerer Fehler des MLP auf den Trainingsdaten
pro Iteration des Optimierungsverfahrens.
* Train an OCR classifier
read_ocr_trainf_names ('ocr.trf', CharacterNames, CharacterCount)
create_ocr_class_mlp (8, 10, 'constant', 'default', CharacterNames, 80, \
'none', 81, 42, OCRHandle)
trainf_ocr_class_mlp (OCRHandle, 'ocr.trf', 100, 1, 0.01, Error, ErrorLog)
write_ocr_class_mlp (OCRHandle, 'ocr.omc')
clear_ocr_class_mlp (OCRHandle)
Sind die Parameterwerte korrekt, dann liefert
trainf_ocr_class_mlptrainf_ocr_class_mlpTrainfOcrClassMlptrainf_ocr_class_mlpTrainfOcrClassMlpTrainfOcrClassMlp den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird
eine Fehlerbehandlung durchgeführt.
Falls trainf_ocr_class_mlptrainf_ocr_class_mlpTrainfOcrClassMlptrainf_ocr_class_mlpTrainfOcrClassMlpTrainfOcrClassMlp den Fehler 9211 (Matrix ist nicht
positiv definit) bei Preprocessing =
'canonical_variates'"canonical_variates""canonical_variates""canonical_variates""canonical_variates""canonical_variates" zurückliefert, bedeutet dies
typischerweise, dass für die verschiedenen Klassen zu wenige
Trainingsmuster gespeichert worden sind.
Für diesen Fall ist es sinnvoll, Preprocessing auf
'normalization'"normalization""normalization""normalization""normalization""normalization" zu setzen. Ansonsten ist es auch möglich,
mehr Trainingsmuster hinzuzufügen.
create_ocr_class_mlpcreate_ocr_class_mlpCreateOcrClassMlpcreate_ocr_class_mlpCreateOcrClassMlpCreateOcrClassMlp,
write_ocr_trainfwrite_ocr_trainfWriteOcrTrainfwrite_ocr_trainfWriteOcrTrainfWriteOcrTrainf,
append_ocr_trainfappend_ocr_trainfAppendOcrTrainfappend_ocr_trainfAppendOcrTrainfAppendOcrTrainf,
write_ocr_trainf_imagewrite_ocr_trainf_imageWriteOcrTrainfImagewrite_ocr_trainf_imageWriteOcrTrainfImageWriteOcrTrainfImage,
set_regularization_params_ocr_class_mlpset_regularization_params_ocr_class_mlpSetRegularizationParamsOcrClassMlpset_regularization_params_ocr_class_mlpSetRegularizationParamsOcrClassMlpSetRegularizationParamsOcrClassMlp
do_ocr_single_class_mlpdo_ocr_single_class_mlpDoOcrSingleClassMlpdo_ocr_single_class_mlpDoOcrSingleClassMlpDoOcrSingleClassMlp,
do_ocr_multi_class_mlpdo_ocr_multi_class_mlpDoOcrMultiClassMlpdo_ocr_multi_class_mlpDoOcrMultiClassMlpDoOcrMultiClassMlp,
write_ocr_class_mlpwrite_ocr_class_mlpWriteOcrClassMlpwrite_ocr_class_mlpWriteOcrClassMlpWriteOcrClassMlp
read_ocr_class_mlpread_ocr_class_mlpReadOcrClassMlpread_ocr_class_mlpReadOcrClassMlpReadOcrClassMlp
train_class_mlptrain_class_mlpTrainClassMlptrain_class_mlpTrainClassMlpTrainClassMlp
OCR/OCV