SURF如何工作的总结

时间:2015-04-02 16:29:46

标签: algorithm opencv surf

我想弄清楚SURF特征检测是如何工作的。我想我已经取得了一些进展。我想知道我是怎么离开的。

  • 您已存储的模板图像和真实世界的图像 根据“关键点”或一些重要特征进行比较 在两张图片中。

  • 相同点之间的最小欧氏距离构成a 很好的比赛。

  • 什么构成重要特征或关键点?角落
    (边缘的交点)或斑点(强度急剧变化)。

  • SURF使用blob。

  • 它使用Hessian矩阵进行斑点检测或特征提取 Hessian矩阵是二阶导数的矩阵:这是为了 找出与一个强度相关的最小值和最大值 给定图像中的区域。

1 个答案:

答案 0 :(得分:4)

筛选/冲浪等有3个阶段:

  1. 找到可能再次出现在同一对象的不同图像中的特征/关键点(冲浪使用盒式过滤器)。如果可能,这些特征应该是比例和旋转不变的。角落,斑点等都很好,并且经常以多种尺度进行搜索。

  2. 找到该点的正确“方向”,以便如果根据该方向旋转图像,则两个图像都会针对该单个关键点进行对齐。

  3. 计算“描述符”,该描述符具有关键点的邻域如何以正确的比例显示(在方向之后)的信息。

  4. 现在您的欧氏距离计算仅在描述符上完成,而不是在关键点位置上进行!

    重要的是要知道步骤1不适用于SURF。 SURF实际上是步骤2-3,但作者提出了如何进行步骤1以与步骤2-3产生一些协同作用的建议。协同作用是,第1步和第3步都使用积分图像来加快速度,因此积分图像只需要计算一次。