一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于数字图像处理的表面裂纹精确检测技术

2023-01-15 05:24:36 来源:中国专利 TAG:


1.本发明涉及数字图像处理技术领域,特别涉及一种基于数字图像处理的表面裂纹精确检测技术。


背景技术:

2.在交通建设中,公路路面的平整度与完好率是行车安全中非常重要的指标。路面破损,出现裂纹将会对公路的承重能力以及交通安全造成严重的影响。在建筑业中,房屋外表面由于经受太阳曝晒与雨水侵蚀,往往也会出现表面裂纹。而裂纹的延伸,会对建筑本身的受力情况造成影响,建筑的安全性也会大大降低。工业中,绝缘子暴露于大气中并长期工作在强电场、强机械应力、骤冷骤热等恶劣环境中,容易引发绝缘子断裂。总而言之,对裂纹进行实时监测已成为各个领域的迫切需要,而数字图像处理技术从众多解决办法中脱颖而出,成为一种行之有效的裂纹检测技术。本项发明提出了一种基于数字图像处理的表面裂纹精确检测技术。


技术实现要素:

3.针对现有技术中的上述不足,本发明提供了一种基于数字图像处理的表面裂纹精确检测技术,其设计合理,效果精准,适宜推广。
4.一种基于数字图像处理的表面裂纹精确检测技术,包括裂纹图像采集、图像预处理、阈值分割、图像形态学处理、曲线拟合和实际值转换;步骤如下:
5.s1、裂纹图像采集:采用ccd图像传感器对大理石裂纹进行拍摄;
6.s2、图像预处理:对裂纹图像先进行直方图均衡化,然后采用图像平滑技术对图像进行处理;
7.s21:直方图均衡化:
8.图像的直方图表示的是图像中具有的每个灰度级的像素个数,是一个二维图,横坐标为像素点的灰度级,纵坐标为各灰度级的频率,反映的是它们二者之间的统计关系;其直方图定义为离散函数即为:
9.h(rk)=nkꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
10.其中,rk是图像灰度区间[0,g]内的第k级亮度,nk是灰度级别为rk的图像中的像素;通常归一化直方图,即使用所有元素h(rk)除以图像中的像素总数n:
[0011][0012]
使用直方图均衡化方法来处理图像离散灰度级,令pr(rj),j=1,2,...,l表示图像取各灰度级的概率;对于离散的灰度级采用求和的方式,且均衡变换为:
[0013][0014]
式中k=1,2,...,l,且sk是均衡化处理后图像中的灰度值,它对应于输入图像中的灰度值rk;
[0015]
s22:选取感兴趣区域:
[0016]
使用matlab矩形裁剪函数imcrop裁剪裂纹图像,得到裂纹区域;
[0017]
s23:图像滤波:
[0018]
选取均值滤波器的gauss模板对裂纹图像进行滤波处理;
[0019]
s3、阈值分割:
[0020]
采用基于一维最大熵阈值分割法,其中信息熵的定义如下:
[0021][0022]
其中xi为离散集合{x1,x2,...,xn}某一点,p(xi)表示每个xi出现的概率;xi表示图像灰度,pi表示灰度对应的概率;则满足条件:
[0023]
pi≥0,i=1,2,...,n
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0024][0025]
选取m作为阈值,那么便把原区域划分为两部分区域:目标区域a和背景区域b;则目标区域a和背景区域b的概率分布:
[0026][0027][0028]
其中pm为:
[0029][0030]
所以最后的熵函数由两部分组成:目标区域熵函数和背景区域熵函数,也即:
[0031][0032]
当h(m)取得最大值时,所对应的灰度m就是要求的最佳阈值,即:
[0033][0034]
s4、图像形态学处理:
[0035]
图像形态学变换包括图像的膨胀、腐蚀、开运算和闭运算;图像a被结构元素b膨胀,记作定义为:
[0036][0037]
图像a被结构元素腐蚀,记作aθb,定义为:
[0038][0039]
a被b的形态学开运算可以记作a被b形态学闭运算记为a
·
b;
[0040]
对于阈值分割后的表面裂纹图像,先取它的负片,再使用图像形态学处理方法,先对它进行形态学开运算,选择合适的结构元素将裂纹周围的与裂纹灰度值相近的干扰块进行滤除,再使用形态学闭运算对它进行处理;
[0041]
s5、长度测量:
[0042]
s51、图像细化:
[0043]
经过形态学开、闭运算处理后的大理石表面裂纹图像是一幅二值图像;在此基础上进行裂纹长度像素的统计,先对裂纹图像进行细化操作;采用逐层剥离细化方式,将图像中所有像素点分为骨架点和边缘点,并将这两类点的所有8邻域像素情况统计出来;之后遍历全图,将大理石表面裂纹的边缘点逐次去除,最后将裂纹变为仅有一个像素点宽度的骨架;
[0044]
s52、曲线拟合:
[0045]
经过图像细化处理后的裂纹具有单一像素的宽度,而且裂纹上的点具有一定的方向性,是一个向量;因此裂纹可以由线性方程进行描述,使用曲线拟合的手段计算裂纹的长度像素;
[0046]
使用matlab中的曲线拟合工具对细化裂纹进行曲线拟合,将裂纹分割成几段子裂纹,再分别对裂纹的各段进行曲线拟合操作,使得模拟出来的规则化曲线能够尽量接近原裂纹段,然后根据拟合的曲线方程求得各段裂纹的长度像素,最后进行求和计算;通过曲线拟合手段,求出与子裂纹最为匹配的曲线方程,并由曲线积分计算出各段子裂纹所包含的长度,最后进行求和运算得到全裂纹的长度像素;
[0047]
s6、宽度测量:
[0048]
s61、图像旋转:
[0049]
在形态学处理后的裂纹图像上建立二维坐标系xoy,并找到图像中裂纹的起始坐标(x0,y0)和终点坐标(x1,y1);以裂纹的起始点作为坐标系的原点,连接裂纹原点与终点坐标得到直线l,计算l与坐标轴x 之间的夹角:
[0050][0051]
当直线l的斜率为正时,将裂纹图像顺时针旋转θ角,否则逆时针旋转θ角;
[0052]
s62、统计宽度像素:
[0053]
接下来对旋转后的裂纹图像进行逐列扫描,统计出每列中灰度值为1的像素个数wi,i=1,2,...n,n为裂纹图像中的列数,最后通过求n列宽度像素的平均值得到欲测量的裂纹宽度像素;具体计算过程如下:
[0054][0055]
s6、真实值转换:
[0056]
在拍摄过程中加入一个标准参照物,并求出真实值与单个像素的比值,得到大理石表面裂纹实际的长、宽值。
[0057]
作为优选的,步骤s1采集的大理石表面裂纹图为rgb图,将其转换为对应的灰度
图。
[0058]
作为优选的,步骤s6标准参照物为硬币。
[0059]
本发明的有益效果为:
[0060]
本发明针对大理石块表面裂纹提出了一种普适性的表面裂纹检测方案。通过本方案能较为精确地检测裂纹的位置、长度、宽度等特征。利用本方案对表面裂纹进行实时监测,可以在如交通、电力、建筑和文物保护等多个领域内发挥作用。与其他裂纹检测技术相比,本方案采用数字图像处理技术,不仅能对表面裂纹进行无损检测,而且还具有再现性良好、处理精度较高、检测速度快以及成本低廉等特点,体现出了较大的推广优势。
附图说明
[0061]
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应该被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0062]
图1为本发明表面裂纹精确检测技术的方案流程图;
[0063]
图2为大理石表面裂纹;
[0064]
图3为大理石裂纹灰度图;
[0065]
图4为经过直方图均衡化的裂纹灰度图;
[0066]
图5为原裂纹图像灰度直方图;
[0067]
图6为经过直方图均衡化的裂纹图像灰度直方图;
[0068]
图7为提取的感兴趣的裂纹区域;
[0069]
图8为均值滤波后的裂纹图像;
[0070]
图9为阈值分割后的表面裂纹图像;
[0071]
图10为阈值分割后的表面裂纹图像负片;
[0072]
图11为经过形态学开运算处理后的裂纹图像;
[0073]
图12为使用形态学闭运算再处理的裂纹图像;
[0074]
图13为细化后的裂纹图像;
[0075]
图14为三段式裂纹曲线拟合;
[0076]
图15为旋转后的裂纹二值图像。
具体实施方式
[0077]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
[0078]
一种基于数字图像处理的表面裂纹精确检测技术,其目的在于提取出表面裂纹的长、宽等特征。由于裂纹的长度和宽度两特征的侧重点不同,为了精确统计出它们的数值,需要针对裂纹长、宽特性采取不同的策略方案;包括裂纹图像采集、图像预处理、阈值分割、图像形态学处理、曲线拟合和实际值转换,其中裂纹图像采集模块即为摄像头对大理石表
面裂纹的采集,可选用的图像传感器有cmos图像传感器和ccd 图像传感器。图像预处理步骤完成图像的增强、消噪等工作。阈值分割模块是整个检测算法的关键,这步的处理方案将对裂纹检测算法的精度产生重要影响。图像形态学模块作用主要在于消除裂纹周围可能出现的一些孤立噪声干扰点或干扰块,连接断裂的裂纹段。曲线拟合为表面裂纹长度的测量提供了精确、有效的方案。实际值转换模块是将已测量的长度、宽度像素转换成真实的测量值。具体步骤如下:
[0079]
s1、裂纹图像采集:
[0080]
由于ccd图像传感器相对于cmos图像传感器灵敏度高、噪声低,所以本次检测过程采用ccd图像传感器对大理石裂纹进行拍摄,采集的裂纹图如附图2所示;
[0081]
由于采集的大理石表面裂纹图为rgb图,将其转换为对应的灰度图,以便后续处理,转化后的灰度图像如附图3所示;
[0082]
s2、图像预处理:
[0083]
图像预处理是针对获取的图像本身的缺陷和具体的研究目的而采取的一些图像增强、复原等运算。由于摄像头光源,光线强度和散射方向都不太好调整,加上拍摄过程中设备可能发生振动,会让拍摄到的图像发生一定程度的失真。在本方案中,采取的预处理手段是先对裂纹图像先进行直方图均衡化,然后采用图像平滑技术对图像进行处理。
[0084]
s21:直方图均衡化:
[0085]
图像的直方图表示的是图像中具有的每个灰度级的像素个数,是一个二维图,横坐标为像素点的灰度级,纵坐标为各灰度级的频率,反映的是它们二者之间的统计关系;其直方图定义为离散函数即为:
[0086]
h(rk)=nkꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
[0087]
其中,rk是图像灰度区间[0,g]内的第k级亮度,nk是灰度级别为rk的图像中的像素;通常,会归一化直方图,即使用所有元素h(rk)除以图像中的像素总数n:
[0088][0089]
使用直方图均衡化方法来处理图像离散灰度级,令pr(rj),j=1,2,...,l表示图像取各灰度级的概率;对于离散的灰度级采用求和的方式,且均衡变换为:
[0090][0091]
式中k=1,2,...,l,且sk是均衡化处理后图像中的灰度值,它对应于输入图像中的灰度值rk;
[0092]
经过直方图均衡化的大理石表面裂纹灰度图像如附图4所示。
[0093]
图5、图6分别为均衡化处理前后裂纹图像灰度直方图。显然,使用直方图均衡化方法处理过的裂纹图像将具有最大量的图像灰度信息,更适合人眼识别分辨。
[0094]
s22:选取感兴趣区域:
[0095]
由于我们的最终目的在于提取大理石表面裂纹的特征,故可以先排除一些不相关的干扰因素,即在裂纹图像中提取出检测算法感兴趣的区域。在这里,使用matlab矩形裁剪函数imcrop裁剪裂纹图像,得到附图7显示的裂纹区域(350
×
600)。
[0096]
s23:图像滤波:
[0097]
图像预处理中图像滤波主要分为三种滤波方式:均值滤波、中值滤波和维纳滤波。
[0098]
均值滤波的基本原理是利用滤波模板,计算出被处理图像中选定区域的平均灰度值,然后用此灰度值代替被选区域中所有像素点的灰度值。
[0099]
中值滤波是一种非线性滤波,也是一种典型的低通滤波器。它的基本原理是将滤波模板中心点邻域内的像素按灰度级别进行排序,选取中间值来代替该像素点的灰度值。
[0100]
维纳滤波是一种能够进行自动调节的滤波方法。它对图像产生变异大的地方,进行比较小的平滑,而对图像产生变异小的地方,进行比较大的平滑。
[0101]
考虑到算法的简洁性以及裂纹检测的实时性要求,本发明提出的表面裂纹检测算法选取均值滤波器的 gauss模板对裂纹图像进行滤波处理,处理后的效果如附图8所示,显然裂纹区域变得更为清晰了。
[0102]
s3、阈值分割:
[0103]
在进行裂纹图像预处理后,我们希望进一步将裂纹与大理石背景区分开来,即将表面裂纹从图像中分割出来。
[0104]
所谓图像分割是将图像分解成若干个各具特性的区域,并从其中提取有意义的目标区域或者特征。分割后的各个子区域是一个像素连通集合,这些像素在某种意义下具有相同性质。而实现图像分割一般有聚类(区域法)和边界法等两种途径。本发明选用的是边界法,其中阈值分割是较为常用的边界法之一,而如何选择最为合适的阈值显然是阈值分割算法的核心。
[0105]
基于灰度直方图的阈值分割法需要在图像的灰度直方图上进行直接观察,如果直方图呈现明显的双峰状,则选择谷底灰度值作为分割的阈值。最大类间方差阈值分割法也叫做大津法,其思想是选择合适的阈值使得分割后目标和背景之间的方差达到最大值。迭代式阈值分割法即为首先选择某一个阈值作为初始值,通过某种策略进行不断的迭代,直到满足给定的准则为止。而基于最大熵值阈值分割方法目的在于最大化图像灰度的熵值来尽可能保持图像分割后目标与背景的信息量。信息熵的定义如下:
[0106][0107]
其中xi为离散集合{x1,x2,...,xn}某一点,p(xi)表示每个xi出现的概率;对应于本次检测算法,xi表示图像灰度,pi表示灰度对应的概率;则满足条件:
[0108]
pi≥0,i=1,2,...,n
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0109][0110]
选取m作为阈值,那么便把原区域划分为两部分区域:目标区域a和背景区域b;则目标区域a和背景区域b的概率分布:
[0111][0112][0113]
其中pm为:
[0114][0115]
所以最后的熵函数由两部分组成:目标区域熵函数和背景区域熵函数,也即:
[0116][0117]
当h(m)取得最大值时,所对应的灰度m就是要求的最佳阈值,即:
[0118][0119]
回到大理石表面裂纹图像,由于灰度直方图并不呈现双峰状,我们先排除基于灰度直方图的阈值分割方法,通过比较后三种阈值分割方法,我们采用基于一维最大熵阈值分割法。大理石表面裂纹图像经过阈值分割后的效果如附图9所示:
[0120]
s4、图像形态学处理:
[0121]
经过阈值分割处理后,裂纹图像很少能形成裂纹检测所需要的完全闭合而且连通的裂纹边缘的理想状态,并且在裂纹周围可能出现一些孤立的噪声干扰点或干扰块,这就需要用到形态学的方法对图像进行处理。
[0122]
图像形态学是一种数学方法,使用代数几何的方法来定量描述几何形状和结构的。图像形态学变换主要包括图像的膨胀、腐蚀、开运算和闭运算等。
[0123]
膨胀是在二值图像中“加长”或“变粗”的操作,这种特殊的方式和变粗的程度由一个称为结构元素的集合控制,比如说,图像a被结构元素b膨胀,记作定义为:
[0124][0125]
腐蚀运算能“收缩”或“细化”二值图像中的对象。像在膨胀中一样,收缩的方式和程度也由一个结构元素控制,图像a被结构元素腐蚀,记作aθb,定义为:
[0126][0127]
在图像的实际应用中,我们更多地以各种组合的形式来使用膨胀和腐蚀,即开运算和闭运算,a被b 的形态学开运算可以记作这种运算是a被b腐蚀后再用b来膨胀腐蚀的结果,a被b形态学闭运算记为a
·
b,它恰恰是先膨胀再腐蚀的结果;
[0128]
形态学开运算完全删除了不能包含结构元素的对象区域,平滑了对象的轮廓,断开了狭窄的连接,去掉了细小的突出部分。而对于形态学闭运算,它像开运算一样会平滑对象的轮廓,然而,它与开运算不同的是,闭运算一般会将狭窄的缺口连接起来形成细长的弯口,并填充比结构元素小的孔洞。
[0129]
对于阈值分割后的表面裂纹图像,先取它的负片,如附图10所示,再使用图像形态学处理方法,先对它进行形态学开运算,选择合适的结构元素将裂纹周围的与裂纹灰度值相近的干扰块进行滤除,其处理效果如图11所示,观测经过开运算处理后的裂纹图像,发现裂纹并不连续并且裂纹没有完全被填充,此时我们再使用形态学闭运算对它进行处理,最
终的图像形态学处理效果图如图12所;
[0130]
s5、长度测量:
[0131]
s51、图像细化:
[0132]
经过形态学开、闭运算处理后的大理石表面裂纹图像是一幅二值图像;在此基础上进行裂纹长度像素的统计,先对裂纹图像进行细化操作;采用逐层剥离细化方式,将图像中所有像素点分为骨架点和边缘点,并将这两类点的所有8邻域像素情况统计出来;之后遍历全图,将大理石表面裂纹的边缘点逐次去除,最后将裂纹变为仅有一个像素点宽度的骨架;
[0133]
图像细化是图像分析和模式识别中的一个重要操作,经过细化处理后得到的图像特征更为明显且保持了图像细小部分的连通性,为后续的图像处理和分析提供了一种紧凑而有效的表示形式,并减少了后续处理所需的时间和空间。
[0134]
回到裂纹检测中,经过形态学开、闭运算处理后的大理石表面裂纹图像是一幅二值图像。如果在此基础上要进行裂纹长度像素的统计,我们需要先对裂纹图像进行细化操作。采用逐层剥离细化方式,将图像中所有像素点分为骨架点和边缘点,并将这两类点的所有8邻域像素情况事先统计出来。之后遍历全图,将大理石表面裂纹的边缘点逐次去除,最后将裂纹变为仅有一个像素点宽度的骨架,具体效果如图13所示。
[0135]
s52、曲线拟合:
[0136]
经过图像细化处理后的裂纹具有单一像素的宽度,而且裂纹上的点具有一定的方向性,是一个向量。因此裂纹可以由线性方程进行描述,可以使用曲线拟合的手段计算裂纹的长度像素。
[0137]
曲线拟合是用连续曲线近似地比拟图像中的目标的形状,并建立其函数关系的信息近似表示的方法。拟合曲线的求解方法有很多,对于线性模型是通过建立和求解方程组来确定参数,从而求得拟合曲线。对于非线性模型,则需要求解非线性方程组或用参数最优化方法得到拟合曲线的方程参数,而最常用的非线性目标的拟合方法当属最小二乘拟合法。
[0138]
使用matlab中的曲线拟合工具对细化裂纹进行曲线拟合,为了提高曲线拟合的精确度,将裂纹分割成几段子裂纹(本次裂缝测量分割成三段),再分别对裂纹的各段进行曲线拟合操作,使得模拟出来的规则化曲线能够尽量接近原裂纹段,然后根据拟合的曲线方程求得各段裂纹的长度像素,最后进行求和计算;最终曲线拟合效果如图14所示,表1列出三段拟合曲线方程。
[0139]
表1.拟合曲线方程
[0140][0141]
通过曲线拟合手段,求出与子裂纹最为匹配的曲线方程,并由曲线积分计算出各
段子裂纹所包含的长度,最后进行求和运算,得到全裂纹的长度像素;
[0142]
s6、宽度测量:
[0143]
裂纹宽度测量不同于长度测量需要进行图像细化、曲线拟合等繁琐的处理操作,它只在形态学处理后的阈值分割图像上进行裂纹像素的统计工作。不过由于图像中裂纹并不是水平延伸,为精确测量裂纹宽度,我们需要先对裂纹图像进行旋转。
[0144]
s61、图像旋转:
[0145]
在形态学处理后的裂纹图像上建立二维坐标系xoy,并找到图像中裂纹的起始坐标(x0,y0)和终点坐标(x1,y1);以裂纹的起始点作为坐标系的原点,连接裂纹原点与终点坐标得到直线l,计算l与坐标轴x 之间的夹角:
[0146][0147]
当直线l的斜率为正时,将裂纹图像顺时针旋转θ角,否则逆时针旋转θ角;
[0148]
s62、统计宽度像素:
[0149]
接下来对旋转后的裂纹图像进行逐列扫描,统计出每列中灰度值为1的像素个数wi,i=1,2,...n,n为裂纹图像中的列数,最后通过求n列宽度像素的平均值得到欲测量的裂纹宽度像素;具体计算过程如下:
[0150][0151]
s6、真实值转换:
[0152]
由于ccd图像传感器所拍摄的图像具有固定的分辨率,而且数字图像处理技术能够良好的保持原图像的再现。因此我们可以基于此基础上,在拍摄过程中加入一个标准参照物(比如说硬币),并求出真实值(mm)与单个像素的比值。在本次测量中,我们标定结果比例系数为0.24,得到大理石表面裂纹实际的长、宽值如表2所示。
[0153]
表2.参数值
[0154][0155]
总结:
[0156]
数字图像处理技术相对其他的裂纹检测技术具有无可比拟的优势,它不仅能对表面裂纹进行无损检测,而且具有以下几个特点:
[0157]
(1)再现性较好。数字图像处理不会因图像数据的存储、传输或者复制等变换操作而导致图像退化。
[0158]
(2)处理精度较高,处理信息量较大。
[0159]
(3)检测速度快,容易实现实时自动检测。由于处理器的快速发展,数字图像处理算法所消耗的时间也越来越短,因此很容易实现实时检测。
[0160]
(4)成本低廉。随着家用计算机以及摄像头在日常生活中的普及,因此只需要很小的代价就可以组建一套高性能的数字图像处理系统。
[0161]
本发明针对大理石块表面裂纹提出了一种普适性的表面裂纹检测方案。通过本方案能较为精确地检测裂纹的位置、长度、宽度等特征。利用本方案对表面裂纹进行实时监测,可以在如交通、电力、建筑和文物保护等多个领域内发挥作用。与其他裂纹检测技术相比,本方案采用数字图像处理技术,不仅能对表面裂纹进行无损检测,而且还具有再现性良好、处理精度较高、检测速度快以及成本低廉等特点,体现出了较大的推广优势。
[0162]
以上描述仅是本发明的实施例,不构成对本发明的任何限制,显然对于本领域的专业人员来说,在了解了本发明内容和原理后,都可能在不背离本发明原理的情况下,进行形式和细节上的各种修正和改变,但是这些基于本发明思想的修正和改变仍在本发明的权利要求的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献