tesseract .net 中使用历程

最近在看文字识别的实例,也查询很多文章,最后还是选定开源的引擎(tesseract3.0.1)

最开始找到的是用微软Office的一个组件实现的,个人感觉不是我想要的(要开源啊才是王道)

http://www.cnblogs.com/vipstone/archive/2011/10/08/2202397.html

后面在开源中图看到了开源项目:

http://www.oschina.net/news/40027/6-opensource-ocr-tools

找到了(tesseract )看到学是google开源的还排到第一个于是就找Demo

是有找到而但总是出了些问题,还加上自己有点晕控制台,就没有太在意所出的是什么错,再者就是自己暂时不需要于是就放下了

今天有空就再来拾起看看!

第一步:在stackoverflow 上找到了

http://stackoverflow.com/questions/15659278/tesseract-3-0-ocr-net-4-0-wrapper

有用的内容如下:

There is now a NuGet Package for the .NET wrapper of charlesw with precompiled versions for all runtimes

http://www.nuget.org/packages/Tesseract/

The project is on:

https://github.com/charlesw/tesseract

Is very important to install Visual Studio 2012 Runtimes on the client machines

http://www.microsoft.com/en-us/download/details.aspx?id=30679

于是我就去在github上下载下来,发现以前也下过,没关系再下一次就可以了

下载下来打整了几下,我机子报打不到这两个dll(msvcr120.dll,msvcp120.dll),没关系其他机子上都拷到system32 下就好了!

读取英文没有问题,那我们来读中方吧,

还是在stackoverflow下来找到

http://stackoverflow.com/questions/16581626/chinese-character-recognition-using-tesseract-ocr/16582777#16582777

You need to download chinese trained data (it will be a file like chi_sim.traineddata) and add it to your tessdata folder.

To download the file https://code.google.com/p/tesseract-ocr/downloads/detail?name=chi_sim.traineddata.gz

and use like this

Tesseract* tesseract= [[Tesseract alloc] initWithDataPath:@"tessdata" language:@"chi_sim"];

if you have any problem you can download my experiment with tessaract (with chinese language support) from https://github.com/aryansbtloe/ExperimentWithTesseract.git

I have tested this one...Hope you will find this useful.

虽然后他说的是C++中,但语言包应该是一样的,而且以前我也翻墙下过简体中文的,也也可以下他提供的github下去下。

各位我用的是Tesseract.ConsoleDemo这个项目来做测试,于是把chi_sim.traineddata文件拷到tessdata这个下面,

Program.cs中将

using (var engine = new TesseractEngine(@"./tessdata", "eng", EngineMode.Default))

改为:

using (var engine = new TesseractEngine(@"./tessdata", "chi_sim", EngineMode.Default))

运行报错了。上次实际都做到这一步了,就是舍不得多走一步,看到一个什么意思,

http://blog.csdn.net/dragoo1/article/details/7961669

简单就是说把tessdata拷贝到exe的所在目录,或者设置TESSDATA_PREFIX环境变量

在bin/debug/tessdata/看了一下,果然后没有chi_sim.traineddata

于把在vs中把这个文件改成始终复制,生成再测试,可以了!

原文地址:https://www.cnblogs.com/xiaoruilin/p/5164170.html