通过欧氏距离进行SIFT特征匹配

问题描述 投票:0回答:2

SIFT特征匹配是通过基于欧氏距离的最近邻方法完成的。可以请您解释一下吗?有计算吗?如果可以,那么有人可以帮助我计算我的SIFT特征向量的欧几里得距离吗?我想保存计算出的欧几里得距离,以供神经网络使用诸如圆度和图像颜色等更多功能。

matlab sift euclidean-distance
2个回答
9
投票

通过欧氏距离进行SIFT特征匹配不是一件容易的事。该过程可以解释如下:

  1. 提取两个图像的SIFT关键点描述符。

  2. 从一张图像中获取一个关键点描述符(参考描述符)。

    2.1现在,找到参考描述符与另一幅图像的所有关键点描述符之间的欧几里得距离。

    2.2因此,您具有从参考描述符到image2中所有关键点描述符的欧几里得距离。按升序排列。(这意味着image1中的关键点到image2中的关键点最近的距离)

    2.3现在,设置一些阈值T(通常在0.3到0.7的范围内。)>

    2.4取第一个最近距离与第二个最近距离的比率,如果它小于阈值T,则它是一个匹配项,因此保存该索引。否则,没有匹配项。

  3. 对image1中的所有关键点描述符重复此操作。

  4. 现在您有了比赛。您可以通过添加两个图像然后基于关键点位置来绘制匹配项。

0
投票

我认为您的疑问是欧几里德距离。欧氏距离是在欧氏(或二维)平面中看到的两点之间的距离。对于二维平面而言,这是非常可视的,但是由于SIFT描述符是128维向量,因此变得棘手。您只需要坚持公式(https://en.wikipedia.org/wiki/Euclidean_distance

© www.soinside.com 2019 - 2024. All rights reserved.