1,周基贤1,冯俊羲2,滕奇志2
(1.新疆油田分公司实验检测研究院,新疆 克拉玛依 834000;2.四川大学 电子信息学院 图像信息研究所,四川 成都 610065)
摘要:在岩石薄片图像处理中,针对岩屑矿物个数未知、成像多为聚集的点状的特点,提出了一种基于DBSCAN(DensityBased Spatial Clustering of Applications with Noise)算法与数学形态学的矿物分割方法。首先,标记出每个颗粒目标,求得其中心坐标;其次,利用DBSCAN算法对岩屑颗粒目标中心进行聚类,将不同区域的岩屑目标分离出来;最后,利用数学形态学方法对聚类结果做膨胀、填孔、腐蚀等处理,得到颗粒的边界。实验分析表明:该方法聚类效果良好,参数容易控制并有一定的抗噪性能,对岩屑颗粒目标的提取有较好的效果。
关键词:DBSCAN聚类;图像分割;岩石薄片图像;数学形态学
0引言
利用岩石薄片图像进行岩石颗粒的粒度分析是地质实验室的一种常用方法,而岩石颗粒的分割是粒度分析和矿物识别的前提。根据颗粒的光学性质和矿物成分,可以分为以下两类:
(1)碎屑颗粒。该类颗粒成分较为单一,在正交偏光下,明暗变化比较一致,通常呈现整体地变亮变暗。其特点是颗粒目标面积较大,边界清晰,容易确定。随着图像处理技术的发展,目前已经有一些典型颗粒分割方法应用在碎屑颗粒分割上,取得了较好的效果,已经在一定程度上解决了分割的问题。
(2)岩屑颗粒。该类颗粒成分较为复杂,在正交偏光下明暗变化不一致,通常呈现出点状。特点是目标面积较小,边界模糊,难以确定。目前有一些学者提出了超像素分割方法[1],该方法应用到岩石薄片图像的分割上,能够大致地拟合出颗粒的边界,但是存在目标过分割及区域合并易出错的问题。
针对岩屑矿物的光学特性和成像特点,本文提出一种基于算法密度的聚类算法(DensityBased Spatial Clustering of Applications with Noise,DBSCAN)与数学形态学的岩屑颗粒分割方法。该方法首先利用颗粒中心代表本身来简化模型,然后利用DBSCAN算法对目标中心进行聚类,标记出不同的颗粒目标;最后再结合改进的数学形态学方法,近似地得到颗粒边界。实验结果表明,本文方法对颗粒的分割和边界提取有较好的效果,为颗粒边界的刻画提供了一种有效的途径。
1问题描述与分析
图1是一幅岩石薄片样本的单偏光图像,其中既包含碎屑颗粒,又包含岩屑颗粒。对颗粒进行分割的目的就是确定其边界,但是仅通过这一张单片光图片是很难对两种颗粒进行分割的。
碎屑颗粒目标成分单一,在正交偏光下成像简单,通常为一整个颗粒,边界比较容易确定,利用矿物在正交偏光下的这一消光特性[2],目前已有学者提出了一些分割算法[3],在工程应用中取得了较好的效果;而对于岩屑颗粒而言,在正交偏光下成像复杂,通常呈现若干聚集的点状,边界模糊难以确定,常用的颗粒分割方法没有明显的效果。针对岩屑颗粒的光学特性和成像的特点,考虑利用聚类的方法来进行分割,再结合数学形态学做后期处理,就可以拟合出目标边界。
1.1聚类算法分类
目前的聚类算法大致可以分为以下4种:(1)基于分割的算法,如k均值[4]、k中心等。这类算法是将数据集分成若干的子集。特点是需要设定簇的数量,根据对象间的相似程度将每个对象划归最近的簇。(2)层次聚类算法。层次聚类是把数据按层次进行分解,最终的结果形成了一颗类别树,每个子集是树的节点。算法有最近邻、最远邻和CURE等。(3)基于模型的算法。这类算法基于统计理论,假定给定的数据集是按照一个确定的模型产生的,找出数据集的最佳拟合模型。如期望最大化(EM)[5]算法。(4)基于密度的算法。主要思路是在数据集中,根据密度的高低,分隔出低密度区域,寻找到高密度区域,并将每个独立的高密度区域作为一个簇。比较典型的算法有DBSCAN[6] 、OPTICS[7]等。
1.2基于密度的聚类算法特点
基于密度的聚类方法,是根据数据集在空间分布上的密集程度来进行聚类,不需要人为设定簇的数量,非常适用于数据集的簇数量未知的场合。本文所使用的DBSCAN算法是一种经典的基于密度聚类算法,它以单位超球状区域内所包含数据对象的数量作为依据,来衡量此区域密度的高低[8],它的特点是可以自动确定簇的数量,能够在带有噪声的数据空间中发现任意形状的簇,并且可以标记出离群点。
2基于DBSCAN算法与数学形态学的分割方法
2.1DBSCAN算法基本理论
DBSCAN算法最早由ESTER M[6]等人提出,是一种经典的基于密度聚类算法,已经在交通监控[9]、数据挖掘等方面有着广泛的应用。DBSCAN算法的主要定义[6,8]如下:
定义1(Eps邻域):给定一个数据对象p,p的Eps邻域NEps定义为以p为核心,以Eps为半径的d维超球体区域,即:
NEps(p)={q∈D|dist(p,q)≤Eps}
定义2(核心点与边界点):对于某个数据对象p∈D,给定一个整数minPts,若p的Eps邻域内对象的数量满足|NEps(p)|≥minPts条件,则称p为(Eps,minPts)条件下的核心点;若p不满足此条件,则它不是核心点,又若p落在某个核心点的Eps邻域内,则称它为边界点。
定义3(直接密度可达):给定(Eps,minPts),如果对象p和q满足以下两个条件:p∈NEps(q);|NEps(q)|≥minPts,(即q是核心点),则称对象p是从对象q出发,直接密度可达的。
定义4(直接密度可达):给定一个数据集D,当存在一个对象链p1,p2,p3,...,pn,其中p1=q,pn=p对于pi∈D,如果在条件(Eps,minPts)下pi+1从pi直接密度可达,则称对象p从对象q在条件(Eps,minPts)下密度可达。
定义5(密度相连):如果数据集D中存在一个对象o,使得对象p和q是从o在(Eps,minPts)条件下密度可达的,那么就称对象p和q密度相连,密度相连是对称的。
定义6(簇和噪声):由任意一个核心点对象开始,从该对象密度可达的所有对象构成一个簇。不属于任何簇的对象为噪声。
在岩石薄片图像中,岩屑颗粒目标就是呈现的聚集的点状。而噪声分布是杂乱无章的,聚集程度较低,与岩屑颗粒目标的分布有着差别。在工程中,无法获得颗粒数量等先验知识,而DBSCAN算法在目标簇的数量未知的情况下,可以寻找到任意形状的簇。因此,DBSCAN算法很适合这种场景下的应用。
2.2岩屑颗粒分割及边界提取步骤
实际中本文得到的是一幅复杂多样的图片,首先要进行面积预处理,然后为了简化模型,利用目标中心来代表本身,进一步需要聚类、去噪、数学形态学处理等过程,最终才能得到分割的结果。
在本文中,分割的结果是多值的,传统二值图像的形态学处理是不适用的,需要做一些改进,如对目标进行膨胀,边界的颜色需要与当前处理的目标颜色一致。
在实际中,岩石薄片图像里既有大面积的碎屑颗粒目标,也有小面积、呈现出聚集点状的岩屑颗粒目标,如图2所示。提取岩屑颗粒目标需要以下几个步骤:
(1)利用两种颗粒面积大小不同的特点,通过设定面积阈值,提取出岩屑颗粒目标,对其进行单独处理;
(2)标记出每个连通区域,并求出其中心坐标;
(3)运用DBSCAN算法对各区域进行聚类,标记出不同的岩屑颗粒和噪声点;
(4)去除噪声点并进行膨胀、填孔等数学形态学的处理,得到岩屑颗粒的边界。
3实验结果与分析
对于实际中的一幅图片,如图2所示,先进行面积的预处理,去除大面积的碎屑颗粒目标,便得到了含有噪声的岩屑颗粒目标,如图3所示。首先标记出每个连通区域并求得其中心坐标;其次运用DBSCAN算法对颗粒中心进行聚类,提取出岩屑颗粒目标,并标识出噪声点,其中灰色的为岩屑颗粒目标,纯白色的为噪声点,结果如图4所示。去除噪声并对岩屑颗粒进行膨胀,得到的结果如图5所示。对膨胀结果进行填孔、腐蚀处理得到最终的结果,如图6所示。
对比图3和图4可以看出,DBSCAN算法可以有效地去除噪声点,能够提取出岩屑颗粒,具有较好的抗噪性能。得到了岩屑颗粒目标后,由于它们是呈散点状的,还需要通过膨胀和后期的填孔处理。从图5可以看出,膨胀后在颗粒边界周围,存在着一些小面积目标,这些目标是孤立的,并不影响颗粒的总体轮廓,所以可以去除它们。从总体上看,经过多次膨胀,目标面积增大了,需要进行适当的腐蚀或开操作的处理,
4结论
基于DBSCAN算法和数学形态学的岩石薄片图像分割方法,首先经过面积预处理,去除碎屑颗粒目标,保留岩屑颗粒目标;然后利用DBSCAN算法对含有噪声的岩屑颗粒中心坐标进行聚类,从而去除大部分的噪声点;再对结果进行改进的膨胀、填孔、腐蚀等形态学处理,最终得到分割结果和颗粒目标的边界。
实验结果表明,本文方法对岩屑颗粒的分割与边界提取有一定的效果,为颗粒目标提取和粒度分析提供了一种途径。但该方法也存在着一些不足,如经过数学形态学处理的结果边缘不够平滑;DBSCAN算法需要人为设定经验性的参数,目前还不能很好地自适应。如何根据实际中复杂多样的情况做出相应的改进,将是需要进一步解决的问题。
参考文献
[1] ACHANTA R, SHAJI A, SMITH K, et al. SLIC superpixels compared to stateoftheart superpixel methods[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2012, 34(11): 2274 2282.
[2] 常丽华,陈曼云,金巍,等. 透明矿物薄片鉴定手册[M]. 北京:地质出版社, 2006.
[3] 吴拥, 苏桂芬, 滕奇志, 等. 岩石薄片正交偏光图像的颗粒分割方法[J]. 科学技术与工程, 2013,13(31): 92019206.
[4] MACQUEEN J. Some methods for classification and analysis of multivariate observations[C].Proceedings of the Fifth Berkeley Symposium on Mathematical Statistics and Probability, 1967, 1(14): 281297.
[5] MOON T K. The expectationmaximization algorithm[J]. Signal Processing Magazine, IEEE, 1996, 13(6): 47 60.
[6] ESTER M, KRIEGEL H P, SANDER J, et al. A densitybased algorithm for discovering clusters in large spatial databases with noise[C]. Proceedings of the 2nd International Conference on Knowledge Discovery and Data Mining (KDD′96).AAAI Press,1996: 226231.
[7] ANKERST M, BREUNIG M M, KRIEGEL H P, et al. OPTICS: ordering points to identify the clustering structure[C]. In: Proceedings of the 1999 ACM SIGMOD International Conference on Management of Data, SIGMOD 1999:4960.
[8] 夏鲁宁, 荆继武. SADBSCAN: 一种自适应基于密度聚类算法[J]. 中国科学院研究生院学报, 2009, 26(4): 530 538.
[9] 刘卫宁,曾婵娟,孙棣华. 基于DBSCAN算法的营运车辆超速点聚类分析[J]. 计算机工程,2009,35(5):268 270.