海外访问:www.kdjingpai.com
Ctrl + D 收藏本站

OCRmyPDF 是一个开源的命令行工具,专门用于为扫描的PDF文件添加光学字符识别(OCR)文本层,使其变为可搜索、可复制的文档。它基于Python开发,使用Tesseract OCR引擎,能准确识别图像中的文字,并将其嵌入PDF中,保持原文件的布局和图像质量。工具支持多语言,适用于Linux、Windows、macOS等平台,还提供Docker镜像,方便跨平台部署。OCRmyPDF 默认生成PDF/A格式,适合长期存档,同时支持页面校正、图像优化等功能,广泛应用于文档数字化和归档场景。

 

功能列表

  • 为扫描PDF添加可搜索的OCR文本层,支持复制粘贴。
  • 默认生成PDF/A格式,适合长期文档存档。
  • 支持39种语言的文字识别,覆盖英语、德语、中文等。
  • 自动校正页面倾斜(deskew)和旋转(rotate-pages)。
  • 优化PDF文件大小,常生成比输入文件更小的输出。
  • 支持多核并行处理,提升大规模文档处理效率。
  • 提供调试模式,方便验证OCR结果。
  • 通过插件支持功能扩展,兼容复杂PDF结构。
  • 自动修复损坏的PDF文件,增强兼容性。

使用帮助

安装流程

OCRmyPDF 的安装需要在支持的操作系统上配置依赖项,包括Python、Tesseract、Ghostscript等。以下是详细安装步骤,适用于常见操作系统:

Linux(以Ubuntu 22.04为例)

  1. 确保系统已安装Python 3和pip:
    python3 --version
    pip3 --version
    
  2. 安装依赖项:
    sudo apt update
    sudo apt install tesseract-ocr ghostscript python3-pip pngquant
    
  3. 使用pip安装OCRmyPDF:
    pip3 install ocrmypdf
    
  4. 验证安装:
    ocrmypdf --version
    

    如果显示版本号,说明安装成功。

Windows

  1. 安装Python 3(建议通过官网下载最新版本)。
  2. 安装Tesseract和Ghostscript(推荐使用Chocolatey包管理器):
    choco install tesseract ghostscript
    
  3. 使用pip安装OCRmyPDF:
    pip install ocrmypdf
    
  4. 确认安装完成:
    ocrmypdf --version
    

macOS(使用Homebrew)

  1. 安装Homebrew(如果未安装):
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    
  2. 安装依赖项:
    brew install tesseract ghostscript ocrmypdf
    
  3. 验证安装:
    ocrmypdf --version
    

Docker安装

  1. 确保Docker已安装并运行:
    docker run hello-world
    
  2. 拉取OCRmyPDF镜像:
    docker pull jbarlow83/ocrmypdf
    
  3. 标记镜像为便捷名称:
    docker tag jbarlow83/ocrmypdf ocrmypdf
    

使用方法

OCRmyPDF 是一个命令行工具,使用简单但功能强大。基本命令格式为:

ocrmypdf [选项] 输入文件 输出文件

基本操作

  1. 简单OCR转换
    将扫描的PDF转换为可搜索的PDF:

    ocrmypdf input.pdf output.pdf
    

    这会处理input.pdf,生成带有OCR文本层的output.pdf

  2. 指定语言
    支持多语言OCR,例如处理包含英文和中文的PDF:

    ocrmypdf -l eng+chi_sim input.pdf output.pdf
    

    语言代码可在Tesseract文档中查找。

  3. 页面校正和优化
    自动校正倾斜并生成PDF/A格式:

    ocrmypdf --deskew --output-type pdfa input.pdf output.pdf
    
  4. 并行处理
    使用多核加速处理:

    ocrmypdf --jobs 4 input.pdf output.pdf
    

特色功能操作

  • 页面旋转:自动检测并修复页面方向:
    ocrmypdf --rotate-pages input.pdf output.pdf
    

    可通过--rotate-pages-threshold设置旋转阈值。

  • 图像清理:在OCR前清理图像,提升识别准确性:
    ocrmypdf --clean input.pdf output.pdf
    
  • 调试模式:验证OCR结果,生成详细日志:
    ocrmypdf --verbose 2 input.pdf output.pdf
    
  • 跳过已有文本:避免重复处理已有文本的页面:
    ocrmypdf --skip-text input.pdf output.pdf
    

Docker使用

使用Docker运行OCRmyPDF,适合无本地环境的场景:

docker run --rm -v $(pwd):/data ocrmypdf /data/input.pdf /data/output.pdf

此命令将当前目录的input.pdf处理后输出到output.pdf

注意事项

  • 确保输入PDF是扫描文档,含文本的PDF可能需用--skip-text
  • Tesseract语言包需单独安装以支持多语言,例如:
    sudo apt install tesseract-ocr-chi-sim
    
  • 对于复杂PDF,建议启用--verbose查看详细日志,便于排查问题。

应用场景

  1. 文档数字化
    将纸质文档扫描为PDF后,使用OCRmyPDF添加文本层,方便搜索和复制内容,适合档案管理或法律文件存档。
  2. 学术研究
    研究人员可将扫描的学术论文转为可搜索PDF,便于提取引用或关键词,提高文献管理效率。
  3. 企业归档
    企业可批量处理扫描的合同、发票,生成PDF/A格式,确保长期保存和法律合规性。
  4. 多语言文档处理
    处理多语言扫描文档,如中英混合合同,OCRmyPDF可识别多种语言并嵌入文本。

QA

  1. OCRmyPDF支持哪些操作系统?
    支持Linux、Windows、macOS和FreeBSD,也可通过Docker跨平台使用。
  2. 如何处理非英文文档?
    使用-l指定语言代码,如-l chi_sim处理中文,需安装对应语言包。
  3. 输出文件比输入大怎么办?
    使用--optimize 1或安装JBIG2编码器以压缩文件大小。
  4. 如何验证OCR结果?
    使用--verbose 2生成详细日志,或检查输出PDF的可复制文本。
0已收藏
0已赞

相关推荐

找不到AI工具?在这试试!

输入关键词,即可 无障碍访问 必应 搜索,快速找到本站所有 AI 工具。

回顶部

zh_CN简体中文