trainf_ocr_class_knnT_trainf_ocr_class_knnTrainfOcrClassKnnTrainfOcrClassKnntrainf_ocr_class_knn (Operator)
Name
trainf_ocr_class_knnT_trainf_ocr_class_knnTrainfOcrClassKnnTrainfOcrClassKnntrainf_ocr_class_knn
— Trains an k-NN classifier for an OCR task.
Signature
void TrainfOcrClassKnn(const HTuple& OCRHandle, const HTuple& TrainingFile, const HTuple& GenParamName, const HTuple& GenParamValue)
void HOCRKnn::TrainfOcrClassKnn(const HTuple& TrainingFile, const HTuple& GenParamName, const HTuple& GenParamValue) const
void HOCRKnn::TrainfOcrClassKnn(const HString& TrainingFile, const HTuple& GenParamName, const HTuple& GenParamValue) const
void HOCRKnn::TrainfOcrClassKnn(const char* TrainingFile, const HTuple& GenParamName, const HTuple& GenParamValue) const
void HOCRKnn::TrainfOcrClassKnn(const wchar_t* TrainingFile, const HTuple& GenParamName, const HTuple& GenParamValue) const
(
Windows only)
Description
trainf_ocr_class_knntrainf_ocr_class_knnTrainfOcrClassKnnTrainfOcrClassKnntrainf_ocr_class_knn
trains the k-NN classifier
OCRHandleOCRHandleOCRHandleOCRHandleocrhandle
with the training characters stored in the OCR
training files given by TrainingFileTrainingFileTrainingFiletrainingFiletraining_file
. The training files
must have been created, e.g., using write_ocr_trainfwrite_ocr_trainfWriteOcrTrainfWriteOcrTrainfwrite_ocr_trainf
, before
calling trainf_ocr_class_knntrainf_ocr_class_knnTrainfOcrClassKnnTrainfOcrClassKnntrainf_ocr_class_knn
. Please, note that training characters
that have no corresponding class in the classifier OCRHandleOCRHandleOCRHandleOCRHandleocrhandle
are
discarded.
The following options may be set using GenParamNameGenParamNameGenParamNamegenParamNamegen_param_name
and
GenParamValueGenParamValueGenParamValuegenParamValuegen_param_value
, respectively:
- 'num_trees'"num_trees""num_trees""num_trees""num_trees"
-
Sets the number of search trees. A higher number of trees improves the
accuracy of the search, but also increases the runtime.
Default:
4.
- 'normalization'"normalization""normalization""normalization""normalization"
-
Activates the data normalization, if set to 'true'"true""true""true""true".
This will change the stored training data permanently. Therefore,
adding data after the training is not possible.
List of values:
'true'"true""true""true""true", 'false'"false""false""false""false".
Default:
'false'"false""false""false""false".
Execution Information
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
This operator modifies the state of the following input parameter:
During execution of this operator, access to the value of this parameter must be synchronized if it is used across multiple threads.
Parameters
OCRHandleOCRHandleOCRHandleOCRHandleocrhandle
(input_control, state is modified) ocr_knn →
HOCRKnn, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle of the k-NN classifier.
TrainingFileTrainingFileTrainingFiletrainingFiletraining_file
(input_control) filename.read(-array) →
HTupleMaybeSequence[str]HTupleHtuple (string) (string) (HString) (char*)
Names of the training files.
Default:
'ocr.trf'
"ocr.trf"
"ocr.trf"
"ocr.trf"
"ocr.trf"
File extension:
.trf
, .otr
GenParamNameGenParamNameGenParamNamegenParamNamegen_param_name
(input_control) string-array →
HTupleSequence[str]HTupleHtuple (string) (string) (HString) (char*)
Names of the generic parameters that can be adjusted
for the k-NN classifier creation.
Default:
[]
List of values:
'normalization'"normalization""normalization""normalization""normalization", 'num_trees'"num_trees""num_trees""num_trees""num_trees"
GenParamValueGenParamValueGenParamValuegenParamValuegen_param_value
(input_control) number-array →
HTupleSequence[Union[int, str, float]]HTupleHtuple (integer / string / real) (int / long / string / double) (Hlong / HString / double) (Hlong / char* / double)
Values of the generic parameters that can be adjusted
for the k-NN classifier creation.
Default:
[]
Suggested values:
4, 5, 'false'"false""false""false""false", 'true'"true""true""true""true"
Example (HDevelop)
* Train an OCR classifier
read_ocr_trainf_names ('ocr.trf', CharacterNames, CharacterCount)
create_ocr_class_knn (8, 10, 'constant', 'default', CharacterNames, [],\
[], OCRHandle)
trainf_ocr_class_knn (OCRHandle, 'ocr.trf', [], [])
write_ocr_class_knn (OCRHandle, 'ocr.omc')
Result
If the parameters are valid, the operator
trainf_ocr_class_knntrainf_ocr_class_knnTrainfOcrClassKnnTrainfOcrClassKnntrainf_ocr_class_knn
returns the value 2 (
H_MSG_TRUE)
. If necessary,
an exception is raised.
Possible Predecessors
create_ocr_class_knncreate_ocr_class_knnCreateOcrClassKnnCreateOcrClassKnncreate_ocr_class_knn
,
write_ocr_trainfwrite_ocr_trainfWriteOcrTrainfWriteOcrTrainfwrite_ocr_trainf
,
append_ocr_trainfappend_ocr_trainfAppendOcrTrainfAppendOcrTrainfappend_ocr_trainf
,
write_ocr_trainf_imagewrite_ocr_trainf_imageWriteOcrTrainfImageWriteOcrTrainfImagewrite_ocr_trainf_image
Possible Successors
do_ocr_single_class_knndo_ocr_single_class_knnDoOcrSingleClassKnnDoOcrSingleClassKnndo_ocr_single_class_knn
,
do_ocr_multi_class_knndo_ocr_multi_class_knnDoOcrMultiClassKnnDoOcrMultiClassKnndo_ocr_multi_class_knn
Alternatives
read_ocr_class_knnread_ocr_class_knnReadOcrClassKnnReadOcrClassKnnread_ocr_class_knn
See also
train_class_knntrain_class_knnTrainClassKnnTrainClassKnntrain_class_knn
Module
OCR/OCV