如何找到完全白色的图像?

hos*_*eio 5 files images

我检查过网站中的很多图像都是完全空白的,即 500x500,所有像素均为白色。所有图像都在图像目录的子目录中。我如何检查哪些是白色的?我正在考虑获取这些图像的名称。

更新

  • 我想使用一些 bash 脚本或命令。
  • Imagemagick 已安装
  • 服务器是 Ubuntu 14.04
  • 所有图像都是 .jpg 扩展名

Jef*_*ler 4

如果您有(或可以安装)ImageMagick 软件包,它有一个identify实用程序可以打印文件中颜色的直方图;下面的 awk 程序将扫描identify -verbose输出以获取颜色数量和直方图中列出的颜色。如果只列出一种颜色并且直方图中唯一的颜色是白色,那么它将返回“成功”,否则返回“失败”。

然后,您可以将 shell 脚本包装在 awk 周围并识别以标记匹配的文件:

for f in images/*
do
  identify -verbose "$f" | awk -f iswhite.awk && echo "$f is an all-white image"
done
Run Code Online (Sandbox Code Playgroud)

iswhite.awk

/Histogram:/ {
  inhisto=1
}
inhisto && /[[:digit:]]+: \([ [:digit:]]{3},[ [:digit:]]{3},[ [:digit:]]{3}\) #/ {
  if ($0 !~ /#FFFFFF white/) { nonwhite=1 }
}
/Rendering intent/ {
  inhisto=0
}
/Colors: / {
  ncolors=$2
}
END {
  if (ncolors == 1 && nonwhite == 0) { exit 0 } else { exit 1 }
}
Run Code Online (Sandbox Code Playgroud)