我已经在opencv中实现了SIFT用于比较图像......我还没有编写用于比较的程序。使用FLANN的思路相同。但是,我的问题是,查看描述符的128个元素,不能真正了解图像及其旋转版本的相似性。
通过阅读Lowe的论文,我确实理解描述符坐标都是根据关键点方向旋转的...但是,获得的相似性究竟是多少。可以通过查看128个值来承担相似性。
请帮助我......这是我的项目演示。
答案 0 :(得分:2)
您可以先使用Lowe的指标来计算两个图像之间的一些推定匹配。该度量是对于图像1中的任何给定描述符de,找到图像2中所有描述符de'的距离。如果最近距离与第二最近距离的比率低于阈值,则接受它。
在此之后,您可以执行RANSAC或其他形式的稳健估计或Hough变换,以检查您接受为假定匹配的关键点的位置,方向和比例方面的几何一致性。
答案 1 :(得分:1)
如果我没记错的话,SIFT将为您提供一组描述每个兴趣点的128值描述符。您还可以获得每个图像中每个点的位置,以及它的“方向”(我忘记在纸张中调用“方向”)并在每个图像中进行缩放。
一旦找到两个具有匹配描述符的点,就可以通过比较坐标和方向来计算从一个图像中的兴趣点到另一个图像中的同一点的变换。
如果您有足够的匹配,您会看到所有(或大部分)兴趣点是否具有相同的转换。如果他们这样做,图像是相似的,如果他们不相似,图像是不同的。
希望这会有所帮助......
答案 2 :(得分:1)
您正在寻找的基本上是ASIFT