APP下载

回溯法在多孔材料孔径测量中的应用

2010-09-08全书海

关键词:结点孔洞像素点

赵 玲,全书海,石 英

(武汉理工大学自动化学院,湖北武汉 430070)

多孔材料是含有大量孔隙的固体物质,是一种性能优异的新型工程材料,在石油、化学工业、能源、环境和生物等众多科学和工程领域以及人类的日常生活中都具有广泛的应用,其扩散、导热和渗流等宏观物性研究具有很重要的工程应用背景和科学价值[1]。对其微观特征的表征比仅研究物理统计量的常规物性更为深入细致,能正确地反映其宏观特性。随着图像检测技术在测量领域中的迅速发展,基于SEM图像的直接观测法[2-3]在多孔材料的微观结构测量与表征上颇具优势,应用该技术对多孔材料微观结构参数进行准确定量分析逐步成为可能。施斌等[4-5]基于图像定量分析了我国某些典型粘性土微结构单元体的形态、大小及分布,获得单元体的定向角分布、主定向角和各向异性率等数据。熊承仁等[6]利用重塑粘性土的SEM图像,计算了平面孔隙比和平面孔隙度,计算值与理论值比较吻合。多孔材料的微观性质包括孔隙面积、孔径分布、孔隙率和周长等,要得到多孔材料的这些微观性质,就必须先对其SEM图像的孔洞区域进行标记。通常使用的孔洞标记算法有迭代算法和递归算法。笔者分析了迭代孔洞标记和递归孔洞标记方法的不足之处,结合回溯法的思想采用一种新的方法对多孔材料进行标记,大大简化了程序设计。

1 迭代孔洞标记法与递归孔洞标记法

1.1 迭代孔洞标记

在一幅图像中[7],为了对图像的连通域进行标记,需要对一幅图像作从左到右,从上到下的水平扫描,检测当前被扫描到的点是不是与周围的点连通。如果当前像素的值与邻近像素的值一样,就表示它们连通,反之,就表示与此邻近像素不连通,此时就要给当前点一个新的标记。

迭代孔洞标记图如图1所示。一个简单的区域会出现图1(a)的情况,图中不同的纹线密度表示不同的标记,采用迭代孔洞标记,当前扫描到C4这个点的时候,只要C5这一行比它上一行向左多伸出两个或两个以上像素点(多一个没有问题),那么与C5这个像素点对应的邻近像素点C1,C2,C3,C4的值就全部为 0(孔洞区域为 1,非孔洞区域为0),于是会对C5赋予一个新标号。扫描结束后,在一个区域中可能会有好几根扫描线会出现这种情况,结果导致一个简单的目标域却被分成几个连通区,见图1(b)。

为了减少等价标记的数目,需要考虑很多特殊情况,考虑不全面会导致结果严重偏离真实值。

1.2 递归孔洞标记

图1 迭代孔洞标记图

一个直接或间接地调用自身的算法称为递归算法[8]。一个使用函数自身给出定义的函数称为递归函数。在计算机算法设计与分析中,递归技术是十分有用的。使用递归技术往往使函数的定义和算法的描述简洁且易于理解。递归孔洞标记从图像中一个像素点开始,递归处理其周围4邻域的像素点,从一点逐渐向外膨胀,递归返回一次就可以得到其面积。具体步骤如下:

采用递归孔洞标记最终能访问完图像中所有孔洞目标区域,不会产生遗漏。但是递归调用的过程会有很多重复处理,因此占用的栈空间会比较多,直到所有递归完成以后才能释放资源,当数据量较大时,递归次数过多,会导致堆栈溢出,程序无法继续运行[9]。

2 回溯孔洞标记法

回溯法[10]是一个既带有系统性又带有跳跃性的搜索算法。它在包含问题的所有解空间树中,按照深度优先的策略,从根结点出发搜索解空间树。确定了解空间的组织结构后,回溯法从开始结点(根结点)出发,这个开始结点就成为一个活结点,同时也成为当前的扩展结点。在当前的扩展结点处,搜索向纵深方向移至一个新结点。这个新结点就成为一个新的活结点,并成为当前扩展结点。如果在当前的扩展结点处不能再向纵深方向移动,则当前的扩展结点就成为死结点。换句话说,这个结点不再是一个活结点。此时,应往回移动(回溯)至最近的—个活结点处,并使这个活结点成为当前的扩展结点。回溯法即以这种工作方式递归地在解空间中搜索,直至找到所要求的解或解空间中已无活结点时为止。

回溯孔洞标记法在一副经过预处理的图像中,从左到右,从上到下扫描,直到发现一个没有标记过的孔洞像素点,以此像素点为起始点,按右、下、左、上的顺序对一个连通区域进行深度搜素,直至把整个连通区域搜索完毕。标记各个孔洞,保存信息。具体步骤如下:

(1)判断当前点(孔洞)是否标记过,未标记转步骤(2),标记过转步骤(3);

(2)孔洞面积加1,并标记该点,保存该像素点信息(包括坐标,方向),入栈,进入步骤(4);

(3)取栈顶元素,判断是否所有方向都已搜索完毕,如果该像素点其他方向未搜索,则进入步骤(4),否则转步骤(5);

(4)寻找下一个像素点,继续搜索,转步骤(1);

(5)将该像素点出栈,判断栈是否为空,不为空,继续搜索,转入步骤(1),否则搜索完毕,程序退出。

该方法类似于迷宫问题,迷宫问题只是从入口到出口找到一条通路,而回溯孔洞标记则是把与这个通路连通的整个区域都找出来。一个简单的迷宫图如图2所示。

图2 迷宫图

图2中黑色区域为迷宫的墙,迷宫问题只要求从入口处(0,0)到出口(3,4)之间找到一条通路,就停止寻找,回溯孔洞标记法则继续返回搜索,直至把整个连通区域都遍历完(搜索方向为右,下,左,上)。具体搜索过程如下:

(3,4)为最末点,走到这里,迷宫问题得到解决。而本算法经过判断后把该点弹出,同理一直回溯到(2,1)点,在(2,1)点继续向左搜索。

到(1,0)点时,其4邻域内3个像素都标记过,经过判断后弹出该点信息,回溯到(2,1)点,该像素点所有方向都搜索完毕,继续向前回溯到(0,0)点,弹出所有像素点后,栈为空,结束该连通区域搜索。

采用回溯孔洞标记法能完整地遍历整个图像,将多孔材料SEM图像上不同的连通区域用不同的数值标记出来,而同一个目标区域中所有的像素用同一个数值表示。该方法在搜索的过程中对搜索过的点进行出栈操作,避免了递归带来的堆栈溢出后果。

3 实验结果分析

3.1 迭代结果分析

笔者利用淀粉SEM图像和陶瓷SEM图像对该算法予以验证,在测量之前首先对实验对象进行一系列预处理,把SEM图像转化成BMP文件格式,然后采用HSI选取阈值对图像二值化,得到二值化图像(白色区域为孔隙)。图3~图5均为回溯孔洞标记法测得的实验结果。图3(a)所示为经过预处理后的淀粉SEM图像,图5(a)所示为经过预处理后的陶瓷SEM图像。

图3 X 5000淀粉SEM图像实验结果

图4 X 1000淀粉SEM图像实验结果

图5 X 10000陶瓷SEM图像实验结果

对于图3~图5,利用迭代孔洞标记法时,会出现孔洞数目结果比实际数目大很多。这是因为图像中出现了很多等价标记。如图6所示,一个孔洞区域被分成了7个连通区。因此图像中的目标孔洞个数会急剧增加,而且,在对单个孔洞面积进行像素累加时也会出现错误的结果。如果要把各种特殊情况考虑进去,则会大大增加代码的复杂度。一旦考虑不全面,结果也会和真实值有较大偏差。

图6 迭代结果分析图

3.2 递归结果分析

采用递归孔洞标记法来处理图3和图4时,程序运行良好,可以测出与回溯标记法相同的正确结果。而对于图5,可以看到,其中的一个孔洞面积达到了十万个像素以上,递归在遇到这种数据量的情况下,堆栈溢出,程序则无法正常运行。由此说明递归算法的性能会受到目标区域大小的影响,如果目标区域太大,就会耗尽栈空间。

4 结论

迭代标记时需要考虑很多特殊情况,算法复杂;递归需消耗大量的内存资源,且受到目标区域大小的影响;而回溯孔洞标记法代码精简,执行效率高,测量结果准确,在多孔介质的微结构测量中有较好的应用价值。

[1]LIU W,PENG S W,MIZUKAMI K.A general mathematical modeling for heat and mass transfer in unsaturated porous media:an application to free evaporative cooling[J].Heat and Mass Transfer,1995,31(1):49-55.

[2]浦红,杨峥,陈斌.用计算机图像处理软件定量分析SEM 图像[J].物理测试,2004(1):30-32.

[3]张季如,祝杰,黄丽,等.土壤微观结构定量分析的IPP图像技术研究[J].武汉理工大学学报,2008,30(4):80-83.

[4]施斌,李生林.粘性土微观结构SEM图像的定量研究[J].中国科学(A 辑),1995,25(6):666-672.

[5]毛灵涛,薛茹,安里千.Matlab在微观结构SEM图像定量分析中的应用[J].电子显微学报,2004,23(5):579-583.

[6]熊承仁,唐辉明,刘宝琛,等.利用SEM照片获取土的孔隙结构参数[J].地球科学:中国地质大学学报,2007,32(3):415-419.

[7]张修军,郭霞,金心宇.带标记矫正的二值图像连通域像素标记算法[J].中国图象图形学报,2003,8(2):198-202.

[8]朱名江.递归算法[J].中文信息,2002(8):36-39.

[9]俞杰,许化溪.一种易于实现的适于细胞图像连通区域的标记算法[J].江苏大学学报:医学版,2005,15(2):152:155.

[10]王晓东.数据结构与算法设计[M].北京:电子工业出版社,2002:54-69.

猜你喜欢

结点孔洞像素点
LEACH 算法应用于矿井无线通信的路由算法研究
基于八数码问题的搜索算法的研究
一种面向孔洞修复的三角网格复杂孔洞分割方法
基于局部相似性的特征匹配筛选算法
孔洞加工工艺的概述及鉴定要点简析
基于5×5邻域像素点相关性的划痕修复算法
基于canvas的前端数据加密
基于逐像素点深度卷积网络分割模型的上皮和间质组织分割
玻璃浆料键合中的孔洞抑制和微复合调控
高应变率下延性金属中微孔洞贯通行为的数值分析