一种基于三维超像素分割的材料晶粒边缘提取方法转让专利

申请号 : CN201610948455.5

文献号 : CN106548483B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杨宁邓博赵天云郭雷邱硕

申请人 : 西北工业大学

摘要 :

本发明涉及一种基于三维超像素分割的材料晶粒边缘提取方法,依据镍合金晶粒图像以凸多边形为主的特点,采用以正六棱柱为初始聚类对镍合金晶粒图像进行超像素分割,并通过超像素聚类得镍合金晶粒边缘提取结果。试验结果表明,本发明在包含大量晶粒、碳化物和噪声的镍合金切片图像中,具有边缘连续性好,轮廓保持性好,提取速度较快的特点。

权利要求 :

1.一种基于三维超像素分割的材料晶粒边缘提取方法,其特征在于步骤如下:

步骤1、预处理:将读入L张扫描电镜的切片图像构建为体数据V=[X,Y,Z],每张切片图像大小为M×N;其中X,Y表示连续切片图像的大小,为体数据的长和宽;Z为连续切片数据的张数,为体数据的高;

对体数据进行三维中值滤波:V'=med{f(x-a,y-b,z-c),(a,b,c∈W)}其中:f(x,y,z)和V′分别为由L张扫描电镜切片图像构建的原始体数据和经三维中值滤波后的体数据,med表示取中值操作,W为三维滑动模板,a、b、c为三维滑动模板的长、宽、高;

步骤2、聚类初始化:设定k′个超像素,在经中值滤波后体数据V'内均匀的分配k′个大小相近的正六棱柱三维超像素区域,种子点即正六棱柱三维超像素区域的中心,计算相邻种子点间的距离S;在种子点的3×3×3邻域内重新选择种子点,初始化聚类中心Ck、像素点分配标签l、像素点到聚类中心的距离d;具体过程如下:步骤a、相邻种子点间距离:

经中值滤波后体数据V'内共有M×N×L个像素点,在体数据V'内均匀分配k′个大小相近的正六棱柱三维超像素区域,每个三维超像素大小为 得到k′个正六棱柱,以正六棱柱的中心点为种子点,计算相邻种子点间距离为:步骤b、重新选择种子点:以种子点为中心,在3×3×3邻域内计算所有像素点的梯度值,将种子点移到3×3×3邻域内梯度最小的点;

步骤c、初始化:

初始化聚类中心Ck为[0,0,0,0],像素点分配标签l为-1,像素点到聚类中心的距离d为无穷;

步骤3、迭代优化:如果像素点到聚类中心的距离小于前值,即D<d,则更新像素点到聚类中心的距离d=D、像素点分配标签l=k,并用均值更新聚类中心Ck,直到残差小于阈值时,迭代停止;

距离度量:取最小值对应的种子点作为像素点的聚类中心Ck,计算其2S×2S×2S邻域内每个像素点到聚类中心的距离D',即灰度距离和空间距离的标准欧式距离;计算每个搜索到的像素点与种子点的距离公式:其中,dg代表灰度距离,ds代表三维空间距离,Ns是聚类内最大三维空间距离,定义为Ns=S,适用于每个聚类,最大灰度距离Ng随图像不同而不同;

步骤4、清除孤立区域:通过形态学清除迭代优化完成后小的孤立区域,将清除的区域分配到邻近的聚类,区域被重新编号,生成临近矩阵Am;

步骤5、超像素聚类:使用DBSCAN聚类算法对超像素进行聚类,输入迭代优化后的像素点分配标签l,聚类中心Ck,临近矩阵Am,距离阈值E,通过DBSCAN聚类算法对超像素进行聚类,产生新的像素点分配标签lc,新的聚类中心C;生成新的像素点分配标签lc即产生了对图像的分割,绘制边缘即实现基于三维超像素分割的材料晶粒边缘提取。

2.根据权利要求1所述基于三维超像素分割的材料晶粒边缘提取方法,其特征在于:所述最大灰度距离Ng取值范围1~40。

3.根据权利要求1所述基于三维超像素分割的材料晶粒边缘提取方法,其特征在于:所述最大灰度距离Ng取10。

4.根据权利要求1所述基于三维超像素分割的材料晶粒边缘提取方法,其特征在于:所述距离阈值E取值范围5~10。

说明书 :

一种基于三维超像素分割的材料晶粒边缘提取方法

技术领域

[0001] 本发明属于图像边缘提取领域,具体涉及一种基于三维超像素分割的材料晶粒边缘提取方法。

背景技术

[0002] 在材料工业,设计和开发了一种具有所需性能的新材料需要花费科学家和工程师数年时间。这个过程通常涉及多轮样品生成测试和显微结构分析。在材料科学和工程上精确的材料晶粒图像分割是十分重要的。材料是由大量颗粒组成,这些晶粒可以通过显微镜切片成像。从图像分割上,我们可以获得基本的晶粒微观图像,其尺寸,形状和毗邻关系通常决定样品的物理,机械和化学性能,如亮度,硬度,刚性,导电性,渗透率和热稳定性。然而,晶粒分割是一个有挑战性的难题,因为:1、甚至一个材料晶粒样本可能含有数以百计的晶粒;2、碳化物和噪声可能降低图像品质。在材料科学界,在材料样品中提取所有晶粒的一种常见的做法是人工分割每个二维图像切片,然后依据二维切片获得的相应片段重建三维晶粒。鉴于大量晶粒和切片,人工分割是非常繁琐,耗时且容易出错。
[0003] 现有的图像分割算法有:基于阈值的图像分割,其效果依赖于阈值的选择,对噪声敏感;基于区域增长法的图像分割,很容易产生过图像过分割现象,分水岭算法可以说就是典型的代表;基于聚类法的图像分割,聚类分割中对图像特征的提取、相似度的计算和正确的聚类方法是基于聚类图像分割的研究关键和难点;基于变形模型的图像分割,但其存在天然的缺陷,变形模型对初始轮廓的选取很敏感,初始轮廓的选取能影响分割的效果。材料晶粒边界复杂,图像中存在大量晶粒,图像中的噪声及杂质都使得图像的边缘提取难度增加。国内外对于材料晶粒的边缘提取研究相对较少,通常在提取边缘之后还需人工修复。因此,对于材料晶粒的边缘提取技术还需进一步深入研究。

发明内容

[0004] 要解决的技术问题
[0005] 为了避免现有技术的不足之处,本发明提出一种基于三维超像素分割的材料晶粒边缘提取方法。
[0006] 技术方案
[0007] 一种基于三维超像素分割的材料晶粒边缘提取方法,其特征在于步骤如下:
[0008] 步骤1、预处理:将读入L张扫描电镜的切片图像构建为体数据V=[X,Y,Z],每张切片图像大小为M×N;其中X,Y表示连续切片图像的大小,为体数据的长和宽;Z连续切片数据的张数,为体数据的高;
[0009] 对体数据进行三维中值滤波:V’=med{f(x-k,y-l,z-j),(k,l,j∈W)}[0010] 其中:f(x,y,z)和V’分别为由L张扫描电镜切片图像构建的原始体数据和经三维中值滤波后的体数据,med表示取中值操作,W为三维滑动模板,k、l、j为二维滑动模板的长、宽、高;
[0011] 步骤2、聚类初始化:设定k个超像素,在经中值滤波后体数据V'内均匀的分配k个大小相近的正六棱柱三维超像素区域,种子点即正六棱柱三维超像素区域的中心,计算相邻种子点间的距离S;在种子点的3×3×3邻域内重新选择种子点,初始化聚类中心C、像素点分配标签l、像素点到聚类中心的距离d;具体过程如下:
[0012] 步骤a、相邻种子点间距离:
[0013] 经中值滤波后体数据V'内共有M×N×L个像素点,在图像内均匀分配k个大小相近的正六棱柱三维超像素区域,每个三维超像素大小为 得到k个正六棱柱,以正六棱柱的中心点为种子点,计算相邻种子点间距离为:
[0014]
[0015] 步骤b、重新选择种子点:以种子点为中心,在3×3×3邻域内计算所有像素点的梯度值,将种子点移到3×3×3邻域内梯度最小的点;
[0016] 步骤c、初始化:
[0017] 初始化聚类中心Ck为[0,0,0,0],像素点分配标签l为-1,像素点到聚类中心的距离d为无穷;
[0018] 步骤3、迭代优化:如果像素到聚类中心的距离小于前值D'<d(i),则更新它的距离、像素点标签d(i)=D,l(i)=k,并用均值更新聚类中心Ck,直到残差小于阈值时,迭代停止;
[0019] 距离度量:取最小值对应的种子点作为该像素点的聚类中心Ck,计算其2S×2S×2S邻域内每个像素到聚类中心的距离D',即灰度距离和空间距离的标准欧式距离;计算每个搜索到的像素点与该种子点的距离公式:
[0020]
[0021] 其中,dg代表灰度距离,ds代表三维空间距离,Ns是聚类内最大三维空间距离,定义为Ns=S,适用于每个聚类,大灰度距离Ng随图片不同而不同;
[0022] 步骤4、清除孤立区域:通过形态学清除迭代优化完成后小的孤立区域,将清除的区域分配到邻近的聚类,区域被重新编号,生成临近矩阵Am;
[0023] 步骤5、超像素聚类:使用DBSCAN聚类算法对超像素进行聚类,输入迭代优化后的像素点标签l,聚类中心Ck,临近矩阵Am,距离阈值E,通过DBSCAN聚类算法对超像素进行聚类,产生新的聚类标签lc,新的聚类中心C;通过新的聚类标签lc即产生了对图像的分割,绘制边缘达到基于三维超像素分割的材料晶粒边缘提取。
[0024] 所述最大灰度距离Ng取值范围1~40。
[0025] 所述最大灰度距离Ng取10。
[0026] 所述距离阈值E取值范围5~10。
[0027] 有益效果
[0028] 本发明提出的一种基于三维超像素分割的材料晶粒边缘提取方法,依据镍合金晶粒图像以凸多边形为主的特点,采用以正六棱柱为初始聚类对镍合金晶粒图像进行超像素分割,并通过超像素聚类得镍合金晶粒边缘提取结果。试验结果表明,本发明在包含大量晶粒、碳化物和噪声的镍合金切片图像中,具有边缘连续性好,轮廓保持性好,提取速度较快的特点。

附图说明

[0029] 图1本发明结构原理图;
[0030] 图2超像素聚类原理图;
[0031] 图3三维超像素分割材料晶粒图像结果
[0032] 图4基于三维超像素分割的镍合金晶粒边缘提取结果

具体实施方式

[0033] 现结合实施例、附图对本发明作进一步描述:
[0034] 用于实施的硬件环境是:英特尔酷睿i3-4160双核3.60G计算机、4.0GB内存、2G显卡,运行的软件环境是:Matlab R2012b,Windows 7。我们用Matlab R2012b软件实现了本发明提出的方法。
[0035] 本发明具体实施如下:
[0036] 步骤1:预处理。读入L张镍合金晶粒连续切片图像,每张切片图像大小为M×N,构建离散体数据V=M×N×L。体数据V由L张灰度空间的镍合金晶粒图构成,所以其体数据取值范围均为[0,255]。
[0037] 构建体数据
[0038] V=[X,Y,Z]
[0039] 其中X,Y表示连续切片图像的大小,即体数据的长和宽;Z表示读入连续切片数据的张数,即体数据的高。
[0040] 对图像进行滤波模板为3×3×3的中值滤波
[0041] V'=med{f(x-k,y-l,z-j),(k,l,j∈W)}
[0042] 其中f(x,y,z)和V'分别为由L张扫描电镜切片图像构建的原始体数据和经三维中值滤波后的体数据,med表示取中值操作,在体数据中使用滤波模板W为3×3×3的中值滤波,该中值滤波有效的去除了孤立噪点,并保持了图像的的边缘特性。
[0043] 步骤2:聚类初始化。镍合金材料晶粒切片的形状多为凸多边形,为更好的在三维空间拟合晶粒边缘,预设初始三维超像素区域的形状为正六棱柱。按照预设的超像素个数k,在离散体数据V'内均匀的分配k个大小相近的正六棱柱三维超像素区域,种子点即正六棱柱三维超像素区域的中心,计算得出相邻种子点间的距离S。S的计算方法如下:
[0044] 体数据V内共有M×N×L=I个像素点,在图像内均匀分配k个相同尺寸的三维超像素,每个三维超像素大小为 正六棱柱边长为a,依据正六棱柱几何知识,计算相邻种子点间距离为:
[0045]
[0046] 在种子点的3×3×3邻域内重新选择新的种子点,为了避免种子点落在梯度较大的
[0047] 轮廓边界上,影响后续聚类。在3×3×3邻域内计算所有像素点的梯度值,将种子点移
[0048] 到3×3×3邻域内梯度最小的点。各像素的梯度计算方式如下:
[0049]
[0050] (c)初始化聚类中心C、像素点分配标签l、像素点到聚类中心的距离d。具体描述[0051] 如下:初始化
[0052]
[0053] 初始化聚类中心Ck为[0,0,0,0,0],像素点分配标签l为-1,像素点到聚类中心的距离d为无穷。
[0054] 步骤3:迭代优化。对于聚类中心Ck,计算其2S×2S邻域内每个像素到聚类中心的距离D',如果D'<d(i),则d(i)=D,l(i)=k,并用均值更新聚类中心Ck,直到残差小于阈值时,迭代停止。
[0055] 每个像素点都会被多个种子点搜索到,所以每个像素点都会有一个与周围种子点的距离,取最小值对应的种子点作为该像素点的聚类中心。包括灰度距离和空间距离。对于每个搜索到的像素点,分别计算它和该种子点的距离。距离计算方法如下:
[0056]
[0057] 其中,dg代表灰度距离,ds代表三维空间距离,Ns是聚类内最大三维空间距离,定义为Ns=S,适用于每个聚类。最大灰度距离Ng随图片不同而不同,故取固定常数(取值范围[1,40],一般取10)。
[0058] 步骤5:清除孤立区域。经过上述迭代优化可能出现以下瑕疵:出现多连通情况、超像素尺寸过小,单个超像素被切割成多个不连续超像素等。这些情况可以通过形态学清除小的孤立区域解决。将清除的区域分配到邻近的聚类,区域被重新编号,生成临近矩阵Am。
[0059] 步骤6:超像素聚类。使用DBSCAN聚类算法对超像素进行聚类,输入迭代优化后的像素点标签l,聚类中心Ck,临近矩阵Am,距离阈值E(取值范围[5,10]),通过DBSCAN聚类算法对超像素进行聚类,产生新的聚类标签lc,新的聚类中心C。通过新的聚类标签lc即产生了对图像的分割,绘制边缘达到基于三维超像素分割的材料晶粒边缘提取。