ASIFT 和 SIFT 的替代解决方案?

Alternative solutions for ASIFT and SIFT?

我目前正在研究比较不同角度的物体以进行图像检测。基本上,我想知道图像 1 中的对象是否与图像 2 中的对象相似(相似度百分比会很好)。

图片1:

图二:

我已经在 Internet 上四处查看,ASIFT (LINK) 似乎是一个很好的解决方案。然而,当我实施他们的演示并使用相同的输入多次重新运行该演示时,ASIFT 在匹配的顶点上给出了不同的结果。

为什么每次我使用相同的输入重新运行演示时,ASIFT 都会给出不同的结果?

PS:
一些 评论 关于替代解决方案,如 ASIFT 或 SIFT,用于比较不同角度的对象(具有更一致的结果),我们也将不胜感激。

你可以试试SURF,OpenCV已经实现了

您可能还想看看 vlFeat,它是用 C 编写的,并且有 Matlab 绑定。

这不是 ASIFT 或 better-ASIFT 问题。基本上,ASIFT 解决了 "Wide baseline stereo" 问题——找到同一对象或场景的不同视图之间的对应关系和几何变换。

您要查找的是某种图像(对象)相似性。最先进的方法——训练神经网络,从中获取图像的固定长度描述符,并将描述符与它们之间的欧几里得距离进行比较

例如,查看 "Neural Codes for Image Retrieval" 论文 - http://arxiv.org/abs/1404.1777

P.S。如果您仍然需要对应并且错误地给了我们不同的眼镜,您可以尝试 MODS http://cmp.felk.cvut.cz/wbs/index.html 与 ASIFT 的不同之处在于它可以处理更大的角度差异,更稳定和更快。

如果您只有这两张图片,这对于 SIFT/ASIFT 特征比较来说是一个相当困难的问题。甚至对我来说也不清楚说两张图片描绘的是同一副眼镜,因为考虑到有非常相似的眼镜可能会有所不同,比如侧片的宽度。

也就是说,我会寻找不同的方法。这些是我想到的一些高级方法:

  • 这个案例的颜色很有特点。如果你有两个完全不同颜色的模型,你可以很容易地说它们不一样。所以你可以得到颜色直方图(忽略背景)并进行比较。
  • 眼镜的另一个非常典型的特征是镜片周围的镜框形状。根据您的图片,我希望该框架始终可见。因此,您可能会找到包含镜头的矩形,找到两个图像之间的单应性,扭曲矩形并通过互相关比较两者。