【问题标题】:Cleaning scanned grayscale images with ImageMagick使用 ImageMagick 清理扫描的灰度图像
【发布时间】:2012-03-25 09:10:31
【问题描述】:

我有大量的文本页面扫描(白底黑字)。

我通常的方法是在 Gimp 中使用“曲线”对话框清理那些只有四个点的非常简单的曲线:0,0 - 63,0 - 224,255, 255,255

这会使所有的灰色文本变成黑色,加上使文本更清晰,并将大部分白色像素变成纯白色。

如何使用 ImageMagick 或其他完全从命令行运行的 Linux 工具在脚本中实现相同的效果?

-normalize-contrast-stretch 不起作用,因为它们使用像素计数。我需要一个运算符,它可以使颜色 0-63(灰度)变成黑色,224 以上的所有颜色都是纯白色,其余的都应该归一化。

【问题讨论】:

    标签: image-processing imagemagick image-scanner


    【解决方案1】:

    The Color Modifications page 展示了 ImageMagick 的许多颜色处理算法。

    在这种特定情况下,有两个算法很有趣:

    -level 在曲线末端附近为您提供完美的黑白像素,并在它们之间提供线性分布。

    sigmoidal 选项在极端之间创建更平滑的曲线,这对于彩色照片效果更好。

    要获得与 GIMP 类似的结果,您可以尝试一个接一个地应用(使文本和黑色区域真正变黑)。

    在所有情况下,您都需要先运行 -normalize(甚至是 -contrast-stretch 以合并大部分噪声)以确保没有浪费黑白级别。没有这个,最暗的颜色可能比rgb(0,0,0) 更亮,最亮的颜色可能低于纯白色。

    【讨论】:

    • 我用for file in *; do mogrify -normalize -level 27%,76% $file; done 成功转换了一大套Doré Woodcuttings,已扫描。我通过在 gimp 中试验曲线工具找到了 27% 和 73%。
    【解决方案2】:

    [magick-users] Curves in ImageMagick

    存档消息中的第一个链接是一个 shell 脚本,我认为它可以满足您的需求。

    【讨论】:

      猜你喜欢
      • 2017-01-17
      • 2016-12-29
      • 2021-04-08
      • 2015-07-26
      • 1970-01-01
      • 2013-03-02
      • 2016-04-24
      • 1970-01-01
      • 2021-04-21
      相关资源
      最近更新 更多