基于自适应标记的金相组织智能检测方法
2022-11-12张利欣尧昊天边胜琴
张利欣, 孙 涵, 尧昊天, 边胜琴
(北京科技大学a.自动化学院;b.计算机与通信工程学院,北京 100083)
0 引 言
通过对金相组织分析来预测材料的相关性能是材料研究的重要方法,而晶粒作为金相组织结构的核心组成部分,是微观组织结构研究的重点。传统的晶粒提取和测量主要通过人工操作。随着图像处理技术在材料领域的应用不断拓展,自动化和精度更高且不受人为因素影响的微观组织晶粒分析技术被提出。例如,Xu等[1]提出了一种基于区域分离的晶界自动检测算法,在20钢金相图上获取到较为完整、准确的晶界。刁福林等[2]采用图像增强方法对高温合金进行晶界检测,有效抑制了伪边界的产生,提高了晶界的完整性。韩越祥等[3]提出一种k-均值聚类算法+Kirsch算子的自适应多阈值晶界检测方法,在20钢晶界检测方面优于Kirsch算子的晶界提取效果。王宝珠等[4]采用改进的分水岭变换法实现了工业纯铁晶粒的检测。甄海洋[5]提出一种快速有效的金相图像边缘恢复与重建算法,成功解决了高质量金相图像边缘丢失与断裂的问题。上述方法,对智能技术在材料金相分析中的研究和发展都起到了积极的作用。相关研究主要针对金相试样表面处理较好、晶界清晰、成像质量较高的图像。但实际金相图片获取过程中,影响金相图清晰度的因素很多,如光源的光强分布不均匀;拍摄、放大过程中带来的噪声[6]以及金相试样制备过程中产生的划痕、侵蚀不充分等因素,导致的晶界模糊、断续等现象,使得上述方法在这类图像中无法获得精度高的晶界。鉴于上述问题,本文提出了基于自适应标记的金相组织智能检测方法,并开展了一系列的对比实验和结果分析。
1 自适应标记的金相组织检测原理与方法
复杂金相组织图像无法通过简单的边缘检测、阈值和区域分割进行晶界的提取等工作。因此,本文在图像预处理、边缘分割和形态学的基础上,提出了一套基于自适应标记的分水岭算法的金相组织智能检测方法。具体流程见图1:①采用多尺度Retinex(Multi-Scale Retinex,MSR)算法和中值滤波算法作为预处理,去除金相图像因光照不均、噪声等产生的影响;②通过拉普拉斯锐化等方法获取晶界基本骨架;③在晶界重建阶段,采用距离变换和基于自适应标记的分水岭算法快速重建完整闭合的晶界;④通过计算获得金相组织的晶粒数、晶粒度等信息。
1.1 预处理
针对金相组织图像存在的光照不均低对比度等问题,采用了MSR算法,该方法是在Retinex算法基础上发展的。Retinex算法[7]通过去除或降低原始图像中入射图像的影响,从而尽量得到反射物体本质图像。由于Retinex算法需要在颜色保真度和细节保持度上追求完美的平衡,而这个平衡在应对不同图像的时候一般都有差别。所以,提出了多尺度Retinex算法MSR[8],即对一幅图像在不同的尺度上采用单尺度Retinex算法处理,然后再对不同尺度上的处理结果进行加权求和,获得所估计的照度图像。MSR算法把不同尺度下的增强结果线性地组合在一起,充分考虑局部信息和整体信息。对复杂模糊的金相组织预处理效果更优,同时融合中值滤波算法滤除内部噪声,进一步保护图像边缘。本文以7050铝合金金相图为例开展实验验证,图2(a)、(b)分别是原图和经过预处理后的结果图。
1.2 晶界基本骨架提取
在边缘检测的算法分析过程中发现,大部分的边缘检测算法都能够较为准确的获得清晰的晶界。难点主要在模糊、断裂的地方。因此,对于显著性晶界本文首先提出了骨架提取算法,对于模糊、断裂、析出物夹杂等难以复原的晶界进行晶界重建。
为了获取更加准确的晶界骨架,本文采用2种不同的晶界提取方法融合获得最终晶界骨架。2种方法分别是:①对图像进行拉普拉斯锐化增强边缘和细节,减弱非边缘区域,进一步去除杂质后二值化、细化;②对图像进行均值二值化、细化。图2(c)为方法①和②结果相与获得的晶界基本骨架图。可以看到融合后的结果,基本去除内部的噪声,同时获得了基本的晶粒轮廓。
1.3 晶界重建
晶界骨架提取确定了晶粒的基本轮廓,需要通过晶界重建实现晶界的完整闭合。因分水岭算法[9]对微弱边缘具有良好的响应特性,同时能够得到封闭的区域,为提取完整晶界提供了可能。但分水岭算法对图像中的噪声、物体表面细微的灰度变化敏感,易产生过度分割的现象。因此,本文提出了基于自适应标记的分水岭方法:①采用距离变换得到简化的地形图;②采用自适应标记方法得到各晶粒准确的标记;③采用优化的分水岭算法快速得到完整的晶界图。
(1)距离变换。距离变换[10]是把目标点到最近边缘点的欧式距离作为目标点的灰度值。图3(b)为图2(c)距离变换的结果。图3(c)和图3(d)分别为图3(a)的灰度图和图3(b)同一区域的地形三维图。
对比图3(c)和图3(d)发现,以上处理不仅将原图中复杂、难以分辨的地形重建为简单、清晰的地形,而且不会改变原地形分布。前者保证了后续得到更准确的标记,后者保证最终得到更准确的晶界。
(2)自适应标记法。通常情况下,晶粒面积越大对应的距离图极大值也会越大。因此,可以由局部距离图的极大值自适应控制标记范围。
首先,寻找局部区域的极大值点,然后,以各极值点为起点在一定阈值范围内进行区域生长。本文选取极大值的3/4作为阈值,合并大于该阈值的极值点临近区域。对于单个晶粒内部存在多个极大值点的情况,各极值点生长区域发生接触,形成单个晶粒的标记。这种自适应的方法能够避免单个晶粒内部多个标记产生的过分割;同时,由于相邻晶粒之间或存在部分晶界,或灰度值较低,阻止标记接触,避免欠分割。
(3)优化的分水岭算法。地形重建得到了简单清晰的地形,同时标记取自各极大值区域,那么在模拟水平面上升、淹没盆地的过程中,被淹没区域的高度是渐变的,对应距离图上待分类区域的灰度是逐渐降低的,且待分类区域中灰度值大的点靠近已标记区域。
基于上述分析,提出了一种优化的分水岭算法,对未标记点按照灰度值从高到低排序,依次对待标记点进行标记分类。具体分类方法是:①若该点八邻域内没有标记点,则跳过该点;②如果八邻域内有1种标记,则将该点划为该标记;③如果八邻域内有2种以上标记,则将该点分类为晶界,直到所有点分类完毕。该方法相比传统分水岭算法相比无需反复对标记外边界的点进行判断,提高了运算效率,时间复杂度从O(n4)降到了O(n3)。
1.4 金相组织参数计算
金相组织主要由晶粒组成,通常用晶粒度来表征晶粒尺寸的大小。面积法是通过计数给定面积网格内的晶粒数N来测定晶粒度[11]。晶粒数N:
式中:N内为完全落在测量网格内的晶粒数;N交为被网格所切割的晶粒数,对于矩形网格,N交不包含4个角的晶粒。晶粒度级别
式中:M为放大倍数;A为所使用的测量网格面积,mm2;N为放大M倍时,使用面积为A的测量网格内晶粒数。
2 实验与分析
本文选取具有复杂特征的7050铝合金图片为例开展实验,该图像具有光照不均匀、边界模糊、断裂等典型特征,能够较好地验证本文方法的有效性。
2.1 标记效果的对比与分析
对于本文提出的自适应标记方法,分别与八邻域法[12](为了清晰显示标记点,做了适当膨胀处理)、阈值法、形态学重建法[13]、裁剪法[5]等标记方法进行对比,结果如图4所示。
实验结果显示:八邻域法在单个晶粒中标记了多个极值点。阈值法选择单一全局阈值无法将大小不一的晶粒同时标记。形态学重建法无法得到小晶粒的标记。裁剪法采用固定值裁剪,对于晶粒大小差异大的图像,标记效果不理想。本文提出的自适应标记方法依据晶粒大小确定标记范围,标记结果基本与晶粒一一对应,为后续晶粒计数的准确性奠定了必要基础。
2.2 晶界分割结果的对比与评价
(1)结果对比。本文对图5(a)所示的金相组织进行了手工标注,结果如图5(b)所示的。同时选取了常用的5种晶界检测方法和本文的智能检测方法进行对比,如图5(c)~(h)所示。
结果显示,图5(c)和(d)分别运用Canny和Sobel检测方法存在晶界断裂严重的问题;图5(e)用传统的分水岭算法提取的晶界与实际存在较大差异,对金相组织形貌分析会产生较大影响;图5(f)用文献[2]中的方法对于复杂图像出现了严重过分割的问题;图5(g)用文献[14]中的方法将复杂金相图的晶界与内部干扰项一同提取,后续处理难以将两者区分;图5(h)运用本文方法获得了与原图非常接近的晶粒形貌和数量,且晶界完整闭合,结果较为理想。
(2)结果评价。Boundary IoU是一种衡量边缘分割质量好坏的指标,相比Mask IoU、Trimap IoU和Fmeasure作为衡量指标对各种类型的分割错误更加敏感[15]。具体表达式如下:
式中:G为真实的边缘;P为算法分割的边缘;d为边界区域的宽度,通常设置为图像对角线的百分比dilation ratio为2%,为更全面地评价本文算法的分割效果,增加了dilation ratio为1和0.5%的结果对比;Gd为与真实边缘距离为d的像素组成的区域;Pd为与分割的边缘距离为d的像素组成的区域。以手工标注的晶界为标准,分割结果如表1所示。
表1显示,本文方法与其它5种方法相比,晶界分割准确度有了较大提升,降低dilation ratio值后,依然明显优于其他方法。
2.3 金相组织计算结果对比与分析
在金相组织计算方面,主要通过晶粒数和计算时间两方面对比。表2为5种方法和人工法的对比,结果显示本文方法在晶粒数计算准确率能够达到91.4%,明显优于其它方法。
本文方法在获得较高的晶粒分割和计数的前提下,大大降低了计算时间和人工计算强度,但相比方法2~4,算法运行时间略长,但精度更高且检测时间可以满足金相组织的检测需求。
3 结 语
本文以复杂金相组织图像晶粒检测问题为研究对象,提出了基于自适应标记分水岭的微观组织智能检测方法,通过对比实验证明该方法能够获得很高的金相组织分割精度和更准确的晶粒计数。该方法不用人为操作,大大提高了金相组织分析的计算速度,尤其在高通量的金相组织定量计算和表征的研究中,将起到重要作用。