特征点提取算法 - 01 - 特征的定义基础



前言:特征提取(feature extraction)是计算机视觉图像处理中的一个概念。它指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。特征提取的结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点、连续的曲线或者连续的区域。

案:理解特征提取就是获取依据需求,来获取图像的独有特征值。或者,是将具有相同特质的图像分解的模块进行分类和归类。


1 基本概念

1.1 特征定义的应用类型

特征是一个“有趣”的部分,它是许多计算机图像分析算法的起点。因此一个算法是否成功往往由它使用和定义的特征决定。因此特征提取最重要的一个特性是“可重复性”:同一场景的不同图像所提取的特征应该是相同的。

1.2 初级运算

特征提取是图象处理中的一个初级运算,也就是说它是对一个图像进行的第一个运算处理。它检查每个像素来确定该像素是否代表一个特征。假如它是一个更大的算法的一部分,那么这个算法一般只检查图像的特征区域。作为特征提取的一个前提运算,输入图像一般通过高斯模糊核在尺度空间中被平滑。此后通过局部导数运算来计算图像的一个或多个特征。

 

1.3 寻找特征

有时,假如特征提取需要许多的计算时间,而可以使用的时间有限制,一个高层次算法可以用来控制特征提取阶层,这样仅图像的部分被用来寻找特征。由于许多计算机图像算法使用特征提取作为其初级计算步骤,因此有大量特征提取算法被发展,其提取的特征各种各样,它们的计算复杂性和可重复性也非常不同。


2 特征的类型

典型的特征类型分成以下几种:
1 边缘

边缘是组成两个图像区域之间边界(或边缘)的像素。一般一个边缘的形状可以是任意的,还可能包括交叉点。在实践中边缘一般被定义为图像中拥有大的梯度的点组成的子集。一些常用的算法还会把梯度高的点联系起来来构成一个更完善的边缘的描写。这些算法也可能对边缘提出一些限制。局部地看边缘是一维结构。

2 角

是图像中点似的特征,在局部它有两维结构。早期的算法首先进行边缘检测,然后分析边缘的走向来寻找边缘突然转向(角)。后来发展的算法不再需要边缘检测这个步骤,而是可以直接在图像梯度中寻找高度曲率。后来发现这样有时可以在图像中本来没有角的地方发现具有同角一样的特征的区域。


3 区域

与角不同的是区域描写一个图像中的一个区域性的结构,但是区域也可能仅由一个像素组成,因此许多区域检测也可以用来检测角。一个区域监测器检测图像中一个对于角监测器来说太平滑的区域。

区域检测可以被想象为把一张图像缩小,然后在缩小的图像上进行角检测。

4 脊

长条形的物体被称为脊。在实践中脊可以被看作是代表对称轴的一维曲线,此外局部针对于每个脊像素有一个脊宽度。从灰梯度图像中提取脊要比提取边缘、角和区域困难。在空中摄影中往往使用脊检测来分辨道路,在医学图像中它被用来分辨血管。


与特征提取

 

特征被检测后它可以从图像中被抽取出来。这个过程可能需要许多图像处理的计算机。其结果被称为特征描述或者特征向量

特征提取和特征选择都是从原始特征中找出最有效(同类样本的不变性、不同样本的鉴别性、对噪声的鲁棒性)的特征

特征提取:将原始特征转换为一组具有明显物理意义(Gabor、几何特征[角点、不变量]、纹理[LBP HOG])或者统计意义或核的特征

特征选择:从特征集合中挑选一组最具统计意义的特征,达到降维

两者作用:

1 减少数据存储和输入数据带宽;

2 减少冗余;

3 低纬上分类性往往会提高;

4 能发现更有意义的潜在的变量,帮助对数据产生更深入的了解。


特征提取步骤

 

 

卡方检验

1. 统计样本集中文档总数(N)。

2. 统计每个词的正文档出现频率(A)、负文档出现频率(B)、正文档不出现频率)、负文档不出现频率。

3.计算每个词的卡方值。

4.将每个词按卡方值从大到小排序,选取前k个词作为特征,k即特征维数。

信息增益

1. 统计正负分类的文档数:N1、N2。

2. 统计每个词的正文档出现频率(A)、负文档出现频率(B)、正文档不出现频率)、负文档不出现频率。

3. 计算信息熵

4. 计算每个词的信息增益

5. 将每个词按信息增益值从大到小排序,选取前k个词作为特征,k即特征维数。


检测方法

 

根据对图像信息处理的方法不同,特征点检测一般分为:

基于模板的方法


  基于模板的方法主要是利用参数模型或模板来进行检测特征点的工作。因为需要构建各种不同的参数模型或模板,所以通常用于检测具备特定类型的特征点,计算速度一般较快。缺点是不适合用于形式比较复杂的模板。

基于边缘的方法


  基于边缘的方法是把多边形的顶点,或曲率变化较大的物体边缘上的点作为特征点。因为特征点是物体边缘的集合,因此一定程度上对边缘的提取算法要求很高,如果边缘定位出现偏差,就会对检测结果造成很大的影响。

基于灰度的方法


  基于灰度的方法是利用像素点灰度的局部变化来进行探测,特征点是建立在某种算法上,在该算法上灰度变化最大的像素点。可以利用微分运算来求取像素点周围灰度的导数,以此求出特征点的位置,该方法的缺点是噪声比较大。

基于空间变换的方法


  基于空间变换的方法利用空间变换获取特性比较容易辨识的特征点,然后在变换空间中进行极值点的检测。通常空间分为尺度空间、频率空间、小波空间等。尺度空间是指在曲率尺度空间或在DOG尺度空间,将搜索到的绝对值最小或最大的点作为特征点。频率空间是将计算得到的局部相位或特定相位最大值当做特征点。小波变换是利用小波系数或模的局部极大值,利用最佳尺度进行极值点检测。 


Reference:

1 百度 https://baike.baidu.com/item/%E7%89%B9%E5%BE%81%E6%8F%90%E5%8F%96/8827539?fr=aladdin

2 特征点提取算法列表 https://blog.csdn.net/sinat_31337047/article/details/69791756

3 ORB(FAST+BRIEF)特征提取与实现——特征点提取算法分析

https://blog.csdn.net/qq_32998593/article/details/79221641

4 【opencv】特征点检测方法--GFTT,SIFT,FAST,SURF

https://blog.csdn.net/u010141025/article/details/16920567

 

 

 

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页