Python通过Tesseract库实现文字识别


Posted in Python onMarch 05, 2020

机器视觉

从Google的无人驾驶汽车到可以识别假钞的自动售卖机,机器视觉一直都是一个应用广泛且具有深远的影响和雄伟的愿景的领域。

这里我们将重点介绍机器视觉的一个分支:文字识别。介绍如何用一些Python库来识别和使用在线图片中的文字。

我们可以很轻松的阅读图片里的文字,但是机器阅读这些图片就会非常困难,利用这种人类用户可以正常读取但是大多数存贮器没法读取的图片,这时验证码(CAPTCHA)就出现了。验证码读取的难易程序也大不相同。

将图像翻译成文字一般被称为光学文字识别(Optical Character Recognition,OCR)。可以实现OCR的底层库并不多,目前很多库都是使用共同的几个底层OCR库,或者是在上面进行定制。

OCR库概述

在读取和处理图像、图像相差的机器学习以及创建图像等任务中,Python一直都是非常出色的语言。虽然有很多库可以进行图像处理,但是这里我们只介绍Tesseract库。

Tesseract

Tesseract是一个OCR库,目前由Google赞助。Tesseract是目前公认最优秀、最精确的开源OCR系统。除了极高的精确度,Tesseract也具有很高的灵活性。它可以通过训练识别出任何字体,也可以识别出任何Unicode字符。

安装Tesseract:Windows系统

下载可执行安装文件安装即可。

安装pytesseract

Tesseract是一个Python的命令行工具,不是通过import语句导入的库。安装之后,要用tesseract命令在Python的外面运行,但我们可以通过pip安装支持Python版本的Tesseract库:

pip install pytesseract

处理规范的文字

你要处理的大多数文字都是比较干净、格式规范的。格式霍英东的文字通常具有以下特点:

使用统一的标准字体(不包含手写体、草书或者十分“花哨”的字体),复印或者拍照但是字体清晰、没有多余的痕迹或者污点排列整齐,没有歪歪斜斜的字没有超出图片范围,也没有残缺不全,或紧紧贴在图片的边缘

文字的一些格式问题在图片预处理时可以进行解决。例如,可以把图片转换成灰度图,调整亮度和对比度,还可以根据需要进行裁剪和旋转,在这里不作介绍。

示例:

英文:

Python通过Tesseract库实现文字识别

识别结果的准确率还是挺高的。

通过Python代码实现

英文:

Python通过Tesseract库实现文字识别

中文:

Python通过Tesseract库实现文字识别

运行结果

This is some text, written in Arial, that will be read by
Tesseract. Here are some symbols: !@#$%"&*()
******************************
中 华 人 民 共 和 国

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python中操作日期和时间之gmtime()方法的使用
May 22 Python
Python处理文本文件中控制字符的方法
Feb 07 Python
对python使用http、https代理的实例讲解
May 07 Python
Python面向对象类的继承实例详解
Jun 27 Python
解决Python pandas df 写入excel 出现的问题
Jul 04 Python
Django中使用Celery的方法示例
Nov 29 Python
python实现植物大战僵尸游戏实例代码
Jun 10 Python
Python编写带选项的命令行程序方法
Aug 13 Python
keras中的卷积层&池化层的用法
May 22 Python
Python爬虫之Selenium中frame/iframe表单嵌套页面
Dec 04 Python
Python机器学习之基于Pytorch实现猫狗分类
Jun 08 Python
Python3接口性能测试实例代码
Jun 20 Python
Python爬虫实现模拟点击动态页面
Mar 05 #Python
python实现图片横向和纵向拼接
Mar 05 #Python
基于Python生成个性二维码过程详解
Mar 05 #Python
Python callable内置函数原理解析
Mar 05 #Python
python实现图像拼接
Mar 05 #Python
Python求两个字符串最长公共子序列代码实例
Mar 05 #Python
Python操作MongoDb数据库流程详解
Mar 05 #Python
You might like
PHP,ASP.JAVA,JAVA代码格式化工具整理
2010/06/15 PHP
PHP中的数组处理函数实例总结
2016/01/09 PHP
php实现三级级联下拉框
2016/04/17 PHP
PHP中register_shutdown_function函数的基础介绍与用法详解
2017/11/28 PHP
javascript  Error 对象 错误处理
2008/05/18 Javascript
仿163填写邮件地址自动显示下拉(无优化)
2008/11/05 Javascript
javascript实现div浮动在网页最顶上并带关闭按钮效果实例
2013/08/13 Javascript
javascript的propertyIsEnumerable()方法使用介绍
2014/04/09 Javascript
超炫的jquery仿flash导航栏特效
2014/11/11 Javascript
JavaScript实现简单图片翻转的方法
2015/04/17 Javascript
jQuery使用$.ajax提交表单完整实例
2015/12/11 Javascript
js中遍历对象的属性和值的方法
2016/07/27 Javascript
javascript中Number的方法小结
2016/11/21 Javascript
基于vue实现分页/翻页组件paginator示例
2017/03/09 Javascript
详解vue项目构建与实战
2017/06/27 Javascript
vue.js如何更改默认端口号8080为指定端口的方法
2017/07/14 Javascript
详解Vue-Cli 异步加载数据的一些注意点
2017/08/12 Javascript
JavaScript通过mouseover()实现图片变大效果的示例
2017/12/20 Javascript
Vue.directive()的用法和实例详解
2018/03/04 Javascript
js实现上传图片并显示图片名称
2019/12/18 Javascript
Jquery滑动门/tab切换实现方法完整示例
2020/06/05 jQuery
vue 通过base64实现图片下载功能
2020/12/19 Vue.js
[01:09:16]DOTA2-DPC中国联赛 正赛 SAG vs Dynasty BO3 第一场 1月25日
2021/03/11 DOTA
Python计算斗牛游戏概率算法实例分析
2017/09/26 Python
简单谈谈python基本数据类型
2018/09/26 Python
Python 爬取必应壁纸的实例讲解
2020/02/24 Python
python tkinter实现下载进度条及抖音视频去水印原理
2021/02/07 Python
ALEX AND ANI:手镯,项链,耳环和更多
2017/04/20 全球购物
英国Iceland杂货店:网上食品购物
2020/12/16 全球购物
医务工作者先进事迹材料
2014/01/26 职场文书
校园公益广告语
2014/03/13 职场文书
幼儿园中班评语大全
2014/04/17 职场文书
中专生自荐信
2014/06/25 职场文书
光棍节联谊晚会活动策划书
2014/10/10 职场文书
2015年暑期社会实践活动总结
2015/03/27 职场文书
基层工作经历证明
2015/06/19 职场文书