利用第三方软件识别图片文字并转换为文本

来源:互联网 发布:c语言void函数返回值 编辑:程序博客网 时间:2024/06/05 08:11

最近在做从手机APP上采集数据的功能,因为小弟对手机通信机制还不是很了解,无法直接抓包,所以就采用比较笨的方法,抓取手机屏幕的截图,然后通过图片识别的功能,转换为文本再处理。

这里,我用的手机屏幕截图方法是用monkeyrunner,不了解的可以去度娘一下,脚本语言用的是Python,通过设置定时,可以截取大量的手机屏幕截图,图片的命名也要做到唯一性,最好就用时间戳(这是很有用的哦),这样第一步基本完成;第二步,就是图片的识别,这里其实还是有很多方法的,包括python也提供了图片文本识别的库tesseract,但是这个的识别效果没有达到我的需求,银次我又继续寻找其他方法,首先尝试了office的onenote提供的图片识别功能,别说,效果还真不错,可以,那么下一个问题又来了,几千张图片我总不能一张一张手动加到onenote里吧,继续寻找可以调用onenote的方法,找到了捷速图片文字识别软件 v1.2这个软件,它里面就提供了利用office内核识别图片的功能,其实就是调用onenote,而且能够达到批量识别的功能,这样问题基本就解决了。

但是,onenote 的识别效果虽好,但也有没中不足的地方,首先,我尝试过在几台电脑上识别同一张图片的效果,试了四台电脑,没有任意两台是一样的,这也不知道为什么;其次,就是onenote的设置了,这里如果不更改onenote的设置,那么我肯定,随着识别量的增加,识别准确率和效率很快会大打折扣,这都是我亲身体验,血和泪啊,怎么设置呢,其实很简单,见下图。


问题就出在缓存上,一定要将笔记本放在你自己的本地磁盘上,不要放在onedrive里,因为识别过程中会产生大量的缓存,onenote会定期清理缓存,它自己清理缓存是很麻烦的,所以就相当于给缓存赋予极大的 空间,爱缓存多少就多少,不会出现“很抱歉,onenote字上次打开以来正在清除,请稍候“”的提示框。


另外,值得一提的是,这个图片识别软件可以多开,同时几个并行处理,效率还是很客观的。笨人用笨办法,能解决问题就行,哈哈哈。下图就是用软件同时处理图片的样子。


0 0
原创粉丝点击