Skip to content

OCR 示例配置及运行指南

OCR 即光学字符识别是一种将图像中的印刷或手写文本转换为机器可读文本的技术。这项技术广泛应用于文档数字化、数据提取和自动化工作流程中,极大地提高了信息处理效率。

福昕 PDF SDK 在 Windows 和 Linux x64 平台上提供了强大的 OCR 功能,并不断更新优化 OCR 引擎。下文资源目录的搭建方式对表中各语言均适用;逐步运行说明Windows 上的 Java 示例为主。若在 Linux x64 上使用 Java,请完成同文的 Linux 资源目录与 LD_LIBRARY_PATH 配置后,在示例代码中填写 Linux 上的资源路径即可;其他语言请打开 SDK 包内对应语言的 simple_demo/ocr(或同等)示例,并采用相同的资源目录结构。

如果您希望先了解 OCR 的能力入口、主要 API 与适用场景,请参阅 OCR(光学字符识别)。如果您希望直接使用命令行工具执行 OCR 任务,请参阅 OCR 命令工具

系统需求

  • 平台: Windows, Linux x64
  • 开发语言: C, C++, Java, Python, C#
  • 授权许可: 包含 OCR 模块权限的授权码
  • SDK 版本:
    • 福昕 PDF SDK for Windows (C++, Java, C#) 6.4+
    • 福昕 PDF SDK (C) 7.4+
    • 福昕 PDF SDK for Windows (Python) 8.3+
    • 福昕 PDF SDK for Linux x64 (C++, Java, C#, Python) 9.0+

以上为各条目所列语言首次支持 OCR 的最低版本;最新版本与平台差异请以随包文档及发行说明为准。

试用限制

如果您使用的是福昕 PDF SDK 的试用授权码,无需单独授权 OCR 引擎库,但存在以下限制:

  1. 自首次初始化 OCREngine 起,允许连续试用 30 天。
  2. 试用期间,OCR 处理的 PDF 页面总数不得超过 5000 页。
  3. 所有经 OCR 处理的 PDF 页面将带有试用水印。

OCR 资源包获取

  • 请通过 福昕开发中心 申请试用或获取下载指引,或联系福昕技术支持团队与销售代表获取 OCR 资源包。

OCR 资源目录说明

Windows 平台

将 Windows 平台资源包解压到某一目录(例如 ocr_resources;下文均以此名称表示该解压根目录)。在该根目录下将看到以下目录和文件:

  • debugging_files: 用于调试 OCR 工程的资源文件,请勿随应用程序发布。
  • language_resource_CJK: 包括简体中文、繁体中文、日语和韩语的语言资源文件。
  • language_resources_noCJK: 包含其他支持语言的资源,如英语、法语、德语等。
  • win32_lib/win64_lib: 对应 32 位和 64 位系统的库文件。
  • readme.txt: 资源文件组织和使用说明。

Linux x64 平台

将 Linux x64 平台资源包解压到某一目录(例如 ocr_resources_linux;下文均以此名称表示该解压根目录)。在该根目录下包含:

  • Data: 包含所有支持语言的数据和资源。
  • Bin: 包含 Linux x64 库文件。

示例运行指南

示例程序位置:

  • OCR 示例程序位于 /examples/simple_demo/ocr 目录下。以下配置与运行说明以 Java 语言库为例。

构建 OCR 资源目录

运行 OCR 示例前,需构建 OCR 资源目录,并将完整目录路径传递给 OCREngine.initialize 方法。

Windows 平台步骤:

  1. 创建供示例使用的 OCR 资源目录(将传给 OCREngine.initialize 的合并目录),例如 D:/ocr_runtime(与上节解压得到的 ocr_resources 为不同路径;以下步骤均为从 ocr_resources 复制到该目录)。
  2. 根据目标平台,将相应库文件从 ocr_resources 复制到上一步的资源目录:
    • 32 位系统:复制 ocr_resources/win32_lib 下的所有文件。
    • 64 位系统:复制 ocr_resources/win64_lib 下的所有文件。
  3. 复制所需语言资源(同样从 ocr_resources 复制到上一步的资源目录):
    • 仅 CJK 语言:复制 ocr_resources/language_resource_CJK 下的所有文件。
    • 仅非 CJK 语言:复制 ocr_resources/language_resources_noCJK 下的所有文件。
    • 所有语言:复制上述两个目录的所有文件。
  4. (可选) 调试模式:将 ocr_resources/debugging_files/win32ocr_resources/debugging_files/win64 下的文件复制到上一步的资源目录。

Linux x64 平台步骤:

  1. 创建供示例使用的 OCR 资源目录(将传给 OCREngine.initialize 的合并目录),例如 /opt/ocr_runtime(也可使用 ~/ocr_runtime 等您具备写权限的路径;须与下文 LD_LIBRARY_PATH 一致)。
  2. ocr_resources_linux 下的 DataBin 目录复制到上一步的资源目录。
  3. 设置 LD_LIBRARY_PATH 环境变量(请将路径替换为您的资源目录):export LD_LIBRARY_PATH=/opt/ocr_runtime/Bin

配置示例程序

/examples/simple_demo/ocr/ocr.java 文件中进行配置。

Linux x64(Java): 与 Windows 相同,将 OCREngine.initialize 的参数设为本机构建好的 OCR 资源目录绝对路径;运行前务必已按上文设置 LD_LIBRARY_PATH,否则可能无法加载原生库。

  • 指定 OCR 资源目录: 设置 OCREngine.initialize 方法的参数为资源目录路径。
  • 设置语言: 使用 OCREngine.setLanguages 方法设置识别语言,默认为英语。
  • (可选) 设置日志文件: 取消注释 OCREngine.setLogFile 方法,以启用日志记录。

运行示例

运行成功后,控制台将输出相关信息,并在 /examples/simple_demo/output_files/ocr 目录下生成以下 PDF 文档:

  • ocr_doc_editable.pdf: 可编辑 OCR PDF 文档。
  • ocr_doc_searchable.pdf: 可搜索 OCR PDF 文档。
  • ocr_page_editable.pdf: 可编辑 OCR PDF 页面。
  • ocr_page_searchable.pdf: 可搜索 OCR PDF 页面。

通过以上步骤,您可以成功配置和运行福昕 PDF SDK 的 OCR 示例,体验强大的 OCR 功能。