在包含多个对象的图像中查找对象(Python)

1 投票
2 回答
761 浏览
提问于 2025-04-16 15:08

我需要写一个Python的图像处理程序,这个程序要读取两张图片,一张是只有一个物体的,另一张是有多个物体的。不过,第一张图片里的物体在第二张图片里也有,但它被其他物体包围着(有些物体看起来还挺像的)。

这两张图片的大小是一样的,但我在找方法比较这两张图片时遇到了问题,我想找出匹配的物体,然后在这两个图片中都出现的物体上标记一个叉或者指示符。

所以,这个程序应该首先打开这两张需要比较的图片,然后在比较完成后,显示包含多个物体的那张图片,并在与第一张图片中物体最相似的物体上加上一个指示符。

2 个回答

1

我想最简单的方法就是计算这两张图片的相关性图。你可以用像scipy这样的科学库对这两张图片进行卷积,然后应用一个低通滤波器,最后找到结果中的最大值。

你可以看看以下这些库:

  • numpy

  • scipy

  • matplotlib

  • PIL,如果你的图片不是png格式的话

2

下面的内容不是Python代码,而是一个关于图像相关性的概念验证。

以下示例是数学代码:

在这里输入图片描述

组合的情况也是一样:

在这里输入图片描述

撰写回答