新年快乐!

MENU

特征提取与匹配

December 20, 2022 • Read: 213 • 开发,学习

特征提取与匹配

特征点

特征点为图像中具有代表性的部分,例如轮廓点,具有以下特点:

  • 可重复: 能在不同的俩张图中找到相同的特征点(为了匹配)
  • 可区别: 能量化的表达特征点之间的区别并区分
  • 高效性: 特征点数量远低于图片像素
  • 本地性: 仅仅与图片中的一小部分有关,不受别的区域影响

特征点具有 以下俩大信息

关键点:位置、大小、方向、评分

描述子:特征点周围的像素信息

良好的特征点不受光线、噪点、几何形变的干扰。

常见的特征检测有SIFT、SUFT、ORB等

ORB特征

关键点

Oriented FAST(改进后的FAST角点)

主要检测局部像素灰度变换较为明显的地方(这种地方具有更大的概率为角点)

FAST角点检测

  • 对任意像素$P$,取灰度值(亮度)$ I_{p} $ ,设置一阈值$ T $ 用于后续筛选 (例如$ I_{p} $的20%)
  • 选取以$ P $为中心的半径为$3$上的圆上的$16$个像素点,若该圆上具有连续$N$个点的亮度不在$I_{p} \pm T$ 范围内 则像素P可以被认为是特征点(N通常取12,即为FAST-12特征。场景的还有FAST-9、FAST-11)
  • 对每个像素执行以上相同操作,找出所有特征点

缺点

  • 容易分布不均匀(扎堆现象)
  • 不具有方向信息且存在尺度问题

ORB解决的FAST的缺点,通过图像金字塔来实现尺度不变形,用旋转质心法解决旋转问题

对于扎堆问题,一般会用非最大值抑制

1.计算各个特征点的分数(特征点与圆环16个点之间的绝对值差的和)

2.丢掉临近范围内分数较低的点,仅保留最大值

图像金字塔

底层为原始图像,每上一层对图像进行一个比例缩放,形成一个“金字塔”,在特征匹配中则可以对不同层的金字塔进行匹配,从而实现尺度不变性

灰度质心法

对于检测点四周一小块图像B(ROI区域)、图像的矩$m_{pq}$定义为:

$$ m_{pq} = \sum_{x,y\in B} x^{p}y^{q}I_{xy},p,q =\left \{ 0,1\right \} $$

x,y为像素坐标,$I_{xy}$表示该坐标的灰度值

图像B的质心C可以通过矩找到:

$$ C = \left ( \frac{m_{10}}{m_{00}},\frac{m_{01}}{m_{00}} \right ) $$

方向向量 $\overrightarrow{OC} $ 即几何中心O和质心C的连线,可以确定为该特征点的方向,一般用角度$\theta $表示

$$ \theta = \arctan \left ( \frac{m_{01}}{m_{10}} \right ) $$

《ORBSLAM源码理论分析0—灰度质心法》 中有详细的计算过程

描述子

BRIEF

一种二进制描述子,由0和1组成一串

0 和 1 的意义代表关键点附近俩个像素点pq灰度的大小关系:1代表p>q、0代表p<q,p和q的选取方法有很多种

1.在图像内平均采样

2.pq均符合$(0,\frac{1}{25},S^{2})$的高斯分布

3.p符合$(0,\frac{1}{25},S^{2})$的高斯分布、q符合$(0,\frac{1}{100},S^{2})$的高斯分布

4.p固定为(0,0),q在周围平均采样

.........

一般都被固定下来,将匹配坐标由一个二维数组保存,方便计算描述子

原始的BREIF描述子不具备旋转不变性,而ORB在特征提取阶段计算了特征点的方向,因此使用旋转后的BRIEF描述子也具有旋转不变性

BRIEF是一种二进制描述,需要用汉明距离度量

特征匹配

特征匹配是为了将SLAM中的数据关联起来,即确定不同观测角度中路标对应的关系、利用描述子将特征点进行精确匹配,即可确定俩张图像中的某一个点为现实中的同一个位置

由于图像特征的局部性,仍然存在误匹配的情况

匹配方法

  • 暴力匹配:对T时刻的每一个特征点,测量与T+1的时刻所有特征点的距离,排序,由最近的开始匹配
  • 快速近似最近邻法(FLANN)

实例

Leave a Comment