Nic*_*rth 1 opencv image-processing computer-vision sift feature-descriptor
我有一组几千个图像,并且对于每个图像,我提取了一组SIFT特征描述符(当前绑定到每个图像200个).
我需要形成每个图像之间距离的完整图表.也就是说,我需要通过一些指标来计算每个图像到每个其他图像的距离.
到目前为止,我已经尝试使用FLANN来计算两个节点之间的20个最近的相邻描述符,然后计算每个匹配描述符之间的平均距离.不幸的是,这个过程耗时太长而无法执行.
有没有办法让我更有效地比较这些图像的描述符?
您可以考虑将SIFT描述符聚合成视觉词袋(BoV)或局部聚合描述符矢量(VLAD).基本上:
1 - 用例如K均值计算码本(K SIFT描述符)
2 - 对于每个图像,提取SIFT描述符,然后在码本中查找每个图像的最近邻居.因此,根据码本计算图像的SIFT的直方图.这是最简单的方法(硬编码,Sum pooling),但存在替代方案(通常可以为计算机视觉问题提供更好的结果)
因此,每个图像用大小为K的唯一矢量(直方图)表示.然后,您可以简单地计算图像之间的距离,作为这些直方图之间的(例如欧几里德)距离.
归档时间: |
|
查看次数: |
955 次 |
最近记录: |