使用Python实现文字识别,教你如何从图片中识别提取文字

今天分享的是如何使用Python从图片中提取文字。虽然从我的实际操作结果来看第三方库的图片文字识别效果并不是十分理想,但也能满足我的需求了。

首先,我们需要知道Python中两个非常重要的库:Pillow和Tesseract-OCR。Pillow是一个免费开源的图像处理库,它可以用来读取、操作和保存各种各样的图片文件。Tesseract-OCR则是一个强大的光学字符识别引擎,可以准确地识别图像中的文字,这里特别强调下,Tesseract-OCR是可以离线识别的哦,能够满足我在内网机上使用。使用这两个库,我们可以轻松地从图片中提取出文字。

  • 准备环境

第一步:安装必要的库。首先,我们需要安装第三方库Pillow和Pytesseract。可以使用pip命令进行安装:

pip install pillow
pip install pytesseract

第二步:手动安装Tesseract-OCR(这里推荐手动下载安装,确保安装成功)。

先从如下网址上下载安装包,然后直接安装(需要记住安装路径哦)。网址:https://digi.bib.uni-mannheim.de/tesseract/?C=M;O=D

安装后,将安装目录添加到系统环境变量中。

  • 图片文字提取

我们准备好环境后,就可以开始进行图片识别提取文字了。

import pytesseract
from PIL import Image


# 如果没有将tesseract的安装目录添加到系统环境变量中,则需要指定安装路径,
# pytesseract.pytesseract.tesseract_cmd=r"D:\src_myself\tesseract-ocr\tesseract.exe"

# 先使用pillow库打开图片
img = Image.open('test_007.png')

# 调用pytesseract库提取文字,请注意指定语言lang='chi_sim'哦,否则中文无法识别出来
text = pytesseract.image_to_string(img, lang='chi_sim')

print(text)

我们来看下识别的效果,第一张图是我截取的需要识别提取文字的图片

下面是图片文字提取的结果,图片识别效果不是很理想,不过在没有其他更优选择时可以考虑临时使用。

  • 案例分享

以下是我工作中实际使用到的场景,在我负责的工作内容里,需要确保每天业务系统自动初始化过程中正确执行,若要做到这一点就需要每天系统初始化结束后获取系统的初始化日期,进而判断系统初始化后的日期是否已经变更为当前日期,如果系统初始化日期已经是当前日期表明系统已经初始化成功,反之则是初始化失败的,需要重新进行系统初始化。要实现这个效果,我就必须获取到系统初始化日期。因为本文主要介绍图片文字识别

下面是我对截取保存后的图片进行文字提取:

import pytesseract
from PIL import Image


# 如果没有将tesseract的安装目录添加到系统环境变量中,则需要指定安装路径,
# pytesseract.pytesseract.tesseract_cmd=r"D:\src_myself\tesseract-ocr\tesseract.exe"

# 先使用pillow库打开图片
img = Image.open('系统初始化日期.png')

# 调用pytesseract库提取文字,请注意指定语言lang='chi_sim'哦,否则中文无法识别出来
text = pytesseract.image_to_string(img, lang='chi_sim')
print("文字识别结果如下:",text)

print(f"解析获取当前的系统初始化日期:{text.split('初始化日期')[-1].split(' ')[1]}")

从上面的代码可以看到,虽然pytesseract这个文字提取第三方库识别过程会出错,但还是可以满足特定工作需要的,大家可以灵活使用,不必拘泥于一些瑕疵。不管黑猫白猫,只要能帮助到我就是好猫。

感兴趣的小伙伴,赠送全套Python学习资料,包含面试题、简历资料等具体看下方。

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

img
img

二、Python必备开发工具

工具都帮大家整理好了,安装就可直接上手!img

三、最新Python学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

img

四、Python视频合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

img

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

img

六、面试宝典

在这里插入图片描述

在这里插入图片描述

简历模板在这里插入图片描述
若有侵权,请联系删除
  • 29
    点赞
  • 80
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值