文章来源:08AI导航网发布时间:2025-04-09 15:53:27
OCRmyPDF 是一款主要用于为扫描的 PDF 文件添加可搜索和可复制的 OCR 文本层的工具,支持多语言,能优化图像、纠偏、清洁页面,并自动旋转方向等功能。以下是OCRmyPDF的本地部署方法:
OCRmyPDF 提供了多种安装方式,具体取决于你的操作系统和需求。
1. 通过系统包管理器安装
Debian/Ubuntu:
aptinstallocrmypdfFedora:
dnfinstallocrmypdftesseract-osdmacOS (Homebrew):
brewinstallocrmypdfWindows Subsystem for Linux:
aptinstallocrmypdf2. 使用 Python pip 安装
如果你需要安装最新版本或系统包管理器提供的版本较旧,可以使用 pip:
pipinstallocrmypdf或者,使用 pipx 来创建隔离的 Python 环境:
pipxinstallocrmypdf3. 使用 Docker 安装
如果你使用 Docker,可以通过以下命令安装 OCRmyPDF 的 Docker 镜像:
dockerpulljbarlow83/ocrmypdf运行时可以将输入和输出文件挂载到容器中:
dockerrun-v/path/to/input.pdf:/input.pdf-v/path/to/output.pdf:/output.pdfjbarlow83/ocrmypdf/input.pdf/output.pdf4. 从源代码安装
如果你需要从源代码安装(例如开发或测试最新功能),可以克隆 GitHub 仓库并安装:
gitclonehttps://github.com/ocrmypdf/OCRmyPDF.gitcdOCRmyPDFpipinstall-e.依赖项
Python 3.10 或更高版本
Ghostscript 9.54 或更高版本
Tesseract 4.1.1 或更高版本
jbig2enc 0.29 或更高版本(可选,用于优化输出文件大小)
pngquant 2.5 或更高版本(可选,用于优化 PNG 图像)
unpaper 6.1 或更高版本(可选,用于清洁图像)
注意要点
32 位支持:OCRmyPDF 不支持 32 位系统,建议使用 64 位版本。
Windows 用户:建议使用 Windows Subsystem for Linux 或 Docker 来避免兼容性问题。
macOS 用户:可以通过 Homebrew 安装,但需要额外安装 Tesseract 的语言包(如 tesseract-lang)。
验证安装
安装完成后,可以通过以下命令验证 OCRmyPDF 是否安装成功:
ocrmypdf--version1. 添加 OCR 文本层
核心功能:为扫描的 PDF 文件添加可搜索的文本层,使文档内容可复制、可搜索。
示例命令:
ocrmypdfinput.pdfoutput.pdf2. 多语言支持
功能描述:支持超过 100 种语言,用户可以根据文档的语言选择合适的语言包,提高 OCR 的准确率。
示例命令:
ocrmypdf--languagechi_siminput.pdfoutput.pdf#简体中文ocrmypdf--languageenginput.pdfoutput.pdf#英文3. 图像优化
功能描述:优化 PDF 中的图像,包括调整分辨率、压缩图像大小等,生成更小的文件,同时保持图像质量。
示例命令:
ocrmypdf--optimize3input.pdfoutput.pdf#最强优化4. 纠偏和清洁
功能描述:在执行 OCR 之前,对图像进行纠偏(纠正倾斜)和清洁(去除污点、噪点等),提高 OCR 的准确率。
示例命令:
ocrmypdf--deskew--cleaninput.pdfoutput.pdf5. 自动旋转页面
功能描述:自动检测页面的方向并旋转页面,确保所有页面的方向一致,便于阅读和处理。
示例命令:
ocrmypdf--rotate-pagesinput.pdfoutput.pdf6. 转换为 PDF/A 格式
功能描述:将输出文件转换为 PDF/A 格式,这是一种国际标准的归档格式,适合长期存储。
示例命令:
ocrmypdf--output-typepdfainput.pdfoutput.pdf7. 去除重复页面
功能描述:自动检测并去除 PDF 中的重复页面,减少文件大小。
示例命令:
ocrmypdf--remove-backgroundinput.pdfoutput.pdf8. 背景去除
功能描述:去除 PDF 页面中的背景,使文字更加清晰,便于阅读。
示例命令:
ocrmypdf--remove-backgroundinput.pdfoutput.pdf9. 生成 PDF/A 格式
功能描述:生成符合 PDF/A 标准的文件,适合长期归档和存储。
示例命令:
ocrmypdf--output-typepdfainput.pdfoutput.pdf10. 跳过已 OCR 的页面
功能描述:如果 PDF 中某些页面已经包含文本层,可以跳过这些页面,避免重复处理。
示例命令:
ocrmypdf--skip-textinput.pdfoutput.pdf11. 自定义 DPI
功能描述:可以指定 OCR 处理时的图像分辨率(DPI),默认值为 300 DPI。
示例命令:
ocrmypdf--dpi350input.pdfoutput.pdf12. 转换为单色图像
功能描述:将彩色或灰度图像转换为单色图像,减少文件大小。
示例命令:
ocrmypdf--output-typepdf--monochromeinput.pdfoutput.pdf13. 生成日志文件
功能描述:生成详细的日志文件,便于调试和记录处理过程。
示例命令:
ocrmypdf--log-fileoutput.loginput.pdfoutput.pdf14. 批量处理
功能描述:结合脚本或命令行工具(如 GNU Parallel),可以批量处理多个 PDF 文件。
示例命令:
forfilein*.pdf;doocrmypdf"$file""output_$file"done15. 支持多种输入格式
功能描述:支持从多种格式的文件生成 PDF,包括 TIFF、PNG 等。
示例命令:
ocrmypdfinput.tiffoutput.pdf16. 压缩 PDF
功能描述:在 OCR 处理后,可以进一步压缩 PDF 文件,减少文件大小。
示例命令:
ocrmypdf--optimize3input.pdfoutput.pdf17. 转换为 PDF/A-2b 或 PDF/A-2u
功能描述:生成符合 PDF/A-2b 或 PDF/A-2u 标准的文件,适合不同需求。
示例命令:
ocrmypdf--output-typepdfa-2binput.pdfoutput.pdfocrmypdf--output-typepdfa-2uinput.pdfoutput.pdf18. 支持 Unicode
功能描述:支持 Unicode 字符,确保多语言文档的正确处理。
示例命令:
ocrmypdf--languagechi_sim--languageenginput.pdfoutput.pdf19. 自定义输出文件名
功能描述:可以自定义输出文件的名称,便于管理和识别。
示例命令:
ocrmypdfinput.pdf"output_with_date_$(date+%Y%m%d).pdf"20. 支持命令行参数
功能描述:通过命令行参数,可以灵活配置 OCRmyPDF 的各种功能。
示例命令:
ocrmypdf--helpOCRmyPDF本地部署及使用教程:https://ocrmypdf.readthedocs.io/en/latest/installation.html
相关攻略 更多
最新资讯 更多
AI眼镜 “百镜大战” 打响!小小米眼镜官方微博上线引发市场热潮,产业链有望迎来快速发展期
更新时间:2025-04-19
新春第一课!自治区科协举办人工智能科普报告会
更新时间:2025-04-19
加速人工智能赛道布局!东莞市政府高规格召开新春第一场新闻发布会
更新时间:2025-04-19
东莞2025年“一号文”发布 聚焦“人工智能+先进制造”
更新时间:2025-04-19
马斯克:无人机和人工智能将主导未来战争 美国要加大投资
更新时间:2025-04-19
法国印度将联合主持AI行动峰会
更新时间:2025-04-19
法印将联合主持AI行动峰会,法媒:法欧希望借此峰会确立自身竞争地位
更新时间:2025-04-18
OpenAI前高管创立的AI公司据称洽谈融资 估值或达200亿美元
更新时间:2025-04-18
谷歌放弃 “不开发武器 AI” 承诺引争议,吴恩达表态支持
更新时间:2025-04-18
外交部:欢迎各国来华出席2025世界人工智能大会
更新时间:2025-04-18