5

我正在使用 BOW 对象检测,并且正在编码阶段。我已经看到了一些kd-Tree在编码阶段使用的实现,但大多数著作都表明K-means集群是要走的路。

两者有什么区别?

4

3 回答 3

5

在目标检测中,k-means 用于量化描述符。kd-tree 可用于搜索带或不带量化的描述符。每种方法都有其优点和缺点。具体来说,当描述符维度的数量超过 20 时,kd-trees 并不比暴力搜索好多少。

于 2012-06-18T21:54:59.950 回答
4

kd-treeAFAIK 用于标记阶段,它的速度要快得多,当对大量组进行聚类时,数百甚至数千组,然后简单地采用到每个组的所有距离的 argmin 的简单方法,k-meanshttp://en.wikipedia.org/wiki/K-means_clustering是实际的聚类算法,虽然并不总是很精确,但速度很快,一些实现返回组,而其他组和训练数据集的标签,这是我通常使用的http://docs.scipy.org/doc/scipy/reference /generated/scipy.spatial.cKDTree.html结合http://docs.scipy.org/doc/scipy/reference/generated/scipy.cluster.vq.kmeans2.html

于 2012-06-18T21:54:56.277 回答
1

kd-TreeK-means算法是两种不同类型的聚类方法。

这里有几种聚类方法如下:

  • kd-Tree是一种方法(基于中值)。
  • K-means是一种基于均值的聚类方法。
  • GMM(高斯混合模型)是一种基于概率的聚类方法(软聚类)。
  • 等等

[更新]:

通常,有两种聚类方法,软聚类和硬聚类。像 GMM 这样的概率聚类是软聚类类型,将对象分配给具有概率的聚类,而其他聚类是硬聚类,将对象绝对分配给聚类。

于 2019-08-16T14:56:23.997 回答