Tesseract OCR
专用模型

Tesseract OCR

Tesseract OCR 是一款由 Google 开源的强大 OCR 引擎,支持超过 100 种语言。它提供了灵活的命令行界面和 API,可以用于将图像中的文本转换为可编辑的文本。虽然用户提供的链接指向 OCRmyPDF,但 Tesseract 是其核心 OCR 引擎,广泛应用于文档数字化、数据提取等领域。

快点收藏起来

什么是 Tesseract OCR

Tesseract OCR 是一款由 Google 开源的强大而灵活的光学字符识别(Optical Character Recognition, OCR)引擎。最初由惠普在 1980 年代开发,后来在 2005 年被 Google 收购并持续维护至今。Tesseract 是目前最受欢迎和广泛使用的开源 OCR 引擎之一,它能够将图像中包含的文本转换为机器可读的文本格式。

Tesseract-OCR

Tesseract OCR 的功能

Tesseract OCR 提供了丰富的功能,使其成为各种 OCR 任务的理想选择:

  • 广泛的语言支持: Tesseract 支持超过 100 种语言的文本识别,并且可以进行训练以识别更多语言或自定义字体。这使其适用于全球范围内的各种应用场景。
  • 多种识别模式: Tesseract 提供了多种页面分割模式(Page Segmentation Modes, PSMs),允许用户控制文本分割的方式,从而适应不同的文档布局,包括自动模式、单列文本、单行文本、单个单词、单个字符等。
  • 自定义训练: 用户可以使用自己的数据集对 Tesseract 引擎进行训练,以提高特定文档类型、自定义字体或非原生支持语言的识别准确率。
  • 结构化输出: Tesseract 可以输出包含格式信息的文本,例如边界框、置信度等,方便用户处理表格、表单或其他结构化文档。
  • 灵活的 API: Tesseract 可以直接通过命令行使用,也可以通过各种编程语言的 API(如 Python 的 Pytesseract 库)集成到应用程序中,为开发者提供了极大的灵活性。
  • 支持多种图像格式: Tesseract 可以处理多种常见的图像格式,如 JPEG、PNG、GIF、BMP、TIFF 等。
  • 高准确度: 经过多年的发展和社区的贡献,Tesseract 在处理清晰的印刷文本时能够达到很高的识别准确率。
  • 开源和免费: Tesseract 在 Apache 2.0 许可下发布,这意味着它可以免费用于商业和非商业用途,并且用户可以自由地修改和分发。

如何使用/快速开始

要开始使用 Tesseract OCR,您可以按照以下步骤进行操作:

  1. 安装 Tesseract OCR 引擎: 首先需要在您的计算机上安装 Tesseract 引擎。您可以从 Tesseract 的官方 GitHub 页面或通过您的操作系统的包管理器进行安装。例如:
    • Windows: 可以从 Tesseract OCR 的 GitHub Releases 页面下载预编译的安装包。
    • macOS: 可以使用 Homebrew 包管理器进行安装:
      brew install tesseract
    • Linux(Ubuntu): 可以使用 apt 包管理器进行安装:
      sudo apt install tesseract-ocr

      您可能还需要安装语言包,例如英文语言包:

      sudo apt install tesseract-ocr-eng
  2. 安装语言包: 根据您需要识别的语言,安装相应的语言包。通常,语言包的名称格式为 tesseract-ocr-langcode,其中 langcode 是语言的 ISO 代码。
  3. 使用命令行界面: 安装完成后,您可以通过命令行界面使用 Tesseract。基本命令格式如下:
    tesseract [输入图像路径] [输出文本文件名] -l [语言代码] --psm [页面分割模式]
    • [输入图像路径]:您要进行 OCR 的图像文件的路径。
    • [输出文本文件名]:保存识别结果的文本文件的名称(不需要扩展名)。
    • -l [语言代码]:指定要使用的语言代码,例如 eng 代表英文,chi_sim 代表简体中文。
    • --psm [页面分割模式]:指定页面分割模式,根据您的文档布局选择合适的模式。常用的模式包括 3 (自动检测,不进行方向和脚本检测)、4 (假设为单列文本)、6 (假设为单个统一的文本块) 等。

    例如,要对名为 image.png 的英文图像进行 OCR 并将结果保存到 output.txt 文件中,可以使用命令:

    tesseract image.png output -l eng
  4. 使用 Pytesseract(Python): 如果您想在 Python 项目中使用 Tesseract,可以安装 Pytesseract 库:
    pip install pytesseract Pillow

    然后,您可以使用以下 Python 代码进行 OCR:

    import pytesseract
     from PIL import Image
    
     # 指定 Tesseract 的安装路径(如果 Pytesseract 无法自动找到)
     # pytesseract.pytesseract.tesseract_cmd = r'/usr/local/bin/tesseract'  # 根据您的实际安装路径修改
    
     image = Image.open('image.png')
     text = pytesseract.image_to_string(image, lang='eng')
     print(text)
  5. 探索高级选项: Tesseract 提供了许多高级选项,例如配置识别引擎模式(OCR Engine Mode, OEM)、进行自定义训练等。您可以查阅 Tesseract 的官方文档或相关教程了解更多信息。

通过以上步骤,您就可以开始使用 Tesseract OCR 引擎来识别图像中的文本了。记住,图像的质量对 OCR 的准确率有很大影响,因此在进行 OCR 之前,可能需要对图像进行预处理,例如调整大小、去噪、二值化等,以获得更好的识别效果。

相关导航