OA0
OA0 是一个探索 AI 的社区
现在注册
已注册用户请  登录
OA0  ›  代码  ›  BishengJDK MiniCPM-V OCR?

BishengJDK MiniCPM-V OCR?

 
  evolve ·  2026-06-03 11:00:22 · 34 次点击  · 0 条评论  

OCRmyPDF

构建状态 PyPI 版本 Homebrew 版本 ReadTheDocs 文档 Python 版本

OCRmyPDF 为扫描的 PDF 文件添加 OCR 文本层,使其可搜索或复制粘贴。

ocrmypdf                      # 可脚本化的命令行程序
   -l eng+fra                 # 支持多语言
   --rotate-pages             # 可修正旋转错误的页面
   --deskew                   # 可校正倾斜的 PDF!
   --title "My PDF"           # 可更改输出元数据
   --jobs 4                   # 默认使用多核
   --output-type pdfa         # 默认输出 PDF/A 格式
   input_scanned.pdf          # 接受 PDF 输入(或图片)
   output_searchable.pdf      # 生成经过验证的 PDF 输出

查看发布说明了解最新变化

主要特性

  • 从普通 PDF 生成可搜索的 PDF/A 文件
  • 将 OCR 文本精确放置在图像下方,方便复制/粘贴
  • 保持原始嵌入图像的精确分辨率
  • 尽可能以“无损”方式插入 OCR 信息,不影响其他内容
  • 优化 PDF 图像,通常生成比输入文件更小的文件
  • 根据需求,在执行 OCR 前可校正和/或清洁图像
  • 验证输入和输出文件
  • 在所有可用 CPU 核心上分配工作
  • 使用 Tesseract OCR 引擎识别超过 100 种语言
  • 保护您的私人数据隐私
  • 能妥善处理数千页的文件
  • 经过数百万个 PDF 的实战测试

OCRmyPDF 终端会话演示

详情请参阅文档

动机

我在网上搜索一个免费的命令行工具来 OCR PDF 文件:找到了很多,但没有一个真正令人满意:

  • 要么生成的 PDF 文件图像下方的文本位置错乱(导致无法复制/粘贴)
  • 要么无法处理重音和多语言字符
  • 要么改变了嵌入图像的分辨率
  • 要么生成的 PDF 文件大得离谱
  • 要么在尝试 OCR 时崩溃
  • 要么没有生成有效的 PDF 文件
  • 最重要的是,没有一个能生成 PDF/A 文件(专为长期存储设计的格式)

……所以我决定开发自己的工具。

安装

支持 Linux、Windows、macOS 和 FreeBSD。也提供 Docker 镜像,包括 x64 和 ARM 架构。

操作系统 安装命令
Debian、Ubuntu apt install ocrmypdf
Windows Subsystem for Linux apt install ocrmypdf
Fedora dnf install ocrmypdf
macOS (Homebrew) brew install ocrmypdf
macOS (MacPorts) port install ocrmypdf
macOS (nix) nix-env -i ocrmypdf
LinuxBrew brew install ocrmypdf
FreeBSD pkg install py-ocrmypdf
OpenBSD pkg_add ocrmypdf
Ubuntu Snap snap install ocrmypdf

对于其他用户,请参阅我们的文档了解安装步骤。

语言

OCRmyPDF 使用 Tesseract 进行 OCR,并依赖其语言包。Linux 用户通常可以通过软件包管理器安装语言包:


# Debian/Ubuntu 用户
apt-cache search tesseract-ocr # 显示所有 Tesseract 语言包列表
apt-get install tesseract-ocr-chi-sim  # 示例:安装简体中文语言包

# Arch Linux 用户
pacman -S tesseract-data-eng tesseract-data-deu # 示例:安装英语和德语语言包

# OpenBSD 用户
pkg_info -aQ tesseract  # 显示所有 Tesseract 语言包列表
pkg_add tesseract-cym  # 示例:安装威尔士语语言包

# brew macOS 用户
brew install tesseract-lang

# Fedora 用户
dnf search tesseract-langpack # 显示所有 Tesseract 语言包列表 
dnf install tesseract-langpack-ita # 示例:安装意大利语语言包

然后可以通过 -l LANG 参数传递给 OCRmyPDF,指定要识别的语言。可以指定多种语言。

OCRmyPDF 支持 Tesseract 4.1.1+。它会自动使用在 PATH 环境变量中找到的第一个版本。在 Windows 上,如果 PATH 中没有 Tesseract 可执行文件,则根据 Windows 注册表使用安装的最高版本号。

文档与支持

安装 OCRmyPDF 后,可以通过以下命令访问内置帮助,了解命令语法和选项:

ocrmypdf --help

我们的文档托管在 Read the Docs 上

请在 GitHub Issues 页面报告问题,并遵循问题模板以快速响应。

功能演示

# 添加 OCR 层并要求 PDF/A 格式
ocrmypdf --output-type pdfa input.pdf output.pdf

# 将图片转换为单页 PDF
ocrmypdf input.jpg output.pdf

# 原地为文件添加 OCR(仅在成功时修改文件)
ocrmypdf myfile.pdf myfile.pdf

# 非英语语言的 OCR(查看语言 ISO 639-3 代码)
ocrmypdf -l fra LeParisien.pdf LeParisien.pdf

# 多语言文档的 OCR
ocrmypdf -l eng+fra Bilingual-English-French.pdf Bilingual-English-French.pdf

# 校正(拉直倾斜的页面)
ocrmypdf --deskew input.pdf output.pdf

更多功能见文档

依赖要求

除所需的 Python 版本外,OCRmyPDF 还需要外部程序 Ghostscript 和 Tesseract OCR 的安装。OCRmyPDF 是纯 Python 编写的,几乎可以在所有平台上运行:Linux、macOS、Windows 和 FreeBSD。

插件

OCRmyPDF 提供插件接口,可扩展或替换其功能。以下是我们所知的一些插件:

  • OCRmyPDF-AppleOCR:用 Apple Vision Framework 替换标准 Tesseract OCR 引擎。需要 macOS。
  • OCRmyPDF-EasyOCR:用 EasyOCR(基于 PyTorch 的新 OCR 引擎)替换标准 Tesseract OCR 引擎。强烈建议使用 GPU。
  • OCRmyPDF-PaddleOCR:用 PaddleOCR(强大的 GPU 加速 OCR 引擎)替换标准 Tesseract OCR 引擎。

paperless-ngx 提供了将 OCRmyPDF 集成到可搜索文档管理系统中的功能。

媒体报道

商业咨询

如果没有公司和用户选择支持功能开发和咨询需求,OCRmyPDF 就不会成为今天的样子。我们乐意讨论所有咨询,无论是扩展现有功能集,还是将 OCRmyPDF 集成到更大的系统中。

许可证

OCRmyPDF 软件采用 Mozilla 公共许可证 2.0 (MPL-2.0) 授权。该许可证允许将 OCRmyPDF 与其他代码(包括商业和闭源代码)集成,但要求您发布对 OCRmyPDF 所做的源代码级修改。

OCRmyPDF 的某些组件具有其他许可证,如标准 SPDX 许可证标识符或 DEP5 版权和许可信息文件所示。通常,非核心代码采用 MIT 许可证,文档和测试文件采用知识共享署名-相同方式共享 4.0 (CC-BY-SA 4.0) 许可证。

免责声明

本软件按“现状”提供,不提供任何明示或暗示的保证或条件。

34 次点击  ∙  0 人收藏  
登录后收藏  
0 条回复
关于 ·  帮助 ·  PING ·  隐私 ·  条款   
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
耗时 16 ms
Developed with Cursor