文字识别相关手册.doc_第1页
文字识别相关手册.doc_第2页
文字识别相关手册.doc_第3页
文字识别相关手册.doc_第4页
文字识别相关手册.doc_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

文通TH-OCR 11.0 SDK产品手册目 录目 录2第一部分:许可协议31.著作权声明32.授权43.授权限制44.有限担保45.对用户的赔偿5第二部分:系统最小配置6第三部分:系统文件概述61BIN目录62SDK目录63shared dll目录64Driver目录6第四部分:系统功能简介7第五部分 系统调用方法71.用于识别的函数72高级调用接口113用于导出文档的函数134补充增加的函数14第六部分 数据结构及宏定义151函数返回值 TH_ERROR152数据结构163宏定义17第七部分 示例说明19文通TH-OCR SDK 11,是北京文通科技有限公司研制开发的多语种亚洲语言文字识别软件开发包,提供强大的识别API开发接口,帮助用户将OCR文字识别技术无缝内嵌到用户业务系统中,为数字资源的建立提供了方便,快捷,稳定的技术手段。TH-OCR SDK 支持简体中文、繁体中文、日文、韩文、纯英文的文字识别,具有识别率高、适应性强等突出的技术优势。第一部分:许可协议1.著作权声明本产品软件著作权属于中华人民共和国北京文通信息技术有限公司(以下简称文通公司),本系统及使用说明书的著作权属于文通公司,受中华人民共和国著作权法、计算机软件保护条例以及国际版权公约和其他知识产权条约的保护。除以下授权之条款外,非经著作权人或其全权代理人之书面授权,任何与协议书不符的、以任何方式、任何文字所做局部或全部之复制、重制或转载、修改的行为均被法律明确禁止,违者将根据中华人民共和国有关法律承担民事及刑事责任。 2.授权1) 您在使用期间作为合法用户应该持有信誉卡。此为获得售后服务、技术支持、升级服务以及进行法律追索必要的资格证明。 2) 您可在使用许可协议规定的范围内使用本系统。 3) “使用”指您利用本系统提供的功能对本系统的数据进行访问。 3.授权限制 1) 禁止利用本系统从事任何违反中华人民共和国现行法律、法规的活动。 2) 本系统作为一个整体,禁止您在使用许可协议许可范围以外使用。 禁止使用的范围包括但不限于: ()将本系统的部分或全部嵌入其他计算机软件系统; ()将本系统的任何内容用于BBS、INTERNET等多使用者的环境; 3) 禁止您将本系统的全部或部分用于销售、出租、转让、出借、散布、公开展示或从事其他损害著作权人权利的行为,不得将本系统的复制品在未得到著作权人或其代理人同意的前提下分发给任何第三方。 4) 禁止您对本系统进行任何更改、反编译(decompile)、软件还原工程(reverse-dengineer the software)、反汇编(disassemble)、或任何更改原始程序设计系统上的锁定与解除锁定。 5) 禁止非法盗拷或使用任何使用许可协议许可之外的存储媒介进行部分或整体内容的复制与贩售。 6) 禁止遮盖、移动或去除本系统著作权所有者的图形或文字说明。 7) 如果您未遵守协议书的条款,在不作任何通知的情况下,著作权人或其代理人有权终止授权。一旦发生此情况,您必须立即终止使用本系统并销毁所有副本。4.有限担保在本系统交付给您60天内,如发现软件载体有任何非人为的损坏,请在此期间内凭信誉卡与文通公司联系,可获得修理或更换。由于人为损坏、操作不当或使用错误所引起的故障,不承担任何责任。 5.对用户的赔偿 在法律所允许的范围内, 您因使用或不能使用本系统所发生的任何直接的或间接的损失(包括但不限于营业利润的损失、营业中断、商业信息的遗失或其它金钱上的损失),文通公司均不承担赔偿责任。 文通公司为本系统唯一的制作、发行、维护及进行法律追索的代理人。 未经本协议书明确授予的权利均予保留。 文通公司保留对协议书的解释权。协议书受中国法律保护和管辖,发生法律纠纷时选择北京地区的法院作为管辖法院。地址:北京市海淀区北四环西路 9 号银谷大厦 16 层 1609 室 电话:(010)62800286/62800250 网址:第二部分:系统最小配置操作系统: Windows 2000、Windows XP、Windows 2003操作系统 及以上版本; CPU:586以上; 内存:256M以上。第三部分:系统文件概述1BIN目录 包括识别核心所需要的各种数据文件。 2SDK目录 Th_ocr32_Dll.dll 该文件是本SDK直接调用的DLL, 供用户在程序中调用。 TH-OCR SDK 11 用户手册.PDF 即本自述文件。 Th_ocr32.h 该文件为用户用C或C+调用DLL时的include文件,主要为数据结构的定义。若用户在VB环境下调用,须转换成相应的VB格式。 Th_ocr32_Dll.lib VS2008格式的库文件,如果使用静态连接DLL,需要使用该库。 3shared dll目录 包含VS2008下的MFC运行库 4Driver目录 包含加密狗的驱动第四部分:系统功能简介本系统具有THOCR系统识别核心所有功能,包括:l 支持TIFF,PCX,BMP,JPG格式图象的读取,支持Packbits和G4压缩的TIFF格式; l 可以对图象由于扫描引起的倾斜进行自动校正; l 可以对图象进行自动版面分析; l 支持GB_2312码(大陆使用)、BIG_5码(台湾使用)、GBK、JIS、Shift-JIS(日文使用)、KSC(韩文)内码的输出; l 能识别纯英文,简繁体中文、日文、韩文、中英文混排的文本图象。第五部分 系统调用方法 1.用于识别的函数 1)TH_Start 2)TH_StartExW 3)TH_StartExA 4)TH_SetOutOcrFile 5)TH_LoadImageA 6)TH_LoadImageW 7)TH_SetImage 8)TH_SetImage2 9)TH_SetLanguage 10)TH_Layout 11)TH_SetRegion 12)TH_SkewAutoRotateW 13)TH_SkewAutoRotateA 14)TH_Recognize 15)TH_End 函数详细说明如下 1) TH_Start 声明 TH_ERROR WINAPI TH_Start(HANDLE hApplication); 功能系统配置和内存分配 参数 hApplication 指用户应用程序句柄,可以为空。 返回值错误代码,见TH_ERROR。 2) TH_StartExW 声明TH_ERROR WINAPI TH_Start(HANDLE hApplication, LPCWSTR lpszOcrDLLPath); 功能系统配置和内存分配 参数 hApplication 指用户应用程序句柄,可以为空。 lpszOcrDLLPath 对应动态库的绝对路径,包括.dll的后缀。 注意 在使用该接口时,要确保动态库与对应的依赖bin文件在同一目录下。而不用与所调用程序在同一目录下。 返回值错误代码,见TH_ERROR。 3) TH_StartExA 声明 TH_ERROR WINAPI TH_Start(HANDLE hApplication LPCWSTR lpszOcrDLLPath); 功能系统配置和内存分配 参数 hApplication 指用户应用程序句柄,可以为空。 lpszOcrDLLPath 对应动态库的绝对路径,包括.dll的后缀。 注意 在使用该接口时,要确保动态库与对应的依赖bin文件在同一目录下。而不用与所调用程序在同一目录下。 返回值错误代码,见TH_ERROR。 4) TH_SetOutOcrFile 声明 TH_ERROR WINAPI TH_ SetOutOcrFile (int nGeneration); 功能 简化识别过程。调用该接口可以简化识别及其识别后的处理,但其作用有限,可能产生不可预知后果。非特殊情况,不建议使用该接口。 参数 nGeneration 是否简化识别过程,默认为是。 返回值错误代码,见TH_ERROR。 5) TH_LoadImageA 声明TH_ERROR WINAPI TH_LoadImageA(LPCSTR lpszImageFile, DWORD dwImgProOption); 功能打开当前识别的图象。 非Unicode函数 参数 lpszImageFile 图片完整路径。 dwImgProOption 图像处理方法,见TH_IMGPRO_OPTION; 返回值错误代码,见TH_ERROR。 6) TH_LoadImageW 声明TH_ERROR WINAPI TH_LoadImageW(LPCWSTR lpszImageFile, DWORD dwImgProOption) 功能打开当前识别的图象。Unicode函数 参数同TH_LoadImageA返回值错误代码,见TH_ERROR。 7) TH_SetImage 声明TH_ERROR WINAPI TH_SetImage( int nWidth, int nHeight, int nBitCount, LPBYTE lpImage, DWORD dwImgProOption); 功能打开当前识别的图象。 参数 nWidth 图片宽度。 nHeight 图片高度。 nWidth 图片宽度。 nBitCount 图片位数。 lpImage 图片内容的一维数组形式。 dwImgProOption图像处理方法,见TH_IMGPRO_OPTION; 返回值错误代码,TH_ERROR。 8) TH_SetImage2 声明TH_ERROR WINAPI TH_SetImage2( int nWidth, int nHeight, int nBitCount, LPBYTE *lpLine, DWORD dwImgProOption); 功能打开当前识别的图象。 参数 nWidth 图片宽度。 nHeight 图片高度。 nBitCount 图片位数。 lpLine 图像数据数组指针 dwImgProOption图像处理方法,见TH_IMGPRO_OPTION; 返回值错误代码,TH_ERROR。 9) TH_SetLanguage 声明TH_ERROR WINAPI TH_SetLanguage(int nLanguage); 功能设置识别默认语言; 注意识别前,未调用TH_SetRegion,此函数设置的默认语言有效; 参数nLanguage 语言,可选项见TH_RECOG_LANG; 返回值无返回值 10) TH_Layout 声明TH_ERROR WINAPI TH_Layout( int nOption, int nMaxRegion, LPTHREGION pRegion, int *nRegionCount); 功能自动版面分析 参数 nOption 保留值,必须为0。 nMaxRegion 预设置的区域数组长度 pRegion 预设置的区域数组,结构定义见THREGION nRegionCount 版面分析后,传出的实际分析的区域数组长度。 返回值错误代码,见TH_ERROR。 11) TH_SetRegion 声明TH_ERROR WINAPI TH_SetRegion(LPTHREGION pRegion, int nRegion); 功能设置识别的区域 参数 pRegion 识别区域数组指针,结构定义见THREGION。 nRegion 识别区域数组长度。 返回值错误代码,见TH_ERROR。 12) TH_SkewAutoRotateW 声明TH_ERROR WINAPI TH_SkewAutoRotateW(const wchar_t* lpstrIMGInpath,const wchar_t* lpstrIMGOutpath); 功能自动倾斜校正 参数lpstrIMGInpath 输入图像路径。 lpstrIMGOutpath 倾斜校正后保存的图像路径。 返回值错误代码,见TH_ERROR。 13) TH_SkewAutoRotateA 声明TH_ERROR WINAPI TH_SkewAutoRotateA(const char* lpstrIMGInpath,const char* lpstrIMGOutpath); 功能自动倾斜校正。非Unicode函数 参数同TH_SkewAutoRotateW。 返回值错误代码,见TH_ERROR。 14) TH_Recognize 声明TH_ERROR WINAPI TH_Recognize(); 功能识别操作 注意调用此函数前,如果没有调用TH_SetRegion,则自动进行版面分析,再识别。 返回值错误代码,见TH_ERROR。 15) TH_End 声明TH_ERROR WINAPI TH_End(); 功能主要释放由TH_Start()所分配的内存。识别完成后必须调用此函数。 参数无 返回值错误代码,见TH_ERROR。 2高级调用接口 用于设置进度显示的回调函数及识别结果取得的函数: 16) TH_SetCallBackAddress 17) TH_OutPutCharInfo 18) TH_OutPutCharInfoByRegion 19) TH_ SaveOCRFileW 20) TH_ SaveOCRFileA 21) TH_ LoadOCRFileW 22) TH_ LoadOCRFileA 函数详细说明如下: 16) TH_SetCallBackAddress 声明TH_ERROR WINAPI TH_SetCallBackAddress(LONG pStart, LONG pFinish, LONG pSetStage, LONG pSetPerc); 功能 用户设置的回调函数 参数 四个参数分别为下边四个回调函数的地址: BOOL CALLBACK ProgressStart(); BOOL CALLBACK ProgressFinish(); BOOL CALLBACK ProgressSetStage(WORD wStageNumber, LPSTR lpStageName); wStageNumber= 0 lpStageName=读取图象 wStageNumber= 1 lpStageName=版面分析 wStageNumber= 2 lpStageName=倾斜校正 wStageNumber= 3 lpStageName=识别 wStageNumber= 4 lpStageName=处理 BOOL CALLBACK ProgressSetPerc(WORD wPercent); 总的识别进度 0100 返回值错误代码,见TH_ERROR。 17) TH_OutPutCharInfo 声明TH_ERROR WINAPI TH_OutPutCharInfo(int nMaxChar, LPTHCHARINFO pCharInfo, int *nCharCount); 功能获得图像中所有识别结果的数据; 参数 nMaxChar 预设置输出的识别字体信息长度; pCharInfo 预设置输出的识别字体信息长度指针,结构定义见 THCHARINFO; nCharCount 此函数返回的实际输出的识别字体信息长度; 返回值错误代码,见TH_ERROR。 18) TH_OutPutCharInfoByRegion 声明TH_ERROR WINAPI TH_OutPutCharInfoByRegion(int nMaxChar, LPTHCHARINFO pCharInfo, int *nCharCount, int nRegionIdx); 功能获得指定区域的文字识别结果,这个函数只有在调用了TH_SetRegion函数后才有效; 参数 nMaxChar 预设置输出的识别字体信息长度; pCharInfo 预设置输出的识别字体信息长度指针,结构定义见 THCHARINFO; nCharCount 此函数返回的实际输出的识别字体信息长度 nRegionIdx 指定区域序号,与TH_SetRegion函数中的序号一致; 返回值错误代码,见TH_ERROR。 19) TH_SaveOCRFileW 声明TH_ERROR WINAPI TH_SaveOCRFileW(const wchar_t* lpstrOcrpath); 功能写本地OCR识别结果文件 参数 lpstrOcrpath OCR文件路径。 返回值错误代码,见TH_ERROR。 20) TH_ SaveOCRFileA 声明TH_ERROR WINAPI TH_SaveOCRFileA(const char* lpstrOcrpath); 功能写本地OCR识别结果文件 参数 同 TH_SaveOCRFileW返回值错误代码,见TH_ERROR。 21) TH_LoadOCRFileW 声明TH_ERROR WINAPI TH_LoadOCRFileW(const wchar_t* lpstrOcrpath); 功能读写本地OCR识别结果文件 注意如果调用此接口读取本地OCR文件,需先调用(TH_LoadImage或者TH_SetImage),不然会返回错误码:1 参数 lpstrOcrpath OCR文件路径。 返回值错误代码,见TH_ERROR。 22) TH_ LoadOCRFileA 声明TH_ERROR WINAPI TH_LoadOCRFileA(const char* lpstrOcrpath); 功能读写本地OCR识别结果文件 注意如果调用此接口读取本地OCR文件,需先调用(TH_LoadImage或者TH_SetImage),不然会返回错误码:1 参数 同 TH_LoadOCRFileW返回值错误代码,见TH_ERROR。 3用于导出文档的函数 用于导出文档的函数共四个: 23) TH_OutputBeginA 24) TH_OutputBeginW 25) TH_OutPutFile 26) TH_OutputEnd 函数详细说明如下: 23) TH_OutputBeginA 声明TH_ERROR WINAPI TH_OutputBeginA(LPCSTR lpszOutputFile ,TH_OUTPUTTYPE nType, DWORD dwOption); 功能设置导出参数。 参数 nType 导出的文档类型,见TH_OUTPUTTYPE; dwOption 导出文件时的选项,根据导出的文件类型不同而有不同的定义。导出TXT的选项见TH_OUTPUT_TXT_ENCODE;导出PDF时的选项见TH_OUTPUT_PDF_OPTION;导出RTF时的选项见TH_OUTPUT_RTF_OPTION; lpszOutputFile 导出文件路径; 返回值错误代码,见TH_ERROR。 24) TH_OutputBeginW 声明TH_ERROR WINAPI TH_OutputBeginW(LPCWSTR lpszOutputFile ,TH_OUTPUTTYPE nType, DWORD dwOption); 功能设置导出参数,Unicode版本。 参数 nType 导出的文档类型,见TH_OUTPUTTYPE; dwOption 导出文件时的选项,根据导出的文件类型不同而有不同的定义。导出TXT的选项见TH_OUTPUT_TXT_ENCODE;导出PDF时的选项见TH_OUTPUT_PDF_OPTION;导出RTF时的选项见TH_OUTPUT_RTF_OPTION; lpszOutputFile 导出文件路径,要求Unicode字符串; 返回值错误代码,见TH_ERROR。 25) TH_OutPutFile 声明TH_ERROR WINAPI TH_OutPutFile(); 功能将当前处理的图像导出至文件; 参数无; 返回值错误代码,见TH_ERROR。 26) TH_OutputEnd 声明TH_ERROR WINAPI TH_OutputEnd(); 功能导出完毕; 参数无; 返回值错误代码,见TH_ERROR。 4补充增加的函数 补充增加的函数: 27) TH_LayoutEx 28) TH_SetRegionEx 29) TH_OutputBeginEx 函数详细说明如下: 27) TH_LayoutEx 声明TH_ERROR WINAPI TH_LayoutEx( int nOption, int nMaxRegion,RECT*rcBound,BYTE* iAttribute, BYTE* iField, BYTE* nRecoglang, int *nRegionCount); 功能自动版面分析 参数 nOption 保留值,必须为0。 nMaxRegion 预设置的区域数组长度 rcBound预设置的区域数组,结构定义见THREGION iAttribute预设置的区域数组,结构定义见THREGION iField预设置的区域数组,结构定义见THREGION nRecoglang预设置的区域数组,结构定义见THREGION nRegionCount 版面分析后,传出的实际分析的区域数组长度。 返回值错误代码,见TH_ERROR。 28) TH_SetRegionEx 声明TH_ERROR WINAPI TH_SetRegionEx(RECT*rcBound,BYTE* iAttribute, BYTE* iField, BYTE* nRecoglang, int nRegion); 功能设置识别的区域 参数 rcBound识别区域数组指针,结构定义见THREGION iAttribute识别区域数组指针,结构定义见THREGION iField识别区域数组指针,结构定义见THREGION nRecoglang识别区域数组指针,结构定义见THREGION nRegion 识别区域数组长度。 返回值错误代码,见TH_ERROR。 29) TH_OutputBeginEx 声明TH_ERROR WINAPI TH_OutputBeginA(LPCSTR lpszOutputFile ,int nType, DWORD dwOption); 功能设置导出参数。 参数 nType 导出的文档类型; dwOption 导出文件时的选项,根据导出的文件类型不同而有不同的定义。导出TXT的选项见TH_OUTPUT_TXT_ENCODE;导出PDF时的选项见TH_OUTPUT_PDF_OPTION;导出RTF时的选项见TH_OUTPUT_RTF_OPTION; lpszOutputFile 导出文件路径; 返回值错误代码,见TH_ERROR。 第六部分 数据结构及宏定义 1函数返回值 TH_ERROR typedef enum TH_ERR_NONE, TH_ERR_LOADIMAGE, TH_ERR_UNSUPPORT, / unsupported feature, wating for next version TH_ERR_OPENFILE, / open file error TH_ERR_UNKNOWN, / the error is not define TH_ERR_NODONGLE, TH_ERR_USERABORT, / user abort when recognized TH_ERR_READLIB, / read recognition library error TH_ERR_LIBNOTEXIST, / recognition library is not exist TH_ERR_TOOMANYREGION, / too many region result when layout analysis TH_ERR_RECOGNIZEFAIL, / Recognize fail TH_ERR_FILEALREADYEXIST, / Export file already exist TH_ERR_IMAGETYPE_NONSUPPORT, / image type nonsupport TH_ERR_IMAGE_SPLITFAIL, / image split fail TH_ERR_IMAGE_NOEXIST, / image is no exist TH_ERR_NOTBINARY, / not binary image TH_ERROR; 2数据结构 1) THREGION 区域数据结构 识别区域数据结构。 typedef struct _thregion RECT rcBound; BYTE iAttribute; / RGNTYPE_xxx region type BYTE iField; TH_RECOG_LANG nRecog_lang;/TH_RECOG_LANG THREGION, FAR * LPTHREGION; rcBound:区域的rect值; iAttribute:区域的类型,见THRGNTYPE; iField:保留值,未定义。 nRecog_lang:区域的识别语言,见TH_RECOG_LANG。 2) THCHARINFO 识别结果结构THREGION typedef struct WORD wCode; / 字符编码,Unicode WORD wCharAttrib; / 字符属性, RECT rcBlock; / 字符边框, WORD wCandidate5; / 侯选字 BYTE nConfidence5; / 置信度 THCHARINFO, * LPTHCHARINFO; 3宏定义 1) TH_IMGPRO_OPTION 加载图像时图像处理的参数。 TH_IMGPRO_OPTION 取值 说明 0 直接加载图像,不进行任何图像处理 TH_IMGPRO_DESKEW 1 进行自动倾斜校正 TH_IMGPRO_AUTOREVERSE2 保留值,未实现 TH_IMGPRO_GRAY_METHOD0x0F00保留值,未实现 TH_IMGPRO_BIN_METHOD 0x6000对装入的图像进行二值化处理,如装入的图像非二值图,建议使用此方法 2) TH_RECOG_LANG 识别语言选项。 TH_RECOG_LANG 取值 说明 TH_RECOG_SIMPLIFIED 0 简体中文 TH_RECOG_TRADITIONAL 1 繁体中文 TH_RECOG_PUREENGLISH 2 纯英文和数字 TH_RECOG_JAPANESE 3 日文 TH_RECOG_HANDWRITTEN 4 手写体 TH_RECOG_SIMPLIFIED_LEVEL_2 5 简体大字符集 TH_RECOG_TRADITIONAL_LEVEL_2 6 繁体大字符集 TH_RECOG_KOREAN 7 韩文 3) THRGNTYPE 版面分析区域类型。 THRGNTYPE 取值

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论