do_ocr_singleT_do_ocr_singleDoOcrSingleDoOcrSingledo_ocr_single (算子)
名称
do_ocr_singleT_do_ocr_singleDoOcrSingleDoOcrSingledo_ocr_single — 对一个字符进行分类。
警告
do_ocr_singledo_ocr_singleDoOcrSingleDoOcrSingleDoOcrSingledo_ocr_single 已过时,仅出于向后兼容性考虑而保留。 New applications should use the
MLP, SVM or CNN based operators instead.
签名
描述
算子 do_ocr_singledo_ocr_singleDoOcrSingleDoOcrSingleDoOcrSingledo_ocr_single assigns classes to the
CharacterCharacterCharacterCharactercharactercharacter (characters).
For gray value features gray values of the surrounding rectangles of the
regions will be used. The gray values will be taken from the
parameter ImageImageImageImageimageimage. For each character the two classes
with the highest confidences will be returned in
ClassesClassesClassesClassesclassesclasses. The corresponding confidences will be
returned in ConfidencesConfidencesConfidencesConfidencesconfidencesconfidences. The confidence value indicates the
similarity between the input pattern and the assigned character.
执行信息
- 多线程类型:可重入(与非独占算子并行运行)。
- 多线程作用域:全局(可从任何线程调用)。
- 未采用并行化处理。
参数
CharacterCharacterCharacterCharactercharactercharacter (输入对象) region → objectHRegionHObjectHRegionHobject
Character to be recognized.
ImageImageImageImageimageimage (输入对象) singlechannelimage → objectHImageHObjectHImageHobject (byte / uint2)
字符的灰度值。
OcrHandleOcrHandleOcrHandleOcrHandleocrHandleocr_handle (输入控制) ocr_box → HOCRBox, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
ID of the OCR classifier.
ClassesClassesClassesClassesclassesclasses (输出控制) string-array → HTupleSequence[str]HTupleHtuple (string) (string) (HString) (char*)
Classes (names) of the characters.
元素数量:
2
ConfidencesConfidencesConfidencesConfidencesconfidencesconfidences (输出控制) real-array → HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
Confidence values of the characters.
元素数量:
2
示例(C)
HTuple Classes,Confidences;
Hlong orc_handle;
HTuple OcrHandle;
read_ocr("testnet",&orc_handle);
create_tuple(&OcrHandle,1);
set_i(OcrHandle,orc_handle,0);
read_image(&Image,"character.tiff");
binary_threshold(Image,&Dark, 'otsu', 'dark', &UsedThreshold);
connection(Dark,&Character);
count_obj(Character,&num);
open_window(0,0,-1,-1,0,"","",&WindowHandle);
for (i=0; i<num; i++) {
select_obj(Character,&SingleCharacter,i);
T_do_ocr_single(SingleCharacter,Image,
OcrHandle,&Classes,&Confidences);
printf("best = %s (%g)\n",
get_s(Classes,0),get_d(Confidences,0));
printf("second = %s (%g)\n\n",
get_s(Classes,1),get_d(Confidences,1));
}
结果
If the input parameters are correct, the operator
do_ocr_singledo_ocr_singleDoOcrSingleDoOcrSingleDoOcrSingledo_ocr_single 返回值 2 ( H_MSG_TRUE )。否则将抛出异常。
可能的前趋
traind_ocr_class_boxtraind_ocr_class_boxTraindOcrClassBoxTraindOcrClassBoxTraindOcrClassBoxtraind_ocr_class_box,
trainf_ocr_class_boxtrainf_ocr_class_boxTrainfOcrClassBoxTrainfOcrClassBoxTrainfOcrClassBoxtrainf_ocr_class_box,
read_ocrread_ocrReadOcrReadOcrReadOcrread_ocr,
connectionconnectionConnectionConnectionConnectionconnection,
sort_regionsort_regionSortRegionSortRegionSortRegionsort_region
替代
do_ocr_multido_ocr_multiDoOcrMultiDoOcrMultiDoOcrMultido_ocr_multi
另见
write_ocrwrite_ocrWriteOcrWriteOcrWriteOcrwrite_ocr
模块
光学字符识别/光学字符验证