2015-02-07 67 views
2

我试图做我自己的计算机视觉项目。我决定先从匹配计算机生成的对象开始,然后再进入现实世界。第一次测试进行得很顺利,它能够匹配一个对象并正确识别颜色。当绿色广场搜索这是我的结果:尽可能快地从阵列组重叠矩形

image description
我画红框对我的搜索函数返回

但是位置一旦环境较为模糊,也有更多的可能匹配的位置。甚至可能会有更多期望的目标。这是来自电脑游戏的截图:

image description
搜索到的对象位于红色框中。我将我的搜索建立在相似的颜色上,特别是在平均颜色之间的距离上。这是我所得到的,如果我想强调从我的测试程序中的所有搜索结果:

image description

显然,还有吨,在我的对象是位置匹配的矩形。我需要对他们进行分组,然后选择其中的一个。

因此,问题是:如何分组重叠的矩形和分隔数组中的每个组?

回答

-1

在图像enter image description here你有一组你在红色绘制的矩形N,你需要一种算法,给你k代表矩形和这个特定的图像k将等于2

算法你需要类似于http://en.wikipedia.org/wiki/Cluster_analysis,其中需要聚类的数据集是矩形中心的集合,这意味着聚类由代表矩形的中心的2D点表示。

聚类算法可以是例如http://en.wikipedia.org/wiki/K-means_clustering,您可以选择k一旦你k算法会给你k代表中心为这里http://en.wikipedia.org/wiki/Determining_the_number_of_clusters_in_a_data_set

解释;那么对于每个矩形,该算法会告诉您该矩形属于哪个群集。然后可以用这种方法计算代表矩形:它的中心是聚类,宽度是属于该聚类的所有矩形的平均宽度,高度是属于该聚类的所有矩形的平均高度。

+0

你好。感谢您发布此信息。虽然它可以用来解决我的特定问题,但我真的更喜欢严格的数学分组。 – 2015-04-27 02:06:11