2

所有层次K-均值聚类的SIFT向量

我正在寻找应用大卫Nister和亨里克Stewenius的同样的方法在http://www.wisdom.weizmann.ac.il/~bagon/CVspring07/files/scalable.pdf

在本文中,他们使用了大量的SIFT向量(128 -D)作为分层k均值聚类的输入以构建分层视觉词汇树。

是否有人知道我可以用来做这个聚类的任何好的库?

Ps:输入SIFT描述符的数量很高(70,000,000),我希望这个结果将是一个包含1,000,000叶节点的词汇树。

非常感谢。 关于。

回答

2

如果数据处于受支持的格式,OpenIMAJ中的ClusterQuantiser工具应该能够执行此操作。如果该工具无法使用开箱即用的数据,那么您可以在1.0.5版本中为org.openimaj.ml.clustering.kmeans.HierarchicalByteKMeans类(在svn trunk版本中)或org.openimaj.ml.clustering.kmeans.HByteKMeans类中编写驱动程序。这两个版本的课程都支持从磁盘流式传输数据,因此您不需要在内存中保存所有功能!

为了完整性,vlfeat也有一个分层的k-means实现,但我不知道它有多大的比例。

从实践经验来看,您也可以考虑在聚类之前对特征进行采样。我不确定你会从集群中获得很多好处。

+0

Jon,谢谢。我刚刚在一周前遇到了OpenIMAJ,当时我使用谷歌随机搜索。我会研究它,看看它能提供什么。 – zhenxingDCU