摘要:在数字化办公的时代,对纸质的文档和书籍进行扫描,生成扫描版 PDF 文件,是档案资料管理中的一项常见任务。然而,扫描的 PDF 文件往往只是图像形式,无法直接进行文本搜索和编辑,这位人们更好地查询和管理文档带来了不便。
在数字化办公的时代,对纸质的文档和书籍进行扫描,生成扫描版 PDF 文件,是档案资料管理中的一项常见任务。然而,扫描的 PDF 文件往往只是图像形式,无法直接进行文本搜索和编辑,这位人们更好地查询和管理文档带来了不便。
OCRmyPDF 的出现,为解决这一问题提供了有效的方案,其能够使用 OCR 技术,为扫描的 PDF 文件添加文本层,让扫描 PDF 变得可搜索和可复制。
OCRmyPDF 是一个为扫描版 PDF 文件添加文本层的工具,其代码仓库位于 https://github.com/ocrmypdf/OCRmyPDF。OCRmyPDF 使这些原本只能以图像形式存在的 PDF 文件变得可搜索,方便了文档的搜索和管理。
OCRmyPDF 能从普通 PDF 文件生成可搜索的 PDF/A 文件,精准地将 OCR 识别得到文本放置于图像下方,方便进行复制和粘贴操作。OCRmyPDF 会保留原始嵌入图像的分辨率,尽可能以无损的方式插入 OCR 文本信息,不会破坏其他原有内容。
此外,OCRmyPDF 还能优化 PDF 图像,通常能生成比输入文件更小的输出。它还支持在执行 OCR 前对图像进行校正和清理,如校正倾斜的页面、去除背景等。OCRmyPDF 可以验证输入和输出文件,确保处理结果的准确性和可靠性,并能够在所有可用的 CPU 核心上分配工作,提高处理效率,并且支持处理包含数千页的大型文件。
OCRmyPDF 是一个命令行工具,为各种操作系统都提供了发行包,对于 Debian, Ubuntu 系统,使用 apt 安装:
apt install ocrmypdf在 macOS 上可以使用 Homebrew:
brew install ocrmypdf而在 Windows 上,需要首先确保环境安装了 Python,Tesseract 和 Ghostscript,可以使用 winget 或 Chocolatey 安装:
winget install -e --id Python.Python.3.11winget install -e --id UB-Mannheim.TesseractOCRchoco install python3choco install --pre tesseract然后通过安装 Python 库的形式进行 ocrmypdf 的安装:
python3 -m pip install ocrmypdfOCRmyPDF 也提供了 Docker 镜像,方便独立部署:
docker pull jbarlow83/ocrmypdf-alpine安装完成后,就可以运行 ocrmypdf 工具了:
ocrmypdf --helpocrmypdf 提供了以下命令行参数
ocrmypdf -l eng+fra # 指定文档语言,支持多语言组合 --rotate-pages # 旋转页面,能够修复方向错误的页面 --deskew # 修复扫描时倾斜的页面 --title "My PDF" # 修改元信息中的文档标题 --jobs 4 # 并发处理数量 --output-type pdfa # 输出格式,默认输出 PDF/A 格式 input_scanned.pdf # 输入的 PDF 或图片文件路径 output_searchable.pdf # 输出的 PDF 路径最简单的是提供输入的 PDF 文件,并指定输出的 PDF 路径即可:
ocrmypdf input.pdf output.pdfOCRmyPDF 也支持输入图片进行识别并产出 PDF:
ocrmypdf input.jpg output.pdfOCRmyPDF 利用 Tesseract 4.1.1+ 完成 OCR 图像文本识别的工作,支持指定文档的语言,支持同时提供多语言进行 OCR 识别:
ocrmypdf -l eng+fra Bilingual-English-French.pdf Bilingual-English-French.pdf利用 --deskew 参数,OCRmyPDF 还能自动修复扫描时倾斜了的的页面,输出质量更优的 PDF 文档:
ocrmypdf --deskew input.pdf output.pdfOCRmyPDF 功能强大且实用,为扫描版 PDF 文件的可检索化提供了便捷高效的解决方案。通过添加 OCR 文本层,使得原本仅为图像的 PDF 文件变得可以直接搜索和复制,大大提高了文档查询和管理的效率。
随着数字化进程的不断推进,OCRmyPDF 的应用方向也会变得越来越广泛。它可以帮助企业和快速将历史存留的纸质文档数字化,方便进行存档和检索,和构建企业知识库;也能够将扫描的科研文献转换为可搜索的文本,便于研究人员快速进行资料的查找和引用。而在图书馆和档案管理中,OCRmyPDF 可以将大量的历史文献和档案进行数字化处理,使人们能够更方便地进行查阅和研究。
来源:每日开源代码