提高Tesseract-ocr识别精度..docx
文本预览下载声明
提高Tesseract-OCR识别精度的方法1.0 Tesseract-OCR简介OCR(Optical Character Recognition光学字符识别)技术,是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程。Tesseract的OCR引擎最先由HP实验室于1985年开始研发,至1995年时已经成为OCR业内最准确的三款识别引擎之一。然而,HP不久便决定放弃OCR业务,Tesseract也从此尘封。数年以后,HP意识到,与其将Tesseract束之高阁,不如贡献给开源软件业,让其重焕新生--2005年,Tesseract由美国内华达州信息技术研究所获得,并求诸于Google对Tesseract进行改进、消除Bug、优化工作。Tesseract目前已作为开源项目发布在Google Project,其最新版本3.0已经支持中文OCR。1.1Tesseract-OCR的安装及使用说明1.Tesseract-OCR的安装过程下载tesseract-ocr-setup-3.02.02.exe进行安装click next选中I accept the terms of License Agreement,点击next点击next修改路径 d:\Program Files\Tesseract-OCR,点击next点击next (6)点击Install (7)点击next (8)点击finish2.Tesseract-OCR使用(1)为了进行中文OCR,将简体中文语言包(chi_sim.traineddata)复制到【tessdata】目录下(2)在DOS下切换到Tesseract 的命令行目录,查看下tesseract.exe的命令格式tesseract imagename outputbase [-l lang] [-psm pagesegmode] [configfile...]tesseract ? ?图片名 ?输出文件名 -l 字库文件 -psm?pagesegmode?配置文件1.2 提高Tesseract-OCR识别精度的方法Tesseract-ocr原先只是为英语文本而设计的,后来经过努力可以实现其他语言。但是在一些大语种语言中进展缓慢,如汉语。由之前的测试可知其对中文的识别率不高。在此我们利用Tesserac-ocr 3.02训练生成新的识别语言库,我们找到两种Tesseract-ocr的训练方法:A.使用jTessBoxEditor工具 B.使用CowBoxer工具。为了能够修改中文我们选择B. 具体过程如下:下载cowboxer1.02.exe,notepad++ 直接就可使用cowboxer1.02.exe的使用方法,打开cowboxer1.02.exe,点击 Help- About F1 。可以看到相关的使用方法。获取样本图像,并生成tif图像convert imagename [lang].[fontname].exp[num].tiflang 为语言名称,fontname为字体名称,num为序号,可以随便定义生成box文件tesseract [lang].[fontname].exp[num].tif [lang].[fontname].exp[num] –l batch.nochop makebox把tif 文件和box文件放在同一目录下(4)运行cowboxer打开box 文件,对box文件进行校正并利用notepad++ 打开box文件修改错误字符(5)定义字体特征文件创建一个名称为font_properties的字体特征文件,font_properties不含BOM头,文件内容格式如下:fontname italic bold fixed serif fraktur其中fontname 为字体名称,必须与[lang].[fontname].exp[num].box中的名称保持一致,italic bold fixed serif fraktur的取值为0或1,表示字体是否具有这些属性。(粗体,斜体等等)用记事本打开font_properties文件,输入(6)产生字符特征文件(*.tr)tesseract [lang].[fontname].exp[number].tif [lang].[fontname].exp[number] nobatch box.train这一步会产生lang.fontname.exp[number].txt; lang.fontname.exp[number].tr为特征文件(7)由*.box文件计算字符集(unicharset)unicharset_extrac
显示全部