一种图像聚类方法与流程

文档序号:15638811发布日期:2018-10-12 21:48阅读:339来源:国知局

本发明属于模式识别领域,具体涉及一种图像聚类方法。



背景技术:

在模式识别领域,对图像进行聚类分析是很重要也是很基础的一部分。其目的在于将相似的图像归为一类,使得原始输入的图像数据被分为不同的类别,被广泛运用于图像数据的处理和分析。具体来说,在金融、医学和社交媒体等领域,每天都会有大量的图像数据产生。通常情况下,这些图像数据都是没有标签的。由于数据量太大,人工分类费时费力,所以是不现实的。因此,对图像数据进行聚类分析就成了不可或缺的工作。通过对图像数据进行聚类分析,我们可以初步了解到图像数据的大致类别、数据的分布等信息;可以更清楚地了解数据背后的规律,为下一步的处理提供便利。随着信息化与多媒体技术的发展,图像数据的数量也呈爆炸式增长,对图像数据进行聚类分析变得尤为重要。

luxburg在《atutorialonspectralclustering》一文中介绍了谱聚类算法(sc)。该算法利用了由数据构成的拉普拉斯矩阵的特征向量。如果n个数据有n个类别,那么将拉普拉斯矩阵的特征向量按照其对应特征值的大小从小到大排列,选择前n个较小特征值对应的特征向量,将其按列拼成大小为n×n的矩阵。将该矩阵的每一行看成一个样本然后对该矩阵进行k-均值聚类,可得到最后聚类结果。与谱聚类类似,belkin等人在《laplacianeigenmapsfordimensionalityreductionanddatarepresentation》一文中提出了利用拉普拉斯特征映射(le)对数据进行降维。该降维方法的动机是高维数据的近邻结构信息在低维空间中应该保持不变。假设有n个数据,每个数据都是l维,如果要将这n个l维数据降至d维(d=l),经过数学推导,那么由原始数据构成的拉普拉斯矩阵中前d个较小特征值对应的特征向量按列拼成的大小为n×d的矩阵即是所要求的原始数据的低维表示,该矩阵的每一行即是对应原始数据的d维表示。

上述的方法都仅使用了拉普拉斯矩阵中固定的前几个较小特征值对应的特征向量。然而,仅仅使用前几个特征向量可能会同时造成信息的冗余和不足:在前几个特征向量中,可能出现不同的特征向量代表同一个簇这种情况;而那些代表包含较少数据点的簇的特征向量,可能不在前几个特征向量之中。



技术实现要素:

本发明提供了一种图像聚类方法,解决了传统谱聚类方法仅仅利用拉普拉斯矩阵前几个特征向量可能带来的信息冗余或不足问题。本发明能充分利用拉普拉斯矩阵特征向量中的所包含的聚类信息,对不同类型的图像数据进行准确聚类。

实现本发明目的的技术解决方案为:一种图像聚类方法,基于图像数据的相似度信息,利用由图像数据构成的拉普拉斯矩阵的特征向量,将其线性组合,得到了原始图像数据具有区分性的表示y*,对y*运用k-均值聚类算法,实现图像聚类,具体步骤如下:

第一步、对原始图像数据进行预处理和归一化处理:

对m个原始图像数据进行预处理并对其像素值进行归一化处理,得到处理后的图像数据。

第二步、提取上述处理后的图像数据的特征:

对每一幅处理后的图像数据,分别提取图像特征,提取完特征之后,输出的是m个包含图像特征信息的向量。

第三步、建立图模型:

由上述得到的包含图像特征信息的向量,计算特征间的相似程度,建k近邻图g。

第四步、求解拉普拉斯矩阵l:

根据k近邻图g的邻接矩阵w和相应的度矩阵d,计算拉普拉斯矩阵l。

第五步、计算候选特征向量集合up:

将拉普拉斯矩阵l归一化得到归一化拉普拉斯矩阵lsym,将lsym中的特征向量按其对应的特征值的大小从小到大排列,去掉最小特征值对应的特征向量后,依次选取其后的p个特征值对应的特征向量,组成候选特征向量集合up。

第六步、计算原始图像数据具有区分性的表示y*

将上述得到的l和up带入到目标函数中,进行求解,得到原始图像数据具有区分性的表示y*

第七步、对图像进行聚类:

y*矩阵的每一行都是对应原始图像数据的具有区分力的表示,运用k-均值聚类方法对y*进行聚类,即可得到最后聚类结果。

本发明与现有技术相比,其显著优点在于:(1)能自动地选取拉普拉斯矩阵中包含聚类信息的特征向量并且自动地确定它们的线性组合系数将其线性组合,由此便可得到图像数据的一种具有区分力的表示;(2)得到原始图像数据的新表示这一过程相当于将图像数据由原始空间映射到由部分具有聚类信息的特征向量张成的新空间中,并且在新空间中,原始图像数据的近邻结构信息仍然可以得到保持;(3)有选择地利用了拉普拉斯矩阵中更多的特征向量,从而能更好地挖掘出图像数据的聚类信息,同时也避免了信息的冗余;(4)能对复杂、具有挑战性的图像数据进行准确聚类。

附图说明

图1为本发明图像聚类方法的流程图。

图2为典型的图模型示意图。

图3为说明f范数更大的y矩阵更具有区分力的曲线图。

图4本发明与k-均值聚类方法在coil-20图像数据集上效果比较图。(nmi为归一化互信息,acc为聚类准确率,ri为兰德指数)

图5本发明与k-均值聚类方法在yale人脸数据集上效果比较图。

图6本发明与k-均值聚类方法在orl人脸数据集上效果比较图。

图7本发明在coil-20图像数据集上部分结果的可视化图。

图8本发明在orl人脸数据集上部分结果的可视化图。

具体实施方式

下面结合附图对本发明作进一步详细描述。

结合图1,本发明提供了一种图像聚类方法,基于图论的视角,利用由图像数据构成的拉普拉斯矩阵的特征向量蕴含聚类信息这一性质,在保持原始图像数据近邻结构信息不变的情况下,自动地从拉普拉斯矩阵中选取具有聚类信息的特征向量并将其线性组合,得到原始图像数据的一种有区分力表示。对该表示运用k-均值聚类,可以有效准确地对图像进行聚类,具体步骤如下:

第一步,首先对于输入的m个图像数据x1,x2,...,xm,根据输入图像的类型,对其进行去噪、色彩空间转换、直方图均衡化或旋转平移预处理操作。然后对像素值进行归一化处理,使得每一个像素值都在0和1之间。

第二步,对于上述经过预处理之后的图像数据,提取图像特征。若图像较为简单,则可直接使用像素值特征;若图像内容较为复杂,可提取一些更高层次的特征,包括方向梯度直方图特征(hog)、尺度不变特征变换特征(sift)或局部二值模式特征(lbp)。提取特征之后,输出为m个包含对应图像特征信息的向量v1,v2,...,vm。

第三步,建立图模型。图2为典型的图模型示意图。一般来说,有两种建图的方法:一是全连接图,即任意两个图像数据xi、xj之间都有边相连,边的权重wij由高斯函数计算,wij=exp(-||vi-vj||2/2σ2),其中vi、vj分别表示图像数据xi和xj的特征,σ为待调参数;第二种是k近邻图,即某一点只与和它最邻近的k个点有边相连,权重也由上述高斯函数计算,而与其他点的权重为零。与全连接图不同,k近邻图的邻接矩阵是稀疏的,这有利于后续的处理和计算。本发明选择建立k近邻图。

第四步,k近邻图g建立完毕后,可以用其邻接矩阵(adjacencymatrix)表示各图像特征之间的相似程度。由此可以得到度矩阵(degreemartrix)。具体而言,邻接矩阵w共有m行,对每一行分别求和,得到一个m维的列向量[w1,w2,...,wr,...,wm]t,其中wr表示邻接矩阵w中第r行的行和。将该列向量中的每一个元素依次作为主对角线元素组成对角矩阵,该对角矩阵即为图g的度矩阵d。得到邻接矩阵w和度矩阵d之后,拉普拉斯矩阵定义为l=d-w。将拉普拉斯矩阵归一化得到归一化拉普拉斯矩阵:lsym=d-1/2ld-1/2

第五步,归一化后的拉普拉斯矩阵lsym共有m个特征值,每个特征值对应一个特征向量。假设是其特征值、特征向量对,其中特征值以非降序排列。我们选择前p个较小特征值对应的特征向量组成候选特征向量集合up=[u2,u3,...,up+1],其中p为待调参数。注意,我们将最小特征值λ1对应的特征向量u1排除在外,因为u1几乎是连续的常数向量,不具有聚类信息。

第六步,计算原始图像数据具有区分性的表示y*,具体步骤如下:

若原始图像数据具有c个类别,那么随机生成初始原始图像数据的表示即每个原始图像数据的表示都是c维;将l和up带入以下的目标函数:

其中y=[y1,y2,...,yi,...,ym]t,yi=[yi(1),yi(2),...,yi(c)]即是第i个原始图像数据xi的c维表示,是系数矩阵,代表着特征向量线性组合的系数,||a||2,1表示矩阵a的l2,1范数,即矩阵a中每一行的l2范数之和。α、β、和γ均为待调参数。

注意(1)式第一项若两图像数据xi和xj的特征vi、vj之间的权重wij较大,即这两图像较为相似,在原始空间内的距离较小,那么优化这一项将迫使在由挑选出来的特征向量张成的新空间中,这两个数据的表示yi和yj也尽可能接近。换句话来说,如果两幅图像较为相似,那么它们的表示也较为相似,这样,原始图像数据的近邻结构信息在新空间中就得到了保持。优化第二项即希望有选择地利用部分特征向量的线性组合来刻画原始图像数据的表示。注意到在集合up中不是所有的特征向量都具有原始图像数据的聚类信息,故本发明通过优化第三项β||a||2,1来达到挑选出合适的特征向量的目的。本发明通过优化最后一项使得得到的原始图像数据的表示y*具有区分力,即不同的图像数据在新空间中都有尽可能不同的表示。这样更易凸显不同图像的特征,使后续的k-均值聚类准确度更高。详情如图3所示:假设某图像数据xi在新空间的表示是yi=[yi(1),yi(2)]。在约束条件下,解空间就是图3中过(1,0)和(0,1)这两点的线段。再以这条线段为x轴建立一个y轴为||yi||f的坐标系。可以看出,随着||yi||f的增大,yi趋向于[1,0]或者[0,1],而不是模棱两可的表示[0.5,0.5]。所以说,f范数更大的y矩阵更具有区分性。为了避免全零解y=0m×c、a=0p×c,我们添加约束y1c=1m,y≥0m×c。

为了求解目标函数(1),本发明使用线性化交替方向乘子法(linearizedalternatingdirectionmethodwithadaptivepenalty,ladmap)。传统的交替方向乘子法算法(admm)先引入拉格朗日乘子及惩罚参数,将式子写成增广拉格朗日形式。然后固定一个变量去优化包含另一个变量的目标函数,最后更新拉格朗日乘子和惩罚参数。如此迭代直至目标函数收敛。与传统admm算法不一样的是,在优化目标函数的时候,ladmap将目标函数中的二次项用它的一阶泰勒展开表示,也就是所谓的线性化。这样方便对目标函数进行求导等操作,更易找到当前目标函数的最小值。为了方便求解(1)式,我们引入辅助变量j,得到变量更新公式如下:

jk+1=(2αuptyk+1+λ2,k+μkak+1)/(2α+μk)(4)

其中yk,ak和jk分别为第k次迭代中原始图像数据的表示、系数矩阵和辅助变量。yk+1,ak+1和jk+1分别为第k+1次迭代中原始图像数据的表示、系数矩阵和辅助变量。算子‘max(p,q)’返回的是一个矩阵,该矩阵中每一个元素等于矩阵p和矩阵q中对应位置的元素的较大值。

所需线性化的部分代表q关于y的偏微分,为单位矩阵,η是利普希茨常数(lipschitzconstant),θ为l2,1范数最小化阈值算子;λ1,k、λ2,k均为第k次迭代中的拉格朗日乘子,μk表示第k次迭代中惩罚参数,其更新公式如下:

其中μmax为预设μ的最大值,ρ为μ更新的步长,α、β、和γ均为待调参数。

如此迭代求解直至目标函数收敛便可求得最优解,即原始图像数据具有区分力的表示y*

第七步,上述得到的y*矩阵的第i行yi即是对应原始图像数据xi的具有区分性的表示。对y*进行k均值聚类,即可实现图像聚类。

图4~6分别为本发明和k-均值聚类方法在coil-20、yale和orl这三个图像数据集上的实验效果对比。评价指标有三个:归一化互信息(nmi)、聚类准确率(acc)和兰德指数(ri)。经归一化之后它们的值都在0~1之间,值越大说明聚类效果越好。由图4~6可以看出,在上述三个不同的评价指标上,本发明在几个不同类型的图像数据集上的表现均超过k-均值聚类方法。图7、图8分别是本发明在coil-20图像数据集和orl人脸数据集上部分聚类结果的可视化。其中图7为coil-20图像数据集经本发明聚类之后,从聚类结果中随机挑选出来的四个类别的部分物品图像。图8为orl人脸数据集经本发明聚类之后,从聚类结果中随机挑选出来的五个类别的部分人脸图像。可以看出,本发明确实能够将相似的图片归为一类,实现图像聚类的目的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1