0.简介
本节对ORB特征、SIFT特征、SURF特征、Harris角点、Shi-Tomas角点的提取与描述子计算原理进行总结,其中Harris角点、Shi-Tomas角点是关键点,没有对应的描述子,一般用于光流跟踪(Vins系列算法)。
综合所有的特征检测算法来看,所有的方法本质上都是通过计算像素灰度梯度检测关键点位置,ORB特征通过与邻域像素进行灰度值比较得到,其余SIFT,SURF,Harris角点、Shi-Tomas角点均都涉及到一个Hessian矩阵(由离散像素二阶导得到)求解问题,根据Hessian矩阵判别式的值或者特征值进行判断
1. ORB特征
ORB特征提取和BRIEF描述子计算在2.1节已经做过详细的介绍,这里只进行简单总结
-
fast特征点的提取方式
对于某个像素,如果其周围一圈有连续N个像素的亮度与该像素的亮度之差均大于或均小于某个阈值,则认为该像素是一个Fast关键点.阈值为经验值,在ORBSLAM中设置了7和20两个阈值.

-
oritened Fast关键点的尺度不变性设计
对图像进行了金字塔处理,在金字塔的每一层都提取特征点,通过匹配不同层上的图像特征实现尺度不变性.例如,如果相机后退,则可以在上一帧图像金字塔的上层和下一个图像金字塔的下层中找到匹配.

-
oritened Fast关键点的旋转不变性设计
以Fast特征点为圆心选定一块像素区域,计算所有像素的灰度质心,连接圆心和质心得到一个向量,这个向量的角度就是角点的角度。

-
BRIEF描述子提取方式
BRIEF是一个二进制的描述子,计算和匹配的速度都很快。计算步骤如下:-
以关键点为中心,选择一个31×31的像素块
-
在这个块内按照一定的方法选择N对点,N一般取256,这里的方法一般是提前通过学习选择的效果最好的256个位置
-
对于点对{A,B},通过比较这两个点的灰度大小确定一个二值结果,0或者1.

-
这样把256个点对的结果排起来,就形成了BRIEF描述子。
[1 0 1 0 0 ... 1 0 0]
BRIEF的匹配采用汉明距离,非常快,简单说就是看一下不相同的位数有多少个。如下的两个描述子,不同的位数为4。实际上我们选择的点对数为256,那么距离范围就是0~256。
[1 0 1 1 1 0]
[1 1 0 0 1 1]
-
-
rBRIEF描述子旋转不变性设计
基于BRIEF描述子的特征匹配就是计算特征点周围像素块的灰度值差异,rBRIEF的核心思想在于对像素块的处理上,在原来的基础上增加了旋转的信息,就是当图像发生旋转了,特征点的方向肯定发生旋转。根据上一步计算的oriented fast关键点的方向,将像素块旋转同样的角度,然后再描述子计算和汉明距离计算。

2. SIFT特征
参考链接:https://blog.csdn.net/abcjennifer/article/details/7639681
参考链接:https://blog.csdn.net/u010440456/article/details/81483145
- 生成高斯差分尺度空间
- 检测尺度空间的极值点
- 去除对比度较低的点和边缘响应较低的点
- 计算每个特征点的主方向
- 生成关键点描述子
2.1 生成尺度空间
SIFT特征的尺度空间通过创建图像金字塔和高斯卷积生成。其中金字塔图像通过降采样实现,每层图像的宽和高是下层图像的一半。在生成图像金字塔后通过与不同高斯核进行卷积,最终生成高斯差分尺度空间。
SIFT特征的尺度空间由M层N组图像组层,对于每一层图像都是由下一层图像通过降采样得到,每组图像是对每层图像使用不同的高斯核卷积得到,对于每组图像的尺寸是相同的(高斯滤波不改变图像尺寸,降采样是在进行高斯卷积后删除了偶数行和偶数列使得图像缩宽和高缩小为原来的一半)。
2.1.1 高斯差分尺度空间
创建尺度空间的目的在于模拟图像特征的多尺度特征,高斯卷积和是实现尺度变换的唯一线性核,于是一副二维图像的尺度空间可以定义为:

L(x,y,σ)表示(x,y)处像素值经过高斯卷积后的灰度值,其中G(x,y,σ)是尺度可变高斯函数:

(x,y)是像素空间坐标,σ大小决定图像的平滑程度。基于大σ值的高斯卷积得到图像的概貌特征,对应粗糙尺度(低分辨率);基于小σ值的高斯卷积得到图像细节特征,对应精细尺度(高分辨率)。为了进一步在尺度空间检测到稳定的关键点,提出高斯差分尺度空间(DOG scale-space)的概念,计算方法如下:
4974




被折叠的 条评论
为什么被折叠?



