python文字识别算法_Python图像处理之图片文字识别(OCR)
OCR与Tesseract介绍
将图片翻译成文字一般被称为光学文字识别(Optical Character Recognition,OCR)。可以实现OCR 的底层库并不多,目前很多库都是使用共同的几个底层OCR 库,或者是在上面进行定制。
Tesseract 是一个OCR 库,目前由Google 赞助(Google 也是一家以OCR 和机器学习技术闻名于世的公司)。Tesseract 是目前公认最优秀、最精确的开源OCR 系统。
除了极高的精确度,Tesseract 也具有很高的灵活性。它可以通过训练识别出任何字体(只要这些字体的风格保持不变就可以),也可以识别出任何Unicode 字符。
Tesseract的安装与使用
Tesseract的Windows安装包下载地址为: http://digi.bib.uni-mannheim.... ,下载后双击直接安装即可。安装完后,需要将Tesseract添加到系统变量中。在CMD中输入tesseract -v, 如显示以下界面,则表示Tesseract安装完成且添加到系统变量中。
Linux 用户可以通过apt-get 安装:
$sudo apt-get tesseract-ocr
用Tesseract可以识别格式规范的文字,主要具有以下特点:
• 使用一个标准字体(不包含手写体、草书,或者十分“花哨的”字体)
• 虽然被复印或拍照,字体还是很清晰,没有多余的痕迹或污点
• 排列整齐,没有歪歪斜斜的字
• 没有超出图片范围,也没有残缺不全,或紧紧贴在图片的边缘
下面将给出几个tesseract识别图片中文字的例子。
首先是E://figures/other/poems.jpg, 输入命令 tesseract E://figures/other/poems.jpg E://figures/other/poems.txt, 则会将poems.jpg中的识别文字写入到poems.txt中,如下图:
接着是稍微有点倾斜的文字图片th.jpg,识别情况如下:
可以看到识别的情况不如刚才规范字体的好,但是也能识别图片中的大部分字母。
最后是识别简体中文,需要事先安装简体中文语言包,下载地址为:https://github.com/tesseract-... ,再讲chi_sim.traineddata放在C:Program Files (x86)Tesseract-OCRtessdata目录下。我们以图片timg.jpg为例:
输入命令:
tesseract E://figures/other/timg.jpg E://figures/other/timg.txt -l chi_sim
识别结果如下:
只识别错了一个字,识别率还是不错的。
最后加一句,Tesseract对于彩色图片的识别效果没有黑白图片的效果好。
pytesseract
pytesseract是Tesseract关于Python的接口,可以使用pip install pytesseract安装。安装完后,就可以使用Python调用Tesseract了,不过,你还需要一个Python的图片处理模块,可以安装pillow.
输入以下代码,可以实现同上述Tesseract命令一样的效果:
import pytesseract
from PIL import Image
pytesseract.pytesseract.tesseract_cmd = 'C://Program Files (x86)/Tesseract-OCR/tesseract.exe'
text = pytesseract.image_to_string(Image.open('E://figures/other/poems.jpg'))
print(text)
运行结果如下:
参考文献
注意:本人现已开通微信公众号:Python爬虫与算法(微信号为:easy_web_scrape), 欢迎大家关注哦~~
python文字识别算法_Python图像处理之图片文字识别(OCR)相关推荐
- python图像识别系统_Python图像处理之图片文字识别功能(OCR)
OCR与Tesseract介绍 将图片翻译成文字一般被称为光学文字识别(Optical Character Recognition,OCR).可以实现OCR 的底层库并不多,目前很多库都是使用共同的几 ...
- python文字识别时、当文字不清晰时怎么处理_Python图像处理之图片文字识别功能(OCR)...
OCR与Tesseract介绍 将图片翻译成文字一般被称为光学文字识别(Optical Character Recognition,OCR).可以实现OCR 的底层库并不多,目前很多库都是使用共同的几 ...
- python识别图片中数字_Python图像处理之图片验证码识别
在上一篇博客Python图像处理之图片文字识别(OCR)中我们介绍了在Python中如何利用Tesseract软件来识别图片中的英文与中文,本文将具体介绍如何在Python中利用Tesseract软件 ...
- python视频图片识别算法_python利用Opencv进行人脸识别(视频流+图片)
首先:需要在在自己本地安装opencv具体步骤可以问度娘 如果从事于开发中的话建议用第三方的人脸识别(推荐阿里) 1.视频流中进行人脸识别 # -*- coding: utf-8 -*- import ...
- python批量识别图片中文字_python实现中文图片文字识别--OCR about chinese text--tesseract...
0.我的环境: win7 32bits python 3.5 pycharm 5.0 1.相关库 安装pillow: pip install pillow 安装tesseract: 自带了英文语言包, ...
- python验证码识别模块_Python图像处理之验证码识别
在上一篇博客Python图像处理之图片文字识别(OCR)中我们介绍了在Python中如何利用Tesseract软件来识别图片中的英文与中文,本文将具体介绍如何在Python中利用Tesseract软件 ...
- python人脸识别算法_python人脸算法
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 若图片中包含多张人脸,只选取其中人脸面积最大的人脸. 支持png.jpg.jpe ...
- python验证码识别算法_Python网站验证码识别
0x00 识别涉及技术 验证码识别涉及很多方面的内容.入手难度大,但是入手后,可拓展性又非常广泛,可玩性极强,成就感也很足. 验证码图像处理 验证码图像识别技术主要是操作图片内的像素点,通过对图片的像 ...
- Python人工智能之图片识别,一行代码实现图片文字识别
我们以识别诗词为例 下面是我们要识别的图片 先看下效果图 我们运行代码后识别的结果,有几个字没有正确识别,但是大多数字都能识别出来. 一行代码就能识别图片,我们背后要做些准备工作的 •这里我们需要用到 ...
最新文章
- hiho_1139_二分+bfs搜索
- 2017计算机考研教材,【考研】2017计算机考研:四大科目参考书推荐
- .NET 6新特性试用 | 隐式using指令
- Ubuntu root账号的使用
- 棋盘问题 POJ - 1321
- MapReduce之OutputFormat理解
- poi的excel解析工具类
- JavaScript可变参数个数
- 应用WSH、JavaScript和 bat 实现自动化构建工具改善工作中的代码部署流程!
- 微软面试题 经典测试 (博弈论 经典案例)
- git 下载指定历史版本
- 主成分回归之后预测_回归分析之主成分回归
- 2020高考倒计时html,2020高考倒计时的励志说说
- 工程伦理和学术道德(2021秋)
- 怎样与项目中的“怪人”沟通
- Wannafly 22A
- 大规模语言模型微调技术——Instruction和Question的区别和联系
- ASP.NET Web API入门介绍(一)
- Android消息推送 解决方案
- 为什么Linux系统安全没有病毒?原因是“它”
热门文章
- 硬刚一周,3W字总结,一年的经验告诉你如何准备校招,拿大厂offer
- SQL 性能优化梳理,干掉慢SQL!
- struts2教程(5)--请求参数校验
- 小程序从浏览器返回有一个空白页_北京做一个小程序
- (Spring)静态/动态代理模式(AOP底层)
- Oracle Dababase_buffer_cache数据库高速缓存组织结构剖析
- [转]chroot的使用
- RHEL 5.4 安装Oracle 11gR2, 安装篇2
- virtualbox调试linux内核,virtualbox+kgdbt调试linux内核
- php分布式cache,thinkPHP实现MemCache分布式缓存功能