一种基于贝叶斯分类器的PCB焊点缺陷检测方法
A PCB Solder Spot Defect Detection Method Based on Bayesian Classifier
DOI: 10.12677/CSA.2022.127186, PDF, HTML, XML, 下载: 294  浏览: 583  国家自然科学基金支持
作者: 张贻鹏, 彭向前, 陈立锋:湖南科技大学机电工程学院,湖南 湘潭;胡小平:湖南科技大学机电工程学院,湖南 湘潭;湖南科技大学先进矿山装备教育部工程研究中心,湖南 湘潭
关键词: 缺陷检测图像分割贝叶斯分类器Defect Detection Image Segmentation Bayesian Classifier
摘要: 针对PCB板在焊接过程中存在多焊、少焊、漏焊等焊点表面质量问题,提出了一种基于朴素贝叶斯分类器的焊点缺陷检测方法。首先,通过图像分割,获取焊点ROI区域的表面特征,建立焊点的特征参数数据集;然后,将得到的特征参数根据其特征属性,计算出先验概率及条件概率,构建朴素贝叶斯分类器对数据集进行分类识别;最后,利用训练集和测试集对分类器分类结果进行实验验证。实验表明,该方法对焊点不良的检测率达到93.4%,能满足实际使用要求。
Abstract: In order to solve the problems of welding spot surface quality in PCB welding process, an automatic welding spot surface defect detection method based on naive Bayesian classifier was proposed. Firstly, the surface characteristics of ROI region of solder spot were obtained by image segmentation, and the characteristic parameter data sets of solder dot were established. Then, the prior probability and conditional probability were calculated according to the characteristic attributes of the obtained characteristic parameters, and a naive Bayesian classifier was constructed to classify and recognize the data sets. Finally, training set and testing set were used to verify the classification results of the classifier. Experimental results showed that the detection rate of harmful welding spot could reach 93.4%, which could meet the practical requirements.
文章引用:张贻鹏, 彭向前, 胡小平, 陈立锋. 一种基于贝叶斯分类器的PCB焊点缺陷检测方法[J]. 计算机科学与应用, 2022, 12(7): 1862-1870. https://doi.org/10.12677/CSA.2022.127186

1. 引言

PCB (Printed Circuit Board)板又称印制线路板,是电子工业的重要部件之一 [1]。随着PCB集成度的提高,对其表面缺陷检测也提出了更高的要求 [1]。而焊点质量作为表面缺陷检测的重要内容,传统人工目检的方法已然无法满足更高效率、更高精度焊点表面缺陷检测的要求,而应用机器视觉技术实现焊点表面质量的自动化检测成为目前最热门的焊点检测方法之一 [2] [3]。

随着自动光学检测(Automatic Optical Inspection, AOI)系统不断推陈出新,逐渐朝着高精度、智能化的方向发展,针对PCB板焊点质量检测的视觉方法也层出不穷。为实现焊点类型的精准检测,赵爽 [4] 提出了一种基于多特征的支持向量机二次多分类算法,成功提升了检测率;魏炽旭 [5] 等利用图像分割和矩阵计算的方法将PCB板的焊点区域缺陷进行分类再检测,进而获得最终的检测结果;文献 [6] 则根据不同颜色面积作为特征进行焊点缺陷检测统计样本,采用模式匹配的方法,提出一种阈值自适应的参数提取方法,该方法具有较高的检查率和检测速度。文献 [7] 提出了一种基于梯度向量匹配的定位方法检测焊点位置,结合卷积神经网络算法进行缺陷检测,设计了一套焊点缺陷检测系统,其检测结果优良。此外,文献 [8] [9] 也针对焊点检测问题,提出相应的解决方案并取得较好的检测结果。

本文针对某PCB板在焊接过程中焊点存在的多锡、少锡等问题,提出一种基于贝叶斯分类器的焊点缺陷自动检测方法。首先利用图像预处理获取PCB中焊点区域的基础特征信息,并根据焊点特征建立特征集,然后利用该特征集构造贝叶斯分类器,通过分类器的训练和分类最终得到该分类器的实验数据,下文对该方法进行详细论述。

2. 方案设计

PCB缺陷自动检测系统硬件部分主要由工业相机、镜头、光源等构成。根据PCB样本尺寸及焊点区域的大小,选用500万像素的CMOS工业相机,配合25 mm的变焦镜头。由于焊点表面呈弧形,对光源的反射散度较大,因此选用聚光效果优良的碗状光源,能够使相机获取足够的光源。

焊点检测算法主要包括特征提取和分类器构建两部分,具体算法流程如图1所示。图像预处理主要有滤波和图像增强,可以有效去除噪音等影响,为后续处理提供更高质量的图像。将预处理后的图像进行分割,得到易提取特征信息的分割图像,然后提取二维特征参数集,通过该参数集完成分类器的构建以及训练,最终根据分类器结果判断待测PCB焊点样本是否合格。

Figure 1. Flow chart of defect detection algorithm

图1. 缺陷检测算法流程图

3. 图像预处理

通过相机获取的标准焊点区域灰度图如图2所示,图像在采集过程中由于环境的影响,存在噪声、模糊等干扰因素,因此需要通过图像增强、滤波等图像预处理,提高图像质量。其中,直方图均衡化是图像增强中最常用的方法之一,通过将图像中的像素级出现的概率均匀化,从而增强其对比度。

Figure 2. Gray scale image diagram of solder joint area

图2. 焊点区域灰度图像示意图

常用的滤波算法有中值滤波、均值滤波、高斯滤波等。通过对该类图像进行测试对比,最终发现均值滤波后的图像在后续处理中具有很好的效果。因此,在预处理中采用均值滤波算法。

4. 图像分割

图像分割是获取图像特征的常用方法之一。常用的图像分割方法主要有基于特征的分割方法、基于边缘的分割方法、基于阈值的分割方法三大类。由于标准焊点成像均匀、过渡明显,因此利用阈值分割能达到最优化分割,但由于锡焊的不稳定和光照环境的影响,若直接设定固定阈值进行分割,其效果不稳定,易产生过分割,因此需要一种适应光照的自适应阈值分割方法。

最大类间方差法 [10] [11] [12] (OTUS)是一种自适应的阈值分割方法,通过背景和前景的像素值的比例关系确定出合适的分割阈值,能有效的去除光照的影响,保证分割的结果稳定。其分割效果如图3所示,焊点顶部的高亮区域和周围的暗色区域分割效果符合实际情况。

(a) (b) (c)

Figure 3. Gray scale and segmentation. (a) Granular solder; (b) Standard solder; (c) Excess solder

图3. 灰度图与分割图。(a) 少锡;(b) 标准;(c) 多锡

经阈值分割后,由于边缘存在毛刺、孤立点等影响因素。利用形态学腐蚀运算,可以有效去除杂色、孤立点,效果如图4所示,其得到的分割结果更为完整。

(a) (b) (c)

Figure 4. Binarization segmentation diagram and corrosion diagram. (a) Granular solder; (b) Standard solder; (c) Excess solder

图4. 二值化分割图与腐蚀图。(a) 少锡;(b) 标准;(c) 多锡

5. 朴素贝叶斯分类器

贝叶斯分类器(Bayesian Classifier)是各种分类器中分类错误概率最小或者在预先给定代价的情况下平均风险最小的分类器 [13] [14]。通过计算给定对象的先验概率,利用贝叶斯公式计算出其后验概率,即得到其属于某一类别的概率,选择具有最大概率的类别作为该对象所属的类。由于基于贝叶斯公式估计后验概率难以从有限的训练样本直接估计得到,提出一种“属性独立”假设:即针对已知类别,假设其属性相互独立,在该假设下的贝叶斯原理称为朴素贝叶斯原理 [15]。基于上述假设,朴素贝叶斯公式为:

P ( c | x ) = P ( c ) P ( x | c ) P ( x ) = P ( c ) P ( x ) i = 1 d P ( x i | c ) (1)

其中, P ( c | x ) 表示在条件x下分属c类的概率; P ( x i | c ) 表示条件属性概率; P ( c ) P ( x ) 则表示类先验概率。

由式(1)可知,构建朴素贝叶斯分类器需首先获得类先验概率以及条件属性概率,并提取相应的各条件特征参数,最后进行样本参数统计。

5.1. 特征提取

根据上述图像分割结果,确定PCB焊点质量特征信息,通过先验知识建立缺陷不良品和标准合格品的分类特征参数集,主要特征参数如下:

1) 覆盖率 δ 。如图5所示其焊点顶部高亮区域以及周围存在的未填充的空焊区域与所在焊点整体区域面积的比值,即 δ = S i / S ,其中,S表示面积。通过该值可以判断其焊点区域填充是否饱和;

(a) (b) (c)

Figure 5. Threshold segmentation diagram. (a) Granular solder; (b) Standard solder; (c) Excess solder

图5. 阈值分割图。(a) 少锡;(b) 标准;(c) 多锡

2) 纵横比 σ 。中间存在的光滑连续(或半连续)高亮区域,形状为近似椭圆长条状,周围为暗色区域,通过高亮填充区域的纵向与横向的比值来判断其填充是否过度饱和,其表达式为:

σ = y 2 y 1 x 2 x 1 = Δ y Δ x (2)

其中,∆x、∆y分别表示纵向和横向长度。

3) 重心坐标 P ( x , y ) ,通过拟合高亮轮廓,得到其重心的位置坐标,通过位置偏移情况来确定是否存在少锡;

4) 轮廓数N,根据拟合的轮廓数得出其焊点区域的填充情况,如图6所示,将零散的干扰区域去除后,提取焊点轮廓。通过轮廓数判断出该焊点是否少焊。

(a) (b) (c)

Figure 6. Contour extraction diagram. (a) Granular solder; (b) Standard solder; (c) Excess solder

图6. 轮廓提取图。(a) 少锡;(b) 标准;(c) 多锡

5.2. 构建分类器

根据上述焊点区域图像分割得到的特征参数信息 [16],建立焊点的特征参数数据集。如表1所示为部分焊点数据。其中,焊点类型中少锡、多锡均属于不良品;训练集大小为500,测试集大小为500;焊点的ROI区域是像素值为310 × 455 的矩形;轮廓属性为离散属性,其特征表述为单轮廓(N = 1)和多轮廓(N > 1);当存在多个轮廓时,其轮廓数表示为多轮廓,且以最大轮廓为主轮廓提取覆盖率 δ 、纵横比 σ 和重心坐标 P ( x , y )

Table 1. Given the characteristics of the solder joint type under the statistical table

表1. 已知焊点类型下的特征统计表

根据表1的特征统计表,构建该焊点的表面质量贝叶斯分类器的训练集D。首先需要获取该分类器的类先验概率,其表达式为:

P ( c i ) = | D c i | + 1 D + Q (3)

其中, c i 表示类别,Q表示可能的类别数,这里的分类类别为合格和不良。

然后需要获取上述不同特征的条件概率,其中轮廓数属于离散属性,其条件概率由于离散化而采用估计法进行统计表达,因此其表达可估计为:

P ( x | c i ) = | D c i , x | D c i (4)

而重心坐标、覆盖率、纵横比等属性特征为连续属性,因此基于高斯分布得到其条件概率为:

P ( x i | c i ) = 1 2 π σ c i , i exp ( ( x i μ c i , i ) 2 2 σ c i , i 2 ) (5)

根据上述各属性的条件概率计算公式,结合式(1)得到其最终的所属类别的概率,即:

P ( c i | x i ) = P ( x i | c i ) (6)

由式(6)得到焊点分别在合格条件下和缺陷条件下的贝叶斯计算结果,根据其值的大小来判断所属类别。当该差值大于一个数量级时,认定为分类成功。如表2中编号1的样本,其属于合格品的概率为0.057,属于不良品的概率为2.1 × 10−5,即其分类结果为合格。

根据上述计算方法结合特征统计表,构建出合格–不良分类器,该分类器的各特征条件概率及分类结果如表2所示,其中c表示合格条件, c ¯ 表示不良条件。

Table 2. Classifier classification results

表2. 分类器分类结果

由上述表2可知,在各属性特征的条件概率支撑下,获得了每个焊点的不同类别下的分类概率,其中大部分分类结果都具有明显的数量级差,如1号焊点属于合格的概率为0.057,而其属于不良的概率仅为2.1 × 10−5,即表示该焊点的分类结果为合格,并且分类准确;但是也有分类所属差别不大,容易产生分类误差的分类结果,如497号焊点。通过统计表2的全部分类结果,并根据先验知识判断可得该分类器在其训练样本中的检测准确率为99.6%,同时,在测试样本中的检测准确率为93.4%。

为进一步得到该算法的适用性以及算法效果,本文通过几种主流的焊点检测算法进行对比试验,得到的实验结果如表3所示。

Table 3. Comparison of detection results of different algorithms

表3. 不同算法检测结果对比

表3的对比结果可知,本文算法在检测率方面高于部分基本检测方法,如基于连通域的检测方法和基于轮廓的检测方法,但是略低于SVM的分类方法,而从检测效率来看,该方法略低于基于轮廓的检测方法,而高于其余两种方法。综合分析可得该方法能够实现焊点的缺陷分类检测,具有较高的检测率以及检测效率,符合预期要求。

6. 结语

本文针对PCB在焊接过程中存在的多焊、少焊等表面质量问题,提出一种基于朴素贝叶斯分类器的焊点表面缺陷自动检测方法。结合自适应图像分割算法和特征提取,构建了该类焊点的朴素贝叶斯分类器,并利用训练样本和测试样本分别进行了测试,经实验验证,该方法能准确对该类缺陷进行分类,具备实现焊点表面缺陷检测的可行性。

基金项目

国家自然科学基金资助项目(61572185);湖南省教育厅重点资助项目(19A170);湖南科技大学博士科研启动基金资助项目(E57110)。

参考文献

[1] 陈寿宏, 赵爽, 马峻, 张雨璇, 郭玲. 基于多特征的SVM多分类PCB焊点缺陷检测方法[J]. 激光杂志, 2019, 40(6): 21-26.
[2] 贾正伟, 黄海松, 张松松. 基于彩色图像模板匹配的PCB多缺陷集中检测[J]. 组合机床与自动化加工技术, 2021(9): 125-129.
[3] 袁小翠, 黄志开, 马永力, 等. Otsu阈值分割法特点及其应用分析[J]. 南昌工程学院学报, 2019, 38(1): 85-90+97.
[4] 赵爽. 基于机器视觉的PCB焊点缺陷检测研究[D]: [硕士学位论文]. 桂林: 桂林电子科技大学, 2019.
[5] 魏炽旭, 何汉琳. 基于图像处理技术的PCB板缺陷检测系统设计[J]. 电子制作, 2020(21): 25-26+62.
[6] 吴福培, 邝泳聪, 张宪民, 等. 基于模式匹配及其参数自适应的PCB焊点检测[J]. 光学精密工程, 2009, 17(10): 2586-2593.
[7] 郑剑斌, 郑力新, 朱建清. 一种基于灰度的快速模板匹配方法[J]. 现代计算机(专业版), 2018(26): 52-56.
[8] 谢俊, 李畅, 左飞飞, 等. 基于机器视觉的车速传感器焊点检测[J]. 现代制造工程, 2020(6): 52-56.
[9] Stearns, C.C. and Kannappan, K. (1995) Method for 2-D Affine Trans-formation of Images. U.S. Patent 5,475,803.
[10] 杨陶, 田怀文, 刘晓敏, 等. 基于边缘检测与Otsu的图像分割算法研究[J]. 计算机工程, 2016, 42(11): 255-260+266.
[11] Otsu, N. (1979) A Threshold Selection Method from Gray-Level Histogram. IEEE Transactions on Systems, Man, and Cybernetics, 9, 62-66.
https://doi.org/10.1109/TSMC.1979.4310076
[12] 徐建东. 基于最小二乘法拟合的Otsu快速图像分割方法[J]. 常州大学学报(自然科学版), 2021, 33(1): 70-76.
[13] 王建敏. 朴素贝叶斯分类算法的改进与研究[D]: [硕士学位论文]. 哈尔滨: 哈尔滨理工大学, 2021.
[14] 朱丹丹, 应捷, 田谨. 基于贝叶斯分类器的车载多类障碍物分类[J]. 信息技术, 2016(1): 17-19.
[15] 张晓莉. 朴素贝叶斯分类器及其改进算法研究[D]: [硕士学位论文]. 青岛: 山东科技大学, 2020.
[16] 任柳清. 基于图像处理的PCB焊接缺陷检测方法研究及实现[D]: [硕士学位论文]. 绵阳: 西南科技大学, 2021.