怎样使用OneNote的COM组件,来实现OCR功能?下面详解
2016-08-31 17:50
218 查看
背景
在业务系统开发的过程中,很多情况下会去识别图片中的相关信息,并且把信息录入到系统中。现在希望通过自动化的方式录入,就有了以下的工作。在对比了几个OCR软件在中文识别方面的准确率后,决定使用微软的OneNote开发相应的功能。
准备工作
安装OneNote 2010;(注:在 Microsoft Office 2003 中的工具组件中有一个“ Microsoft Office Document Imaging”的组件包,之后的Office版本将这个功能集成到OneNote中了)
查询网上相关OneNote的资料,真是少得可怜,即使找到现有的代码也是各种坑。
![](https://img-blog.csdn.net/20160831175041727?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
在OneNote中的图片识别功能如下图,把图片放到一个tab中,右键图片就会出现红框所标注的功能,这个是我需要在程序中来调用的:
代码实现的逻辑
获取图片的Base64编码;
开启OneNote程序,在一个空的newfile.one中,生成一个新的page;
此时,新的page页中,会有一个固定格式的xml,把图片的Base64编码,更新到对应的节点上;
更新节点后,会自动调用OCR的功能,把识别出来的文字,放入到固定节点上;
从识别出来的文字节点上,取出相应的文字就可以了;
彻底销毁当前的页面(如果不是彻底的话,这个newfile.one会越来越大);
在业务系统开发的过程中,很多情况下会去识别图片中的相关信息,并且把信息录入到系统中。现在希望通过自动化的方式录入,就有了以下的工作。在对比了几个OCR软件在中文识别方面的准确率后,决定使用微软的OneNote开发相应的功能。
准备工作
安装OneNote 2010;(注:在 Microsoft Office 2003 中的工具组件中有一个“ Microsoft Office Document Imaging”的组件包,之后的Office版本将这个功能集成到OneNote中了)
查询网上相关OneNote的资料,真是少得可怜,即使找到现有的代码也是各种坑。
在OneNote中的图片识别功能如下图,把图片放到一个tab中,右键图片就会出现红框所标注的功能,这个是我需要在程序中来调用的:
代码实现的逻辑
获取图片的Base64编码;
开启OneNote程序,在一个空的newfile.one中,生成一个新的page;
此时,新的page页中,会有一个固定格式的xml,把图片的Base64编码,更新到对应的节点上;
更新节点后,会自动调用OCR的功能,把识别出来的文字,放入到固定节点上;
从识别出来的文字节点上,取出相应的文字就可以了;
彻底销毁当前的页面(如果不是彻底的话,这个newfile.one会越来越大);
相关文章推荐
- 使用OneNote的COM组件,实现OCR功能。
- 使用OneNote的COM组件,实现OCR功能。
- 下面是一个使用FTPClient来实现的FTP上传和下载的功能
- 【第三方SDK】使用百度云推送实现推送功能详解
- 怎样使用两行代码实现博客园打赏功能
- Java使用DFA算法实现过滤多家公司自定义敏感字功能详解
- 使用AJAX实现文件拖拽上传功能详解
- 关于MFC下怎样实现内存整理功能!(详解)
- “日期和时间->自动确定日期和时间->使用网络提供时间”功能是怎样实现的?
- Python 使用 pylab 库实现画线功能的方法详解
- [VB.NET]怎样实现MDI窗体菜单上的“窗口”菜单下面的功能
- OneNote 2013:可自动实现图片文转字识别功能(OCR)
- JavaWeb中使用JavaMail实现发送邮件功能实例详解
- 使用Httpclient向百度翻译提交POST请求 接受返回的JSON字符串 实现翻译功能(2)----Httpclient使用详解
- iOS之UI--使用SWRevealViewController实现侧边菜单功能详解实例
- 使用百度云推送实现推送功能详解
- 详解Gson使用(五)实现百度翻译功能
- Azure 认知服务 (5) 计算机视觉API - 使用C#代码实现读取图片中的文字(OCR)功能
- JavaWeb中使用JavaMail实现发送邮件功能实例详解