基于图的矿石颗粒图像检测技术
2021-09-30储茂祥陈智博
张 莉, 储茂祥, 邓 鑫, 陈智博
(1.辽宁科技大学 电子与信息工程学院,辽宁 鞍山 114051; 2.辽宁黑北健科技有限公司,辽宁 鞍山 114051)
0 引 言
近几年,随着计算机技术的快速发展,数字图像处理技术不断提高并且被广泛应用于各个领域。长期以来,传统矿石颗粒都是以手工测量和机械筛选为主,不但人为主观性强,效率也低[1-2]。在矿物图像中,常使用图像处理技术对矿物进行粒度分析、形态学研究以及自动识别[3]。矿物图像存在矿石颗粒粘连堆叠、纹理杂乱、表面斑痕严重等特征[4],因此,提高矿物颗粒检测效率和检测精度成为研究热点。目前,常用的图像分割方法分为以下几类:基于阈值的分割方法、基于区域的分割方法、基于边缘的分割方法以及聚类分析的图像分割方法等[5-7]。由于图像的复杂性,每种方法都具有局限性[8-9],另外由于商业软件的保密性,只能大致得知在矿石颗粒图像分割阶段,绝大多数采用以区域分割为代表的分水岭分割方法[8-10];该方法容易陷入局部最优,产生过分割现象。矿石颗粒图像检测常用基于标记的分水岭分割方法[11],首先使用形态学对图像进行修正,然后对图像进行基于标记符分水岭变换分割;在标记图像的过程中,准确标记出前景和背景是研究难点。本文基于图的图像分割(graph-based image segmentation,GBIS)方法[12],针对矿物颗粒的细分割提出了一种新的改进方法(improved graph-based image segmentation,IGBIS),以不同区域的像素最小值差和平均值作为合并判断条件,从而准确定位并分割更多区域,提高分割精确度。
1 矿石颗粒图像处理流程
矿石颗粒图像处理流程如图1所示,首先对矿石颗粒图像进行预处理,使待分割的矿石颗粒与背景分离,然后再对单个矿石颗粒进行图像分割。IGBIS图像分割方法是矿石颗粒图像处理的关键技术,主要是提取感兴趣的目标过程。本文图片是由采出的矿石经过研磨后使用电镜照出的矿石颗粒图片,不需要做滤波处理,因此预处理阶段主要是对图片进行二值化处理和对目标矿石颗粒的收缩。
图1 矿石颗粒图像处理流程
2 图像预处理
图像预处理主要是提取图像I中矿石颗粒,使其与背景分离。矿石颗粒图像预处理不同阶段的结果如图2所示。
首先采用二值化方法对图像进行处理,生成二值图I1。二值化就是选择一个阈值,大于阈值归为一类,小于阈值归为一类。与以往矿石颗粒图像寻找阈值的方法不同,本文选择阈值的方法是先将I生成直方图,然后在直方图上统计波峰。选取背景经验波峰对应的像素值,再加上前景与背景像素差异的经验值作为二值化阈值的最大界。最终的二值化阈值为最大界以内最大波峰对应的像素值。本文的前景与背景差异经验值取15,二值化后生成的图像如图2b所示。阈值选取公式如下:
T={(hi,gi)|gi hth=max{h1,h2,…,ht}, gth gt=B+ΔB, (hth,gth)∈T, (ht,gt)∈T (1) 其中:T为波峰与其对应像素值的集合;gt为选取的二值化阈值最大界;ht为gt对应的波峰;gth为最终的二值化阈值;hth为gth对应的波峰;B为背景经验波峰对应的像素值;ΔB为前景与背景像素差异的经验值。 二值化后部分颗粒内部会出现局部像素值小于阈值的情况,该类像素值归属于背景,形成空洞现象,因此需要填补矿石颗粒空洞。形态学是常用的填充空洞方法,但是该方法填充图像边界空洞无效果。本文计算背景中每个独立像素区域面积Si,规定一个阈值Sth,定义: Si (2) 如果满足(2)式,那么填充前景空洞,形成去空洞图I2,如图2c所示。 补完空洞后的矿石颗粒与原来的矿石颗粒相比在形状上大了一圈,接下来为矿石颗粒去除阴影(过滤带),这一过程称为收缩。以(2N+1)×(2N+1)结构遍历图像I2,找到图像I2前景,即I2(i,j)=1,计算公式为: (3) 若满足(3)式,则将I2(i,j)=1改为I2(i,j)=0,对应的像素值归为背景。在本文实验过程中,设N为1,收缩后如图2d所示。将收缩后的图像取反,如图2e所示。与原图叠加,得到矿石颗粒图片,如图2f所示。 图2 矿石颗粒图像预处理不同阶段的结果 GBIS算法是由文献[12]提出的基于图的贪心聚类算法,它是经典图像分割算法之一。该方法是将图像的分割问题转化为图的分割问题,将图像抽象地表示成一个带权的无向图,图像中的各个像素点代表图的各个顶点,各个像素点之间用边连接,边的值用于描述像素点之间的相似程度(权值)。GBIS算法则生成多个区域来完成分割,同一个区域像素之间相似,不同区域像素之间不相似。 GBIS算法按RGB距离公式计算权值,公式如下: (4) GBIS算法合并准则公式如下: (5) 其中:C1、C2为任意2个区域;diff(C1,C2)为区域间差异;MInt(C1,C2)为最小的区域内差异。如果是true,那么C1、C2区域合并。 GBIS方法对矿石颗粒进行分割,出现过分割现象,分割后的矿石颗粒内部结果达不到所期望的效果,因此本文对GBIS方法做出改进,改进后的分割方法称为IGBIS。IGBIS方法通过改变合并条件进而加强了对各个区域的细分割。IGBIS算法首先计算每个像素点之间的权值,然后根据权值找到连接权值对应的2个像素点,观察2个像素值是否满足合并条件,如果满足合并条件就合并,如果不满足合并条件,那么寻找下一个像素点,重复上述步骤,直至没有像素点需合并。本文中IGBIS算法计算权值的方法与GBIS算法一致。 合并方式以按秩合并和路径压缩准则为准。按秩合并就是在2个最小生成树中,将低级生成树连到高级生成树上。路径压缩则是将低级树的顶级连到高级树的顶级(父级)。在本文分割方法中用父级代表此最小生成树的特征,便于计算与分析。 Pmax-Pmin≤γ (6) 若存在少量高斯噪声点,则会影响选取最值的结果。为了解决这种问题,定义另外一个合并条件。求C1、C2内最小生成树中各个像素值的平均值。选择合适的阈值α。判断2个平均值之差是否小于α,如果小于α,那么则合并2个区域,同时更改Pmax值和Pmin值。计算的平均值接近最大值,则更新Pmax值;计算的平均值接近于最小值,则更新Pmin值。合并条件为: (7) 其中:Pi为C1区域中的像素,i=(1,2,3,…,mn),m为图像的宽,n为图像的高;|C1|为C1区域的像素面积;|C2|为C2区域的像素面积。 合并之后的图像中会出现一些过分割的小区域,将小区域合并到临近的大区域中,合并条件如下所示: (8) 其中:C1、C2为2个不同的区域;size(C1)为区域C1的大小;size(C2)为区域C2的大小;β为某一规定的值。 在预处理后的图片中,截取单个矿石颗粒,对单个矿石颗粒进行分割,具体分割过程如下: (1) 将图片看成无向图G=(V,E,W),用(4)式计算权值。本文矿石颗粒图像是灰度图,只需要计算灰度差值即可。每个像素都是独立的区域,图像原始像素值作为它们初始条件的最大值Pmax、最小值Pmin和平均值。 (2) 依照边权值将边e按从小到大排序,即e0,e1,e2,e3,…,em。 (3) 选择e0,找到对应e0的2个顶点,判断2个顶点是否满足合并条件(6)式、(7)式。 (4) 按照排好的顺序,从边e0重新开始找,既满足不同区域,且满足任意一区域树级小于β,2个区域便合并如(8)式,否则结束。 本实验首先从预处理后的图像上截取矿石颗粒灰度图,然后分别使用分水岭、最大类间方差(OTSU)、GBIS和IGBIS方法进行分割。分割后的结果如图3所示,其中彩色图像中的一种颜色代表一个分割后的区域。从分割的结果可以看出,分水岭分割的结果出现严重的过分割;OTSU方法将矿石内部的部分信息分割出来,但是出现了欠分割的现象,如图3c的第1幅图像所示;GBIS方法分割结果明显好于前2种方法,但是出现了信息遗漏和过分割现象,如图3d的第3幅图像和第1、2幅图像所示。将IGBIS方法分割后的第3幅图像和其他方法分割后的第3幅图像作对比,能够发现IGBIS方法分割出了许多孤立的小区域,同时该方法也可以将区域内隐藏的过滤带分割出来。 图3a的 3幅图像被分割后的各个区域数目见表1所列。 从表1可以看出,分水岭出现严重过分割,分割出无数个区域,无法知道其分割出的区域是否准确;OTSU和GBIS方法对各个图像分割出的区域数目要比IGBIS方法分割出的区域数目少。这些都表明IGBIS方法加强了对图像的细分割。 根据以上分析说明,本文提出的改进算法对矿石颗粒轮廓提取和细节提取都具有良好的鲁棒性,不仅能分割出像素值非常接近的不同区域,而且能准确分割出孤立的小区域。 将图3a中的原图按照从左到右顺序依次标记为a1、a2和a3,并对a1、a2和a3中需要分割的像素区域标上数字标号,如图4所示。 图4 矿石颗粒分割区域标号 统计各个数字标号对应的像素区域面积,a1、a2的矿区颗粒分割区域面积和偏值见表2、表3所列,a3矿石颗粒部分分割区域面积和偏差值见表4所列,a3矿石颗粒剩余分割区域面积和偏差值见表5所列。因为分水岭方法分割后区域数量过多,无法计算各个区域面积,所以本实验没有统计分水岭方法分割的图像区域面积。另外,以手动分割结果为参照标准,采用偏差值评定图像分割精度。偏差值根据像素区域面积进行计算,即 θ=|A-E|/E 其中:θ为偏差值;A为各个分割方法分割的区域面积;E为手动分割的区域面积。 从表2~表5可以看出,OTSU算法和GBIS算法分割图像时,图像中部分区域出现严重过分割,偏差率过大,如表3中OTSU分割的3区域面积为387,相对于手动分割的面积97,偏差值达到了2.990。 表2 a1矿石颗粒分割区域面积和偏差值 表3 a2矿石颗粒分割区域面积和偏差值 表4 a3矿石颗粒部分分割区域面积和偏差值 表5 a3矿石颗粒剩余分割区域面积和偏差值 IGBIS算法与其他2种方法相比,在分割图像时偏差率较低,并且大部分区域被分割后的正确率能达到92%以上,因此该方法对矿石颗粒分割具有良好的分割精度。 本文采用的原图像像素大小为25×25,4种分割方法对3种颗粒计算分割时间见表6所列,虽然IGBIS算法相比于其他算法时间较长,但运算时间上仅差几毫秒,运算时长非常接近,因此IGBIS算法分割效率是能够接受的。 表6 矿石颗粒运行时间 单位:s 针对矿石颗粒图像结构复杂的问题,本文基于已有的分割方法和结合图像的特点,提出一种改进的GBIS分割方法。该方法首先采用二值化、填补空洞和收缩方法使前景与背景分离,再和原图像叠加提取出矿石颗粒,然后用IGBIS方法对矿石颗粒进行准确分割。本文提出的矿石图像分割方法具有良好的鲁棒性,在满足准确分割的同时能得到更多的细节。但是该算法还不能处理图像的过滤带问题,需要进一步研究。3 改进的GBIS方法
3.1 改进GBIS的思想
3.2 IGBIS的算法流程
4 实验结果与分析
5 结 论