Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * https://groups.google.com/d/msgid/tesseract-ocr/7dd534f7-3e85-480f-bb81-3d34c7af0c05%40googlegroups.com?utm_medium=email&utm_source=footer
- * Compile and run with:
- *
- * $ g++ -o init_para_example init_para_example.cpp -ltesseract -llept && ./init_para_example
- */
- #include "leptonica/allheaders.h"
- #include "tesseract/baseapi.h"
- #include "tesseract/strngs.h"
- #include "tesseract/genericvector.h"
- int main(int argc, char **argv) {
- PIX *pixs;
- char *outText;
- const char *filename = "/usr/src/tesseract-ocr.qmake/test/12OUT_2.jpg";
- const char *language = "ita";
- const char *datapath = "/usr/src/tesseract-ocr/";
- tesseract::PageSegMode pagesegmode = tesseract::PSM_AUTO;
- if (argv[1])
- filename = argv[1];
- if ((pixs = pixRead(filename)) == NULL) {
- printf("Unsupported image type of file %s.\n", filename);
- exit(3);
- }
- // turn of dictionaries -> only possible during init
- GenericVector<STRING> vars_vec;
- vars_vec.push_back("load_system_dawg");
- vars_vec.push_back("load_freq_dawg");
- vars_vec.push_back("load_punc_dawg");
- vars_vec.push_back("load_number_dawg");
- vars_vec.push_back("load_unambig_dawg");
- vars_vec.push_back("load_bigram_dawg");
- vars_vec.push_back("load_fixed_length_dawgs");
- //vars_vec.push_back("user_patterns_suffix");
- GenericVector<STRING> vars_values;
- vars_values.push_back("F");
- vars_values.push_back("F");
- vars_values.push_back("F");
- vars_values.push_back("F");
- vars_values.push_back("F");
- vars_values.push_back("F");
- vars_values.push_back("F");
- //vars_values.push_back("pharma-words");
- tesseract::TessBaseAPI *api = new tesseract::TessBaseAPI();
- printf("Using tesseract c++ API: %s\n", api->Version());
- api->Init(datapath, language, tesseract::OEM_DEFAULT,
- NULL, 0, &vars_vec, &vars_values, false);
- api->SetVariable("tessedit_char_whitelist",
- "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
- "0123456789,®");
- api->SetVariable("language_model_penalty_non_dict_word", "0");
- api->SetPageSegMode(pagesegmode);
- api->SetImage(pixs);
- // Check if change of init parameters was successful
- STRING var_value;
- api->GetVariableAsString("load_system_dawg", &var_value);
- printf("Variable 'load_system_dawg' is set to '%s'\n", var_value.string());
- outText = api->GetUTF8Text();
- printf("OCR output: \n%s", outText);
- api->End();
- delete [] outText;
- pixDestroy (&pixs);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment