ClassesClassesClassesClasses | | | | Operators

trainf_ocr_class_svmtrainf_ocr_class_svmTrainfOcrClassSvmtrainf_ocr_class_svmTrainfOcrClassSvmTrainfOcrClassSvm (Operator)

Name

trainf_ocr_class_svmtrainf_ocr_class_svmTrainfOcrClassSvmtrainf_ocr_class_svmTrainfOcrClassSvmTrainfOcrClassSvm — Train an OCR classifier.

Signature

trainf_ocr_class_svm( : : OCRHandle, TrainingFile, Epsilon, TrainMode : )

Herror trainf_ocr_class_svm(const Hlong OCRHandle, const char* TrainingFile, double Epsilon, const char* TrainMode)

Herror T_trainf_ocr_class_svm(const Htuple OCRHandle, const Htuple TrainingFile, const Htuple Epsilon, const Htuple TrainMode)

Herror trainf_ocr_class_svm(const HTuple& OCRHandle, const HTuple& TrainingFile, const HTuple& Epsilon, const HTuple& TrainMode)

void HOCRSvm::TrainfOcrClassSvm(const HTuple& TrainingFile, const HTuple& Epsilon, const HTuple& TrainMode) const

void TrainfOcrClassSvm(const HTuple& OCRHandle, const HTuple& TrainingFile, const HTuple& Epsilon, const HTuple& TrainMode)

void HOCRSvm::TrainfOcrClassSvm(const HTuple& TrainingFile, double Epsilon, const HTuple& TrainMode) const

void HOCRSvm::TrainfOcrClassSvm(const HString& TrainingFile, double Epsilon, const HString& TrainMode) const

void HOCRSvm::TrainfOcrClassSvm(const char* TrainingFile, double Epsilon, const char* TrainMode) const

void HOperatorSetX.TrainfOcrClassSvm(
[in] VARIANT OCRHandle, [in] VARIANT TrainingFile, [in] VARIANT Epsilon, [in] VARIANT TrainMode)

void HOCRSvmX.TrainfOcrClassSvm(
[in] VARIANT TrainingFile, [in] double Epsilon, [in] VARIANT TrainMode)

static void HOperatorSet.TrainfOcrClassSvm(HTuple OCRHandle, HTuple trainingFile, HTuple epsilon, HTuple trainMode)

void HOCRSvm.TrainfOcrClassSvm(HTuple trainingFile, double epsilon, HTuple trainMode)

void HOCRSvm.TrainfOcrClassSvm(string trainingFile, double epsilon, string trainMode)

Description

trainf_ocr_class_svmtrainf_ocr_class_svmTrainfOcrClassSvmtrainf_ocr_class_svmTrainfOcrClassSvmTrainfOcrClassSvm trains the OCR classifier OCRHandleOCRHandleOCRHandleOCRHandleOCRHandleOCRHandle with the training characters stored in the OCR training files given by TrainingFileTrainingFileTrainingFileTrainingFileTrainingFiletrainingFile. The training files must have been created, e.g., using write_ocr_trainfwrite_ocr_trainfWriteOcrTrainfwrite_ocr_trainfWriteOcrTrainfWriteOcrTrainf, before calling trainf_ocr_class_svmtrainf_ocr_class_svmTrainfOcrClassSvmtrainf_ocr_class_svmTrainfOcrClassSvmTrainfOcrClassSvm. The parameters EpsilonEpsilonEpsilonEpsilonEpsilonepsilon and TrainModeTrainModeTrainModeTrainModeTrainModetrainMode have the same meaning as in train_class_svmtrain_class_svmTrainClassSvmtrain_class_svmTrainClassSvmTrainClassSvm. Please, note that training characters that have no corresponding class in the classifier OCRHandleOCRHandleOCRHandleOCRHandleOCRHandleOCRHandle are discarded.

Parallelization

This operator modifies the state of the following input parameter:

The value of this parameter may not be shared across multiple threads without external synchronization.

Parameters

OCRHandleOCRHandleOCRHandleOCRHandleOCRHandleOCRHandle (input_control, state is modified)  ocr_svm HOCRSvm, HTupleHTupleHOCRSvm, HTupleHOCRSvmX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Handle of the OCR classifier.

TrainingFileTrainingFileTrainingFileTrainingFileTrainingFiletrainingFile (input_control)  filename.read(-array) HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Names of the training files.

Default value: 'ocr.trf' "ocr.trf" "ocr.trf" "ocr.trf" "ocr.trf" "ocr.trf"

File extension: .trf, .otr

EpsilonEpsilonEpsilonEpsilonEpsilonepsilon (input_control)  real HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Stop parameter for training.

Default value: 0.001

Suggested values: 0.00001, 0.0001, 0.001, 0.01, 0.1

TrainModeTrainModeTrainModeTrainModeTrainModetrainMode (input_control)  number HTupleHTupleHTupleVARIANTHtuple (string / integer) (string / int / long) (HString / Hlong) (char* / Hlong) (BSTR / Hlong) (char* / Hlong)

Mode of training.

Default value: 'default' "default" "default" "default" "default" "default"

List of values: 'add_sv_to_train_set'"add_sv_to_train_set""add_sv_to_train_set""add_sv_to_train_set""add_sv_to_train_set""add_sv_to_train_set", 'default'"default""default""default""default""default"

Example (HDevelop)

* Train an OCR classifier
read_ocr_trainf_names ('ocr.trf', CharacterNames, CharacterCount)
create_ocr_class_svm (8, 10, 'constant', 'default', CharacterNames, \
                      'rbf', 0.01, 0.01, 'one-versus-one', \
                      'normalization', 81, OCRHandle)
trainf_ocr_class_svm (OCRHandle, 'ocr.trf', 0.001, 'default')
write_ocr_class_svm (OCRHandle, 'ocr.osc')
clear_ocr_class_svm (OCRHandle)

Result

If the parameters are valid the operator trainf_ocr_class_svmtrainf_ocr_class_svmTrainfOcrClassSvmtrainf_ocr_class_svmTrainfOcrClassSvmTrainfOcrClassSvm returns the value 2 (H_MSG_TRUE). If necessary, an exception is raised.

trainf_ocr_class_svmtrainf_ocr_class_svmTrainfOcrClassSvmtrainf_ocr_class_svmTrainfOcrClassSvmTrainfOcrClassSvm may return the error 9211 (Matrix is not positive definite) if Preprocessing = 'canonical_variates'"canonical_variates""canonical_variates""canonical_variates""canonical_variates""canonical_variates" is used. This typically indicates that not enough training samples have been stored for each class. In this case we recommend to change Preprocessing to 'normalization'"normalization""normalization""normalization""normalization""normalization". Another solution can be to add more training samples.

Possible Predecessors

create_ocr_class_svmcreate_ocr_class_svmCreateOcrClassSvmcreate_ocr_class_svmCreateOcrClassSvmCreateOcrClassSvm, write_ocr_trainfwrite_ocr_trainfWriteOcrTrainfwrite_ocr_trainfWriteOcrTrainfWriteOcrTrainf, append_ocr_trainfappend_ocr_trainfAppendOcrTrainfappend_ocr_trainfAppendOcrTrainfAppendOcrTrainf, write_ocr_trainf_imagewrite_ocr_trainf_imageWriteOcrTrainfImagewrite_ocr_trainf_imageWriteOcrTrainfImageWriteOcrTrainfImage

Possible Successors

do_ocr_single_class_svmdo_ocr_single_class_svmDoOcrSingleClassSvmdo_ocr_single_class_svmDoOcrSingleClassSvmDoOcrSingleClassSvm, do_ocr_multi_class_svmdo_ocr_multi_class_svmDoOcrMultiClassSvmdo_ocr_multi_class_svmDoOcrMultiClassSvmDoOcrMultiClassSvm, write_ocr_class_svmwrite_ocr_class_svmWriteOcrClassSvmwrite_ocr_class_svmWriteOcrClassSvmWriteOcrClassSvm

Alternatives

read_ocr_class_svmread_ocr_class_svmReadOcrClassSvmread_ocr_class_svmReadOcrClassSvmReadOcrClassSvm

See also

train_class_svmtrain_class_svmTrainClassSvmtrain_class_svmTrainClassSvmTrainClassSvm

Module

OCR/OCV


ClassesClassesClassesClasses | | | | Operators