文本的检测、识别实战:使用 Tesseract 进行 OpenCV OCR 和文本识别

本文介绍如何结合OpenCV的EAST文本检测器和Tesseract进行OCR。首先,通过EAST检测图像中的文本区域,然后用Tesseract进行识别。在Ubuntu、macOS和Win10上分别介绍了Tesseract的安装方法。最后,讨论了OCR过程中的关键参数,如--oem和--psm,并提供了项目结构和实现OpenCV OCR算法的代码概述。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 一旦我们使用 OpenCV 检测到文本区域,我们将提取每个文本 ROI 并将它们传递到 Tesseract,使我们能够构建完整的 OpenCV OCR 管道!

  • 最后,我将通过向您展示使用 OpenCV 应用文本识别的一些示例结果来结束今天的教程,并讨论该方法的一些局限性和缺点。

让我们继续开始使用 OpenCV OCR!

如何安装Tesseract 4

==========================================================================

在 Ubuntu 上安装 Tesseract 4


根据您使用的是 Ubuntu 18.04 还是 Ubuntu 17.04 及更早版本,用于在 Ubuntu 上安装 Tesseract 4 的确切命令会有所不同。

要检查您的 Ubuntu 版本,您可以使用 lsb_release 命令:

lsb_release -a

如您所见,我正在运行 Ubuntu 18.04,但您应该在继续之前检查您的 Ubuntu 版本。

对于 Ubuntu 18.04 用户,Tesseract 4 是主 apt-get 存储库的一部分,通过以下命令安装 Tesseract 变得非常容易:

sudo apt install tesseract-ocr

在 macOS 上安装 Tesseract 4


如果您的系统上安装了 Homebrew,macOS 的“非官方”软件包管理器,那么在 macOS 上安装 Tesseract 很简单。 只需运行以下命令,Tesseract v4 就会安装在您的 Mac 上:

brew install tesseract

如果您已经在 Mac 上安装了 Tesseract(例如,如果您遵循了我之前的 Tesseract 安装教程),您首先要取消原始安装的链接:

brew unlink tesseract

在 Win10上安装 Tesseract 4


初识OCR,Tesseract的安装与使用_AI浩-优快云博客

然后你可以运行安装命令。

验证您的 Tesseract 版本


image-20211118133720869

一旦你在你的机器上安装了 Tesseract,你应该执行以下命令来验证你的 Tesseract 版本:

tesseract -v

只要您在输出中的某处看到 tesseract 4,您就知道您的系统上安装了最新版本的 Tesseract。

然后,我们将使用 pip 安装 Pillow,这是一个对 Python 更友好的 PIL 版本,然后是 pytesseract 和 imutils:

$ pip install pillow

$ pip install pytesseract

$ pip install imutils

了解 OpenCV OCR 和 Tesseract 文本识别

=========================================================================================

image-20211118133733981

现在我们已经在我们的系统上成功安装了 OpenCV 和 Tesseract,我们需要简要回顾一下我们的管道和相关命令。

首先,我们将应用 OpenCV 的 EAST 文本检测器来检测图像中文本的存在。

EAST 文本检测器将为我们提供文本 ROI 的边界框 (x, y) 坐标。

我们将提取这些 ROI 中的每一个,然后将它们传递给 Tesseract v4 的 LSTM 深度学习文本识别算法。 LSTM 的输出将为我们提供实际的 OCR 结果。

最后,我们将在输出图像上绘制 OpenCV OCR 结果。 但在我们真正开始我们的项目之前,让我们简要回顾一下 Tesseract 命令(它将被 pytesseract 库在后台调用)。

在调用 tessarct 二进制文件时,我们需要提供许多标志。三个最重要的是 -l 、 --oem 和 --psm 。

-l 标志控制输入文本的语言。我们将在此示例中使用 eng(英语),但您可以在此处查看 Tesseract 支持的所有语言。

–oem 参数或 OCR 引擎模

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值