Skip to content

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🔗

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