概述
这阵子在搞OCR识别,又在百度上Google了两天,发现OCR识别这个东东已经比较成熟了,在别人邀请我一起参加比赛的时候,我开始怀疑技术还不是 很成熟,不查不知道,一查还发现,我们国内在这领域的技术还是相当的领先的,国家早在很久以前就投了很多钱在这上面,而且孵化出了TH-OCR这个公司。 没想到微软居然早在2003年就公布了一个很好的组件---Microsoft
Office Document Imaging;这样就方便的做OCR识别了。
首先用office安装盘安装这个组件,默认安装office的时候是不会安装的,只要添加这个组件功能就好了。
然后新建的项目里添加组件Microsoft Office
Document Imaging 12.0 Type Library(office07)或者Microsoft Office Document
Imaging 11.0 Type Library(office03)
Document Imaging 12.0 Type Library(office07)或者Microsoft Office Document
Imaging 11.0 Type Library(office03)
核心代码如下:
MODI.Document doc = new
MODI.Document();
doc.Create("picPath");
MODI.Image image;
MODI.Layout layout;
string ret = null;
//doc.OCR(MODI.MiLANGUAGES.miLANG_ENGLISH, true, true);识别英文
doc.OCR(MODI.MiLANGUAGES.miLANG_CHINESE_SIMPLIFIED, true,
true);//识别中文
for (int i = 0; i < doc.Images.Count; i++)
{
image = (MODI.Image)doc.Images[i];
layout = image.Layout;
ret += layout.Text;
}
return ret;
MODI.Document();
doc.Create("picPath");
MODI.Image image;
MODI.Layout layout;
string ret = null;
//doc.OCR(MODI.MiLANGUAGES.miLANG_ENGLISH, true, true);识别英文
doc.OCR(MODI.MiLANGUAGES.miLANG_CHINESE_SIMPLIFIED, true,
true);//识别中文
for (int i = 0; i < doc.Images.Count; i++)
{
image = (MODI.Image)doc.Images[i];
layout = image.Layout;
ret += layout.Text;
}
return ret;
其中主要几点,第一,关于语言的选择如果文档图片为中英文混合,则最好选中文,如果是纯英文那么就选英文
第二,电脑因素,不知道为什么,我开始在win7物理机上跑,总是出现OCR
running error,但是我把他放在虚拟机里跑就OK了,而放到别人的电脑上也没问题,可能是RP问题吧,我无语了两天。。。。
running error,但是我把他放在虚拟机里跑就OK了,而放到别人的电脑上也没问题,可能是RP问题吧,我无语了两天。。。。
在用微软的技术的时候,关键是创意,微软这个平台给我们提供了很多很强大的技术,我们可以在这个平台上充分发挥想象力,做一些有意思的东西。还有就是要积
极关注技术领域,哪些技术是新的,哪些是成熟的,有哪些开源项目等等,都对我们以后做一个什么东西有帮助的。
无论什么样的识别程序,大致都是这么5个步骤。
(1)图像提取
(2)图像预处理、清洗
(3)分块切割
(4)分类识别
(5) 得出结果
(1)图像提取
(2)图像预处理、清洗
(3)分块切割
(4)分类识别
(5) 得出结果
最后
以上就是自然大侠为你收集整理的C#关于OCR识别的全部内容,希望文章能够帮你解决C#关于OCR识别所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复