当前位置: 首页 > news >正文

【老保姆教程】:Tesseract-OCR图片文字识别

文章目录

  • 🌟介绍一波
  • 🌟小安装
  • 🌟配置环境变量
    • ⭐️tesseract-ocr配置
    • ⭐️tessdata语言配置
    • ⭐️检测环境变量是否安装成功
  • 🌟语言包的配置使用
  • 🌟CMD命令框中进行图片识别操作
    • ⭐️举例一:识别数字
    • ⭐️举例二:识别文字
  • 🌟pycharm中进行图片识别操作
    • ⭐️举例一:识别文字
  • 🌟唠唠问题

🌟介绍一波


Tesseract-OCR 是一款由HP实验室开发由Google维护的开源OCR(Optical Character Recognition , 光学字符识别)引擎。与Microsoft Office Document Imaging(MODI)相比,我们可以不断的训练的库,使图像转换文本的能力不断增强;如果团队深度需要,还可以以它为模板,开发出符合自身需求的OCR引擎。
(别问我咋知道,百度一下,你就知道😛)

🌟小安装


  • 安装Tesseract-OCR(64位的安装包链接)
    tesseract-ocr-setup-4.00.00dev.exe
  • tesseract各种语言集合包
    tesseract各种语言集合包

🌟配置环境变量


⭐️tesseract-ocr配置

  1. 下载 tesseract-ocr-setup-4.00.00dev.exe 完成后,对tesseract-ocr进行安装,找到tesseract.exe所在的文件路径,复制该文件所在的路径。
    在这里插入图片描述

  2. 打开环境变量:打开控制面板——>输入“环境”,回车——>点击“编辑系统环境变量”——>点击“环境变量”。
    在这里插入图片描述
    在这里插入图片描述
    3、在用户变量系统变量Path中分别粘贴之前复制的路径,最后一直点击“确定”即可。
    在这里插入图片描述
    在这里插入图片描述

⭐️tessdata语言配置

  1. 在Tesseract-OCR的文件夹中找到tessdata文件夹并进入(此文件夹中包含的是各种语言包,提供识别功能)并复制此路径。
    在这里插入图片描述
  2. 打开环境变量(以上已有,不再赘述),在系统变量中点击新建,添加一个系统变量,变量名为TESSDATA_PREFIX,变量值为tessdata文件夹的路径
    在这里插入图片描述

⭐️检测环境变量是否安装成功

👉打开cmd命令框并输入tesseract后回车,如果出现以下内容则表示环境变量安装成功。
在这里插入图片描述

🌟语言包的配置使用


下载好tessdata各语言集合包并解压后点击进入文件,即可看见里面有很多语言包(chi_sim是中文识别包,equ是数学公式包,eng是英文包 ),可将对应的语言包复制并粘贴到Tesseract-OCR的文件夹下的tessdata文件夹中。
在这里插入图片描述

🌟CMD命令框中进行图片识别操作


  • 在CMD中进入所要识别图片的路径。
    在这里插入图片描述

在这里插入图片描述

⭐️举例一:识别数字

命令(举例):tesseract 1.png out_1 -1 eng
1.png:图片名称
out_1:识别后形成的文本文件名称
-l:不是数字1,而是字母L的小写
eng:识别的是数字或英文

在这里插入图片描述

  • 这时则在图片路径下生成一个名为out_1的文本文件,文件中写入的是识别的内容。
    在这里插入图片描述

⭐️举例二:识别文字

在这里插入图片描述
在这里插入图片描述

🌟pycharm中进行图片识别操作


  • 需要下载的模块:
    pip install PIL
    pip install pytesseract

⭐️举例一:识别文字

from PIL import Image
from pytesseract import pytesseract

a = pytesseract.image_to_string(Image.open('F:/识别/2.png'), lang='chi_sim')
print(a)

在这里插入图片描述

🌟唠唠问题


大家可以发现👀,使用Tesseract-OCR进行图片文字识别时会出现识别错误的情况,也就是识别精度较低。当我们想识别文字较多,内容较为复杂的图片时,就很难识别出来了,这可咋办?
莫慌莫慌,想要知道如何解决,请听下回分解😜

相关文章:

  • 【服务器数据恢复】Storwize系列存储raid5数据恢复案例
  • 如何在 Spring Boot 项目中开启 “热部署“
  • Kubernetes 实现自动扩容和自愈应用实践
  • docker https 证书/多域名通配符自动续期(群晖https证书)
  • 您如何在 Web 表单字段/输入标签上禁用浏览器自动完成功能?
  • 变分自编码器VAE的数学原理
  • Scala 高阶函数(二)
  • 【Python百日进阶-数据分析】Day136 - plotly旭日图:px.sunburst()实例
  • MyBatis学习 | SQL映射文件
  • 高校GIS系统有何作用?
  • android面经_安卓面试题<6/30>之Intent全解析
  • 借力 StarRocks,“陆战之王“ 大润发如何在零售业数字化转型中抢占先机?
  • 疫情感染开始,大多居家办公
  • 如何克隆列表以使其在分配后不会意外更改?
  • 消息中间件(消息队列)
  • 【代码审计-2】PHP框架MVC类文件上传断点测试挖掘
  • 5G SA的网络架构和关键技术
  • 计讯物联二次供水水池泵站监测方案,从根本上保障居民饮用水安全
  • RV1126笔记六:人脸识别方案<四>
  • 艾美捷 24孔细胞划痕试验试剂盒检测原理说明