图片识别的技术到几天已经很成熟了,只是相关的资料很少,为了方便在此汇总一下(C#实现),方便需要的朋友查阅,也给自己做个记号。

图片识别的用途:很多人用它去破解网站的验证码,用于达到自动刷票或者是批量注册的目的,但我觉得它最吸引我的地方是可以让一些书写的东西,自动识别成电脑上的文字,比如说手拟的合同,修改过的书面论文或者是文档,每月的花费发票需要在电脑上录入或者是汇总信息,日记本上的文章要转移到电脑上等等,我们现在就不用再头痛把它们在电脑上敲写一遍了。

本文介绍两种比较主流和成熟的识别方式:

方式一、Asprise-OCR实现。

方式二、Microsoft Office Document Imaging(Office 2007) 组件实现。

方式一、Asprise-OCR的使用。

Asprise-OCR下载地址:

http://asprise.com/product/ocr/download.php?lang=csharp

其中需要使用的3个dll是AspriseOCR.dll、DevIL.dll、ILU.dll。

需要注意的是这几个.dll是vc写的引用要在程序中用DllImport引用,关键代码:

[DllImport("AspriseOCR.dll", EntryPoint = "OCR", CallingConvention = CallingConvention.Cdecl)]

public static extern IntPtr OCR(string file, int type);

[DllImport("AspriseOCR.dll", EntryPoint = "OCRpart", CallingConvention = CallingConvention.Cdecl)]

static extern IntPtr OCRpart(string file, int type, int startX, int startY, int width, int height);

[DllImport("AspriseOCR.dll", EntryPoint = "OCRBarCodes", CallingConvention = CallingConvention.Cdecl)]

static extern IntPtr OCRBarCodes(string file, int type);

[DllImport("AspriseOCR.dll", EntryPoint = "OCRpartBarCodes", CallingConvention = CallingConvention.Cdecl)]

static extern IntPtr OCRpartBarCodes(string file, int type, int startX, int startY, int width, int height);

调用代码很简单只有一句:

MessageBox.Show(Marshal.PtrToStringAnsi(OCRpart(img_path, -1, startX, startY, width, height)));

其中img_path:为图片路径,startX、startY坐标均为0即可,width、height图片的宽和高。

方式二、Microsoft Office Document Imaging(Office 2007) 组件实现。

在使用之前需要给大家说的是Imaging 组件的兼容性不是很好,使用win 7 office 2007的时必须打上office 2007 sp1或者sp2补丁,读取中文才行。

sp1补丁地址(226M) :

http://download.microsoft.com/download/1/6/5/1659d607-8696-4001-8072-efaedd70dd30/office2007sp1-kb936982-fullfile-zh-cn.exe

sp2补丁地址(301 MB):

http://download.microsoft.com/download/A/3/9/A39E919E-AFA8-4128-9249-51629206C70F/office2007sp2-kb953195-fullfile-zh-cn.exe

给项目添加组件引用,如图:

使用代码:

MODI.Document doc = new MODI.Document();

doc.Create(img_Path);

MODI.Image image;

MODI.Layout layout;

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;

sb.Append(layout.Text);

}

MessageBox.Show(sb.ToString());

其中img_Path为图片路径,MODI.MiLANGUAGES为读取图片的文字类型枚举。

本文源码下载地址:http://files.cnblogs.com/stone_w/OCR.rar

图片识别word c#相关推荐

  1. 怎样将图片识别成文字?2招教你图片转成Word

    大部分时候我们为了方便都会用拍照或截图的方式快速获取并保存一些资料,但这样的偷懒方法最终都要落实到文字才能便于修改整理,所以如何才能将图片识别成文字呢?教你2种快速将图片转换成Word文档的方法. 一 ...

  2. Python实现图片识别加翻译,高薪必备技能

    Python使用百度AI接口实现图片识别加翻译 python python诞生30周年 encoding:utf-8 import requests import base64 from PIL im ...

  3. python 图片识别_python识别图片文字

    滑稽研究所 python识别图片文字 哈喽,大家好呀,我是滑稽君.大家在写论文时可能经常碰到无法复制文字的文章.明明找到了需要的内容却无法直接复制使用,这让我们十分苦恼.那么本期滑稽君就告诉大家如何使 ...

  4. 调用图片文件夹中的任意图片随机显示_他来了,他来了,Mathpix拜拜了~~~文字、表格、公式图片识别神器V0.1测试版...

    (图0) img2txt V0.8 [正式版] 第1步:win10自带截图快捷键:Win+Shift+S,也可以用QQ等截图工具: 第2步:打开软件,完成初始配置(后续调用无需再配置),按需识别: ( ...

  5. python做图像识别该学什么_Python实现图片识别加翻译【高薪必学】

    Python使用百度AI接口实现图片识别加翻译 另外很多人在学习Python的过程中,往往因为没有好的教程或者没人指导从而导致自己容易放弃,为此我建了个Python交流.裙 :一久武其而而流一思(数字 ...

  6. 将图片名写入txt文件 根据txt文件中的图片名提取特定图像 将图片插入word

    本文讲述3种方法,分别是:1. 将图片名写入txt文件:2. 根据txt文件中的图片名提取特定图像:3. 将图片插入word 将图片名写入txt文件(可将训练集.测试集中图片名分别记录在txt文件中) ...

  7. java freemarker 图片_java通过freemarker导出包含富文本图片的word文档

    废话不多说,进入正题! 本文重点在于:对富文本图片的导出(基础的freemarker+word模板导出这里不做详细解说哈) (ps:大神的东西太深奥~~懵逼了 一周才搞定,为了方便后来在更加简单,清晰 ...

  8. 图片转word表格在线教学,想知道图片转word表格怎么转吗?

    有时我们会收到一份图片形式的Word文件,要求我们进行转换.那么我们在办公时遇到图片转word表格怎么转呢?其实很多人第一反应会是手动录入,但是现在有很多方法都能直接将文字进行提取并使用.又有哪些能够 ...

  9. 手机端有没有好用的图片识别文字工具值得推荐?

    图片转文字,用到的就是OCR识别技术,针对网络上复杂字体实现精确识别功能,经常用于社交.电商.学习等场景.传统的将图片识别文字的方式选择手动书写,随着AI智能技术的应用,以OCR智能识别工具由于使用简 ...

  10. 阿里云OCR图片识别

    阿里云OCR图片识别 请求参数(Body) 请求示例(java) 正常返回示例 错误码定义 阿里云OCR图片识别: 单字识别,表格识别,旋转功能 准备条件:阿里云OCR图片识别API购买,初次购买1分 ...

最新文章

  1. vue 2.0 filter html,vue.filter使用方法是什么
  2. python利用缩进写模块_Python之缩进块
  3. Effective Java~46. 优先选择Stream 中无副作用的函数
  4. Intel超线程技术 Hyper-Threading Technology (2) - 早期实现 - 概述
  5. springboot实现条形码_Springboot转发重定向实现方式解析
  6. 1、图解Oracle Logminer配置使用
  7. 桥牌笔记:让敌方的Q、J、10、X只拿一墩的打法
  8. K8S_Google工作笔记0004---平台规划和部署方式介绍_搭建k8s集群准备
  9. 【转载】按键精灵教程
  10. 绘制自己的人际关系图_建立人脉,从绘制一张人际关系图谱开始。
  11. 辰视携最新3D视觉技术及解决方案参加华南工博会国际机器视觉展
  12. Mac环境配置及开发遇到的问题记录
  13. 吴22名广西农民工广东讨薪 返途被追砍(转载)
  14. 毕业生见习期考核鉴定表(单位考核意见)
  15. 科学计算与数学建模(选择练习)
  16. BouncyCastle使用
  17. matlab 贪吃的蛇,贪吃的蛇教案
  18. win10修复计算机摁什么,编辑告诉你win10修复失败且无法进入系统的详尽处理步骤...
  19. java性能调优(转载)
  20. 【Django】Python+Django 图文教程

热门文章

  1. java 运行配置_JAVA运行环境配置
  2. 实现Excel单元格中的下拉选项和数据有效性
  3. 51单片机体系结构初步分析
  4. 德鲁克《管理的实践》读后感-总结
  5. python爬虫、爬取百度图片保存到本地
  6. Redis配置详解(转)
  7. NOI Online Round 3 总结
  8. 镰仓物语 | 亲近的人即便离开人间,它也在你的身边
  9. 直播平台搭建源码,css预加载旋转动画 与 流光字体
  10. 深信服php面经,深信服面经