为什么要让孩子学编程?看了这篇文章,你就知道编程的强大之处了!
你遇到以下的情况吗?
你负责整理一些文件,结果发现文件没有word存档,这又需要我们把图片变成word。
或者是在今日头条上看到了某片好文章,结果内容却是图片,你特别想把他变成文字分享给朋友。
如果你遇到过这些问题,千万不要错过 pytesseract 这个好工具!它能够用很简单、基础的方法将图片转换成文字(分辨图片中的文字)。在我们开始介绍 pytesseract 这个 python 模块之前,先来认识一下 tesseract ocr 到底是什么吧!
ocr 与 tesseract
ocr 为光学文字识别的缩写(optical character recognition,ocr),白话一点就是将图片翻译为文字。而 tesseract 是一个 ocr 模组,目前由 google 赞助。tesseract 已经有 30 年历史,一开始它是惠普实验室的一款专利软体,于 2005 年开源,从 2006 年后由 google 赞助进行后续的开发和维护, tesseract 也是目前公认最优秀、最精准的开源 ocr 系统。
除了极高的精准度外,tesseract 也有很高的灵活性,能够通过训练识别出任何字体(只要这些字体的风格不变就可以),也能识别出任何 unicode 字符,是不是非常厉害呢?我们待会会用到的 pytesseract 模块就像是tesseract的 python 包。
下面让我们来动手尝试下:
第一步 安装模块
pip3 install pillowpip3 install pytesseract
第二步 编写程序
from pil import imageimport pytesseractimg = image.open('test1.png')text = pytesseract.image_to_string(img, lang='eng')print(text)
首先,第一行和第二行是将我们刚刚安装的模块导入到程序中。
pil 包含在刚刚安装的 pillow 模组,其中的 image 模组能够读取图片档。
我们将想要转成文字的图片档,放在和这支程式相同的目录。
第四行的 'test1.png' 是相对于这个程序(.py文件)的路径,也就是该图片的文件名,因此必须放在同一个资料夹程序才找得到文件,而且文件名与路径名都是不可省略的。
所有辨识文字、转换的複杂过程全部都写在 pytesseract 中了,我们只需要知道如何调用即可。接著看到第五行,image_to_string函式有一个关键字引数 lang,默认是英文,可以改变成你想要的语言字串。
结语
简单暴力,5行代码就可以将图片转化为文字,是不是很方便呢?除了生活中的一些小问题能用 pytesseract 解决,在开发爬虫程序时,经常会遇到需要验证码的情况,这时就能利用这个模块轻松解决。
苹果提交AR挡风玻璃专利申请 苹果汽车月底“小批量送样”
数字交流闭环型调压器设计
5G标准的加速及外场试验如火如荼的开展中兴通讯也要不甘人后
4G向全IP网络进发,采用WiMax还是LTE?
蔚来创始人李斌:电动汽车的春天快到了
如何使用Python把图片变成文字
变频器在井下皮带机上的应用
电缆损耗
在 Bash 中比较 $() 与 ${}
一种基于ZnO纳米棒结构的新型柔性织物基底压电压力传感器
如何实现5G和WiFi 6E网络?如何部署可编程测试系统(一)
基于ADF4371集成VCO的微波宽带合成器解决方案
三星折叠屏手机GalaxyFold英国售价公布 约合人民币1.6万元
更快,更强,更智能:Cadence 新型电源网络设计方法介绍
2021年初工信部对APP网络产品违规给予严厉处置
MAX12005 业界首款8 ×4卫星中频开关IC
空气质量监测仪可以监测哪些项目
基于PVsyst的斜单轴光伏跟踪系统倾角及发电量计算
三星电子发布两款最新视觉传感器,芯探科技获数千万Pre-A轮投资
用户分享AirPods Max使用体验:实力降噪,佩戴舒适