纹理边界引导的复合材料圆孔检测方法
Detection method for composite hole guided by texture boundary
通讯作者:
收稿日期: 2019-10-29
Received: 2019-10-29
作者简介 About authors
张太恒(1994—),男,硕士生,从事图像处理、机器视觉等研究.orcid.org/0000-0001-5169-0310.E-mail:
针对复合材料纹理背景下圆形基准孔检测困难的问题,提出一种纹理边界引导的圆孔检测方法.该方法将局部三进制模式(LTP)与灰度共生矩阵(GLCM)对比度融合为纹理对比度,通过提取纹理对比度特征实现孔内纹理和孔外纹理的快速分割,得到与圆孔边界近似吻合的纹理边界,利用纹理边界的位置信息去除绝大多数非圆孔边界的边缘点,利用纹理边界的连通信息对剩余边缘点进行分组,使用内嵌圆参数统计机制的随机圆检测算法从每组边缘点各检出1个圆孔目标,进而完成对多个圆孔目标的检测.实验结果表明,在复合材料圆孔检测场景中该方法有94%以上检出率,3%以下检错率和较高的检测速度,并表现出良好的检测鲁棒性.
关键词:
A novel hole detection method guided by texture boundary was proposed, aiming to solve the detection problem of composite circular reference holes. The texture contrast based on local ternary pattern (LTP) and gray-level co-occurrence matrix (GLCM) was extracted first to perform the fast segmentation of intra-hole texture and out-of-hole texture, which could obtain the texture boundaries closely matching the hole boundaries. Then, the position information of texture boundaries was used to remove most of the edge points that belong to non-hole boundaries. The connectivity information of texture boundaries was used to group the remaining edge points. Finally, the randomized circle detection method with circle-parameter statistics mechanism was applied to detect a single circle from each group of edge points, which completed the detection of multiple hole targets. Experimental results showed that this method had a detection rate of more than 94%, an error rate of less than 3%, a high detection speed and good detection robustness in the composite hole detection scene.
Keywords:
本文引用格式
张太恒, 梅标, 乔磊, 杨浩杰, 朱伟东.
ZHANG Tai-heng, MEI Biao, QIAO Lei, YANG Hao-jie, ZHU Wei-dong.
基准孔检测问题可以归类为圆检测问题.圆检测是模式识别领域和计算机视觉领域的重要研究内容,在瞳孔虹膜识别[4]、交通标志识别[5]、细胞检测[6]、视觉跟踪[7]、行人识别[8]等方面有着广泛应用.常用的圆检测方法可分为2种:基于霍夫变换及其改进算法[9-10]的圆检测方法和基于边缘聚类的圆检测方法.霍夫圆变换(circle Hough transform, CHT)[11]是第一个将霍夫变换应用于圆检测的算法,具有抗干扰、对形状残缺鲁棒等优点,但需要较高的计算代价和存储代价.Chen等[12]提出的随机圆检测方法(randomized circle detection, RCD)通过边缘点随机抽样计算得到候选圆,再通过距离判据和投票规则判定候选圆是否有效,具备与霍夫圆变换相似的优点,但计算量和存储消耗量更小. Akinlar等[13]提出的EDCircles是一种自下而上进行边缘聚类的圆检测方法,先将图像边缘连接为圆弧,再将符合条件的圆弧聚类成圆,有效果优异、无须调参和实时检测的特点.
以上2类圆检测方法都难以解决复合材料圆孔检测问题.复合材料纹理会产生数量庞大且和圆孔边缘混杂在一起的边缘点噪声.这些噪声会对圆检测的采样统计过程和边缘聚合过程产生很强的干扰.同时,由于刀具挤压、毛刺等的影响,圆孔边界处会出现模糊和变形,增加了复合材料圆孔的检测难度.现有的圆检测算法不能排除纹理边缘点噪声的干扰,对模糊变形圆孔的检测不够鲁棒,难以实现对复合材料圆孔的快速有效检测.
1. 纹理边界
1.1. 纹理量化
图 1
给定一个中心像素(xc, yc),其LBP值计算公式为
式中:sn为中心像素8个邻域位置的纹理信息编码,编码规则为
式中:gc为中心像素灰度,gn为中心像素相应邻域位置像素灰度.
LBP方法最终产生256个数值,以此代表256种纹理信息,可以简单有效地对纹理信息进行量化,但其过于苛刻的量化方式和对噪声的敏感会加剧图像中的纹理噪声,对孔内外纹理区分度的提升不明显,不利于后续的纹理分割步骤.
式中:F为编码阈值.
LBP和LTP数值本身只能用作序号参与统计,并不具备运算意义,其数值之间的差异程度并不能代表相对应纹理之间的差异程度.例如,第1号纹理(LBP值为1)与第128号纹理(LBP值为128)的LBP值不同可代表两者不是一种纹理,但其LBP值之间的差值并不能准确衡量两种纹理之间的差异.为赋予LTP值运算意义,便于后续方法对量化后的纹理进行计算,提出向量局部三进制模式VLTP:
式中:s0~s7分别为相应邻域位置由式(3)得到的纹理信息编码值.
1.2. 纹理分割
灰度共生矩阵(GLCM)[15]是统计纹理信息和提取纹理特征的常用方法,其数学表达式为
式中:P为(x, y)位置处的灰度共生矩阵,W为在原图上以(x, y)为中心的方形计算窗口,I(p, q)为图像在(p, q)位置处的像素值,(Δp, Δq)表示方向和步长.
GLCM方法共有14种纹理特征,最有利于复合材料圆孔内外纹理分割的对比度特征为
原因如下:1)在LTP的表述下,孔外纹理的稀疏特性和孔内纹理的致密特性得以保持,对比度可以有效表征这两种特性之间的差异;2)相较于提取其他纹理特征,计算对比度可以设定比较小的GLCM计算窗口[19].在有效描述纹理的前提下,窗口尺寸越小,最终得到的纹理边界越准确,分割速度也越快.
由于0~7位置领域像素的权重(2n)不同将使得计算得到的对比度特征过于依赖4~7邻域位置的纹理信息,而在很大程度上忽视0~3邻域位置的纹理信息,这样做将使得大量的纹理信息被遗失.
为了避免纹理信息的遗失,使用VLTP代替LTP来实现纹理信息的量化,再应用GLCM对VLTP表述下的纹理信息进行统计,即将式(6)替换为
式中:v为向量,是纹理信息的VLTP量化结果.将式(3)代入式(8)得
观察式(9)可知,0~7邻域位置的纹理信息在对比度的计算中权重相同,且不同位置之间的运算相互独立,互不干扰.对比式(7)可知,式(9)所表示的对比度特征更全面均衡地使用了来自圆孔图像的纹理信息,避免了纹理信息在对比度计算过程中的损失,更能体现孔内外纹理的差异,称式(8)所表示的对比度为纹理对比度.
应用大津法[24]对复合材料圆孔图像的纹理对比度特征图进行二值化分割,再对分割掩模提取轮廓,即可得到与圆孔边界近似吻合的纹理边界.
2. 圆孔检测
2.1. 纹理边界引导圆检测
RCD[12]对边缘间断不敏感,对噪声有较强的耐受性,因此选用RCD完成圆检测.标准RCD方法检测的核心步骤是在所有边缘点中随机抽取4个边缘点,其中3个边缘点坐标用于计算候选圆参数(a,b,r),第4点坐标用于距离判据。距离判据式为
式中:(x, y)为第4点坐标.当
当判定结果为真时,遍历所有边缘点重复计算式(10)和(11)进行投票.若票数超过阈值,该候选圆有效;否则,重新进行抽样.
在复合材料圆孔图像中,纹理边界与圆孔边界是相互吻合且一一对应的.因此,在纹理边界提取情况良好的前提下,每条纹理边界处必有且仅有一处圆孔需要检测出来,无纹理边界区域无须进行圆检测.根据以上结论,在复合材料圆孔检测场景中,如图2所示,可使用纹理边界对圆检测进行引导. 根据纹理边界的位置信息筛选边缘点,然后,根据边缘点与各条纹理边界的距离远近对其进行分组,再对每组边缘点分别进行圆检测. 圆孔边界模糊变形将导致圆孔边缘点移位而不再呈现准确圆形,此时RCD随机采样得到的圆参数组可能无法通过投票阶段而导致检测失败.但由于每条纹理边界处必有一个圆孔需被检测出来,可对RCD采样得到的所有圆参数进行记录和统计,当RCD检测失败时,从记录中选出一组最优圆参数进行输出.
图 2
为提升RCD方法对模糊变形圆孔的检测性能和鲁棒性,在RCD方法中内嵌圆参数统计机制.该机制运作过程是在对一组边缘点进行圆检测时,所有经抽样产生的候选圆的圆参数(a,b,r)将被拆散为互不相关的a、b和r 3个参数,并分别进行记录.当RCD达到最大抽样次数而没有一组圆参数经投票输出时,分别取出3个记录中记录次数最多的参数,并检查这3个参数的记录次数是否均超过阈值.若超过,输出圆参数,否则,该机制无输出.
2.2. 复合材料圆孔检测
如图3所示是在一条纹理边界引导下的圆检测流程图,图中阴影部分是内嵌在RCD中的圆参数统计机制.对完整圆孔图像(一孔或多孔)进行圆孔检测的具体步骤如算法1所示.
图 3
算法1 复合材料圆孔检测
输入 Img: 复合材料圆孔灰度图
Canny: Canny边缘检测算法
Seg_cont: 纹理边界提取方法
SRCD: 内嵌参数统计机制的RCD算法
输出 Circles: 检测到的所有圆
1. Edges = Canny(Img)
//对圆孔图像进行边缘检测
2. Contours = Seg_cont(Img)
//对圆孔图像进行纹理边界提取
3. Edges = filter(Edges, Contours)
//删去距离纹理边界较远的边缘点
4. Edges_groups = group(Edges, Contours)
//根据边缘点与各条纹理边界的距离远近对其进行 分组
5. Circles = {}
6. for Edges_group in Edges_groups do
//对各组边缘点分别进行圆检测
7. Circle = SRCD(Edges_group)
//每组边缘点检测结果为圆或
8. Circles.add(Circle)
9. end for
10. return Circles
3. 实验分析
将提出的复合材料圆孔检测算法命名为VGSR.为了验证文中观点和检验VGSR的性能,设计并进行本章实验.实验软件平台为Visual Studio 2015,编程语言为C++,计算机配置为AMD A6处理器、2.0 GHz主频、4 GB RAM.
3.1. 验证实验
如图4所示为采用不同纹理分割方法对复合材料圆孔图像的分割效果,图4(b)~(e)均只提取对比度一种纹理特征,使用大津法进行分割。图4(f)提取多种纹理特征,使用机器学习算法进行分割. 图4(e)~(f)所使用的纹理量化方法在圆孔内外区域产生的对比度差值见表1. 结合表1和图4可知,单独使用GLCM以及LBP、LTP与GLCM串行结合的方法,圆孔内外区域的纹理区分度不够,分割效果较差,所得到的纹理边界不足以对圆检测进行引导.机器学习方法虽然分割效果最好,但方法复杂度和计算量过高,速度较慢. VLTP的纹理量化使得GLCM更全面完整地使用了图像中的纹理信息,两者相结合得到的纹理对比度特征在保持低复杂度和计算量的同时,显著提升了圆孔内外区域的纹理区分度,这使得基于纹理对比度的分割方法兼具较好的分割效果和较快的分割速度,更适合于复合材料圆孔检测这样的工业应用场景。
图 4
图 4 不同纹理分割方法得到的纹理边界及其算法效率
Fig.4 Texture boundary results and algorithm efficiency of different texture segmentation methods
表 1 不同纹理量化方法处理下孔内外纹理的对比度差值
Tab.1
纹理量化方法 | 对比度差值 | 纹理量化方法 | 对比度差值 | |
原图 | 36 | LTP | 104 | |
LBP | 79 | VLTP | 130 |
2类较为常见的复合材料圆孔如图2、4所示,图4中的圆孔边界模糊变形程度较小,图2中的圆孔边界模糊变形程度较大.在使用VGSR对所有的这2类圆孔进行检测时,统计了RCD投票和圆参数统计机制各自的圆孔检出情况,统计结果见表2.当使用VGSR对2类圆孔进行检测时,RCD并不能完全检测到所有圆孔.这是因为当圆孔边界模糊变形程度较小时,RCD可以通过采样和投票得到可靠的圆参数,而当圆孔边界模糊变形程度较大导致边缘点移位较严重时,RCD采样得到的圆参数往往无法通过投票阶段而导致圆孔检测失败,此时便需要圆参数统计机制对所有采样得到的圆参数进行统计,以输出最有可能且足够准确的圆参数.在机器人钻孔平台视觉系统拍摄到的圆孔图像中,大量圆孔伴随着毛刺和残留切屑,部分圆孔的变形程度甚至远超图(2)孔图. 因此,圆参数统计机制是对RCD算法在圆孔检测问题上非常必要的补充,在复合材料圆孔检测中起着非常重要的作用.
表 2 RCD投票和圆参数统计机制的圆孔检出情况
Tab.2
圆孔类别 | 待检孔数 | 检出圆孔数 | |
RCD投票 | 统计机制 | ||
56 | 7 | 48 | |
40 | 23 | 17 |
3.2. 复合材料圆孔检测实验
对共计11类圆孔图像进行圆孔检测实验.实验中这11类圆孔的编号为F1~F11,编号越大,代表该类图像纹理信息越丰富和圆孔边界模糊变形越严重.为了客观地评价VGSR的圆孔检测效果,选择以实时检测、效果优异著称的EDCircles方法作为对比.
图 5
图 5 VRSR、EDCircles和RCD方法下的部分实验结果可视化
Fig.5 Visualization of some experimental results for VRSR, EDCircles and RCD
VGSR和EDCircles在每个圆孔类别上和在总体上的性能对比见表3. 表中检测效率是指对该类别下所有圆孔图像的平均检测耗时,检出率是指检出圆孔数与总孔数的比值,检错率是指无效检出圆数与总孔数的比值.
表 3 VGSR与EDCircles圆孔检测性能对比
Tab.3
圆孔 类别 | 检测效率/ms | 检出率 | 检错率 | |||||
VGSR | EDCircles | VGSR | EDCircles | VGSR | EDCircles | |||
F1 | 39.8 | 6.8 | 30/30 | 30/30 | 0/30 | 0/30 | ||
F2 | 41.6 | 20.1 | 39/43 | 36/43 | 0/43 | 0/43 | ||
F3 | 45.6 | 14.4 | 68/71 | 60/71 | 3/71 | 3/71 | ||
F4 | 46.8 | 13.4 | 46/50 | 36/50 | 2/50 | 8/50 | ||
F5 | 45.7 | 17.5 | 41/44 | 22/44 | 0/44 | 4/44 | ||
F6 | 53.0 | 13.9 | 40/40 | 20/40 | 0/40 | 4/40 | ||
F7 | 44.1 | 14.9 | 32/35 | 15/35 | 3/35 | 9/35 | ||
F8 | 42.2 | 16.1 | 54/58 | 21/58 | 0/58 | 0/58 | ||
F9 | 48.6 | 17.6 | 18/21 | 3/21 | 2/21 | 0/21 | ||
F10 | 44.7 | 14.3 | 55/56 | 7/56 | 0/56 | 4/56 | ||
F11 | 42.0 | 16.5 | 26/28 | 2/28 | 1/28 | 1/28 | ||
总计 | 44.9 | 15.0 | 94.3% | 52.9% | 2.3% | 6.9% |
在算法效率方面,VGSR与现今最快的圆检测算法EDCircles相比,差距较为明显,总体平均检测耗时约为后者的3倍.但对于机器人钻孔平台圆形基准孔视觉检测的这样工业应用项目来讲,检测速度满足要求即可,检出率和检错率是更为重要的性能评价指标.
从对单个类别圆孔图像的实验结果来看,VGSR对所有类别圆孔图像的检测效果几乎均优于EDCircles,在保持90%以上检出率的同时,保持着很低的检错率.特别是对纹理信息较为丰富和圆孔边界模糊变形程度较大的图像,VGSR的圆孔检测效果要远好于EDCircles.当圆孔边界模糊程度或图像纹理丰富程度增大时,EDCircles的检测效果随之降低,直至检出率不足10%,而VGSR的检测效果基本不受边界模糊变形和图像纹理变化的影响,表现出复合材料圆孔检测工程应用方法应有的稳定性和鲁棒性.
综合所有图像的实验结果来看,VGSR具有94%以上的检出率和3%以下的检错率,而EDCircles检出率仅为52.9%,检错率却高至6.9%.在复合材料圆孔检测场景中,相比于EDCircles和直接使用RCD,VGSR有着更为出色的性能.
4. 结 语
本文提出了针对复合材料圆孔检测问题的VGSR算法,通过基于纹理对比度的纹理分割方法得到了与圆孔边界大致吻合的纹理边界,纹理边界的引导使得圆孔检测聚焦于圆孔边界处,而不再受到纹理噪声的影响,在RCD中内嵌的圆参数统计机制也增强了其对模糊变形圆孔的检测能力和检测鲁棒性,从而快速高效地完成了在丰富纹理环境下的基准孔检测. 同时发现VGSR算法存在不足,例如为保证检测速度只使用对比度一种纹理特征,只能实现较为简单的纹理二分割,仅适用于纹理边界与圆边界相吻合的圆检测场景.但是对于机器人制孔技术目前面临的复合材料圆形基准孔检测问题,VGSR算法具有较高速度、高检出率和低检错率,是合适的解决方案.
参考文献
面向现代飞机装配的长寿命机械连接技术
[J].DOI:10.3969/j.issn.1671-833X.2009.17.004 [本文引用: 1]
Long-life mechanical connecting technology for modern aircaft assembly
[J].DOI:10.3969/j.issn.1671-833X.2009.17.004 [本文引用: 1]
飞机结构件的自动化精密制孔技术
[J].DOI:10.3969/j.issn.1671-833X.2009.24.011 [本文引用: 1]
Automatic precision drilling technology of aircraft structural part
[J].DOI:10.3969/j.issn.1671-833X.2009.24.011 [本文引用: 1]
Development of a monocular vision system for robotic drilling
[J].DOI:10.1631/jzus.C1300379 [本文引用: 1]
Eigen-based traffic sign recognition
[J].DOI:10.1049/iet-its.2010.0159 [本文引用: 1]
基于支持向量机和椭圆拟合的细胞图像自动分割
[J].
Automatic segmentation for cell images based on support vector machine and ellipse fitting
[J].
Accurate ball detection in soccer images using probabilistic analysis of salient regions
[J].DOI:10.1007/s00138-013-0518-9 [本文引用: 1]
Statistical Hough transform
[J].DOI:10.1109/TPAMI.2008.288 [本文引用: 1]
A survey of Hough transform
[J].DOI:10.1016/j.patcog.2014.08.027 [本文引用: 1]
Use of the Hough transformation to detect lines and curves in pictures
[J].DOI:10.1145/361237.361242 [本文引用: 1]
An efficient randomized algorithm for detecting circles
[J].DOI:10.1006/cviu.2001.0923 [本文引用: 2]
EDCircles: a real-time circle detector with a false detection control
[J].DOI:10.1016/j.patcog.2012.09.020 [本文引用: 1]
Enhanced local texture feature sets for face recognition under difficult lighting conditions
[J].DOI:10.1109/TIP.2010.2042645 [本文引用: 2]
Texture feature for image classification
[J].
A comparative study of texture measures with classification based on feature distributions
[J].DOI:10.1016/0031-3203(95)00067-4 [本文引用: 1]
基于灰度共生矩阵的彩色遥感图像纹理特征提取
[J].
Extraction of color image texture feature based on gray-level co-occurrence matrix
[J].
Invariant of rotation and scaling for classification of arecanut based on local binary patterns
[J].
Texture feature extraction method fused with LBP and GLCM
[J].
A local binary pattern based texture descriptors for classification of tea leaves
[J].DOI:10.1016/j.neucom.2015.05.024 [本文引用: 1]
A thresholding selection method from gray-level histogram
[J].DOI:10.1109/TSMC.1979.4310076 [本文引用: 1]
/
〈 |
|
〉 |
