【发布时间】:2017-01-22 21:10:04
【问题描述】:
我正在寻找一种以编程方式(不使用任何图形用户界面)在大图像中查找小图像坐标的方法。
我的目标是在更大的信息图像中找到小corner images 的坐标。通过这些坐标,我想确定特定的“感兴趣区域”,以便在呈现图像时能够专注于这些区域或从图像中剪切这些区域。
所描述的corner images 可能看起来像这样(请忽略蓝色数字,因为它们只是 cmets。我想使用具有透明度的灰色 PNG 图形):1左上角2左下角3右下角4右上角
这些corner images被放置在大图内的特定位置:
每组corner icons 都定义了一个“感兴趣的区域”(不过,如何确定多个左上角中的哪一个属于哪个区域将是另一个问题)。
我想将免费/开源库与命令行操作或 Python 界面一起使用。似乎ImageMagick 库看起来非常接近可能的解决方案。但如果能解决这个问题,任何其他技术都可以。
例如ImageMagick 库我想依次检查四个corner items(它们只是同一原始图像的 90 度旋转)并将它们中的每一个与大图像“比较”。在大图像中,corner items 很有可能与其他图形内容“非常接近”。因此,简单的分块身份测试可能会失败。 “透明度”应被视为“无关紧要”。
我可以使用什么工具和过程来获得如此小的图像在大图像中的绝对 x 和 y 位置?
【问题讨论】:
-
请提供一些示例图片,以便我们了解您的意思。
-
@Mark:是的,确实,我的问题有望通过您在回答另一个问题时提到的方法来解决。我会尝试并回到这里。
-
@Mark:图片显示了我正在操作的图像类型。它们是手绘图,因此看起来不像医学图像。为了保持角落图像相同,我从自制图标库中复制/粘贴它们。
-
好的,我明白了。我有一些问题...您是否已经标记了图像,或者您打算在有方法时标记它们?图像和角标记是 JPG 还是 PNG 文件?角落是否曾经旋转过?是否可以通过信息图像中未出现的某种独特颜色的存在来检测角落 - 因为这样会更快?什么是透明度问题 - 你能否澄清一下 - 图像/角落已经是半透明的还是你想让它们变成那样?
标签: python image compare imagemagick command-line-interface