本发明属于计算机领域,尤其涉及基于光谱角的高光谱图像空谱域兴趣点的描述子的获取方法及装置。
背景技术:
目前,高光谱图像在遥感、大气、农业监测、医疗光谱成像诊断、食品检测、安全等民用领域以及军事领域得到了广泛的应用。基于光谱分析的高光谱图像处理技术已成功运用于目标探测、地物精细分类、矿物填图等领域。
随着遥感器制造技术的提高,高光谱图像数据具有空间分辨率高、波段数多和数据量大的特点,传统的基于光谱曲线的高光谱图像分类技术已经难以处理高空间分辨率高光谱图像。所以近几年出现了很多利用兴趣点对高光谱图像进行研究的方法。Mukherjee在论文‘Interest Points for Hyperspectral Image Data’中将SIFT算法(尺度不变特征变换,Scale-invariant feature transform)与PCA技术(主成分分析技术,principal components analysis)相结合,并应用到高光谱图像兴趣点的检测中。在SIFT算法中加入PCA降维技术极大地降低了兴趣点搜索的计算量,但同时也会丢失光谱信息。后人对其进行改进,在论文‘A Vector SIFT Detector for Interest Point Detection in Hyperspectral Imagery’中,Leidy P.充分考虑到光谱图像像元的矢量特性,将其看作是一幅矢量图像进行研究,获得的兴趣点数量更多,鲁棒性、独特性更强。但是对兴趣点进行描述的时候,两种方法都是直接利用兴趣点所在的光谱曲线作为其描述子。而在图像识别过程中,使用一种紧凑而完整的特征描述是十分重要的。在二维图像的SIFT算法中,Lowe通过对兴趣点邻域内像元的梯度进行直方图统计计算描述子,使得兴趣点具有一定的旋转不变性,光照不变性以及仿射不 变性。
现有技术在对高光谱图像兴趣点进行描述的时候是直接利用兴趣点所在的光谱曲线作为其描述子,这种方法在高光谱图像发生旋转变换,光照变换,噪声干扰的情况下,无法保证描述子具有一定的鲁棒性和独特性。
技术实现要素:
本发明所要解决的技术问题在于提供一种高光谱图像特征描述子的获取方法及装置,旨在解决现有技术中在高光谱图像发生旋转变换,光照变换,噪声干扰的情况下,无法保证描述子具有一定的鲁棒性和独特性的问题。
本发明是这样实现的,一种高光谱图像特征描述子的获取方法,包括:
获取高光谱图像空谱域兴趣点的预置邻域内的每一像元的方向角;
根据每一所述像元的方向角建立方向角统计直方图,并获取所述方向角统计直方图中峰值对应的角度;
以所述方向角统计直方图中峰值对应的角度为主方向,将所述高光谱图像按照所述主方向进行旋转,获取旋转后的高光谱图像;
获取所述旋转后的高光谱图像的特征矢量,将所述特征矢量保存为所述高光谱图像的描述子。
进一步地,所述获取高光谱图像空谱域兴趣点的预置邻域内的每一像元的方向角包括:
以所述高光谱图像空谱域兴趣点为圆点,以预置距离为半径,获取所述兴趣点的圆形邻域;
以所述圆形邻域内的每一像元为采样点,按照预置边长确定所述采样点的方形邻域;
计算所述方形邻域中的每一像元与所述采样点的光谱角,确定所述方形邻域内光谱角最大的像元;
计算所述方形邻域内光谱角最大的像元与所述采样点之间的夹角,以所述夹角作为所述采样点的方向角。
进一步地,所述根据每一所述像元的方向角建立方向角统计直方图包括:
以所述采样点的方向角为横轴,以进行权重处理后的所述采样点的方向角对应的幅值累加值为纵轴,建立方向角统计直方图。
进一步地,所述获取所述旋转后的高光谱图像的特征矢量包括:
将所述旋转后的高光谱图像等间隔划分为若干子区域;
获取各个所述子区域的特征矢量;
将所述子区域的特征矢量进行拼接,得到所述旋转后的高光谱图像的特征矢量。
进一步地,所述获取各个所述子区域的特征矢量包括:
计算所述子区域内每一像元的方向角,并根据所述子区域内每一像元的方向角建立所述子区域的方向角统计直方图;
以所述子区域的方向角统计直方图中每个柱对应的幅值累加值为所述子区域的特征矢量的分量,确定所述子区域的特征矢量。
本发明还提供了一种高光谱图像特征描述子的获取装置,包括:
方向角获取单元,用于获取高光谱图像空谱域兴趣点的预置邻域内的每一像元的方向角;
主方向角获取单元,用于根据每一所述像元的方向角建立方向角统计直方图,并获取所述方向角统计直方图中峰值对应的角度;
图像旋转单元,用于以所述方向角统计直方图中峰值对应的角度为主方向,将所述高光谱图像按照所述主方向进行旋转,获取旋转后的高光谱图像;
描述子获取单元,用于获取所述旋转后的高光谱图像的特征矢量,将所述特征矢量保存为所述高光谱图像的描述子。
进一步地,所述方向角获取单元包括:
圆形邻域确定模块,用于以所述高光谱图像空谱域兴趣点为圆点,以预置距离为半径,获取所述兴趣点的圆形邻域;
方形邻域确定模块,用于以所述圆形邻域内的每一像元为采样点,按照预 置边长确定所述采样点的方形邻域;
光谱角计算模块,用于计算所述方形邻域中的每一像元与所述采样点的光谱角,确定所述方形邻域内光谱角最大的像元;
夹角计算模块,用于计算所述方形邻域内光谱角最大的像元与所述采样点之间的夹角,以所述夹角作为所述采样点的方向角。
进一步地,所述主方向角获取单元具体用于:
以所述采样点的方向角为横轴,以进行权重处理后的所述采样点的方向角对应的幅值累加值为纵轴,建立方向角统计直方图。
进一步地,所述描述子获取单元包括:
图像划分模块,用于将所述旋转后的高光谱图像等间隔划分为若干子区域;
矢量获取模块,用于获取各个所述子区域的特征矢量,将所述子区域的特征矢量进行拼接,得到所述旋转后的高光谱图像的特征矢量。
进一步地,所述矢量获取模块包括:
方向角计算子模块,用于计算所述子区域内每一像元的方向角,并根据所述子区域内每一像元的方向角建立所述子区域的方向角统计直方图;
矢量确定子模块,用于以所述子区域的方向角统计直方图中每个柱对应的幅值累加值为所述子区域的特征矢量的分量,确定所述子区域的特征矢量。
本发明与现有技术相比,有益效果在于:本发明实施例通过获取高光谱图像空谱域兴趣点的邻域的主方向,并按照该主方向进行旋转后,计算旋转后的高光谱图像的特征矢量,以该特征矢量作为高光谱图像的描述子。本实施例利用兴趣点的空间信息和光谱信息生成描述子,具备一定的鲁棒性和独特性,同时利用兴趣点的邻域的主方向进行高光谱图像旋转,获取旋转后的特征矢量,以该特征矢量为描述子,保证该描述子的旋转不变性和鲁棒性,在高光谱图像发生旋转变换、光照变换和噪声干扰的情况下,该描述子依旧具备很好的鲁棒性和独特性。
附图说明
图1是本发明第一实施例提供的一种高光谱图像特征描述子的获取方法的流程图。
图2是本发明第二实施例提供的一种高光谱图像特征描述子的获取方法的流程图。
图3是本发明第二实施例提供的兴趣点的邻域的示意图。
图4a是本发明第二实施例提供的兴趣点的圆形邻域中每一像元的方向角示意图。
图4b是本发明第二实施例提供的圆形邻域的方向角统计直方图。
图5a是本发明第二实施例提供的旋转后高光谱图像的兴趣点圆形邻域的子区域示意图。
图5b是本发明第二实施例提供的子区域的方向角统计直方图。
图6是本发明第三实施例提供的一种高光谱图像特征描述子的获取装置的结构示意图。
图7是本发明第四实施例提供的方向角获取单元的结构示意图。
图8是本发明第五实施例提供的描述子获取单元的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在图像处理中,一个理想的描述子应该具有高的鲁棒性、独特性。鲁棒性主要是指描述子能在图像仿射变换、密度变换和噪声干扰等条件下具有稳定工作的能力。独特性是指描述子在兴趣点局部图像结构发生变化时,具有捕获和反映这一变化的能力。
本发明涉及根据兴趣点的局部图像结构确定一个方向基准——主方向,从 而实现图像的旋转不变性,并利用旋转后图像的像元方向角信息生成描述子。SIFT算法使用二维图像的梯度信息求取局部结构的主方向,在完成兴趣点邻域的图像梯度计算后,使用直方图统计邻域内像元的梯度方向和幅值。不同于二维图像中利用图像梯度的方法,本方法利用兴趣点邻域像元光谱角的分布特征来确定主方向。
基于上述表述,本发明提供了如图1所示的第一实施例,一种高光谱图像特征描述子的获取方法,包括:
S101,获取高光谱图像空谱域兴趣点的预置邻域内的每一像元的方向角。
在本步骤中,获取装置获取高光谱图像兴趣点的预置邻域内的每一像元的方向角,为计算方便,在本步骤中,预置邻域为圆形邻域。
S102,根据每一所述像元的方向角建立方向角统计直方图,并获取所述方向角统计直方图中峰值对应的角度。
在本步骤中,获取装置根据预置邻域内每一像元的方向角建立方向角统计直方图,该方向角统计直方图横轴为方向角的角度,纵轴为像元的方向角对应的幅值累加值。在建立方向角统计直方图之后,获取装置将获取该方向角统计直方图中峰值对应的方向角的角度。
S103,以所述方向角统计直方图中峰值对应的角度为主方向,将所述高光谱图像按照所述主方向进行旋转,获取旋转后的高光谱图像。
在本步骤中,获取装置以步骤S102中方向角统计直方图中峰值对应的方向角的角度为主方向,将高光谱图像按照该主方向进行旋转,得到旋转后的高光谱图像。具体地,获取装置将根据主方向,以兴趣点为中心,将所述高光谱图像按照顺时针进行旋转。
S104,获取所述旋转后的高光谱图像的特征矢量,将所述特征矢量保存为所述高光谱图像的描述子。
在本步骤中,得到旋转后的高光谱图像后,获取装置将获取该旋转后的高光谱图像的特征矢量,并将该特征矢量作为该高光谱图像的描述子。
本实施例提供了一种高光谱图像空谱域兴趣点的描述子的获取方法,该获取方法首先计算高光谱图像空谱域兴趣点的预置邻域内的每一像元的方向角,并利用兴趣点的预置邻域的每一像元的方向角确定一个主方向,然后将高光谱图像旋转一个主方向并利用兴趣点邻域像元的方向信息建立描述子。本实施例提供的描述子的获取方法得到的描述子具有一定的旋转不变性和鲁棒性。
本发明还提供的如图2所示的第二实施例,一种高光谱图像特征描述子的获取方法,包括:
S201,以所述高光谱图像空谱域兴趣点为圆点,以预置距离为半径,获取所述兴趣点的圆形邻域。
S202,以所述圆形邻域内的每一像元为采样点,按照预置边长确定所述采样点的方形邻域。
S203,计算所述方形邻域中的每一像元与所述采样点的光谱角,确定所述方形邻域内光谱角最大的像元。
S204,计算所述方形邻域内光谱角最大的像元与所述采样点之间的夹角,以所述夹角作为所述采样点的方向角。
S205,以所述采样点的方向角为横轴,以进行权重处理后的所述采样点的方向角对应的幅值累加值为纵轴,建立方向角统计直方图,并获取所述方向角统计直方图中峰值对应的角度。
S206,以所述方向角统计直方图中峰值对应的角度为主方向,将所述高光谱图像按照所述主方向进行旋转,获取旋转后的高光谱图像。
S207,将所述旋转后的高光谱图像等间隔划分为若干子区域;
S208,计算所述子区域内每一像元的方向角,并根据所述子区域内每一像元的方向角建立所述子区域的方向角统计直方图;
S209,以所述子区域的方向角统计直方图中每个柱对应的幅值累加值为所述子区域的特征矢量的分量,确定所述子区域的特征矢量;
S210,将所述子区域的特征矢量进行拼接,获取所述旋转后的高光谱图像 的特征矢量,将所述特征矢量保存为所述高光谱图像的描述子。
下面对本实施例进行详细的阐述:
在本实施例中,描述子的获取方法主要分为计算兴趣点的预置邻域内的每个像元的方向角、建立方向角统计直方图、求取方向角统计直方图的峰值和在旋转后的高光谱图像上对方向角进行统计并生成描述子四个步骤。具体的实现过程如下:
(1)确定邻域大小
本实施例中的获取方法是在高光谱图像空谱域兴趣点所在的圆形邻域内对其进行描述,圆形邻域的半径的选择需要在具体应用中进行设置,以达到最优的算法效率和效果,如图3所示,在对兴趣点I进行描述之前,首先要确定兴趣点I所在的圆形邻域的大小,即确定圆形邻域的半径R。
在兴趣点I的圆形邻域确定以后,需要计算圆形邻域内每个像元的方向角,每一像元的方向角的计算是在一个方形邻域内进行的,如图3所示,假设需要计算像元Ii的方向角,则首先必须确定像元Ii的方形邻域的大小,即方形邻域的边长W。
本实施例中的圆形邻域的半径R和方形邻域的边长W的大小会影响描述子的获取方法的计算性能和主方向的判断精度。圆形邻域的半径R过小会使主方向不准确,半径R过大则会增加计算量,降低算法效率,而方形邻域的边长W将决定方向角的分辨率,比如当计算像元Ii的方向角时,像元Ii的方形邻域为3*3大小时,像元Ii的方向角分辨率约为45°,若像元Ii的方形邻域为5*5大小时,像元Ii的方向角分辨率约为22.5°。
(2)方向角的计算
在圆形邻域和方形邻域确定后,开始计算兴趣点的圆形邻域内的每个像元的方向角。如图3所示,本实施例中以像元Ii为例,首先计算方形邻域内像元Ij与中心像元Ii的光谱角α(Ii,Ij),确定光谱角最大的像元Ik,即然后计算像元Ik和像元Ii的夹角将夹角作为像元Ii的方向角。
下面,以像元Ii的方形邻域大小为3*3为例进行具体说明:
假设对Ii计算方向角,在3*3的方形邻域内,分别计算中心像元Ii与其他8个像元I1,I2,I3,I4,I5,I6,I7,I8光谱角,计算结果分别为θ1,θ2,θ3,θ4,θ5,θ6,θ7,θ8,从计算结果中选出最大的θ值,即θ=max(θ1,θ2,θ3,θ4,θ5,θ6,θ7,θ8),设最大的θ值对应的像元为Ik,则像元Ik与中心像元Ii的夹角即为像元Ii的方向角。
(3)建立方向角统计直方图
在对兴趣点的圆形邻域内所有像元的方向角计算完成后,需要使用至反复图统计圆形邻域内所有像元的方向角和幅值。在本实施例中,方向角统计直方图的横轴是像元的方向角,纵轴是像元方向角对应的幅值累加值。方向角统计直方图的柱数由方形邻域的大小决定,如图4a所示,图中的箭头表示该像元的方向角,而图4b示出了方形邻域为3*3大小时的兴趣点圆形邻域的方向角统计直方图,该方向角统计直方图中共有8个柱,分别代表该方形邻域中除了中心像元以外的其他像元的方向角,8个柱从左到右的角度分别为0°、45°、90°、135°、180°、225°、270°和315°。每个加入方向角统计直方图的采样点(采样点表示兴趣点的圆形邻域内所有需要计算方向角的像元,所有的像元包括落在兴趣点的圆形邻域的原型边界上的像元)的幅值都需要进行权重处理,加权采用圆形高斯加权函数,使得兴趣点附近的幅值有较大的权重。
(4)确定主方向并生成描述子
建立方向角统计直方图后,确定方向角统计直方图中的峰值对应的角度,以该角度作为兴趣点的主方向,如图4b中所示,兴趣点的主方向为180°。将高光谱图像旋转一个主方向后,得到旋转后的高光谱图像。旋转后的高光谱图像如图5a所示。
本实施例中,在获取如图5a所示的旋转后的该光谱图像之后,获取装置按照预置的划分规则,将兴趣点的圆形邻域等间距划分为n*n个子区域(图5a中,n=2),并在划分的子区域内计算每一像元的方向角,根据计算得出的子区域的每一像元的方向角建立该子区域的方向角统计直方图,该子区域的方向角 统计直方图如图5b所示。以图5a中子区域501的方向角统计直方图的每个柱对应的幅值累加值(即d1,d2,…d8)作为子区域501的特征矢量D1的分量,生成D1,即D1=(d1,d2,…d8)。图5a中存在2*2个子区域,因此共有2*2个特征矢量,D1,D2,D3,D4,将每个子区域的特征矢量拼接形成兴趣点的最终的特征矢量,即兴趣点的特征矢量D=(D1,D2,D3,D4)。因为在本实施例所示的图5a中存在2*2个子区域,每个子区域共有8个方向的信息,因此兴趣点的特征矢量D共有2*2*8个数据,最终形成了32维的特征矢量。
本发明还提供了如图6所示的第三实施例,一种高光谱图像特征描述子的获取装置,包括:
方向角获取单元601,用于获取高光谱图像空谱域兴趣点的预置邻域内的每一像元的方向角;
主方向角获取单元602,用于根据每一所述像元的方向角建立方向角统计直方图,并获取所述方向角统计直方图中峰值对应的角度;
图像旋转单元603,用于以所述方向角统计直方图中峰值对应的角度为主方向,将所述高光谱图像按照所述主方向进行旋转,获取旋转后的高光谱图像;
描述子获取单元604,用于获取所述旋转后的高光谱图像的特征矢量,将所述特征矢量保存为所述高光谱图像的描述子。
进一步地,如图7所示,方向角获取单元601包括:
圆形邻域确定模块6011,用于以所述高光谱图像空谱域兴趣点为圆点,以预置距离为半径,获取所述兴趣点的圆形邻域;
方形邻域确定模块6012,用于以所述圆形邻域内的每一像元为采样点,按照预置边长确定所述采样点的方形邻域;
光谱角计算模块6013,用于计算所述方形邻域中的每一像元与所述采样点的光谱角,确定所述方形邻域内光谱角最大的像元;
夹角计算模块6014,用于计算所述方形邻域内光谱角最大的像元与所述采样点之间的夹角,以所述夹角作为所述采样点的方向角。
进一步地,如图8所示,描述子获取单元604包括:
图像划分模块6041,用于将所述旋转后的高光谱图像等间隔划分为若干子区域;
矢量获取模块6042,用于获取各个所述子区域的特征矢量,将所述子区域的特征矢量进行拼接,获取所述旋转后的高光谱图像的特征矢量。
进一步地,矢量获取模块6042包括:
方向角计算子模块,用于计算所述子区域内每一像元的方向角,并根据所述子区域内每一像元的方向角建立所述子区域的方向角统计直方图;
矢量确定子模块,用于以所述子区域的方向角统计直方图中每个柱对应的幅值累加值为所述子区域的特征矢量的分量,确定所述子区域的特征矢量。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。