【问题标题】:How can I mass-convert images with no color to grayscale?如何将没有颜色的图像大量转换为灰度?
【发布时间】:2014-05-27 18:31:11
【问题描述】:

我有一个目录,其中包含大量 JPG 图像(纸质文档的扫描件),目前都是 sRGB。

许多但不是全部实际上没有颜色,或者仅将颜色作为背景(例如彩色纸或略带灰白色的扫描)。

我想将这些图像(但不是具有真实颜色的图像)大量转换为灰度,以节省磁盘空间。

我猜测 ImageMagick 有一些方法可以做到这一点,但我不知道怎么做。有什么建议吗?

【问题讨论】:

    标签: imagemagick jpeg grayscale file-conversion imagemagick-convert


    【解决方案1】:

    Imagemagick 的mogrify 实用程序将是最简单的解决方案。

    mogrify -path /path/to/output/dir/ -colorspace Gray /path/to/source/files
    

    识别哪个文档符合真实颜色的能力可能非常本地化。我建议评估每张图像的颜色计数,并且只转换低于给定阈值的图像。

    THRESHOLD=1024
    FILES=`ls /path/to/source/files`
    for FILE in ${FILES}; do
    COLORS=`identify -format %k "$FILE"`
    if [[ $COLORS -lt $THRESHOLD ]]; then
      mogrify -path /path/to/output/dir/ -colorspace Gray "$FILE"
    fi
    

    评估预处理选项以减少噪音也可能是明智之举。 Monochrome 是最容易申请的,但 other great solutions 存在。

    【讨论】:

      猜你喜欢
      • 2013-01-12
      • 1970-01-01
      • 2011-12-28
      • 1970-01-01
      • 1970-01-01
      • 2016-01-11
      • 2015-10-07
      • 2012-11-23
      相关资源
      最近更新 更多