如何在保留文本的同时删除 PDF 文档扫描的灰度页面背景?(二值化)

如何在保留文本的同时删除 PDF 文档扫描的灰度页面背景?(二值化)

我的 PDF 包含 600 页文本图像。它有2 层

  • 第 1 层:背景彩色图像

  • 第 2 层:文本图像

我想要删除整个 PDF 文件中的所有背景图像层,如图所示。

在此处输入图片描述

您能推荐我一些软件/工具吗?

在此处输入图片描述

答案1

概述

你正在寻找的工具是扫描裁缝未纸化能够阈值去斑和去噪。这两种工具都可以处理图像而不是 PDF 文件,但您可以使用本答案末尾描述的工具轻松地在这些应用程序使用的不同格式和 PDF 之间进行转换。

扫描裁缝

您可以找到视频教程这里. 更多关于官方维基。您可能最感兴趣的是黑白输出模式及滤镜设置

笔记自 2016 年起

该项目不再维护,并且已经有一段时间没有维护了。

查看ScanTailor 高级版

取消纸质文件

我还没有unpaper亲自试用过。据我所知,它的功能比 ScanTailor 多得多,但掌握起来也困难得多。

没有 GUI 界面,您必须依靠命令行开关才能完成工作。另一方面,这意味着unpaper可以使用脚本轻松自动执行转换。

您可以找到一些有关将扫描转换为黑白并删除背景的脚本示例这里

安装

此命令将安装上面提到的所有工具:

sudo apt-get install scantailor unpaper poppler-utils libtiff-tools

使用 unpaper 和 ScanTailer 时的有用工具

我没有足够的时间撰写有关 ScanTailor 和 unpaper 的完整教程1但这里有一些关于在.pdf这些工具支持的图像格式之间进行转换的指示:

  • 您可以使用pdfimages将 PDF 文档转换为单页.ppm文件,可以通过 读取unpaper

    使用示例:

    pdfimages *.pdf ./extracted-images
    
  • ScanTailor 不接受.ppm文件作为输入。您必须先将它们转换为其他格式,例如无损格式.pngmogrify工具套件 imagemagick可以为您做到这一点。

    使用示例:

    mogrify -format png *.ppm
    
  • ScanTailor 和 unpaper 的输出格式是单页.tiff文件。为了将它们转换回,.pdf我建议使用tiffcptiff2pdf

    使用示例:

    tiffcp *.tiff all.tiff
    tiff2pdf -F -p A4 -z -o Document.pdf all.tiff
    

1:任何读到这篇文章的人,请随意根据 ScanTailor 和/或 unpaper 编写更广泛的答案。

答案2

扫描二维码

我刚刚找到了一个非常简单的解决方案:

  1. 安装gscan2pdf
  2. 打开gscan2pdf,然后导入 PDF。
  3. 工具->阈值。默认的 80% 对我来说就够了。

    临界点:将所有比给定值暗的像素更改为黑色;所有其他像素变为白色。

  4. 将 PDF 保存到其他位置。

答案3

OCR我的PDF

我试过奥普特pdf删除灰色背景颜色,它对我有用。我尝试的命令:

ocrmypdf --use-threads \
         --remove-background \
         -v2 \
         --force-ocr \
         --optimize 3 \
         --output-type pdf \
         in.pdf out.pdf

答案4

或许掌握 PDF 编辑器可以帮助您,尽管我还没有找到在 600 页中自动执行此操作的方法。

相关内容