我检查过网站中的很多图像都是完全空白的,即 500x500,所有像素均为白色。所有图像都在图像目录的子目录中。我如何检查哪些是白色的?我正在考虑获取这些图像的名称。
更新:
如果您有(或可以安装)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)