Classification of a character.
The operator ::do_ocr_single assigns classes to the Character (characters). For grayvalue features grayvalues of the surrounding rectangles of the regions will be used. The grayvalues will be taken from the paramter Image. For each character the two classes with the highest confidencenses will be returned in Classes. The corresponding confidences will be returned in Confidences. The confidence value indicates the similarity between the input pattern and the assigned character.
|
Character (input_object) |
region -> Hobject: HRegion |
| Character to be recognized. | |
|
Image (input_object) |
image -> Hobject: HImage |
| Grayvalues of the characters. | |
|
OcrHandle (input_control) |
ocr -> HTuple.long |
| ID of the OCR classifier. | |
|
Classes (output_control) |
string-array -> HTuple.char * |
| Classes (names) of the characters. | |
| Number of elements: 2 | |
|
Confidences (output_control) |
real-array -> HTuple.double * |
| Confidence values of the characters. | |
| Number of elements: 2 | |
HTuple Classes,Confidences;
long orc_handle;
HTuple OcrHandle;
read_ocr("testnet",&orc_handle);
create_tuple(&OcrHandle,1);
set_i(OcrHandle,orc_handle,0);
read_image(&Image,"character.tiff");
bin_threshold(Image,&Dark);
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_single returns the value H_MSG_TRUE. Otherwise an exception will be raised.
::traind_ocr_class_box, ::trainf_ocr_class_box, ::read_ocr, ::connection, ::sort_region
Optical character recognition