Advertisement

Opencv中特征点提取和特征匹配算法详解(ORB SIFT SURF FAST)

阅读量:

特征匹配(Feature Match)作为计算机视觉领域中的一个核心技术,在目标识别、三维重建以及视觉SLAM等应用中发挥着关键作用。例如,在设计视觉里程计时会广泛应用于这些场景之中。对于刚入门的开发者来说这一概念往往难以理解因此花些时间深入理清这些关键概念对于提升技术能力至关重要。本文将详细总结了特征匹配相关技术及其应用实践并通过这篇文章深入探讨了特征提取的相关理论与实现细节。
参考博客 https://www.cnblogs.com/wyuzl/p/7816011.html

特征点检测与特征匹配的原理

在图像中选择若干特征点,并非要进行全面的全局分析

特征点

在一幅图像中具有独特性的像素单元可以被视为该图像的关键特征;该特征具有的四条显著属性如下:

  1. 相同区域在不同图像中出现
  2. 不同区域具有不同的特性表达
  3. 在同一图像内,特征点数量远少于像素总数
  4. 仅局限于局部的小区域内
    每种特征还具备两种特性:一种是对旋转具有不变性;另一种是对尺度具有不变性
在这里插入图片描述

所指的特征点实际上涵盖了关键子和描述子。也就是说,在提到SIFT特征点时,它实际上指的是'提取SIFT关键子并计算其对应的SIFT描述子'。在通常情况下,两者通常是紧密相关的。下面将介绍常用的几种特征点检测与匹配方法。

1.Harris角点检测

基于特征点的局部差异特性,在选定区域中分析所选像素框内灰度变化程度来确定特征点的位置时

在这里插入图片描述

2.SIFT

SIFT(即尺度不变特征转换)是一种以其卓越性能闻名的尺度不变特征检测方法。每个 sift 特征通常由 128 维向量来进行描述。其基本原理是:它是一种用于提取局部特性的算法,在缩放空间中搜索极值点,并分别提取位置、缩放比例及方向上的不变量特性。由于 sift 算法采用浮点运算来定位特征点,在定位精度上通常高于其他类似方法;因此,在需要高度精确匹配且对匹配速度要求不高的场合中建议使用这种方法;该算法具有良好的旋转不变性和缩放不变性特性

3.SURF

全称为"加速稳健特征"(Speeded Up Robust Feature),我们将会发现它们不仅具备scale-invariant特性,并且还具有high computational efficiency这一显著优势。我们都知道SIFT方法在computationally intensive方面表现突出的同时也拥有highly accurate的结果,在实际应用中有时为了提高速度的需求而发展出了SURF(Speeded Up Robust Features)这一加速稳健特征匹配技术。这种加速方法是基于SIFT算法构建的,并且为了更精确地描述每个特征点的状态,则采用了64维向量来进行详细描述。

4.FIST特征点

FIST角点是基于轿车局部像素灰度变化的一种特征定位方法,在图像处理中通常选择一个基准点P作为参考依据,在该基准点为中心构建一个离散圆形采样区域,在比较该区域周边各像素值与基准点P的像素值差异时发现有连续n个像素值显著高于或低于基准点时,则判定该基准点即为特征角点位置的一种快速检测算法其主要优点在于无需进行复杂计算只需通过与周围相邻区域数值大小关系判断即可实现对目标物体角部特征的有效捕捉其计算效率较SIFT算法快了一百倍但存在不足之处即缺乏尺度不变性和旋转适应性

5.ORB(FAST检测子+brief描述子)

ORBF特徵通過增強FAST檢測子缺乏的方向性,并采用了計算速度極快的描描述子BRIEF,從而使得提取圖像特徵的速度顯著提升.基於基于一幀圖像特徵點 extracting experiments,當 extracting相同數量的特徵點時, 使用 SURF 時耗時長度约为 ORB 特征求ex feature Point_extracting時間的大約14.5倍, 而 SIFT 時耗時長度則更大, 約為 ORB 特征求ex feature Point_extracting時間的大約315倍.由此可知, ORB 特征求ex feature Point_extracting 則所需的計算體積遠少於 SIFT 和 SURF.對於需要進行實時運行視覺S LAM算法系统的來說, 采用 ORBF 在前端 feature extraction 部署更加適合.此外, ORBF 有两个主要特性: 一是尺度不变性; 二是旋转不变性.

下面几种特征点检测的效果图:

在这里插入图片描述

下面是特征匹配的效果图:

在这里插入图片描述

全部评论 (0)

还没有任何评论哟~