我想弄清楚SURF特征检测是如何工作的。我想我已经取得了一些进展。我想知道我是怎么离开的。
您已存储的模板图像和真实世界的图像 根据“关键点”或一些重要特征进行比较 在两张图片中。
相同点之间的最小欧氏距离构成a 很好的比赛。
什么构成重要特征或关键点?角落
(边缘的交点)或斑点(强度急剧变化)。
SURF使用blob。
它使用Hessian矩阵进行斑点检测或特征提取 Hessian矩阵是二阶导数的矩阵:这是为了 找出与一个强度相关的最小值和最大值 给定图像中的区域。
答案 0 :(得分:4)
找到可能再次出现在同一对象的不同图像中的特征/关键点(冲浪使用盒式过滤器)。如果可能,这些特征应该是比例和旋转不变的。角落,斑点等都很好,并且经常以多种尺度进行搜索。
找到该点的正确“方向”,以便如果根据该方向旋转图像,则两个图像都会针对该单个关键点进行对齐。
计算“描述符”,该描述符具有关键点的邻域如何以正确的比例显示(在方向之后)的信息。
现在您的欧氏距离计算仅在描述符上完成,而不是在关键点位置上进行!
重要的是要知道步骤1不适用于SURF。 SURF实际上是步骤2-3,但作者提出了如何进行步骤1以与步骤2-3产生一些协同作用的建议。协同作用是,第1步和第3步都使用积分图像来加快速度,因此积分图像只需要计算一次。