我希望能够循环遍历一个图像文件夹,并在控制台输出有多少像素是#333212,有多少是#332211等。在PHP中是否可能实现?我找到了一个可以“操作”图像的包,但没有一个能够检测每个像素颜色的工具或函数。在PHP库中是否存在这样的工具或函数?编辑:不一定非要使用PHP,安装的包越少越好。
# First create a little test strip with black, white, red, green and blue parts
convert -size 50x50 xc:black xc:white xc:red xc:lime xc:blue +append out.png
convert out.png -fill black +opaque red n.png
convert n.png \
\( +clone -evaluate set 0 \) \
-metric AE -compare \
-format "%[distortion]" info:
2500
2500看起来对我来说就像是50px乘以50px的大小 :-)
注意:
AE
表示绝对误差,即不同像素点的简单计数。 -format "%[distortion]" info:
的部分使ImageMagick将计数(%distortion
)作为数字(info:
),而不是作为图像输出。
显然,你可以将red
替换为你问题中的"#333212"
。
你也可以像这样在一次访问中完成所有操作:
convert input.png \
-fill black +opaque red \
\( +clone -evaluate set 0 \) \
-metric AE -compare \
-format "%[distortion]" info: