Python OCR工具pytesseract详解

pytesseract是基于Python的OCR工具, 底层使用的是Google的Tesseract-OCR 引擎,支持识别图片中的文字,支持jpeg, png, gif, bmp, tiff等图片格式。本文介绍如何使用pytesseract 实现图片文字识别。

引言

OCR(Optical character recognition,光学字符识别)是一种将图像中的手写字或者印刷文本转换为机器编码文本的技术。通过数字方式存储文本数据更容易保存和编辑,可以存储大量数据,比如1G的硬盘可以存储数百万本书。

OCR技术可以将图片,纸质文档中的文本转换为数字形式的文本。OCR过程一般包括以下步骤:

  1. 图像预处理
  2. 文本定位
  3. 字符分割
  4. 字符识别
  5. 后处理

最初由惠普开发,后来Google赞助的开源OCR引擎 tesseract 提供了比较精确的文字识别API,本文将要介绍的Python库Pytesseract就是基于Tesseract-OCR 引擎。

环境配置

环境要求:

  • Python 3.6+
  • 太平船务库
  • 安装Google Tesseract OCR
  • 系统:windows/mac/linux,我的系统是Windows10

1. 安装谷歌 Tesseract

Tesseract OCR github地址: GitHub - tesseract-ocr/tesseract: Tesseract Open Source OCR Engine (main repository)

Windows Tesseract下载地址: Index of /tesseract

Mac和Linux安装方法参考: Introduction | tessdoc

安装时可以选择需要的语言包:

安装完成后,添加到环境变量PATH中,我的安装路径是: 。C:\Program Files\Tesseract-OCR

命令行窗口输入: ,查看是否安装成功。tesseract

<span style="color:#333333"><span style="background-color:#fefefe"><span style="color:#444444"><span style="background-color:#f6f6f6">$ tesseract
Usage:
  tesseract --<span style="color:#333333"><strong>help</strong></span> | --<span style="color:#333333"><strong>help</strong></span>-extra | --<span style="color:#333333"><strong>version</strong></span>
  tesseract --<span style="color:#333333"><strong>list</strong></span>-langs
  tesseract imagename outputbase [<span style="color:#333333"><strong>options</strong></span>...] [configfile...]

OCR option<span style="color:#bc6060">s:</span>
  -<span style="color:#333333"><strong>l</strong></span> LANG[+LANG]        Specify <span style="color:#333333"><strong>language</strong></span>(s) used <span style="color:#333333"><strong>for</strong></span> OCR.
NOTE: These <span style="color:#333333"><strong>options</strong></span> must occur before any configfile.

Single option<span style="color:#bc6060">s:</span>
  --<span style="color:#333333"><strong>help</strong></span>                Show this <span style="color:#333333"><strong>help</strong></span> message.
  --<span style="color:#333333"><strong>help</strong></span>-extra          Show extra <span style="color:#333333"><strong>help</strong></span> <span style="color:#333333"><strong>for</strong></span> advanced users.
  --<span style="color:#333333"><strong>version</strong></span>             Show <span style="color:#333333"><strong>version</strong></span> information.
  --<span style="color:#333333"><strong>list</strong></span>-langs          List available languages <span style="color:#333333"><strong>for</strong></span> tesseract engine.
</span></span></span></span>

2. 安装

Python tesseract: GitHub - madmaze/pytesseract: A Python wrapper for Google Tesseract

pip安装pytesseract

<span style="color:#333333"><span style="background-color:#fefefe"><span style="color:#444444"><span style="background-color:#f6f6f6"><span style="color:#333333"><strong>pip</strong></span> install pytesseract
</span></span></span></span>

另外需要安装一下Pillow库,用于图像处理。

<span style="color:#333333"><span style="background-color:#fefefe"><span style="color:#444444"><span style="background-color:#f6f6f6"><span style="color:#333333"><strong>pip</strong></span> install Pillow
</span></span></span></span>

文字识别小例子

先准备一张包含英文字符的图片,下面的代码实现提取图片中的中文和英文字符,并识别为字符串&

  • 4
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值