一种基于卷积神经网络的pcb缺陷检测系统及检测方法与流程
未命名
09-18
阅读:113
评论:0

1.本发明属于卷积神经网络技术领域,具体涉及一种基于卷积神经网络的pcb缺陷检测系统及检测方法。
背景技术:
2.pcb(printed circuit board),中文名称为印制电路板,又称印刷线路板,是重要的电子部件,是电子元器件的支撑体,是电子元器件电器连接的载体。pcb板本身是否存在缺陷将直接影响使用该pcb电路板的设备的设备性能,所以对于pcb电路板的缺陷检测显得尤为必要。
3.目前,针对pcb线路板的缺陷检测主要为传统的人工目检,人工目检存在较高的漏检和误检率,而且目检的检测效率很低,将耗费大量的人力,或将直接提高企业的生产成本,降低产品的市场竞争力。
技术实现要素:
4.本发明的目的在于提供一种基于卷积神经网络的pcb缺陷检测系统及检测方法,以解决上述背景技术中提出的技术问题。
5.为实现上述目的,本发明提供如下技术方案:一种基于卷积神经网络的pcb缺陷检测系统,包括:图像输入模块,用于获取pcb图像;图像预处理模块,用于对所述pcb图像进行预处理;检测模块,采用卷积神经网络和注意力机制,用于对预处理后的pcb图像进行缺陷检测,输出缺陷检测结果;后处理模块,用于对所述缺陷检测结果进行后处理,获得所述pcb图像中存在的缺陷区域。
6.作为一种优选的实施方式,图像输入模块:输入待检测pcb原始图像io;图像预处理模块:用于对io图像进行分辨率转换,并resize成固定尺寸;同时对resize后的图像i
′
进行增强和标准化处理,包括: 亮度增强;对比度增强;噪声过滤; 图像像素值除以255归一化到[0,1]范围内;得到标准化后图像is;检测模块:采用基于残差模块的卷积神经网络结构;在decoder部分加入注意力机制,以得到有效特征;分别对is图像进行缺陷定位、分类与分割,得到:置信度图pd,判断图像是否存在缺陷;分类置信度图pc,判断缺陷类型;分割置信度图ps,分割出缺陷区域;后处理模块:根据pd、pc和ps结果,根据阈值 judge图像是否存在缺陷及其类型;获取分割置信度最高的区域的边界框b,作为缺陷区域;计算b区域内像素的置信度均值,作为最终类别;
输出pcb原始图像io中存在的缺陷区域b及对应类别。
[0007]
基于上述系统,本方案还公开了一种基于上述系统的卷积神经网络的pcb缺陷检测方法,包括以下步骤:s1:获取pcb图像;对所述pcb图像进行预处理;s2:将预处理后的pcb图像输入到检测模块;s3;所述检测模块采用卷积神经网络和注意力模块,输出缺陷检测结果;s4:对所述缺陷检测结果进行后处理,获得所述pcb图像中存在的缺陷区域。
[0008]
作为一种优选的实施方式,包括以下步骤:s1. 获取pcb图像:输入待检测pcb图像io;s2. 图像预处理包括:s21.对io图像进行大小定位,变换为固定分辨率;s22.对大小定位后的图像i
′
执行亮度、对比度增强和噪声过滤等操作,使图像清晰易辨;s23.执行图像归一化,使像素值归一化到[0,1]范围;s3步骤还包括:s31.采用基于残差模块的卷积神经网络,提取图像特征;s32.在解码部分加入注意力模块;s33.分别产生缺陷存在预测图pd、分类置信度图pc和缺陷分割图ps,分别对应定位、分类和分割结果;s4. 后处理包括:s41.根据置信度图pd判断图像是否存在缺陷;s42.根据分类置信度图pc判断缺陷类型;s43.根据分割置信度图ps获得缺陷区域b的边界框;s44.计算b区域内像素的置信度均值,最终确定缺陷类别;s5. 输出:获得pcb原始图像io中存在的缺陷区域b及对应类别。
[0009]
作为一种优选的实施方式,s2步骤中设置瑕点数量和边缘模糊程度两个指标,若图像的瑕点数量能控制在额定数量,且边缘模糊程度小于0.9,则表明图像清晰易辨,边缘模糊程度中0表示完全清晰,1表示模糊程度最高。
[0010]
作为一种优选的实施方式,使用scharr滤波器检测图像中的边缘;之后统计边缘像素点的数量,作为边缘模糊程度的指标;然后采用概率hough变换检测图像中的质心点;统计质心点的数量作为瑕点数量的指标;根据上述两个指标判断图像清晰度是否达标。
[0011]
进一步地,构建基于残差网络神经模型时包括以下步骤:根据pcb图像尺寸,选择模型输入通道数;构建第一卷积层,选择过滤器,设定步幅;缓解过拟合,采用 batchnormalization和relu激活;构建第二卷积层,对应的过滤器,步幅,然后batchnormalization和 relu;构建第三卷积层,选择对应过滤器和步幅,然后batchnormalization和 relu;使用最大池化层,步幅2,下采样;构建残差块,包含2-3个卷积层;
重复构建若干的残差块,每次下采样2倍;初始化模型参数:使用he初始化或xavier初始化;训练模型:采用sgd优化器,学习率0.01,减小学习率,批大小64;输入pcb图像,通过卷积和池化层提取基本特征;通过多个残差块提取更高级的特征;获取最后一层卷积层的输出,作为图像全面特征;对模型做l2正则化避免过拟合;通过fine-tuning预训练权重,补足pcb图像的特殊需求。
[0012]
进一步地,注意力模块加入的具体步骤如下:编码阶段:卷积神经网络完成特征提取,获得多种尺度的特征图;平铺和重排序:将所有特征图通过 fully connected 来平铺成一条特征向量;查询构建:构建一个查询向量q,作为需要找寻关联的关键向量;键值构建:将特征向量分解为键值对(k,v);计算内积:计算 q和 所有键向量的内积,衡量其关联程度;归一化与加权:使用 softmax 函数计算注意力权重,并与值向量进行加权求和;特征融合:将注意力融合到输出层,实现语义匹配;解码预测,实现最终分类与分割。
[0013]
进一步地,还包括奖励模块;即奖励函数的构建具体包括如下步骤:获取pcb图像;对所述pcb图像进行预处理;将预处理后的pcb图像输入到检测模块,所述检测模块采用卷积神经网络和注意力机制,输出缺陷检测结果;之后对所述缺陷检测结果进行优化和调整;采用优化后的检测结果,获得所述pcb图像中存在的缺陷区域;其中在线推理阶段,定义状态空间和动作空间;使用dqn网络估计每个状态下的价值;不断探索不同动作,获取最大累积奖励;实时更新dqn网络,不断优化奖励函数。
[0014]
与现有技术相比,本发明的有益效果是:1.实现自动检测:采用卷积神经网络和注意力机制实现图像特征提取与分类识别,可自动精确定位和识别pcb缺陷。方案使用卷积神经网络提取图像特征,再通过注意力机制强化解码过程,提高缺陷分割效果,最终实现自动检测识别。2. 识别种类丰富:采用多任务检测网络,同时实现缺陷定位、分类和分割功能。可识别不同类型的pcb缺陷。方案提到检测模块同时实现缺陷定位、分类和分割,表明可以识别多个缺陷类别,意在扩大识别范围。3. 有望高效率:采用 residual连接的卷积神经网络与注意力机制,有助于模型训练高效推理。残差连接能有效解决梯度弥散问题,注意力机制可聚焦关键特征,这有助于提高检测效率。4. 具有鲁棒性:通过数据增强、奖励机制与后处理,能提高模型鲁棒性与稳定性。方案提及数据增强可以提高模型环境适应能力,强化学习奖励和后处理有助于优化和降低检测错误。5. 有进一步提高空间:如采用模型集成技术提高精度与速度、完善方案细节等。
[0015]
同时本方案加入了奖励机制,通过强化学习奖励,能够通过与环境互动不断取得经验。
[0016]
强化学习奖励函数通过不断探索和学习,可以实时优化自身,进而提高检测效果。
[0017]
强化学习不需要大量标注数据,仅通过环境交互探索获得样本用于模型优化。
[0018]
强化学习可以弥补模型数据分布差异,提高检测效果稳定性与泛化能力。
附图说明
[0019]
图1为本发明的流程示意图;
实施方式实施例
[0020]
请参阅图1,本发明提供一种基于卷积神经网络的pcb缺陷检测系统及检测方法,包括以下步骤:s1. 获取pcb图像:输入待检测pcb图像io;s2. 图像预处理包括:s21.对io图像进行大小定位,变换为固定分辨率;s22.对大小定位后的图像i
′
执行亮度、对比度增强和噪声过滤等操作,使图像清晰易辨;s23.执行图像归一化,使像素值归一化到[0,1]范围;s3步骤还包括:s31.采用基于残差模块的卷积神经网络,提取图像特征;s32.在解码部分加入注意力模块;s33.分别产生缺陷存在预测图pd、分类置信度图pc和缺陷分割图ps,分别对应定位、分类和分割结果;s4. 后处理包括:s41.根据置信度图pd判断图像是否存在缺陷;s42.根据分类置信度图pc判断缺陷类型;s43.根据分割置信度图ps获得缺陷区域b的边界框;s44.计算b区域内像素的置信度均值,最终确定缺陷类别;s5. 输出:获得pcb原始图像io中存在的缺陷区域b及对应类别。
[0021]
其中,图像预处理可以采用固定尺寸定位,如对全部pcb图像直接resize到300x300像素。-也可以采用动态方式定位,如保持pcb图像的长宽比(一般在2左右),将最长边resize到300像素。-根据模型输入大小取值,可选择的尺寸包括: 224x224、320x320、416x416等。-若考虑到gpu并行性能,最好选择32的倍数尺寸,有利于加速。图像清晰度标准方面:-设置瑕点(defect)数量和边缘模糊程度(blurriness)两个指标。-若图像的瑕点数量能控制在50个左右,且边缘模糊程度小于0.9(0表示完全清晰、1表示模糊程度最高),则表明图像清晰易辨。具体操作步骤:1)使用scharr滤波检测图像中的边缘;2)统计边缘像素点的数量,作为边缘模糊程度的指标;3)采用概率hough变换检测图像中的质心(中心)点;4)统计质心点的数量作为瑕点数量的指标;5)根据上述两个指标判断图像清晰度是否达标。
[0022]
执行亮度、对比度增强和噪声过滤等操作具体如下:亮度增强:计算图像i
‘
的直方
图,确定亮度分布状况;根据分布情况,采用线性转换或者gamma校正,将亮度值扩展到0-255范围内;可以使用clahe(对比自适应直方图均衡化)算法增加局部对比度。
[0023]
对比度增强:计算图像的直方图,确定当前对比度分布;使用直方图规划技术增大对比度,如综合对数反映率转换(clr);可以采用几何均衡化等算法增大全局和局部对比度。
[0024]
噪声过滤:使用高斯滤波减少高斯噪声和椒盐噪声;对于pcb图像中的非规律噪声,可以采用中值滤波或局部三角滤波;对于序列图像,可以使用基于时间的滤波器过滤噪声。
[0025]
构建基于残差网络的模型结构具体方法是:如果pcb图像尺寸为224*224,则模型输入通道数为3(rgb)。
[0026]
构建7*7的卷积层,过滤器大小64,步幅2。缓解过拟合采用 batchnormalization和relu激活。
[0027]
构建3*3卷积层,过滤器32,步幅1,跟上batchnormalization和 relu。 (4) 构建3*3卷积层,过滤器64,步幅1,然后batchnormalization和 relu。 (5) 使用3*3的最大池化层,步幅2下采样。
[0028]
构建残差块,包含2-3个卷积层。
[0029]
重复构建更多的残差块,每次下采样2倍。
[0030]
然后,初始化模型参数。使用he初始化或xavier初始化。
[0031]
然后,训练模型。采用sgd优化器,学习率0.01,减小学习率,批大小64。
[0032]
然后,输入pcb图像,通过卷积和池化层提取基本特征。
[0033]
然后,通过多个残差块提取更高级的特征。
[0034]
然后,获取最后一层卷积层的输出,作为图像全面特征。
[0035]
然后,对模型做l2正则化避免过拟合。
[0036]
然后,部署模型时,使用模型压缩技术提高速度。
[0037]
然后,通过fine-tuning预训练权重,补足pcb图像的特殊需求。
[0038]
在上述方案中,在解码器中,解码器加入attention模块的具体步骤如下:1)编码阶段:卷积神经网络完成特征提取,获得多种尺度的特征图。
[0039]
2)平铺&重排序:将所有特征图通过 fully connected 来平铺成一条特征向量。
[0040]
3)查询构建:构建一个查询向量q,作为需要找寻关联的关键。
[0041]
4)键值构建:将特征向量分解为键值对(k,v)5)计算内积:计算 q和 所有 keys 的内积,衡量其关联程度。
[0042]
6)归一化与加权:使用 softmax 函数计算注意力权重,并与值 vectrors 进行加权求和。
[0043]
7)特征融合:将注意力上下文融合到输出层,实现语义匹配功能。
[0044]
8)解码预测:解码器完成最终预测。
[0045]
本方案的好处是:1)提取多种尺度特征;2)实现特征全局上下文;3)构建关注点;4)建立映射对;5)评估关联程度;6)计算注意力权重;7)融合上下文信息;8)实现最终分类与分割。
[0046]
在具体实施过程中,还可以加入奖励模块,具体包括如下步骤:
获取pcb图像;对所述pcb图像进行预处理;将预处理后的pcb图像输入到检测模块,所述检测模块采用卷积神经网络和注意力机制,输出缺陷检测结果;之后对所述缺陷检测结果进行优化和调整;采用优化后的检测结果,获得所述pcb图像中存在的缺陷区域;其中在线推理阶段,定义状态空间和动作空间;使用dqn网络估计每个状态下的价值;不断探索不同动作,获取最大累积奖励;实时更新dqn网络,不断优化奖励函数。
[0047]
同时,在实施过程中,还可以加入奖励过程监控模块,即是在奖励模块的工作过程中,对某一种pcb产品,在规定的一段时间内,对奖励机制中奖励权重的变化进行记录和监控;即在规定奖励token总量的基础上,记录权重的变化幅度的奖励增加的趋势以及方向,以便于能够及时的货值系统的工作状态;如权重变化过大,或者奖励在在一段时间内快速增加,则需要对最终检查后的产品进行准确率核准,避免不良和路径依赖的产生,保证系统运行的质量;如果一段时间内,某种奖励代表的方向突然减少,则需要检查流入产品的料号,厂商,客户等信息是否出现错误。
[0048]
最后,说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
技术特征:
1.一种基于卷积神经网络的pcb缺陷检测系统,其特征在于,包括:图像输入模块,用于获取pcb图像;图像预处理模块,用于对所述pcb图像进行预处理;检测模块,采用卷积神经网络和注意力机制,用于对预处理后的pcb图像进行缺陷检测,输出缺陷检测结果;后处理模块,用于对所述缺陷检测结果进行后处理,获得所述pcb图像中存在的缺陷区域。2.根据权利要求1所述的基于卷积神经网络的pcb缺陷检测系统,其特征在于:所述图像输入模块:输入待检测pcb原始图像io;图像预处理模块:用于对io图像进行分辨率转换,并resize成固定尺寸;同时对resize后的图像i
′
进行增强和标准化处理,包括: 亮度增强;对比度增强;噪声过滤; 图像像素值除以255归一化到[0,1]范围内;得到标准化后图像is;检测模块:采用基于残差模块的卷积神经网络结构;在decoder部分加入注意力机制,以得到有效特征;分别对is图像进行缺陷定位、分类与分割,得到:置信度图pd,判断图像是否存在缺陷;分类置信度图pc,判断缺陷类型;分割置信度图ps,分割出缺陷区域;后处理模块:根据pd、pc和ps结果,根据阈值 judge图像是否存在缺陷及其类型;获取分割置信度最高的区域的边界框b,作为缺陷区域;计算b区域内像素的置信度均值,作为最终类别;输出pcb原始图像io中存在的缺陷区域b及对应类别。3.一种基于卷积神经网络的pcb缺陷检测方法,其特征在于:包括以下步骤:s1:获取pcb图像;对所述pcb图像进行预处理;s2:将预处理后的pcb图像输入到检测模块;s3;所述检测模块采用卷积神经网络和注意力模块,输出缺陷检测结果;s4:对所述缺陷检测结果进行后处理,获得所述pcb图像中存在的缺陷区域。4.根据权利要求3所述的基于卷积神经网络的pcb缺陷检测方法,其特征在于:包括以下步骤:s1. 获取pcb图像:输入待检测pcb图像io;s2. 图像预处理包括:s21.对io图像进行大小定位,变换为固定分辨率;s22.对大小定位后的图像i
′
执行亮度、对比度增强和噪声过滤等操作,使图像清晰易辨;s23.执行图像归一化,使像素值归一化到[0,1]范围;s3步骤还包括:s31.采用基于残差模块的卷积神经网络,提取图像特征;s32.在解码部分加入注意力模块;s33.分别产生缺陷存在预测图pd、分类置信度图pc和缺陷分割图ps,分别对应定位、分类和分割结果;
s4. 后处理包括:s41.根据置信度图pd判断图像是否存在缺陷;s42.根据分类置信度图pc判断缺陷类型;s43.根据分割置信度图ps获得缺陷区域b的边界框;s44.计算b区域内像素的置信度均值,最终确定缺陷类别;s5. 输出:获得pcb原始图像io中存在的缺陷区域b及对应类别。5.根据权利要求4所述的基于卷积神经网络的pcb缺陷检测方法,其特征在于:所述s2步骤中设置瑕点数量和边缘模糊程度两个指标,若图像的瑕点数量能控制在额定数量,且边缘模糊程度小于0.9,则表明图像清晰易辨,边缘模糊程度中0表示完全清晰,1表示模糊程度最高。6.根据权利要求5所述的基于卷积神经网络的pcb缺陷检测方法,其特征在于:使用scharr滤波器检测图像中的边缘;之后统计边缘像素点的数量,作为边缘模糊程度的指标;然后采用概率hough变换检测图像中的质心点;统计质心点的数量作为瑕点数量的指标;根据上述两个指标判断图像清晰度是否达标。7.根据权利要求6中所述的基于卷积神经网络的pcb缺陷检测方法,其特征在于:构建基于残差网络神经模型时包括以下步骤:根据pcb图像尺寸,选择模型输入通道数;构建第一卷积层,选择过滤器,设定步幅;缓解过拟合,采用 batchnormalization和relu激活;构建第二卷积层,对应的过滤器,步幅,然后batchnormalization和 relu;构建第三卷积层,选择对应过滤器和步幅,然后batchnormalization和 relu;使用最大池化层,步幅2,下采样;构建残差块,包含2-3个卷积层;重复构建若干的残差块,每次下采样2倍;初始化模型参数:使用he初始化或xavier初始化;训练模型:采用sgd优化器,学习率0.01,减小学习率,批大小64;输入pcb图像,通过卷积和池化层提取基本特征;通过多个残差块提取更高级的特征;获取最后一层卷积层的输出,作为图像全面特征;对模型做l2正则化避免过拟合;通过fine-tuning预训练权重,补足pcb图像的特殊需求。8.根据权利要求7中所述的基于卷积神经网络的pcb缺陷检测方法,其特征在于:注意力模块加入的具体步骤如下:编码阶段:卷积神经网络完成特征提取,获得多种尺度的特征图;平铺和重排序:将所有特征图通过 fully connected 来平铺成一条特征向量;查询构建:构建一个查询向量q,作为需要找寻关联的关键向量;键值构建:将特征向量分解为键值对(k,v);计算内积:计算 q和 所有键向量的内积,衡量其关联程度;归一化与加权:使用 softmax 函数计算注意力权重,并与值向量进行加权求和;
特征融合:将注意力融合到输出层,实现语义匹配;解码预测,实现最终分类与分割。9.根据权利要求8中所述的基于卷积神经网络的pcb缺陷检测方法,其特征在于:还包括奖励模块;具体包括如下步骤:获取pcb图像;对所述pcb图像进行预处理;将预处理后的pcb图像输入到检测模块,所述检测模块采用卷积神经网络和注意力机制,输出缺陷检测结果;之后对所述缺陷检测结果进行优化和调整;采用优化后的检测结果,获得所述pcb图像中存在的缺陷区域;其中在线推理阶段,定义状态空间和动作空间;使用dqn网络估计每个状态下的价值;不断探索不同动作,获取最大累积奖励;实时更新dqn网络,不断优化奖励函数。
技术总结
本发明公开了一种基于卷积神经网络的pcb缺陷检测系统及检测方法,属于卷积神经网络技术领域,S1:获取PCB图像;对所述PCB图像进行预处理;S2:将预处理后的PCB图像输入到检测模块;S3;所述检测模块采用卷积神经网络和注意力模块,输出缺陷检测结果;S4:对所述缺陷检测结果进行后处理,获得所述PCB图像中存在的缺陷区域;本方案可以实现自动检测:采用卷积神经网络和注意力机制实现图像特征提取与分类识别,可自动精确定位和识别PCB缺陷。识别,可自动精确定位和识别PCB缺陷。识别,可自动精确定位和识别PCB缺陷。
技术研发人员:颜胜
受保护的技术使用者:重庆宇隆电子技术研究院有限公司
技术研发日:2023.06.30
技术公布日:2023/9/14
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/