比较大图像的特征描述符

我有一组数千个图像,并且对于每个图像,我已经提取了一组SIFT特征描述符(当前绑定到每个图像200个)。

我需要形成每幅图像之间距离的完整图。 也就是说,我需要通过一些度量来计算每个图像到每个其他图像的距离。

到目前为止,我尝试使用FLANN来计算两个节点之间的20个最近邻居描述符,然后计算每个匹配描述符之间的平均距离。 不幸的是,这个过程需要很长时间才能完成。

有没有什么办法可以更有效地比较这些图像的描述符?


你可以考虑把你的SIFT描述集合成一个Bag-of-Visual字(BoV)或一个局部聚合描述符矢量(VLAD)。 基本上:

1 - 用例如K均值计算码本(K个SIFT描述符)

2 - 对于每个图像,提取SIFT描述符,然后在码本中查找每个图像的最近邻。 因此,根据码本来计算图像的SIFT的直方图。 这是最简单的方法(硬编码,总和池),但存在替代方案(并且通常会给计算机视觉问题带来更好的结果)

3 - 因此,每个图像用一个大小为K的独特矢量(直方图)表示。 然后,您可以简单地计算图像之间的距离作为这些直方图之间的(例如欧几里得)距离。

链接地址: http://www.djcxy.com/p/29165.html

上一篇: Comparing feature descriptors of large set of images

下一篇: Stitch multiple images using OpenCV (Python)