tesseract .net 中使用历程

本文探讨了文字识别技术的应用,并选择了开源引擎Tesseract 3.0.1进行实操。通过查阅资源、下载安装相关依赖库、配置训练数据集,实现了英文与中文的文字识别功能。详细介绍了在不同环境下遇到的问题解决方法,包括解决找不到DLL文件、配置中文训练数据、以及在C#环境中调用Tesseract进行识别的过程。
摘要由CSDN通过智能技术生成

最近在看文字识别的实例,也查询很多文章,最后还是选定开源的引擎(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++中,但语言包应该是一样的,而且以前我也FQ下过简体中文的,也也可以下他提供的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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值