[雪峰磁针石博客]tesseract OCR识别工具及pytesseract
简介
可以使用pytesseract库从图像中提取文本。Tesseract是一款由Google赞助的开源OCR。 pytesseract是python包装器,它为可执行文件提供了pythonic API。
Tesseract(/'tesərækt/) 这个词的意思是"超立方体",指的是几何学里的四维标准方体,又称"正八胞体"。下图是一个正八胞体绕着两个四维空间中互相正交的平面进行双旋转时的透视投影。不过这里要讲的,是一款以其命名的开源 OCR(Optical Character Recognition, 光学字符识别) 软件。
所谓 OCR 是图像识别领域中的一个子领域,该领域专注于对图片中的文字信息进行识别并转换成能被常规文本编辑器编辑的文本。
Tesseract 已经有 30 年历史,开始它是惠普实验室的一款专利软件,然后在 2005 年开源,自 2006 年后由 Google 赞助进行后续的开发和维护。
在 1995 年 Tesseract 曾是世界前三的 OCR 引擎,而且在现在的免费 OCR 引擎中,其识别精度也仍然是出类拔萃的。因为其免费与较好的效果,许多的个人开发者以及一些较小的团队在使用着 Tesseract ,诸如验证码识别、车牌号识别等应用中,不难见到 Tesseract 的身影。
安装
以ubuntu 16.04为例
# pip3 install pytesseract # apt install tesseract-ocr tesseract-ocr-chi-sim
快速入门
#!/usr/bin/python # -*- coding: utf-8 -*- # Author: china-testing@126.com wechat:pythontesting qq群:144081101 # CreateDate: 2018-04-25 import pytesseract as pt import requests from PIL import Image #img = Image.open("textinimage.png") print("英文:") url = "https://china-testing.github.io/images/python_lib_ocr_en.png" img = Image.open(requests.get(url, stream=True).raw) text = pt.image_to_string(img) print(text) #img = Image.open("textinimage.png") print("中文:") url = "https://china-testing.github.io/images/python_lib_ocr.PNG" img = Image.open(requests.get(url, stream=True).raw) text = pt.image_to_string(img,lang='chi_sim') print(text)
执行结果
$ python3 04_10_perform_ocr.py 英文: This is an image containing text. And some numbers 123456789 And also special characters: !@#$%"&*(_+ 中文: pyth0"自动化测试人工智能
可见中文识别的效果并不太好,为此很多公司进行机器学习来改进。
另外网易的有道云笔记的OCR效果做得很不错,白描的凑合能用,qq的扫二维码也可以识别文字,但是做得比较烂。
ocr可以做python项目对初学者进行实践,请联系微信:pythontesting
本文最新代码地址,后续相关ocr的资料也会放在这里。
另外tesseract也可以命令行执行:
$ tesseract test22.png stdout -l chi_sim pyth0n自动化测试人工智能
参考资料
- 讨论qq群144081101 591302926 567351477 钉钉免费群21745728
- 本文相关书籍下载
- 本文最新版本地址
- 本文涉及的python测试开发库 谢谢点赞!
- ImageMagick
- Tesseract:安装与命令行使用
- Tesseract OCR:Ubuntu 16.04上的安装和使用
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
[雪峰磁针石博客]免费的好用的OCR工具 人脸识别等图像识别工具
tesseract -- 推荐 Tesseract 已经有 30 年历史,开始它是惠普实验室的一款专利软件,然后在 2005 年开源,自 2006 年后由 Google 赞助进行后续的开发和维护。 在 1995 年 Tesseract 曾是世界前三的 OCR 引擎,而且在现在的免费 OCR 引擎中,其识别精度也仍然是出类拔萃的。因为其免费与较好的效果,许多的个人开发者以及一些较小的团队在使用着 Tesseract ,诸如验证码识别、车牌号识别等应用中,不难见到 Tesseract 的身影。 使用参考 白描(一天免费5次) 安卓或者IOS APP,使用不如下面的NewOCR方便 NewOCR (www.newocr.com) --强烈推荐 不亚于白描之类的的国内收费软件 FreeOCR (www.paperfile.net/index.html) 暂时不支持中文,英文ocr很优秀,效果如下: Free Online OCR (www.i2ocr.com) 需要搭桥才能访问,不做详细介绍 face_recognition -- 推荐 face_recognition使用世界上最简单的人脸识...
- 下一篇
干货 | 只有100个标记数据,如何精确分类400万用户评论?
在本文中,我们将介绍自然语言处理(NLP)在迁移学习上的最新应用趋势,并尝试执行一个分类任务:使用一个数据集,其内容是亚马逊网站上的购物评价,已按正面或负面评价分类。然后在你可以按照这里的说明,用你自己的数据重新进行实验。在数据标记成本高数量少的情况下,这个通用语言微调模型可以大幅降低你的NLP任务训练时间和成本。 迁移学习模型的思路是这样的:既然中间层可以用来学习图像的一般知识,我们可以将其作为一个大的特征化工具使用。下载一个预先训练好的模型(模型已针对ImageNet任务训练了数周时间),删除网络的最后一层(完全连接层),添加我们选择的分类器,执行适合我们的任务(如果任务是对猫和狗进行分类,就选择二元分类器),最后仅对我们的分类层进行训练。 由于我们使用的数据可能与之前训练过的模型数据不同,我们也可以对上面的步骤进行微调,以在相当
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS8编译安装MySQL8.0.19
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7