gpt4 book ai didi

ImageMagick:我如何处理直方图结果?

转载 作者:行者123 更新时间:2023-12-04 00:43:22 24 4
gpt4 key购买 nike

我正在获取图像的大多数现有颜色并使用“直方图”功能显示它

convert image.jpg  -scale 100x100 -gravity \
center -crop 50% -dither None -remap color_map.gif \
-format %c histogram:info:

22: ( 0, 0, 0) #000000 black
881: (119,133,142) #77858E rgb(119,133,142)
268: (186, 84, 29) #BA541D rgb(186,84,29)
662: (212,212,212) #D4D4D4 grey83
20: (244,203, 98) #F4CB62 rgb(244,203,98)
647: (255,255,255) #FFFFFF white

我现在可以使用这个输出吗?我想在我的数据库中保存最现有的颜色,但我不知道现在如何只获取编号为 881 的颜色。谁能帮帮我?

最佳答案

如果您想纯粹从 shell 执行此操作(假设是 Bash-like Unix 环境),像这样的东西会起作用:

convert image.jpg -scale 100x100 -gravity center \
-crop 50% -dither None -remap color_map.gif \
-format %c histogram:info: | sort | tail -n1 | \
sed -e 's/.*\(#[0-9A-F]\+\).*/\1/'

它获取 ImageMagick 的输出,对其进行排序,使最大的颜色计数位于底部,仅获取该行,然后从该行中提取颜色十六进制。如果您的目标是获取十进制 rgb 值而不是十六进制值,则可以调整 sed 正则表达式。

因此对于您的示例图像,输出应该只是:

#77858E

关于ImageMagick:我如何处理直方图结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16286134/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com