基于多尺度Hessian矩阵滤波的陶瓷瓦表面裂纹检测方法 下载: 1132次
1 引言
陶瓷瓦表面缺陷检测是陶瓷质量检测的重要组成部分。由于生产工艺、生产环境和生产设备的限制,陶瓷瓦产品可能产生裂纹、缺釉、鼓包、色差、缺角等表面缺陷[1-3]。目前,陶瓷瓦表面缺陷的检测仍采用传统的人工检测方法。人工检测存在劳动强度大、检测速度慢、主观性强、漏检率高等问题[4],严重影响了生产效率和产品品质。因此,实现陶瓷瓦表面缺陷的自动检测对陶瓷瓦行业转型升级至关重要,也是工业自动化的发展趋势。
裂纹是陶瓷瓦表面出现频率最高的缺陷。陶瓷瓦表面裂纹形态各异、长度不一、出现位置不固定,对其进行的自动化检测有较大难度。近几年来,基于机器视觉[5-7]的表面裂纹检测方法在钢管、油管、道路等方面的到广泛的应用。例如,张建军等[8]应用一种改进Sobel算子对钢管表面裂纹进行了检测。宋志强等[9]利用小波变换分析了裂纹缺陷不同参数对输油管道漏磁检测的影响。王德方等[10]采用K-Means聚类算法与区域生长法结合的道路裂纹检测方法。李小磊等[11]采用滑动滤波和自动区域生长法对陶瓷瓦裂纹进行检测,该方法对瓦头区裂纹的检测较为准确,但对纹理区裂纹检出率不高且其检测速度慢。以上算法对于背景平滑、色彩单一的裂纹检测效果良好,然而对有纹理干扰、表面高低起伏的陶瓷瓦表面裂纹检测较为困难。
多尺度Hessian矩阵滤波方法是指通过融合目标多个尺度细节特征的方式,实现对目标区域的图像增强。在不知道检测目标尺寸的情况下,进行多尺度滤波融合的方式获取物体的各个尺度的特征[12]。多尺度滤波法已广泛用于缺陷检测、图像分割、边缘提取等领域。例如,王世芳等[13]提出一种基于多尺度脊边缘滤波的沥青路面裂缝检测方法,提高了沥青路面裂缝检测的精度;王浩军等[14]采用自适应多尺度滤波的阈值分割方法,实现了血液细胞图像的自动分割,加快了血液细胞图像分割的速度;李颖超等[15]利用Hessian矩阵提取图像中血管特征,然后根据Gabor滤波器的方向响应特性利用跟踪策略对细化后的血管图像进行校正,得到血管中心线。
陶瓷瓦表面为立体的形态结构且存在大量的花纹,这将导致陶瓷瓦表面光照不均匀,且对缺陷检测造成许多干扰。多尺度Hessian矩阵滤波方法可以有效排除纹理等噪声的干扰,且受光照影响小、计算速度快。为此,本文提出了一种多尺度Hessian矩阵滤波的陶瓷瓦表面裂纹检测算法。首先,为了有效增强陶瓷瓦表面裂纹特征,同时抑制背景,采用不同尺度滤波;然后,利用多尺度Hessian矩阵分析,构建陶瓷瓦裂纹相似性函数,得到陶瓷瓦表面裂纹特征的增强图像;最后,为了准确提取裂纹参数信息,采用二值化和形态学处理相结合的方式提取裂纹。实验结果表明,本文算法具有良好的检测性能,能有效地提高检测准确性和检测效率。
2 陶瓷瓦表面裂纹特征
典型的陶瓷瓦裂纹图像如
图 1. 陶瓷瓦图像。(a)典型陶瓷瓦裂纹样品图像;(b)典型陶瓷瓦表面灰度分布3D图
Fig. 1. Image of ceramic tile.(a) Typical ceramic tile crack image; (b) 3D image of surface gray distribution of a typical ceramic tile
3 多尺度Hessian矩阵滤波陶瓷裂纹检测
多尺度Hessian矩阵滤波的陶瓷瓦表面裂纹检测方法分为图像预处理、多尺度Hessian矩阵滤波裂纹检测和提取裂纹参数三部分,如
图 2. 多尺度Hessian矩阵滤波陶瓷瓦表面裂纹检测流程
Fig. 2. Multi-scale Hessian matrix filtering ceramic tile surface crack detection process
3.1 带通滤波去背景
陶瓷瓦裂纹图像由不同尺度的花纹、裂纹、不均匀背景等结构组成。当观察尺度不同时,不同的结构会呈现出不一样的形态。本文选取陶瓷瓦图像的适当尺度范围,突显陶瓷瓦裂纹信息,同时抑制噪声和花纹背景干扰。
对于二维输入图像灰度矩阵I,其高斯尺度空间
式中:I(x,y)表示图像在像素位置坐标(x,y)处的灰度值; σ表示高斯函数G(x,y;σ)的标准差,即空间尺度因子,通过改变σ的大小,实现对不同尺度裂纹的检测。
图 3. 图像多尺度滤波处理。(a)裂纹区域原图像Iσ(σ=0);(b)空间尺度图像Iσ(σ=1);(c)空间尺度图像Iσ(σ=5);(d)空间尺度图像Iσ(σ=10);(e)空间尺度图像Iσ(σ=15);(f)空间尺度范围图像Iσ(σ=1)~Iσ(σ=15)
Fig. 3. Image multi-scale filtering. (a) Original image of crack area Iσ(σ=0); (b) spatial scale image Iσ(σ=1); (c) spatial scale image Iσ(σ=5); (d) spatial scale image Iσ(σ=10); (e) spatial scale image Iσ(σ=15); (f) spatial scale range image Iσ(σ=1)~Iσ(σ=15)
3.2 多尺度Hessian矩阵滤波
Hessian矩阵通过二阶导数描述图像中每个像素点的局部灰度梯度变化,从而进一步增强陶瓷瓦图像中的线状裂纹区域。对于二维输入图像I,在(x,y)像素点处的Hessian矩阵[16]表示为
式中:图像在像素点(x,y)出的二阶导数为Ixx、Ixy、Iyx、Iyy。二阶导数可以由图像与高斯函数卷积获得,例如在像素点(x,y)处:
(3)式中的Hessian矩阵可以由两个特征值λ1和λ2(|λ1|≥|λ2|)以及对应的特征向量[17-18]表示。若在像素点(x,y)附近区域的结构为线状结构,则|λ1|≫|λ2|≈0。对于陶瓷瓦图像,可以定义裂纹相似函数[17]为
式中:δ、α用于控制K1与K2之间的权值,一般取δ=0.5,图像灰度范围决定了α的取值,一般为Hessian矩阵最大范数的1/2;气泡状结构与线状结构根据K1区分,当像素的局部结构为线状结构时,K1=0;K2用来表示目标与背景间的对比度,K2越大,对比度越大。uσ(x,y)∈(0.1),当像素点(x,y)为线状结构时,uσ(x,y)取值很大,为气泡状结构时,uσ(x,y)≈0。
高斯函数的尺度空间因子σ与裂纹宽度相似时,滤波器uσ(x,y)的响应最大[19],计算不同σ下裂纹相似函数值,取响应最大值作为最终裂纹增强图像输出,
式中:σmax与σmin是尺度的最大值与最小值,它们的取值覆盖所有裂纹宽度即可,通过实验设定尺度因子σ的范围为[1,15],步长为2。多尺度Hessian矩阵滤波后得到裂纹增强图像,如
图 4. 裂纹区域缺陷检测结果。(a) Hessian裂纹增强图像; (b)裂纹二值化图像
Fig. 4. Test results of crack area defect. (a) Hessian crack enhancement image; (b) crack binarization image
采用二值化方法可确定检测裂纹缺陷的阈值范围。二值化操作按如下公式进行[20]
式中:c为检测阈值的控制因子;μ和θ分别表示裂纹图像灰度值的均值和方差。将图像中灰度值在两个阈值μ-c·θ、μ+c·θ之间视为背景纹理等噪声,并且将该位置的灰度值变为0,相反,则被认为是裂纹信息并将该位置的灰度值变为1。为了达到检测出裂纹缺陷的目标,当采用二值化后,再通过形态学处理[11],去除干扰点。
4 实验结果与分析
为了验证本文算法实际应用效果,搭建了一套基于机器视觉的陶瓷瓦表面检测系统,该系统由工业相机、LED照明系统、光电开关、工控机组成。工业相机的分辨率为2048 pixel×2448 pixel,焦距为12 mm。照明系统采用LED漫反射式照明,照明均匀度达到85%以上。使用光电开关实现陶瓷瓦图像样本进行自动采集。工控机(Intel(R) Core(TM)i7 -6700K CPU@4.00 GHz、32 GB内存、64位Windows7操作系统)接收到相机传过来的陶瓷瓦图像后立即采用裂纹检测软件对其进行裂纹检测,最后通过工控机输出裂纹信息。陶瓷瓦裂纹检测主要流程如
图 5. 陶瓷瓦裂纹检测过程。(a)陶瓷瓦红色通道图像;(b)空间尺度范围图像Iσ(σ=1)~Iσ(σ=15);(c) Hessian裂纹增强图像;(d)裂纹检测结果
Fig. 5. Detection process of ceramic tile crack. (a) Red channel image of ceramic tile; (b) spatial scale range image Iσ(σ=1)~Iσ(σ=15); (c) Hessian crack enhancement image; (d) result of crack detection
为了验证本文算法的有效性,采用文献[
8]方法、文献[
9]方法、文献[
11]方法、文献[
21]方法、文献[
22]方法和本文算法进行比较。文献[
8]方法通过中值滤波与Sobel算子边缘检测相结合的方法检测裂纹。文献[
9]方法使用小波变换法对预处理的图像做二层小波分解,接着利用形态学处理低频成分,通过差影法提取裂纹,然后对小波变换其他分量图像做滤波,最后通过小波重构,提取裂纹。文献[
11]方法采用自动区域生长法,连接预处理图像二值化后断裂的裂纹,得到较为完整的裂纹,最后利用连通域提取裂纹信息。文献[
21]方法首先使用光照一致化与自适应灰度拉伸的方法排除图像中光照以及噪声的干扰,再使用分区大津(OTSU)法、阈值分割等处理得到裂纹二值化图像。文献[
22]方法通过Gamma校正图像灰度值进行非线性变换,再使用改进中值滤波、阈值分割的方法提取裂纹。裂纹检测效果如
表 1. 6种算法检测检出率
Table 1. Accuracy of detection by six algorithms
|
图 6. 不同算法检测结果。(a)陶瓷瓦红色通道图像;(b) 文献[ 8]方法;(c)文献[ 9]方法;(d)文献[ 11]方法;(e)文献[ 21]方法;(f)文献[ 22]方法;(g)本文方法
Fig. 6. Test results of different algorithms. (a) Red channel image of ceramic tile; (b) method of Ref. [8]; (c) method of Ref. [9]; (d) method of Ref. [11]; (e) method of Ref. [21]; (f) method of Ref. [22]; (e) proposed method
为了验证本文算法的通用性,选取100个陶瓷瓦样本进行了测试并与文献[
8]方法、文献[
9]方法、文献[
11]方法、文献[
21]方法、文献[
22]方法进行对比,各算法的检测结果如
测试时的检测标准如下:1)根据陶瓷瓦工厂裂纹检测标准,设定裂纹长度阈值、裂纹面积阈值、长宽比阈值,如果大于该阈值,则可判定为裂纹。2)主裂纹附近的细小裂纹视为主裂纹的一部分。为此,继续设定距离阈值。若相邻的裂纹间隔小于该距离阈值,则视为同一条裂纹,反之亦然。裂纹检测准确与否的判据为:裂纹数目检测正确,且裂纹长度检测误差不超过20%。
5 结论
提出了一种陶瓷瓦表面裂纹检测的新方法。该方法使用机器视觉与数字图像处理技术相结合的手段,采用多尺度Hessian矩阵滤波的方法,实现对陶瓷瓦表面裂纹特征的增强以及裂纹与背景进行分离。实验结果表明,该算法的准确率高达95%,每张陶瓷瓦的检测时间约为3 s,实现了在光照不均和立体结构纹理干扰下裂纹与背景的有效分离,大大提高了陶瓷瓦表面裂纹检测的效率。与其他裂纹检测算法比较,本文算法可以对不同形状特征、尺寸和位置的裂缝目标进行有效检测,具有较高的检测精度和较好的检测效果,同时抗噪性能好、普适性强、计算速度较快,可为陶瓷瓦行业实现表面缺陷的自动检测提供一些参考。
[1] 苏彩红, 朱学峰, 刘笛. 基于共生矩阵和颜色特征的墙地砖缺陷自动检测的研究[J]. 计算机工程与应用, 2004, 40(11): 229-231.
Su C H, Zhu X F, Liu D. Automatic visual inspection on the defects of ceramic tiles using the co-occurrence matrix and color features[J]. Computer Engineering and Applications, 2004, 40(11): 229-231.
[2] 王永强. 基于机器视觉技术的卫生陶瓷缺釉检测研究[J]. 中国陶瓷, 2014, 50(11): 53-56.
Wang Y Q. Study on sanitary ceramics missed glaze detection based on grey computer vision[J]. China Ceramics, 2014, 50(11): 53-56.
[3] 李庆利, 王永强, 张帆. 陶瓷砖表面缺陷视觉检测算法研究[J]. 中国陶瓷, 2015, 51(3): 44-47.
Li Q L, Wang Y Q, Zhang F. The study on visual inspection algorithm of ceramic tiles for defects detection[J]. China Ceramics, 2015, 51(3): 44-47.
[4] 谢永, 章义来, 黄华. 墙地砖表面缺陷自动检测集成系统的研究[J]. 中国陶瓷, 2008, 44(4): 56-58.
Xie Y, Zhang Y L, Huang H. Research onintegrated and automatic system for ceramic tiles'surface-defect detection[J]. China Ceramics, 2008, 44(4): 56-58.
[5] 李良福, 孙瑞赟. 复杂背景下基于图像处理的桥梁裂缝检测算法[J]. 激光与光电子学进展, 2019, 56(6): 061002.
[6] 马国栋, 王延深, 史小田, 等. 激光焊接头焊缝自动检测及跟踪研究[J]. 激光与光电子学进展, 2018, 55(11): 111508.
[7] 王清晨, 景军锋, 张蕾, 等. 基于最优Gabor滤波器的牛仔布缺陷检测[J]. 激光与光电子学进展, 2018, 55(7): 071501.
[8] 张建军, 罗静. 基于改进Sobel算子的表面裂纹边缘检测算法[J]. 合肥工业大学学报(自然科学版), 2011, 34(6): 845-847, 960.
Zhang JJ, Luo J. A surface crack edge detection algorithm based on improved Sobel operator[J]. Journal of Hefei University of Technology(Natural Science), 2011, 34(6): 845-847, 960.
[9] 宋志强, 李著信, 张镇, 等. 基于连续小波变换的输油管道裂纹缺陷漏磁检测研究[J]. 化工自动化及仪表, 2010, 37(7): 35-39.
Song Z Q, Li Z X, Zhang Z, et al. Research on MFL testing of oil pipeline crack flaw detection based on continuous wavelet transform[J]. Control and Instruments in Chemical Industry, 2010, 37(7): 35-39.
[10] 王德方, 曾卫明, 王倪传. 基于改进K-means算法的不均匀光照下道路裂缝检测[J]. 计算机应用与软件, 2015, 32(7): 244-247, 300.
Wang D F, Zeng W M, Wang N Z. Road crack detection under uneven illumination using improved K-means algorithm[J]. Computer Applications and Software, 2015, 32(7): 244-247, 300.
[11] 李小磊, 曾曙光, 郑胜, 等. 基于滑动滤波和自动区域生长的陶瓷瓦表面裂纹检测[J]. 激光与光电子学进展, 2019, 56(21): 211003.
[12] 姜昊. 基于图像滤波器的多尺度图像分解[D]. 上海: 复旦大学, 2012.
JiangH. Multiscale image decomposition based on image filter[D]. Shanghai: Fudan University, 2012.
[13] 王世芳, 车艳丽, 李楠, 等. 一种基于多尺度脊边缘的沥青路面裂缝检测算法[J]. 中国公路学报, 2017, 30(4): 32-41.
Wang S F, Che Y L, Li N, et al. Asphalt pavement crack detection algorithm based on multi-scale ridges[J]. China Journal of Highway and Transport, 2017, 30(4): 32-41.
[14] 王浩军, 郑崇勋, 闫相国. 基于自适应多尺度的血液细胞图像阈值分割方法研究[J]. 西安交通大学学报, 2001, 35(4): 390-397.
Wang H J, Zheng C X, Yan X G. Study on image segmentation for blood cells based on an adaptive and multi-scale thresholding approach[J]. Journal of Xi'an Jiaotong University, 2001, 35(4): 390-397.
[15] 李颖超, 刘越, 王涌天. 基于多尺度Hessian矩阵和Gabor滤波的造影图像冠脉中心线提取[J]. 中国医学影像技术, 2007, 23(1): 133-136.
Li Y C, Liu Y, Wang Y T. Algorithm for centerline extraction of coronary arterial tree in coronary angiographic projections based on Hessian matrix and Gabor filter[J]. Chinese Journal of Medical Imaging Technology, 2007, 23(1): 133-136.
[16] Lindeberg T. Scale-space theory: a basic tool for analyzing structures at different scales[J]. Journal of Applied Statistics, 1994, 21(1/2): 225-270.
[17] Frangi AF, Niessen WJ, Vincken KL, et al. Multiscale vessel enhancement filtering[C]∥International Conference on Medical Image Computing and Computer-Assisted Intervention. Springer, Berlin, Heidelberg, 1998: 130- 137.
[18] Su R, Sun C M, Pham T D. Junction detection for linear structures based on Hessian, correlation and shape information[J]. Pattern Recognition, 2012, 45(10): 3695-3706.
[19] LindebergT. Scale selection for differential operators[M] ∥Scale-Space Theory in Computer Vision. Boston, MA: Springer US, 1994: 317- 348.
[20] 郭永彩, 邓细凤, 高潮. 基于主成分分析的表面缺陷自动检测算法[J]. 计算机工程, 2013, 39(2): 216-219, 224.
Guo Y C, Deng X F, Gao C. Surface defect automatic detection algorithm based on principal component analysis[J]. Computer Engineering, 2013, 39(2): 216-219, 224.
[21] 薛倩, 罗其俊, 王岳. 基于图像分析的飞机蒙皮裂纹检测[J]. 计算机应用, 2019, 39(7): 2116-2120.
Xue Q, Luo Q J, Wang Y. Crack detection for aircraft skin based on image analysis[J]. Journal of Computer Applications, 2019, 39(7): 2116-2120.
[22] 邵闯, 王生怀, 徐风华, 等. 基于图像处理的混凝土表面裂缝检测研究[J]. 湖北汽车工业学院学报, 2019, 33(2): 47-50, 59.
Shao C, Wang S H, Xu F H, et al. Research on concrete surface crack detection based on image processing[J]. Journal of Hubei University of Automotive Technology, 2019, 33(2): 47-50, 59.
周飘, 李强, 曾曙光, 郑胜, 肖焱山, 张绍伟, 李小磊. 基于多尺度Hessian矩阵滤波的陶瓷瓦表面裂纹检测方法[J]. 激光与光电子学进展, 2020, 57(10): 101022. Piao Zhou, Qiang Li, Shuguang Zeng, Sheng Zheng, Yanshan Xiao, Shaowei Zhang, Xiaolei Li. Surface Crack Detection Method for Ceramic Tile Based on Hessian Matrix Multi-Scale Filtering[J]. Laser & Optoelectronics Progress, 2020, 57(10): 101022.