关于图文识别功能相关技术的大致实现

关于图文识别功能相关技术的实现

转载请注明源地址http://www.cnblogs.com/funnyzpc/p/8908906.html

  上一章,写的是SSL证书配置,中间折腾了好一会,在此感谢SSL证书发行商的协助;这次我就讲讲ocr识别的问题,先说说需求来源吧。。。

  之前因为风控每次需要手动P协议文件和身份证(脱敏),还要识别证件及图片文件的内容,觉得狠狠狠麻烦,遂就找到了技术总监,技术总监一拍脑袋,额,小邹啊。。。

  呃,一开始并没抱太大希望,不过还是花了些心思做了些需求实现的调研,怎么办 google、duckduckgo、github一路找下来就有了几个工程了,嘿嘿~,可惜还没高兴到,没想到的是这些工程一个比一个坑,不是依赖windows系统组件就是代码bug不断,作者们,能用点儿心么

  日夜操劳,加班啊,总算是将几个工程全都修得能跑起来了,大费周折。。。难得啊

  欸,可惜效果均不佳;现开始,我总结下一些主流的图文识别技术,只是浅聊哦。。。

首先,这些工程大致分两类:

  一类是纯算法,不附带机器学习功能的,且需要依赖于window系统组件的工程,比如tesseract和tess4j,识别效果可以说是巨差(可能我的技术很菜的原因

),但有一点儿值得赞许,就是识别结果的格式还算不错,这类图文识别的特点大致有如下几点:

 A>工程代码量较大

  B>依赖window组件,需要在window系统下才能运行

  C>识别效果无法通过学习逐渐优化

  D>识别出来的文字时常乱码,中文识别乱码错别字较多

  E>识别结果通常使用格式化模子来格式化结果,遂,识别结果的格式还算过得去

  一类是基于机器学习(比如Tensorflow)的工程,这些工程参差不齐,存在插件版本问题,尤其是python插件,实在在太太太难装了,在一就是工程大多较为简陋,由于机器学习具有不断改善的趋势,这是基于机器学习的图文识别的最大优势,总结起来,基于机器学习的图文识别的特点儿大致有如下几点:

A>工程比较简单,代码量不是很多

  B>依赖的语言插件,如python实在难以安装

  C>有很多优化的方向,比如使用显卡,优化算法(卷积神经网络)来提高识别速度及模型准确度

  D>十分耗费计算机字段,一般识别一页A4大小的图片中的内容,(我使用Macbook Pro) 最快也用了二十多秒

  E>识别的结果比较乱,但对于中文,尤其是图片较好的中文的文字识别准确率能达到百分之七十网上,但是识别格式和文字准确度不如上者

  F>由于是基于机器学习,遂需要大量的数据喂养以提高识别的准确率,喂养的数据十分可观

  额,总的来说,后者的优势较大,也是趋势,比如腾讯QQ的图片识别还有百度大脑AI这些基本都是基于机器学习,个人觉得,如果投入一个团队去专门研究开发一个图文识别的产品,也是比较容易实现的,何况这个方向向前走就是人工智能,尽管现在看起来有些智障...。

  哦,大致总结完了,我就展示下基于tess4j和chinese-ocr这两项目的实现效果,我的输入是身份证:

(注意:源图片是从github上拉下来的,个人做了些简陋的脱敏处理!)

  下面是基于tess4j实现的结果:

tess4j的实现只能基于windows组件实现,故项目只能在windows下运行,另外tesseract也是windows组件的实现。

  一下是基于chinese-ocr的项目的实现的结果:

chinese-orc是基于python语言+tensorflow的实现,结果一目了然,需要说的是,一下几个也是基于=>

IITG-Captcha-Solver-OpenCV-TensorFlow:基于Tensorflow实现的验证码识别,已调试通过,验证码模糊度较高的识别不够准确 text-detection-ctpn       :基于Tensorflow实现的图片识别,未调试通过 tensorflow-ocr         :基于tensorflow实现的图片识别,未调试通过

由于github共享的工程参差不齐,存在插件版本、语言以及系统版本的差异,遂这些项目clone下来后需要修改些bug才可,这里简述下一些大致的问题的解决思路:

  A>对于插件版本下载不了的(我用的是pycharm),建议使用相邻版本的插件,但有些插件需要爬梯出去才可下

  B>对于部分(例如 test.py)文件跑不起来的,请尝试着将这个文件放置在工程主目录下,但同时请注意 import引用的文件(可能需要手动修改)

  C>对于项目出现的主流问题请移步Issues以查找

        嗯,此篇原本在前一天发表的,由于公司周年庆耽搁了会儿,最后,我把上面几个工程的打包文件共享下(包含我修改过bug的),有需要的请自行下载,如有疑问请电邮或留言

工程下载链接: https://pan.baidu.com/s/1B2Eyak8zwdAldA0NBfmlvw

工程下载密码: r2av

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏华章科技

近期GitHub上最热门的开源项目(附链接)

2 月份 GitHub 上最热门的开源项目又出炉了,又有哪些新的项目挤进热门榜单了呢,一起来看看。

752
来自专栏织云平台团队的专栏

AI 时代下的海量业务智能监控实践

作者丨李春晓:腾讯高级工程师,目前为腾讯SNG社交网络运营部社交平台业务运维组员工。 海量业务的挑战 互联网业务讲究“极致、口碑、快”,经历过长时间的演进,腾...

1.3K11
来自专栏AI黑科技工具箱

0.伏笔:图像读取方式以及效率对比

入职了之后挺忙,已经好久没有做一些科普性的更新了。近期已做了些学术要求不高的工作,所以刚好有时间写写总结。

55311
来自专栏云加头条

智能云上手指南:如何使用腾讯云开放的图片鉴黄能力?

今天,腾讯云发布2017战略新品——智能云,对于普通开发者而言,现在可以通过腾讯云开发者实验室0门槛体验优图鉴黄等AI能力。

7621
来自专栏Debian社区

Google 宣布新拥堵控制算法 TCP BBR

Google 宣布了 新拥堵控制算法 TCP BBR。Google 官方博客称新算法将 google.com 和 YouTube 的全球网络吞吐量平均改进了 4...

1464
来自专栏AI科技大本营的专栏

AI 技术讲座精选:5款新手也能快速构建的深度学习应用(使用Python)

前 言 深度学习从根本上改变了我们周围的一切。很多人认为必须成为深度学习的专家,才能将深度学习用到自己的应用中。然而,实际并非如此。 在我之前的文章中,我讨论了...

3337
来自专栏新智元

“穿墙透视”黑魔法来了!只需WiFi和智能手机就可实现

无线设备无处不在,无论是在家中,办公室里,还是在街上,人们沐浴在几千赫兹甚至太赫兹的射频频率中。

1033
来自专栏影子

关于图文识别功能相关技术的大致实现

33311
来自专栏机器之心

实验研究工作流程详解:如何把你的机器学习想法变成现实

选自dustintran 作者:DUSTIN TRAN 机器之心编译 参与:李泽南、Smith 从研究思想的提出到实验的具体实现是工程中的基础环节。但是这一...

2935
来自专栏FreeBuf

如何搭建你自己的“深度学习”机器?

深度学习是一门用来解决复杂问题的技术,例如自然语言处理和图像处理。目前,我们已经可以很快的处理超大计算量的问题——这多亏了GPU,GPU最初就是用于快速生成高分...

1825

扫码关注云+社区