http://www.cnblogs.com/Charltsing/p/OneNoteOCR.html

有需要技术咨询的,联系QQ564955427

前段时间有人问我能不能通过OneNote扫描图片,并返回文本。经过几天的测试,以及对网上若干个代码的测试,写了一个OneNote 2013下的OCR导入导出工具。

在测试的时候,发现OneNote 2013 提供的API还是有一些问题的,总结如下:

1、OneNote 2013务必升级到最新版,否则调用API的时候,可能会发生异常。本人目前的版本是15.0.4787.1000简体中文版。

2、扫描的语言支持中文和英文,简体版当然默认使用中文识别,但貌似没有办法修改默认语言。也许只能通过修改控制面板中的语言及地区才可以。

3、通过OneNote API做扫描步骤也不复杂,一般都是三~四步,

onenoteApp.CreateNewPage  建立新page

onenoteApp.UpdatePageContent  加入图片的base64数据

onenoteApp.GetPageContent    从返回的XML里面提取OCR Data文本

onenoteApp.DeleteHierarchy   删除新建的page

4、有一些需要注意的问题:

OneNote扫描图片功能如果没有禁用的话,是自动进行的,而且不能获知什么时候识别完毕。只能通过延时语句来估计时间。

onenoteApp.DeleteHierarchy 不太可靠,有的时候没有删除新建的page。建议增加Dispose删除多出来的page(通过title识别即可)

OneNote的DLL不支持嵌入资源,所以不同版本的OneNote需要引用不同的DLL,这可能会给程序的发布带来一些问题。

下图是OneNote2010的识别结果

OneNote2013识别情况要略好些。

***************************************************************************************

最后我把这个OCR封装到了XLL里面,给Excel vba调用,方便批量识别图片文本,并存入Excel。VBA调用代码如下:

C#使用OneNote的图片文字识别功能(OCR)的更多相关文章

  1. 小试Office OneNote 2010的图片文字识别功能(OCR)

    原文:小试Office OneNote 2010的图片文字识别功能(OCR) 自Office 2003以来,OneNote就成为了我电脑中必不可少的软件,它集各种创新功能于一身,可方便的记录下各种类型 ...

  2. Python图像处理之图片文字识别(OCR)

    OCR与Tesseract介绍   将图片翻译成文字一般被称为光学文字识别(Optical Character Recognition,OCR).可以实现OCR 的底层库并不多,目前很多库都是使用共同 ...

  3. python3 图片文字识别

    最近用到了图片文字识别这个功能,从网上搜查了一下,决定利用百度的文字识别接口.通过测试发现文字识别率还可以.下面就测试过程简要说明一下 1.注册用户 链接:https://login.bce.baid ...

  4. JAVA的图片文字识别技术

    从2013年的记录看,JAVA中图片文字识别技术大部分采用ORC的tesseract的软件功能,后来渐渐开放了java-api调用接口. 图片文字识别技术,还是采用训练的方法.并未从根本上解决图片与文 ...

  5. 一篇文章搞定百度OCR图片文字识别API

    一篇文章搞定百度OCR图片文字识别API https://www.jianshu.com/p/7905d3b12104

  6. 刚破了潘金莲的身份信息(图片文字识别),win7、win10实测可用(免费下载)

    刚破了潘金莲的身份信息(图片文字识别),win7.win10实测可用 效果如下: 证照,车牌.身份证.名片.营业执照 等图片文字均可识别 电脑版 本人出品 大小1.3MB 下载地址:https://p ...

  7. Python人工智能之图片识别,Python3一行代码实现图片文字识别

    1.Python人工智能之图片识别,Python3一行代码实现图片文字识别 2.tesseract-ocr安装包和中文语言包 注意:

  8. 【图片识别】java 图片文字识别 ocr (转)

    http://www.cnblogs.com/inkflower/p/6642264.html 最近在开发的时候需要识别图片中的一些文字,网上找了相关资料之后,发现google有一个离线的工具,以下为 ...

  9. 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 18—Photo OCR 应用实例:图片文字识别

    Lecture 18—Photo OCR 应用实例:图片文字识别 18.1 问题描述和流程图 Problem Description and Pipeline 图像文字识别需要如下步骤: 1.文字侦测 ...

随机推荐

  1. python连接sqlserver数据库

    1.准备工作 python3.6连接sqlserver数据库需要引入pymssql模块 pymssql官方:https://pypi.org/project/pymssql/ 没有安装的话需要: pi ...

  2. SQL Server 锁实验(UPDATE加锁探究)

    update语句: 本例中由于看到的是update执行完的锁情况,因此无法看到IU锁,但其实针对要修改的数据页和索引页会先加IU锁,记录和键先加U锁,然后再转化为IX和X锁. 如果想要看到IU锁和U锁 ...

  3. Oracle的实例恢复解析

    在数据库服务器异常断电重启后,数据库会进行实例恢复,那么实例恢复的过程中Oracle做了什么操作呢?参考官网在这里做一下解释,菜鸟水平有限,欢迎勘正. 首先说下实例恢复的定义: Instance re ...

  4. Cs231n课堂内容记录-Lecture 4-Part1 反向传播及神经网络

     反向传播 课程内容记录:https://zhuanlan.zhihu.com/p/21407711?refer=intelligentunit 雅克比矩阵(Jacobian matrix) 参见ht ...

  5. IntelliJ IDEA 创建maven管理的webapp项目

    因为使用框架时基本需要使用maven管理项目,所以单独写一个搭建maven项目的流程 第一步:  File-->New--Project 第二步:  选择maven框架 第三步:  输入工程id ...

  6. 《Java大学教程》—第7章 类的实现

    统一建模语言(UML)用方框代表类.方框被分成3部分,第一部分是类名,第二部分是类的属性,第三部分是类的方法.类的属性(属性名称:属性类型):类的方法(方法名称(参数类型):返回值类型).静态的类的属 ...

  7. Socket实例

    一.socket处理单个连接 recv方法不是可以随便接收多大的数据都可以.官方建议是8KB,  即conn.recv(8192) import socket client = socket.sock ...

  8. wangedit

    <template> <el-row id="AddRoom"> <el-col :span="5">.</el-co ...

  9. WinForm下的loading框的实现

    前言:在项目使用C/S模式情况下,由于需要经常进行数据的刷新,如果直接进行刷新,会有一个等待控件重画的过程,非常的不友好,因此在这里添加一个loading框进行等待显示. 实现:在经过多方面查询资料, ...

  10. 绝版珍珍藏:web前端技术学习指南

    绝版珍珍藏:web前端技术学习指南 优秀的Web前端开发工程师要在知识体系上既要有广度和深度!应该具备快速学习能力. 前端开发工程师不仅要掌握基本的Web前端开发技术,网站性能优化.SEO和服务器端的 ...