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聊天程序实例代码分享
Nov 18 Python
简单介绍Python下自己编写web框架的一些要点
Apr 29 Python
微信 用脚本查看是否被微信好友删除
Oct 28 Python
python交互式图形编程实例(三)
Nov 17 Python
Python wxpython模块响应鼠标拖动事件操作示例
Aug 23 Python
让代码变得更易维护的7个Python库
Oct 09 Python
selenium+python设置爬虫代理IP的方法
Nov 29 Python
python:接口间数据传递与调用方法
Dec 17 Python
PyQt5 实现给窗口设置背景图片的方法
Jun 13 Python
Python 使用指定的网卡发送HTTP请求的实例
Aug 21 Python
python BlockingScheduler定时任务及其他方式的实现
Sep 19 Python
Python csv文件记录流程代码解析
Jul 16 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
星际RPG字典
2020/03/04 星际争霸
PHP的cURL库功能简介 抓取网页、POST数据及其他
2011/04/07 PHP
PHP中register_globals参数为OFF和ON的区别(register_globals 使用详解)
2012/02/05 PHP
php自定义分页类完整实例
2015/12/25 PHP
php mysql procedure实现获取多个结果集的方法【基于thinkPHP】
2016/11/09 PHP
比较详细的关于javascript中void(0)的具体含义解释
2007/08/02 Javascript
javascript 放大镜效果js组件 qsoft.PopBigImage.v0.35 加入了chrome支持
2009/04/07 Javascript
Jquery 1.42 checkbox 全选和反选代码
2010/03/27 Javascript
jQuery maxlength文本字数限制插件
2010/04/16 Javascript
javascript表单验证使用示例(javascript验证邮箱)
2014/01/07 Javascript
改变状态栏文字的js代码
2014/06/13 Javascript
jquery实现兼容IE8的异步上传文件
2015/06/15 Javascript
使用DNode实现php和nodejs之间通信的简单实例
2015/07/06 NodeJs
理解javascript定时器中的setTimeout与setInterval
2016/02/23 Javascript
javascript对象的相关操作小结
2016/05/16 Javascript
AngularJS基础 ng-href 指令用法
2016/08/01 Javascript
easyui中combotree循环获取父节点至根节点并输出路径实现方法
2016/11/10 Javascript
JavaScript多种滤镜算法实现代码实例
2019/12/10 Javascript
浅谈python函数之作用域(python3.5)
2017/10/27 Python
python dataframe astype 字段类型转换方法
2018/04/11 Python
Python + selenium + requests实现12306全自动抢票及验证码破解加自动点击功能
2018/11/23 Python
python远程邮件控制电脑升级版
2019/05/23 Python
基于python requests selenium爬取excel vba过程解析
2020/08/12 Python
Python使用eval函数执行动态标表达式过程详解
2020/10/17 Python
python 利用matplotlib在3D空间中绘制平面的案例
2021/02/06 Python
 Alo Yoga官网:购买瑜伽服装
2018/06/17 全球购物
服务中心夜班服务员岗位职责
2013/11/27 职场文书
见习期自我鉴定
2014/01/31 职场文书
继承公证书
2014/04/09 职场文书
2014年师德师风学习材料
2014/05/16 职场文书
党的群众路线教育实践活动批评与自我批评发言稿
2014/10/16 职场文书
停电放假通知
2015/04/14 职场文书
红色经典观后感
2015/06/18 职场文书
志愿者服务宣传标语口号
2015/12/26 职场文书
大学生社会服务心得体会
2016/01/22 职场文书
如何用PHP实现分布算法之一致性哈希算法
2021/05/26 PHP