/* Copyright 2013 The MathWorks, Inc. */ #ifndef _OCRUTILS_ #define _OCRUTILS_ #ifndef OCRUTILS_API # define OCRUTILS_API #endif #ifndef EXTERN_C # ifdef __cplusplus # define EXTERN_C extern "C" # else # define EXTERN_C extern # endif #endif #ifdef MATLAB_MEX_FILE #include "tmwtypes.h" #else #include "rtwtypes.h" #endif EXTERN_C OCRUTILS_API int32_T tesseractRecognizeTextUint8(void **, const uint8_T * I, char ** utf8Text, const int32_T width, const int32_T height, const char * textLayout, const char * charSet, const char * tessdata, const char * lang, const boolean_T resetParams); EXTERN_C OCRUTILS_API int32_T tesseractRecognizeTextLogical(void **, const boolean_T * I, char ** utf8Text, const int32_T width, const int32_T height, const char * textLayout, const char * charSet, const char * tessdata, const char * lang, const boolean_T resetParams); EXTERN_C OCRUTILS_API void cleanupTesseract(void *); EXTERN_C OCRUTILS_API void copyTextAndCleanup(char * src, uint8_T * dest, const size_t length); EXTERN_C OCRUTILS_API int32_T getTextFromMetadata(void * ocrMetadata, char ** utf8Text); EXTERN_C OCRUTILS_API void cleanupMetadata(void *); EXTERN_C OCRUTILS_API void collectMetadata(void * tessAPI, void ** ocrMetadata, int32_T * numChars, int32_T * numWords, int32_T * numTextLines, int32_T * numParagraphs, int32_T * numBlocks); EXTERN_C OCRUTILS_API void copyMetadata(void * ocrMetadata, double * charBBox, int32_T * charWordIndex, float * charConfidence, double * wordBBox, int32_T * wordTextLineIndex, float * wordConfidence, int32_T * wordCharacterIndex, double * textlineBBox, int32_T * textlineParagraphIndex, float * textlineConfidence, int32_T * textlineCharacterIndex, double * paragraphBBox, int32_T * paragraphBlockIndex, float * paragraphConfidence, int32_T * paragraphCharacterIndex, double * blockBBox, int32_T * blockPageIndex, float * blockConfidence, int32_T * blockCharacterIndex); #endif