确定图像中有多少独特的颜色

问题描述

我正在尝试确定图像中的颜色总数。我正在尝试使用 identify 并且我使用的是 6.9.10-68 版。

手册说使用这种格式:identify [options] input-file 并且它还说识别图像中的颜色数量认情况下是关闭的,并使用 -define unique=true 选项启用它。进一步在手册中,它说 -define unique=true 将“返回图像中唯一颜色的数量”,但它还提供参数 -unique 以“显示图像中唯一颜色的数量”。

我一直在尝试在我的图像上使用以下命令失败:

identify -define unique=true input.jpg
identify -define "unique=true" input.jpg
identify -define unique=true -unique input.jpg
identify -define "unique=true" -unique input.jpg
identify -unique -define unique=true input.jpg
identify -unique -define "unique=true" input.jpg

我还发现 2008 年的其他论坛帖子提到了 -format %k-format "%k",我尝试将它们添加到其中。

我在使用 -verbose 参数并使用正则表达式获取 Colors: \d+ 值方面取得了一些成功,但我注意到有时它不提供颜色值,有时它的 0 不提供对我没有任何意义。

我尝试将图像转换为不同的格式,但也没有取得太大的成功。

是否有可能可靠且准确地获得图像中有多少颜色的整数?

最终我的目标是检测只有 1 种颜色的图像。我正在使用滑动地图,如果我只能用一种颜色标记一个图块,那么我知道它的所有“子”图块看起来都完全一样,我可以将请求重定向到同一个图块,以获得更快的用户体验,而且花费更少数据存储和传输要求。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)