do_ocr_single_class_knnDoOcrSingleClassKnnDoOcrSingleClassKnndo_ocr_single_class_knnT_do_ocr_single_class_knn
Short description
do_ocr_single_class_knnDoOcrSingleClassKnnDoOcrSingleClassKnndo_ocr_single_class_knnT_do_ocr_single_class_knn — Classify a single character with an OCR classifier.
Signature
do_ocr_single_class_knn( region Character, image Image, ocr_knn OCRHandle, integer NumClasses, integer NumNeighbors, out string Class, out real Confidence )void DoOcrSingleClassKnn( const HObject& Character, const HObject& Image, const HTuple& OCRHandle, const HTuple& NumClasses, const HTuple& NumNeighbors, HTuple* Class, HTuple* Confidence )static void HOperatorSet.DoOcrSingleClassKnn( HObject character, HObject image, HTuple OCRHandle, HTuple numClasses, HTuple numNeighbors, out HTuple classVal, out HTuple confidence )def do_ocr_single_class_knn( character: HObject, image: HObject, ocrhandle: HHandle, num_classes: Sequence[int], num_neighbors: Sequence[int] ) -> Tuple[Sequence[str], Sequence[float]]
def do_ocr_single_class_knn_s( character: HObject, image: HObject, ocrhandle: HHandle, num_classes: Sequence[int], num_neighbors: Sequence[int] ) -> Tuple[str, float]Herror T_do_ocr_single_class_knn( const Hobject Character, const Hobject Image, const Htuple OCRHandle, const Htuple NumClasses, const Htuple NumNeighbors, Htuple* Class, Htuple* Confidence )
HTuple HRegion::DoOcrSingleClassKnn( const HImage& Image, const HOCRKnn& OCRHandle, const HTuple& NumClasses, const HTuple& NumNeighbors, HTuple* Confidence ) const
HString HRegion::DoOcrSingleClassKnn( const HImage& Image, const HOCRKnn& OCRHandle, const HTuple& NumClasses, const HTuple& NumNeighbors, double* Confidence ) const
HTuple HOCRKnn::DoOcrSingleClassKnn( const HRegion& Character, const HImage& Image, const HTuple& NumClasses, const HTuple& NumNeighbors, HTuple* Confidence ) const
HString HOCRKnn::DoOcrSingleClassKnn( const HRegion& Character, const HImage& Image, const HTuple& NumClasses, const HTuple& NumNeighbors, double* Confidence ) const
HTuple HRegion.DoOcrSingleClassKnn( HImage image, HOCRKnn OCRHandle, HTuple numClasses, HTuple numNeighbors, out HTuple confidence )
string HRegion.DoOcrSingleClassKnn( HImage image, HOCRKnn OCRHandle, HTuple numClasses, HTuple numNeighbors, out double confidence )
HTuple HOCRKnn.DoOcrSingleClassKnn( HRegion character, HImage image, HTuple numClasses, HTuple numNeighbors, out HTuple confidence )
string HOCRKnn.DoOcrSingleClassKnn( HRegion character, HImage image, HTuple numClasses, HTuple numNeighbors, out double confidence )
Description
do_ocr_single_class_knnDoOcrSingleClassKnn uses the OCR-k-NN classifier
OCRHandleOCRHandleocrhandle to determine the best training samples for the
features of the character given by the region Charactercharactercharacter and
the gray values Imageimageimage and returns their classes in
ClassclassValclass and the corresponding confidences in Confidenceconfidenceconfidence.
If the first NumNeighborsnumNeighborsnum_neighbors training vectors have different classes,
maximally NumClassesnumClassesnum_classes classes are returned sorted by frequency
and weighted distance.
The confidences lie between 0.0 and 1.0. The larger the value, the
more reliable is the classification.
The confidence can be only computed robustly
if NumNeighborsnumNeighborsnum_neighbors is large enough.
Because multiple classes may be returned by
do_ocr_single_class_knnDoOcrSingleClassKnn, Charactercharactercharacter may only contain
a single region (a single character). If multiple characters should
be classified in a single call, do_ocr_multi_class_knnDoOcrMultiClassKnn must
be used. Before calling do_ocr_single_class_knnDoOcrSingleClassKnn, the classifier must
be trained with trainf_ocr_class_knnTrainfOcrClassKnn or
select_feature_set_trainf_knnSelectFeatureSetTrainfKnn.
If all NumNeighborsnumNeighborsnum_neighbors neighbors are of the same class, only
one class is returned.
Execution information
-
Multithreading type: reentrant (runs in parallel with non-exclusive operators).
-
Multithreading scope: global (may be called from any thread).
-
Processed without parallelization.
Parameters
Charactercharactercharacter (input_object) region → objectHObjectHRegionHObjectHobject
Character to be recognized.
Imageimageimage (input_object) singlechannelimage → object (byte / uint2)HObject (byte / uint2)HImage (byte / uint2)HObject (byte / uint2)Hobject (byte / uint2)
Gray values of the character.
OCRHandleOCRHandleocrhandle (input_control) ocr_knn → (handle)HTuple (HHandle)HOCRKnn, HTuple (IntPtr)HHandleHtuple (handle)
Handle of the k-NN classifier.
NumClassesnumClassesnum_classes (input_control) integer-array → (integer)HTuple (Hlong)HTuple (int / long)Sequence[int]Htuple (Hlong)
Number of maximal classes to determine.
Default: 11
Suggested values: 1, 2, 3, 4, 51, 2, 3, 4, 5
NumNeighborsnumNeighborsnum_neighbors (input_control) integer-array → (integer)HTuple (Hlong)HTuple (int / long)Sequence[int]Htuple (Hlong)
Number of neighbors to consider.
Default: 11
Suggested values: 1, 2, 3, 4, 51, 2, 3, 4, 5
ClassclassValclass (output_control) string(-array) → (string)HTuple (HString)HTuple (string)Sequence[str]Htuple (char*)
Results of classifying the character with the
k-NN.
Confidenceconfidenceconfidence (output_control) real(-array) → (real)HTuple (double)HTuple (double)Sequence[float]Htuple (double)
Confidence(s) of the class(es) of the character.
Result
If the parameters are valid, the operator
do_ocr_single_class_knnDoOcrSingleClassKnn returns the value 2 (H_MSG_TRUE). If
necessary, an exception is raised.
Combinations with other operators
Combinations
Possible predecessors
trainf_ocr_class_knnTrainfOcrClassKnn, read_ocr_class_knnReadOcrClassKnn
Alternatives
do_ocr_multi_class_knnDoOcrMultiClassKnn
See also
create_ocr_class_knnCreateOcrClassKnn, classify_class_knnClassifyClassKnn
Module
OCR/OCV