如何在 GraphicsMagick 中打印连接组件标签的坐标?

问题描述 投票:0回答:1

有没有办法逐像素扫描图像并按颜色打印每个像素区域的坐标?类似于 ImageMagick 的功能唯一标记连接区域。我想在 bash 或 python 中执行此操作来识别图像内多个矩形的坐标,每个矩形具有不同的颜色或具有某种颜色的边框线。我之前在超级用户中问过这个。 这里

示例如何在 ImageMagick 中完成此操作。

magick objects.gif -connected-components 4 -auto-level -depth 8 objects.png

Objects (id: bounding-box centroid area mean-color):
  0: 256x171+0+0 119.2,80.8 33117 srgb(0,0,0)
  2: 120x135+104+18 159.5,106.5 8690 srgb(255,255,255)
  3: 50x36+129+44 154.2,63.4 1529 srgb(0,0,0)
  4: 21x23+0+45 8.8,55.9 409 srgb(255,255,255)
  1: 4x10+252+0 253.9,4.1 31 srgb(255,255,255)

更新

考虑这个输入图像。

我在 bash 中有一种大型 IM 脚本,可以动态检测带有图表的矩形和顶部小矩形(蓝色、红色、绿色、紫色)的坐标。首先将输入图像转换为黑白并打印坐标。然后,我使用此脚本的输出来裁剪所有矩形以进行进一步处理。事情是需要一些时间来完成所有流程,而我最近发现,graphicsmagick 声称速度更快。

convert 'input.png' \
         -transparent "#FFFFFF" \
         -transparent "#27A9E3" \
         -transparent "#28B779" \
         -transparent "#E7191B" \
         -transparent "#852B99" \
         -alpha extract -negate \
         -define connected-components:verbose=true \
         -define connected-components:mean-color=true \
         -define connected-components:area-threshold=5000 \
         -connected-components 8 black_and_white.png
graphicsmagick
1个回答
0
投票

三种解决方法GraphicsMagick不提供“连接组件”处理...

  1. 查看我的回答GraphicsMagick 和 ImageMagick 有什么区别?

  1. 查看在线手册,这里,搜索单词“已连接”,发现它不存在。

  1. 下载并解压 2023 年 9 月的最新源代码,然后在所有文件中搜索单词 “connected”,结果是空的:

    find GraphicsMagick-1.3.42 -type f -exec grep -i connected {} \;

© www.soinside.com 2019 - 2024. All rights reserved.