【问题标题】:Find an especific color coordenates on an image在图像上查找特定颜色坐标
【发布时间】:2020-10-01 22:10:16
【问题描述】:

我想在图像上找到某种颜色(例如绿色)第一次出现的坐标,以便在 bash 脚本中使用。

我一直在尝试使用 Imagemagick,但找不到解决问题的方法。

这可以用 Imagemagick 完成还是我应该使用其他任何东西?

【问题讨论】:

  • 我发给你的代码就是这样做的。排序后获取 yArr 的第一个元素。这将是您的颜色区域的边界框的左上角。

标签: bash imagemagick


【解决方案1】:

这是 ImageMagick 中使用稀疏颜色的一种方法:(假设图像完全不透明)。 Sparse-color 将读出所有完全不透明像素的 x,y 坐标和颜色。然后就可以使用unix工具获取第一个了。

创建红色和蓝色图像:

convert -size 10x10 xc:red xc:blue -append x.png

找到第一个 rgb(0,0,255) 即蓝色像素

convert x.png sparse-color: | tr " " "\n" | grep "srgb(0,0,255)" | head -n 1

结果
0,10,srgb(0,0,255)

使用 txt: 代替 sparse-color 可以获得类似的结果。但是用于过滤的unix命令会有点不同。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-19
    • 2013-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-05
    相关资源
    最近更新 更多