Tesseract在OpenCV+Visual Studio 2015下实现OCR

最近参加一个比赛需要在图片中识别文字,网上查找资料可以通过Tesseract实现,Tesseract-OCR是用HP公司团队开发Google团队维护的开源OCR引擎。这里主要说明Tesseract在OpenCV+VS下的环境配置和实现问题。

这里用到的工具(其他版本也类似):

OpenCV3.1.0+Visual Studio2015+Cmake+cppan+tesseract-master

一、下载相关工具

1、下载Cmake。https://cmake.org/download/

这里使用的是cmake-3.10.3-win64-x64版本,直接进行解压即可。将F:\cmake-3.10.3-win64-x64\bin(根据你解压的路径)文件路径加入到环境变量Path中,Cmake配置完成。


2、下载cppan。https://cppan.org/client/

这里下载的是cppan-master-Windows-client.zip。解压后是cppan.exe。将cppan.exe所在的文件路径加入到环境变量Path中,cppan就设置完成了。


3、下载tesseract-master。https://github.com/tesseract-ocr/tesseract

下载tesseract-master,解压到相应位置。


二、编译生成tesseract工程文件

1、运行cppan,下载支持库。

在搜索栏中键入PowerShell(一种命令行外壳程序和脚本环境),选择Windows PowerShell打开。


  • 1)在打开的脚本环境下键入tesseract-master解压的路径;
  • 2)在该路径下继续在Windows PowerShell下运行cppan,然后回车,等待cppan程序运行;
  • 3)在tesseract-master文件夹下新建文件tebuild,并进入;

2、运行Cmake,编译生成相关工程。

在Windows PowerShell下运行cmake .. -G "Visual Studio 14 2015 Win64",注意这里-G "Visual Studio 14 2015 Win64"表示是运用VS2015进行编译,生成64位的工程,如果不加生成的是32位的,另外这里是由两个点。


这时在tebuild文件夹下生成了工程tesseract.sln。

三、使用Visual Studio2015对tesseract进行编译。

首先使用Visual Studio2015打开tesseract.sln,分别选择64位Debug和Release平台,然后在菜单栏生成目录下选择生成解决方案。这一过程一般需要花费几分钟时间,



第一次生成时一般会出现错误,是由于编码原因造成的,这是双击出错的位置,定位到出错的文件,在文件菜单中选择高级保存选项将其中的编码由Unicode(UTF-8无签名)-代码页65001更换为简体中文(GB2312-80)-代码页20936。重新进行生成。




然后选中解决方案管理器中INSTALL选项,右键选择仅用于项目—>仅生成INSTALL(B)。

注意观察生成窗口显示的信息,在 C:/Program Files/tesseract目录下生成了相应的文件(这里以Debug下为例),终于见到了bin、include、lib等熟悉的名字,其实就是生成的库文件,Release情况也类似。



四、在Visual Studio 2015中配置环境

上一步编译生成的文件C:/Program Files/tesseract下分别包括了Debug和Release的库,可以将C:/Program Files/tesseract文件从C盘中剪切到其他盘里面(强迫症呀),这里我放到了F盘。在步骤二中建立的F:\tesseract-master\tebuild文件夹下bin文件夹下查找所有的.dll文件,并复制到刚才从C盘复制的文件夹F:\tesseract\bin下。




打开一个VS工程,进行环境配置。

分别打开属性管理器的Debug|x64和Release|x64下的属性页

  • 在VC++目录—>包含目录下加入F:\tesseract\include;
  • 在VC++目录—>库目录下加入F:\tesseract\lib;
  • 在链接器—>附加依赖项下加入F:\tesseract\lib\*d.lib和F:\tesseract\lib\*.lib。

整个的配置是在原来的基础上添加这些内容,不删除之前配置的OpenCV的一些环境。

然后将F:\tesseract\bin;加入到环境变量中,否则会提示找不到相应的.dll文件,如果这里报错,可以重新打开工程。





还有一个非常重要的步骤,需要在F:\tesseract-master\tessdata目录下放入训练数据包,可在https://github.com/tesseract-ocr/tessdata进行下载,其中eng.traineddata用于识别英文,chi_sim.traineddata用于识别简体中文,当然也可以生成自己的训练数据库,这样更加贴合自己的实际任务。


至此整个的配置过程结束,下面通过一个例子进行测试。




Reference:

http://lib.csdn.net/article/deeplearning/67228


评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值