CN117830210A - 缺陷检测方法、装置、电子设备及存储介质 - Google Patents
缺陷检测方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117830210A CN117830210A CN202311498351.5A CN202311498351A CN117830210A CN 117830210 A CN117830210 A CN 117830210A CN 202311498351 A CN202311498351 A CN 202311498351A CN 117830210 A CN117830210 A CN 117830210A
- Authority
- CN
- China
- Prior art keywords
- image
- target
- defect
- detected
- defect detection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000007547 defect Effects 0.000 title claims abstract description 719
- 238000001514 detection method Methods 0.000 title claims abstract description 623
- 238000003860 storage Methods 0.000 title claims abstract description 28
- 238000012549 training Methods 0.000 claims abstract description 81
- 238000012545 processing Methods 0.000 claims description 65
- 238000011176 pooling Methods 0.000 claims description 49
- 230000009466 transformation Effects 0.000 claims description 46
- 238000000605 extraction Methods 0.000 claims description 43
- 239000011159 matrix material Substances 0.000 claims description 35
- 238000004590 computer program Methods 0.000 claims description 19
- 230000004927 fusion Effects 0.000 claims description 18
- 230000000877 morphologic effect Effects 0.000 claims description 15
- 238000001914 filtration Methods 0.000 claims description 12
- 230000003213 activating effect Effects 0.000 claims description 6
- 230000001131 transforming effect Effects 0.000 claims description 6
- 230000009467 reduction Effects 0.000 claims description 4
- 238000000034 method Methods 0.000 abstract description 75
- 238000005516 engineering process Methods 0.000 abstract description 33
- 238000013473 artificial intelligence Methods 0.000 abstract description 14
- 230000008569 process Effects 0.000 description 47
- 210000003128 head Anatomy 0.000 description 42
- 238000010586 diagram Methods 0.000 description 39
- 238000007689 inspection Methods 0.000 description 23
- 230000006870 function Effects 0.000 description 21
- 238000005070 sampling Methods 0.000 description 21
- 238000013135 deep learning Methods 0.000 description 17
- 238000004422 calculation algorithm Methods 0.000 description 16
- 230000000007 visual effect Effects 0.000 description 13
- 230000001133 acceleration Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 9
- 230000002950 deficient Effects 0.000 description 7
- 239000000047 product Substances 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 230000007797 corrosion Effects 0.000 description 4
- 238000005260 corrosion Methods 0.000 description 4
- 238000006073 displacement reaction Methods 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 239000003086 colorant Substances 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000006748 scratching Methods 0.000 description 3
- 230000002393 scratching effect Effects 0.000 description 3
- 229910000831 Steel Inorganic materials 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 239000011324 bead Substances 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 239000004744 fabric Substances 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 239000010959 steel Substances 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 229920001651 Cyanoacrylate Polymers 0.000 description 1
- 239000004830 Super Glue Substances 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005562 fading Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000003331 infrared imaging Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Landscapes
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本申请实施例公开了缺陷检测方法、装置、电子设备及存储介质,该方法通过将待测图像与模板图像进行对比差分得到目标差分图像,将待测图像与目标差分图像输入至缺陷目标检测模型,提取出目标图像特征,基于目标图像特征对待测图像进行缺陷目标检测,得到待测图像中的缺陷检测框信息;在目标差分图像中定位出缺陷区域,根据缺陷区域确定目标工件的参考缺陷检测结果;根据缺陷检测框信息和参考缺陷检测结果,确定目标工件的目标缺陷检测结果。本申请能够提高缺陷检测的准确性,降低对训练样本的依赖性,可广泛应用于人工智能、云技术、计算机视觉技术、工业自动化等场景。
Description
技术领域
本申请涉及人工智能技术领域,特别是涉及一种缺陷检测方法、装置、电子设备及存储介质。
背景技术
目前,针对产品缺陷检测问题通常采用深度学习算法实现,但利用深度学习算法进行缺陷检测的准确性依赖于大量人工标注的缺陷样本,随着缺陷种类越多或缺陷特征的可区分性越低,所需的缺陷样本数量越大,样本获取成本高且训练效率低,同时,由于深度学习算法一般采用有监督训练的方式,在缺少训练样本的情况下,会降低缺陷检测的准确性。
发明内容
以下是对本申请详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
本申请实施例提供了一种缺陷检测方法、装置、电子设备及存储介质,能够提高缺陷检测的准确性的同时降低对训练样本的依赖性。
一方面,本申请实施例提供了一种缺陷检测方法,包括:
获取目标工件的待测图像以及所述目标工件的模板图像,将所述待测图像与所述模板图像进行对比差分,得到目标差分图像;
将所述待测图像与所述目标差分图像输入至缺陷目标检测模型,提取出目标图像特征,基于所述目标图像特征对所述待测图像进行缺陷目标检测,得到所述待测图像中的缺陷检测框信息,其中,所述目标图像特征包括所述待测图像的特征以及所述目标差分图像的特征;
在所述目标差分图像中定位出缺陷区域,根据所述缺陷区域确定所述目标工件的参考缺陷检测结果;
根据所述缺陷检测框信息和所述参考缺陷检测结果,确定所述目标工件的目标缺陷检测结果。
另一方面,本申请实施例还提供了一种缺陷检测装置,包括:
第一处理模块,用于获取目标工件的待测图像以及所述目标工件的模板图像,将所述待测图像与所述模板图像进行对比差分,得到目标差分图像;
第二处理模块,用于将所述待测图像与所述目标差分图像输入至缺陷目标检测模型,提取出目标图像特征,基于所述目标图像特征对所述待测图像进行缺陷目标检测,得到所述待测图像中的缺陷检测框信息,其中,所述目标图像特征包括所述待测图像的特征以及所述目标差分图像的特征;
第三处理模块,用于在所述目标差分图像中定位出缺陷区域,根据所述缺陷区域确定所述目标工件的参考缺陷检测结果;
第四处理模块,用于根据所述缺陷检测框信息和所述参考缺陷检测结果,确定所述目标工件的目标缺陷检测结果。
进一步地,第二处理模块还用于:
将所述待测图像与所述目标差分图像分别输入至缺陷目标检测模型,提取所述待测图像的第一图像特征,以及提取所述目标差分图像的第二图像特征;
融合所述第一图像特征和所述第二图像特征得到目标图像特征。
进一步地,第二处理模块还用于:
对所述目标差分图像进行复制,直至所述目标差分图像的通道数量与所述待测图像的通道数量相等;
将所述待测图像与复制后的所述目标差分图像分别输入至缺陷目标检测模型,其中,所述待测图像与复制后的所述目标差分图像共享缺陷所述缺陷目标检测模型中的同一个特征提取模块。
进一步地,第二处理模块还用于:
对所述待测图像依次进行多个阶段的卷积,其中,每个阶段包括至少一条卷积支路,每条所述卷积支路用于进行多次卷积,每当进入下一个阶段的卷积时,增加所述卷积支路进行卷积,增加的所述卷积支路的分辨率小于所属阶段中任意一条已存在的所述卷积支路,任意一个阶段中任意一条所述卷积支路的输入,是根据前一个阶段中所有所述卷积支路的输出融合得到的;
获取最后一个阶段各条所述卷积支路输出的原始卷积特征,将多个所述原始卷积特征进行融合,得到第一目标卷积特征;
对所述第一目标卷积特征进行下采样,得到所述待测图像的第一图像特征。
进一步地,第二处理模块还用于:
将多个所述原始卷积特征进行融合后,分别进行与最后一个阶段各条所述卷积支路分辨率相同的卷积,得到对应分辨率的第二目标卷积特征;
将多个所述第二目标卷积特征进行融合,得到第一目标卷积特征。
进一步地,第二处理模块还用于:
将所述第一图像特征中各个像素点的特征值与所述第二图像特征中对应像素点的特征值进行级联,得到第三图像特征;
对所述第三图像特征进行降维,得到第四图像特征;
对所述第四图像特征进行激活,得到目标图像特征。
进一步地,第二处理模块还用于:
将基于所述目标图像特征进行池化得到的池化特征,输入至所述缺陷目标检测模型中多个级联的检测网络头进行缺陷目标检测,得到所述待测图像中的缺陷检测框信息;
其中,所述池化特征为用于表征目标区域的特征,所述缺陷检测框信息包括缺陷检测框坐标;
输入至首个所述检测网络头的所述池化特征,是在所述目标图像特征中,提取参考检测框坐标对应的特征并与所述目标图像特征进行池化得到的,所述参考检测框坐标是将所述目标图像特征输入至所述缺陷目标检测模型中的区域提议网络进行区域提取得到的;
输入至其余所述检测网络头的所述池化特征,是在所述目标图像特征中,提取前一个所述检测网络头输出的所述缺陷检测框坐标对应的特征,并与所述目标图像特征进行池化得到的。
进一步地,第四处理模块还用于:
当所述参考缺陷检测结果指示所述目标工件不存在缺陷时,获取所述目标缺陷类别对应的预设置信概率阈值以及预设面积阈值;
根据所述缺陷检测框坐标确定缺陷面积,确定所述缺陷面积与所述预设面积阈值之间的第一大小关系,以及所述检测框置信概率与所述预设置信概率阈值之间的第二大小关系;
根据所述第一大小关系和所述第二大小关系确定所述目标工件的目标缺陷检测结果。
进一步地,第四处理模块还用于:
当所述参考缺陷检测结果指示所述目标工件存在缺陷时,确定所述目标工件的目标缺陷检测结果为所述目标工件存在缺陷。
进一步地,第一处理模块还用于:
确定所述待测图像与所述模板图像之间的变换参数,根据所述变换参数将所述模板图像与所述待测图像进行配准;
在进行配准后,将所述待测图像与所述模板图像进行对比差分,得到原始差分图像;
对所述原始差分图像进行形态学过滤,得到目标差分图像。
进一步地,第一处理模块还用于:
基于所述模板图像在所述待测图像中进行滑动窗口,确定所述模板图像每次停留时与所述待测图像中对应区域之间的相关性系数;
根据所述相关性系数在所述待测图像中确定目标区域,根据所述目标区域确定用于将所述待测图像变换至所述模板图像的位置的变换矩阵;
确定所述变换矩阵的逆矩阵,将所述逆矩阵作为所述待测图像与所述模板图像之间的变换参数。
进一步地,第二处理模块还用于:
将所述待测图像与所述目标差分图像进行串接,得到串接图像;
将所述串接图像输入至缺陷目标检测模型,提取所述串接图像的目标图像特征。
进一步地,缺陷检测装置还包括第一训练模块,该第一训练模块用于:
获取所述目标工件的训练图像,将所述训练图像与所述模板图像进行对比差分,得到样本差分图像,其中,所述训练图像标注有对应的缺陷类别标签;
将所述训练图像与所述样本差分图像输入至所述缺陷目标检测模型,得到所述训练图像中的样本检测框信息,其中,所述样本检测框信息包括所述目标工件的样本缺陷类别;
根据所述样本缺陷类别与所述缺陷类别标签确定原始分类损失;
确定预设的第一调整参数和第二调整参数,根据所述第一调整参数和所述第二调整参数调整所述原始分类损失,得到目标分类损失,其中,所述第一调整参数与所述缺陷类别标签对应的正负样本数量相关,所述第二调整参数与所述缺陷类别标签对应的分类难易程度相关;
根据所述目标分类损失训练所述缺陷目标检测模型。
另一方面,本申请实施例还提供了一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的缺陷检测方法。
另一方面,本申请实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行实现上述的缺陷检测方法。
另一方面,本申请实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行实现上述的缺陷检测方法。
本申请实施例至少包括以下有益效果:利用目标工件的待测图像和模板图像进行对比差分,得到目标差分图像,目标差分图像能够提供目标工件在视觉上的差异信息,接着将待测图像和目标差分图像输入至缺陷目标检测模型,从而能够为模型引入差异信息,有助于提高模型进行特征提取的准确率;然后再提取出目标图像特征,并基于目标图像特征对待测图像进行缺陷目标检测,得到待测图像中的缺陷检测框信息,通过利用目标图像特征中目标差分图像对应的特征突出待检测图像中的缺陷区域相关的特征,有助于提高模型对缺少训练样本而未学习的缺陷分类的检测能力,提高缺陷检测框信息的准确率;通过目标差分图像定位得出的缺陷区域确定出目标工件的参考缺陷检测结果,通过综合参考缺陷检测结果和缺陷检测框信息确定目标工件的目标缺陷检测结果,即在深度学习算法进行缺陷检测的基础上结合多次差分对比的特征,能够利用差分对比得到的特征的高视觉可见性,在视觉上辅助进行缺陷检测,有效提高缺陷检测的准确性,降低对训练样本的依赖。
本申请的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。
附图说明
附图用来提供对本申请技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1为本申请实施例提供的一种可选的实施环境的示意图;
图2为本申请实施例提供的缺陷检测方法的一种可选的流程示意图;
图3为本申请实施例提供的待测图像与模板图像进行差分对比的示意图;
图4为本申请实施例提供的待测图像的缺陷检测框信息的生成示意图;
图5为本申请实施例提供的待测图像与目标差分图像进行特征提取的预处理的示意图;
图6为本申请实施例提供的第一图像特征提取过程的示意图;
图7为本申请实施例提供的提取第一图像特征过程中生成卷积支路数据流的示意图;
图8为本申请另一实施例提供的第一图像特征提取过程的示意图;
图9为本申请另一实施例提供的提取第一图像特征过程的示意图;
图10为本申请实施例提供的提取第二目标卷积特征的示意图;
图11为本申请实施例提供的目标图像特征生成过程的示意图;
图12为本申请实施例提供的缺陷目标检测过程的示意图;
图13为本申请实施例提供的目标缺陷检测结果确定过程的示意图;
图14为本申请实施例提供的形态学过滤的效果示意图;
图15为本申请实施例提供的确定相关性系数过程的示意图;
图16为本申请实施例提供的模板图像与待测图像的相似变换对应关系的示意图;
图17为本申请实施例提供的缺陷目标检测模型的训练过程的示意图;
图18为本申请另一实施例提供的缺陷目标检测流程的示意图;
图19是本申请另一实施例提供的缺陷检测框信息生成过程的示意图;
图20为本申请实施例提供的缺陷检测方法的一种可选的整体流程示意图;
图21为本申请实施例提供的缺陷检测方法的一种可选的整体流程示意图;
图22为本申请实施例提供的缺陷检测装置的一种可选的结构示意图;
图23为本申请实施例提供的终端的部分结构框图;
图24为本申请实施例提供的服务器的部分结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,在本申请的各个具体实施方式中,当涉及到需要根据目标对象属性信息或属性信息集合等与目标对象特性相关的数据进行相关处理时,都会先获得目标对象的许可或者同意,而且,对这些数据的收集、使用和处理等,都会遵守相关法律法规和标准。其中,目标对象可以是用户。此外,当本申请实施例需要获取目标对象属性信息时,会通过弹窗或者跳转到确认页面等方式获得目标对象的单独许可或者单独同意,在明确获得目标对象的单独许可或者单独同意之后,再获取用于使本申请实施例能够正常运行的必要的目标对象相关数据。
为便于理解本申请实施例提供的技术方案,这里先对本申请实施例使用的一些关键名词进行解释:
缺陷检测(Defect Detect ion),通常是指对物品表面缺陷的检测,表面缺陷检测时采用机器视觉检测技术,对工件表面的斑点、凹坑、划痕、色差、缺损等缺陷进行检测,并可以对有缺陷部位进行标识。
三原色(Red、Green、Bl ue,RGB),是一种色彩模型,代表红、绿和蓝三原色构成,指对红、绿、蓝三个颜色通道的变化及其相互之间的叠加来得到各种颜色,在电子显示器、摄影、计算机图形学等领域中,RGB被广泛引用于描述、控制和显示彩色图像,如照相机成像后照片的保存格式和显示格式。
形态学图像处理(Morphological Image Processing),是指一系列处理图像形状特征的图像处理技术。形态学的基本思想是利用一种特殊的结构元来测量或提取输入图像中相应的形状或特征,以便进一步进行图像分析和目标识别。
云技术(Cloud technology),是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络***的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台***进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的***后盾支撑,只能通过云计算来实现。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、预训练模型技术、操作/交互***、机电一体化等。其中,预训练模型又称大模型、基础模型,经过微调后可以广泛应用于人工智能各大方向下游任务。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
计算机视觉技术(Computer Vision,CV)是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能***。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
目前,针对产品缺陷检测问题通常采用深度学习算法实现,例如在工业制造场景中,通常采用人工智能和深度学习等技术对产品的外观部分进行质检工作,保证产品的一致性、良品率、安全性,实现产线质检的全自动化。在采用深度学习算法进行缺陷检测的情况下,一般采用有监督训练深度学习网络模型,针对质检工件的图像进行缺陷标注,并通过目标检测方法或者目标分割方法,将异常区域识别出来,再进行缺陷的分类,从而达到相应的缺陷检测的效果,但由于对质检工件的图像进行缺陷标注需要人工手动标出,样本制作成本高,而且随着缺陷种类越多或缺陷特征的可区分性越低,所需的缺陷样本数量越大;另外,一些在视觉上严重缺陷的样本难以获得,导致深度学习算法并未学习过相类似的缺陷的特征,无法准确分辨质检工件的缺陷情况;因此,利用深度学习算法进行缺陷检测的准确性依赖于大量人工标注的缺陷样本,而样本获取难度大、成本高,在缺少样本的情况下降低了缺陷检测的准确性。
为了解决上述问题,本申请实施例提供了一种缺陷检测方法、装置、电子设备及介质,能够提高缺陷检测的准确性的同时降低对训练样本的依赖性。
本申请实施例提供的方法可应用于不同的技术领域,包括但不限于人工智能、云技术、计算机视觉技术、工业自动化等场景。
参照图1,图1为本申请实施例提供的一种可选的实施环境的示意图,该实施环境包括终端101和服务器102,其中,终端101和服务器102之间通过通信网络连接。
终端101可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、车载终端等,但并不局限于此。终端101以及服务器102可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例在此不做限制。可选地,终端101可以获取目标工件的待测图像,然后将待测图像发送至服务器102。
服务器102可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。另外,服务器102还可以是区块链网络中的一个节点服务器。可选地,服务器102内部可以预先存储有缺陷目标检测模型,其中,服务器102还可以预先存储有目标工件的模板图像,或者服务器102可以接收到终端101发送的目标工件的模板图像。当服务器102获取得到目标工件的待测图像以及目标工件的模板图像时,可以将待测图像与模板图像进行对比差分,得到目标差分图像,然后将待测图像与目标差分图像分别输入至预先存储的缺陷检测目标模型,得到待测图像中的缺陷检测框信息,同时还可以在目标差分图像中定位出缺陷区域,根据缺陷区域确定目标工件的参考缺陷检测结果,进而根据缺陷检测框信息和参考缺陷检测信息,确定目标工件的目标缺陷检测结果,在深度学习算法中融合差分对比思想,能够利用差分对比得到的高视觉可见性的特征,在视觉上辅助进行缺陷检测,能够有效提高缺陷检测的准确性,降低对训练样本的依赖性。
示例性地,终端101可以获取得到目标工件的待测图像和目标工件的模板图像,然后将待测图像和模板图像发送至服务器102,当服务器102接收到目标工件的待测图像和模板图像之后,可以将待测图像和模板图像进行对比差分,得到目标差分图像,目标差分图像能够提供目标工件在视觉上的差异信息;接着将待测图像和目标差分图像分别输入至缺陷目标检测模型,提取出目标图像特征,通过为模型引入差异信息,有助于提高模型预测的准确率,改善目标图像特征的可靠性;接着基于目标图像特征对待测图像进行缺陷目标检测,得到待测图像中的缺陷检测框信息,利用目标差分图像突出待检测图像中的缺陷区域相关的特征,有助于提高模型对缺少训练样本而未学习的缺陷分类的检测能力,提高缺陷检测框信息的准确率;同时,在目标差分图像中定位出缺陷区域,根据缺陷区域确定目标工件的参考缺陷检测结果,然后,根据参考缺陷检测结果和缺陷检测框信息确定目标工件的目标缺陷检测结果,即在深度学习算法进行缺陷检测的基础上结合多次差分对比的特征,能够利用差分对比得到的特征的高视觉可见性,在视觉上辅助进行缺陷检测,有效提高缺陷检测的准确性,降低对训练样本的依赖。
参照图2,图2为本申请实施例提供的缺陷检测方法的一种可选的流程示意图,该缺陷检测方法可以由终端执行,或者也可以由服务器执行,或者也可以由终端和服务器配合执行,在本申请实施例中,以该方法由服务器执行为例进行说明,该缺陷检测方法包括但不限于以下步骤201至步骤204。
步骤201:获取目标工件的待测图像以及目标工件的模板图像,将待测图像与模板图像进行对比差分,得到目标差分图像。
在一种可能的实现方式中,目标工件的待测图像可以是通过相机或传感器采集得到的,待测图像可以是目标工件的表面图像、断面图像、红外成像得到的图像等,具体取决于缺陷检测的对象和检测需求;而目标工件的模板图像可以是一个参考图像,即可以是一个已知正常状态或无缺陷的工件的图像,用于与待测图像进行比较,以检测出目标工件上的差异或缺陷,模板图像可以是在目标工件同类别的工件的设计或制造过程中预先获取得到的。具体地,对于表面缺陷检测,可以采用相机来获取目标工件的表面图像,待测图像可以是目标工件的正面、侧面或其他角度的视角,以全面地捕捉工件表面的特征;对于内部缺陷检测或者断面检测,可以采用传感器(如X光传感器、红外线传感器)来获取目标工件的内部结构图像或断面图像,其中,缺陷检测可以应用于多种场景中,例如,钢板缺陷检测、地板瑕疵检测、PCB板缺陷检测、薄膜缺陷检测、灯珠缺陷检测、金属棒材端面检测、织物褶皱等级评定等等,目标工件则相应为钢板、地板、PCB板、薄膜、灯珠、金属棒材、织物等。
在一种可能的实现方式中,在缺陷检测的过程中,可以通过将待测图像与模板图像进行差分对比,找出两者之间的差异和变化,生成目标差分图像,从而可以通过视觉上直观确定出目标工件上可能存在的缺陷或异常情况。具体地,可以分别对目标工件的待测图像与模板图像进行灰度变换处理,先计算图像中当前像素与相邻像素质检的灰度差异,得到像素差分值,然后通过预设灰度差分阈值与像素差分值进行比较,得到当前像素的二值化像素值,进而通过遍历图像各个像素点,得到所有像素点的二值化像素值,将待测图像与模板图像转换为二值图类型的图像,即将待测图像与模板图像转换为灰度图,图像的灰度级别反映了图像中每个像素的亮度值,灰度级别越高,像素的亮度越大;其中,相邻像素可以是指图像中每个像素点周围的像素点,也可以是图像中所有的像素点,还可以是不同尺度的图像中与当前像素的位置所对应的像素点。在得到待测图像与模板图像对应的灰度图之后,可以对两者进行差分对比,首先对两者的图像进行图像匹配,通过对模板图像进行旋转、平移、拉伸等形态学处理,以使模板图像中显示的目标工件与待测图像中显示的目标工件相匹配,进而对待测图像与调整后的模板图像进行图像对比差分处理,即将待测图像与调整后的模板图像两者的对应像素值进行相减,以削减两个图像的相似部分,突出显示两个图像之间的变化部分,如图3所示,图3为本申请实施例提供的待测图像与模板图像进行差分对比的示意图。将待测图像各个像素点的像素值与调整后的模板图像对应像素点的像素值进行相减得到的绝对值,可以得到目标差分图像各个像素点的像素值,目标差分图像各个像素点的像素值的计算公式具体如下:
Df(x,y)=abs[I(x,y)-T(x,y)] (1)
其中,Df(x,y)表示目标差分图像中坐标为(x,y)的像素点的像素值,I(x,y)表示待测图像中坐标为(x,y)的像素点的像素值,T(x,y)表示模板图像中坐标为(x,y)的像素点的像素值。
如图3所示,目标差分图像中显示出差分区域A,说明待测图像与模板图像出现差异,通过对比模板图像和待测图像可以发现,模板图像中显示有与差分区域A对应的结构区域,而待测图像中未显示出与差分区域A对应的结构区域,即与目标工件同类别的参考工件在差分区域A相应的位置中具有第一结构,而目标工件在差分区域A相应的位置中缺少第一结构。
其中,目标工件的待测图像与模板图像两者的色彩模式可以相同或不同,具体地,目标工件的待测图像与模板图像均可以是彩色RGB图像,则在对待测图像与模板图像进行对比差分处理之前需要对两者进行灰度转换;目标工件的待测图像可以是彩色RGB图像,而模板图像可以是预先存储的灰度二值图,则在对待测图像与模板图像进行对比差分处理之前仅需要对待测图像进行灰度转换。
在一种可能的实现方式中,模板图像可以预先存储于服务器或者终端中,在获取目标工件的待测图像之后,对待测图像中的目标工件进行目标检测,判断目标工件所对应的工件类别,进而根据对应的工件类别获取相同工件类别的模板图像,来作为目标工件的模板图像。
步骤202:将待测图像与目标差分图像输入至缺陷目标检测模型,提取出目标图像特征,基于目标图像特征对待测图像进行缺陷目标检测,得到待测图像中的缺陷检测框信息。
在一种可能的实现方式中,缺陷目标检测模型可以是基于深度学习算法构建的用于自动检测和识别工件缺陷的神经网络模型,缺陷目标检测模型能够从输入的样本图像中学习和提取特征,并根据提取得到的特征进行缺陷的预测和分类,而缺陷检测模型的训练方式采用有监督训练,即需要大量的标记数据集进行训练,且缺陷检测模型的性能和准确率取决于训练数据的质量和数量,缺陷检测模型难以检测出未学习的缺陷类别。因此,在输入待测图像至缺陷目标检测模型进行缺陷检测之外,还输入目标差分图像至缺陷目标检测模型,通过目标检测模型能够综合待测图像和目标差分图像提取出目标图像特征,由于目标差分图像是经过待测图像与模板图像差分对比得到的,包含有两者的差异信息,因此,通过引入目标差分图像来为缺陷检测模型提供图像差异信息,辅助缺陷检测模型对待测图像进行特征提取,能够基于图像差异信息更为准确地提取出待测图像中相应区域的特征,有助于提高后续缺陷检测的准确性。
在一种可能的实现方式中,缺陷检测框(Defect detection bounding box)可以是用于标注并定位待测图像中缺陷区域的一个矩形框,而缺陷检测框信息可以是指缺陷检测框在待测图像中的位置坐标,还可以包括缺陷目标检测模型对于该缺陷检测框而输出的置信度。由于待测图像可能无法明显地反映出缺陷,但是目标差分图像具有高视觉可见性,能够突出待测图像中在视觉上具有明显缺陷的特征,从而可以目标图像特征有助于增加缺陷目标检测模型对在视觉上明显存在的缺陷的灵敏度,同时缺陷目标检测模型采用有监督训练方式训练得到,目标图像特征能够补充待测图像与模板图像之间的差异信息,使得缺陷目标检测模型对未学习的缺陷有较好的检测能力,从而提高缺陷目标检测模型的泛化能力,因此,基于目标图像特征对待测图像进行缺陷目标检测,目标图像特征能够为缺陷目标检测模型识别出很小、视觉上不明显或与背景相似的缺陷,提高检测精度,能够有助于减少出现对于正常工件的误检情况和对于有缺陷的工件的漏检情况,也能够辅助缺陷目标检测模型识别出待测图像中未学习过的缺陷特征,提高生成缺陷检测框的准确率,即提高缺陷检测框信息的可靠性。
在一种可能的实现方式中,在将待测图像与目标差分图像输入至缺陷目标检测模型,提取出目标图像特征的过程中,可以先将待测图像与目标差分图像分别输入至缺陷目标检测模型,提取待测图像的第一图像特征,以及提取目标差分图像的第二图像特征;然后,融合第一图像特征和第二图像特征得到目标图像特征。
在一种可能的实现方式中,特征融合可以包括加权融合、特征级联、特征叠加、特征选择等方式,具体地,可以为第一图像特征分配第一权重,为第二图像特征分配第二权重,然后对第一图像特征和第二图像特征进行加权求和得到目标图像特征,第一权重和第二权重的选择可以根据特征的重要性来确定,也可以通过模型训练得到;具体地,还可以为第一图像特征和第二图像特征按照顺序进行串接,形成一个更大的向量,从而可以简单地将两个特征的信息整合在一起,扩展特征向量的维度,使得缺陷目标检测模型可以同时利用待测图像的特征和目标差分图像的特征,提高缺陷目标检测模型的性能;具体地,还可以通过加减法、乘积运算、卷积运算或池化运算等,将第一图像特征和第二图像特征进行叠加,得到目标图像特征;具体地,还可以通过对第一图像特征和第二图像特征进行区域筛选,分别选取第一图像特征和第二图像特征中的部分关键特征信息进行重新组合,形成目标图像特征。待测图像的第一图像特征捕获了目标工件的原始信息,而目标差分图像的第二图像特征捕获了目标工件与参考工件(目标工件的模板图像中所显示的工件)之间的差异信息,即目标工件可能存在的缺陷信息,通过融合第一图像特征和第二图像特征能够更加全面更为准确地表示出目标工件的信息,有助于提高后续的缺陷检测步骤中识别缺陷的准确性。
参照图4,图4为本申请实施例提供的待测图像的缺陷检测框信息的生成示意图,首先获取目标工件的待测图像(图像A)和目标差分图像(差分图像B),然后利用缺陷模板检测模型中的特征提取模块分别对图像A和差分图像B进行特征提取,从而可以得到图像A的图像特征A(即第一图像特征),以及差分图像B的差分图像特征B(即第二图像特征),接着将图像特征A和图特征B进行特征融合,得到目标图像特征C,进而可以基于目标图像特征C对图像A进行缺陷目标检测,得到图像A的缺陷检测框信息。由于引入差分图像特征B(即目标差分图像的第二图像特征)能够使得缺陷目标检测模型更加专注于目标工件与参考工件之间的差异,使得原本可能隐藏在背景噪声或者表面纹理中的缺陷更易于被检测,提高缺陷目标检测模型对缺陷的敏感度,进而提高缺陷检测框信息的准确率。
另外,用于提取图像A和差分图像B两者的特征的特征提取模块可以不相同,两个特征提取模块可以分别采用相应的训练样本训练得到,例如,图像A为彩色图像,则用于提取待测图像(图像A)特征的特征提取模块可以采用彩色图像作为训练样本进行特征提取训练,而差分图像B为灰度图像,则用于提取目标差分图像(差分图像B)特征的特征提取模块可以采用灰度图像作为训练样本进行特征提取训练,从而能够针对不同的图像数据提取得到更为准确的图像特征;另外,用于提取图像A和差分图像B两者特征的特征提取模块的参数可以相同,即共享同一个特征提取模块,从而缺陷目标检测模型的特征提取模块能够同时学习两种不同的信息,更为准确捕捉到两个图像之间的差异信息。
步骤203:在目标差分图像中定位出缺陷区域,根据缺陷区域确定目标工件的参考缺陷检测结果。
在一种可能的实现方式中,可以通过比较目标差分图像中各个像素点的像素值与预设像素阈值,当该像素点的像素值超过预设像素阈值,可以认为该像素点所对应的位置出现缺陷。统计像素值超过预设像素阈值的像素点则可以在目标差分图像中定位出缺陷区域。
在一种可能的实现方式中,目标差分图像可以为灰度图像,可以对目标差分图像进行连通域分析,将具有相同像素值的相邻像素划分为一个连通域,相邻像素可以为前景像素,即将相邻的像素值为1的像素点划分为一个连通域,接着通过计算连通域的外接矩形或者最小外接圆等确定出缺陷区域的位置信息和尺寸信息,可以通过计算连通域的外接矩形,将外接矩形作为缺陷区域。
在一种可能的实现方式中,可以进一步计算连通域的形状特征(如长宽比、圆形度等),来检验缺陷区域是否符合缺陷特征,以筛选过滤出符合缺陷特征的缺陷区域来确定参考缺陷检测结果。另外,还可以在对目标差分图像进行连通域分析之前,先对目标差分图像进行形态学处理(如开运算或闭运算),减少噪声影响,并基于预设连通域阈值(如连通域面积或者连通域周长等)对连通域进行过滤,排除像素点过少的连通域,提高分析的准确性。
在一种可能的实现方式中,在确定出缺陷区域之后,可以通过判断缺陷区域是否符合缺陷特征条件,来确定目标工件的参考缺陷检测结果,即参考缺陷检测结果用于指示基于目标差分图像目标工件是否存在缺陷。具体地,缺陷特征条件可以判断缺陷区域的面积、周长、形状或连通域中像素点的像素值与连通域外像素点的像素值的差值,是否超出预先设定的缺陷阈值;如果缺陷区域符合一个或多个缺陷特征条件,则可以认为该目标工件存在缺陷,即得到参考缺陷检测结果为质检不通过;如果缺陷区域不符合缺陷特征条件,则可以认为该目标工件不存在缺陷,即得到参考缺陷检测结果为质检通过。
步骤204:根据缺陷检测框信息和参考缺陷检测结果,确定目标工件的目标缺陷检测结果。
在一种可能的实现方式中,缺陷检测框信息包括有缺陷目标检测模型根据训练学习的特性预测出待测图像中可能存在缺陷的区域,利用高视觉可见性的参考缺陷检测结果能够避免漏检未在训练过程中出现的但视觉上明显的缺陷,而参考缺陷检测结果是用于指示模板图像与待测图像经过对比差分后得到的目标工件的缺陷情况,对已知缺陷的召回率高,能够有效提升检测精确率。另外,计算机视觉技术容易受到如照明条件、工件表面纹理等因素的干扰,且部分缺陷可能在单独一个视角或维度上难以发觉,但结合多个信息源能够降低干扰因素的影响,提高检测的稳定性和可靠性,进而能够更为全面准确地检测出缺陷。因此,可以通过综合缺陷检测框信息和参考缺陷检测结果来确定出目标缺陷检测结果,能够有效减少误检和漏检的情况,进而提高目标缺陷检测的准确性的同时降低对训练样本的依赖性。
在一种可能的实现方式中,可以通过比较缺陷检测框信息和预设缺陷区域条件,例如,预设缺陷条件可以是缺陷检测框信息指出的缺陷检测框的面积大于预设缺陷面积,或者缺陷检测框信息指出的缺陷检测框包含有不可缺陷的区域(如严重影响工件质量的结构区域)等确定出基于模型预测的角度目标工件的质检是否通过,因此,当缺陷检测框信息或参考缺陷检测结果指出目标工件质检不通过,则可以确定目标工件所存在的缺陷无法通过质检,即目标工件的目标缺陷检测结果为质检不通过;当缺陷检测框信息和参考缺陷检测结果均指出目标工件质检通过,则可以确定目标工件不存在缺陷或存在的缺陷能够通过质检,即模板工件的目标缺陷检测结果为质检通过。
在一种可能的实现方式中,在将待测图像与目标差分图像分别输入至缺陷目标检测模型的过程中,可以先对目标差分图像进行复制,直至目标差分图像的通道数量与待测图像的通道数量相等;接着,将待测图像与复制后的目标差分图像分别输入至缺陷目标检测模型,其中,待测图像与复制后的目标差分图像共享缺陷目标检测模型中的同一个特征提取模块。待测图像和目标差分图像都包含了有助于识别缺陷的关键信息,为了能够使得缺陷目标检测模型能够获取更多的信息以作出更准确的预测,可以将待测图像和目标差分图像均输入至同一个特征提取模块进行特征提取,但特征提取模块需要所有输入具有相同的维度,参照图5,图5为本申请实施例提供的待测图像与目标差分图像进行特征提取的预处理的示意图。在这种情况下,以目标差分图像(图像1)为3x3的灰度图像为例,图像1属于单通道图像,通过矩阵H可以表示,矩阵H中的每个元素对应图像中的一个像素,每个元素表示为亮度,其中,每个元素的取值范围可以是0至255;而待测图像是彩色图像,具有多通道的三维数据,例如以待测图像(图像2)为三通道的3x3的彩色RGB图像,矩阵中通道R的数据表示红色通道的分量,通道G的数据表示绿色通道的分量,通道B的数据表示蓝色通道的分量,因此,可以通过复制的方式来使目标差分图像的通道数量与待测图像的通道数量相等,如图5所示,将目标差分图像(图像1)复制成三通道数据的图像(图像3),其中通道H1、通道H2与通道H的数据相一致。目标差分图像和待测图像共享缺陷目标检测模型中的同一个特征提取模块可以使得缺陷目标检测模型能够在相同的参数空间中处理和学习两种表示方式不同的信息,隐含地为模型提供关于目标工件的差异信息,进一步提高缺陷目标检测模型的性能,同时由于特征提取模块重复使用同一组神经网络权重,无需为每一个输入单独处理和学习一组权重,能够降低对训练样本的依赖,提高训练效率。
在一种可能的实现方式中,在提取待测图像的第一图像特征的过程中,可以先对待测图像依次进行多个阶段的卷积,其中,每个阶段包括至少一条卷积支路,每条卷积支路用于进行多次卷积,每当进入下一个阶段的卷积时,增加卷积支路进行卷积,增加的卷积支路的分辨率小于所属阶段中任意一条已存在的卷积支路,任意一个阶段中任意一条卷积支路的输入,是根据前一个阶段中所有卷积支路的输出融合得到的;然后,获取最后一个阶段各条卷积支路输出的原始卷积特征,将多个原始卷积特征进行融合,得到第一目标卷积特征;接着,对第一目标卷积特征进行下采样,得到待测图像的第一图像特征。
首先,通过对待测图像进行多个阶段的卷积,在每个阶段的卷积过程中都会进行多次卷积,而首次卷积仅能够提取出图像中目标对象(如目标工件的结构)的线条或者边缘等低级特征,随着卷积阶段的增加,能够有效抽取出更深层次的特征,如图像中目标对象的纹理、形状等高级特征,有助于缺陷目标检测模型对待测图像显示的具体内容进行深度理解,以更为准确地进行缺件检测,同时在进行多次卷积的过程中,能够有效降低图像的空间大小,降低后续计算的数据量。而在得到高层次的图像特征后,可以增加新的卷积支路,增加的卷积支路的分辨率小于所属阶段中任一条已存在的卷积支路的分辨率,且所属阶段中任一条已存在的卷积支路是通过前一阶段中的所有卷积支路的输出融合得到的,通过增加更小分辨率的卷积支路可以在已经抽取得到的特征上取检测更具有全局意义或者抽象的特征,逐渐捕捉到更高级的语义信息,同时能够在新的卷积支路中减少特征中的噪声,提高特征的可靠性。具体地,参照图6,图6为本申请实施例提供的第一图像特征提取过程的示意图,提取待测图像的第一图像特征的过程采用并行卷积流的方式,具有多个阶段。从第一个阶段开始,逐步逐个添加高分辨率到低分辨率的数据流,后一个阶段的并行数据流的分辨率由前一个阶段的分辨率和更低的分辨率组成,随着阶段的数量不断增加,不同的分辨率的数量越多。
如图6所示,新的第一卷积支路的输入,即为当前所属阶段的最低分辨率的数据流,其是由前一阶段中的所有卷积支路的输出进行下采样得到的,而在前一阶段中卷积支路存在多条的情况下,可以对所有卷积支路的输出进行下采样,得到分辨率与即将增加的卷积支路的分辨率相同的特征,然后对这些分辨率相同的特征进行融合(如加权融合、级联、叠加等),作为当前所属阶段中增加的卷积支路的输入,实现引入分辨率更低的卷积支路,以获得分辨率更低的图像特征。
参照图7,图7为本申请实施例提供的提取第一图像特征过程中生成卷积支路数据流的示意图。如图7所示出的提取过程与图6所示的提取过程相对应,提取待测图像的第一图像特征的过程,可以分为四个阶段,第一个阶段包含对应于一个分辨率的一个数据流,即对待测图像进行卷积的原始卷积支路的分辨率(第一分辨率)的一个数据流,N11表示为第一个阶段中第一分辨率的数据流,而第二个阶段包含对应于两个分辨率的两个数据流,包含有第一分辨率的一个数据流和低于第一分辨率(第二分辨率)的一个数据流,N21表示为第二阶段中第一分辨率的数据流,N22表示为第二阶段中第二分辨率的数据流,其中,第二分辨率小于第一分辨率,如此类推,实现引入分辨率更低的卷积支路,以获得分辨率更低的图像特征。
在增加新的卷积支路时,即进入新的卷积阶段时,通过对前一阶段中已存在的各条卷积支路的输出进行相应的上采样或者下采样,并添加至对应卷积支路当前卷积的输入中,能够保留前一阶段的原有特征学习路径,同时能够让不同分辨率级别上的特征得以融合,交换不同分辨率的特征信息,具体地,参照图8,图8为本申请另一实施例提供的第一图像特征提取过程的示意图,若当前待采样的卷积支路的分辨率小于目标卷积支路的分辨率,则对当前待采样的卷积支路前一阶段的输出进行上采样,得到分辨率与目标卷积支路的分辨率相同的上采样特征,然后将该上采样特征作为目标卷积支路在当前阶段的输入,使得目标卷积支路对该上采样特征进行卷积;若当前待采样的卷积支路的分辨率大于目标卷积支路的分辨率,则对当前卷积支路前一阶段的输出进行下采样,得到分辨率与目标卷积支路的分辨率相同的下采样特征,然后将该下采样特征作为目标卷积支路在当前阶段的输入,使得目标卷积支路对该下采样特征进行卷积,其中,在需要进行多倍下采样的情况下,可以采用多次下采样的方式采样至所需分辨率;若当前待采样的卷积支路的分辨率等于目标卷积支路的分辨率,即当前待采样的卷积支路为目标卷积支路,则将当前待采样的卷积支路在前一阶段的输出保留,作为该卷积支路(目标卷积支路)在当前阶段的输入,或者将当前待采样的卷积支路在前一阶段的输出进行重采样,作为该卷积支路(目标卷积支路)在当前阶段的输入。
如图8所示,第一分辨率D1大于第二分辨率D2,第二分辨率D2大于第三分辨率D3。当目标卷积支路的分辨率为第一分辨率D1,则第一分辨率对应的卷积支路L1可以直接将自身在前一阶段输出的卷积特征添加至当前阶段的输入,而第二分辨率D2对应的卷积支路L2和第三分辨率对应的卷积支路L3则需要对自身在前一阶段输出的卷积特征进行上采样至第一分辨率D1,并添加至卷积支路L1在当前阶段的输入;当目标卷积支路的分辨率为第二分辨率D2,则第一分辨率对应的卷积支路L1需要对自身在前一阶段输出的卷积特征进行下采样至第二分辨率D2,并添加至卷积支路L2在当前阶段的输入,而第二分辨率对应的卷积支路L2可以直接将自身在前一阶段输出的卷积特征添加至当前阶段的输入,第三分辨率对应的卷积支路L3需要对自身在前一阶段输出的卷积特征进行上采样至第二分辨率D2,并添加至卷积支路L2在当前阶段的输入;当目标卷积支路的分辨率为第三分辨率D3,则第一分辨率对应的卷积支路L1和第二分辨率D2对应的卷积支路L2需要对自身在前一阶段输出的卷积特征进行下采样至第三分辨率D3,并添加至卷积支路L3在当前阶段的输入,而第三分辨率对应的卷积支路L3可以直接将自身在前一阶段输出的卷积特征添加至当前阶段的输入中。从而,每一个阶段开始卷积时,先对当前各个卷积支路输入的数据进行特征融合,减少数据的处理量。通过反复的交换平行数据流中的信息来重复进行多分辨率的融合,从而实现高分辨率和低分辨率并行连接,同步推进,且高分辨率特征与低分辨率特征不断交换信息,提取得到的高分辨率特征在后续的特征融合步骤中能够使得第一图像特征在空间上更加准确,而提取得到的低分辨率特征在后续的特征融合步骤中能够使得第一图像特征在语义上更加充分。
在一种可能的实现方式中,在将多个原始卷积特征进行融合,得到第一目标卷积特征的过程中,可以先将多个原始卷积特征进行融合后,分别进行与最后一个阶段各条卷积支路分辨率相同的卷积,得到对应分辨率的第二目标卷积特征;然后,将多个第二目标卷积特征进行融合,得到第一目标卷积特征。将多个不同分辨率的第二目标卷积特征进行融合,得到第一目标卷积特征,使得第一目标卷积特征能够包含有更为全面和丰富的特征信息;接着,对第一目标卷积特征进行下采样,进一步压缩得到的特征表示,抽取更为抽象和更具有全局语义的特征,得到待测图像的第一图像特征。具体地,参照图9,图9为本申请另一实施例提供的提取第一图像特征过程的示意图,如图9所示,在得到最后一个阶段中所有卷积支路(包括卷积支路L1、卷积支路L2、卷积支路L3和卷积支路L4)输出的原始卷积特征之后,基于卷积支路自身的分辨率,对各个卷积支路的输出的原始卷积特征进行卷积,使得各个卷积支路能够得到与自身分辨率相同的第一目标卷积特征,接着,可以将所有第二目标卷积特征进行拼接,形成第一目标卷积特征,此时第一目标卷积特征的通道数远大于待测图像的通道数,接着,对第一目标卷积特征进行下采样,压缩目标卷积特征,降低第一目标卷积特征的维度,使得得到的第一图像特征的分辨率与所有卷积支路中输出特征的最小分辨率相等。
在一种可能的实现方式中,在对待测图像依次进行多个阶段的卷积的过程中,当当前阶段的最小分辨率满足预设的分辨率阈值,则停止增加新的卷积支路,且将当前阶段作为卷积过程的最后一个阶段,即各条卷积支路进行最后一次卷积。由于每次引入新的卷积支路都会增加更多次数的卷积操作,容易导致模型过于复杂而降低训练效率,另外,分辨率过低可能会损失大量有用的细节信息,影响后续特征融合得到的第一图像特征的质量,因此,通过判断当前阶段的最小分辨率是否满足预设的分辨率阈值,来确定当前阶段是否作为卷积过程的最后一个阶段,当当前阶段为最后一个阶段时,则根据当前卷积支路与其余卷积支路的分辨率大小关系,分别对当前卷积支路在最后一个阶段的输出(即原始卷积特征)进行相应的上采样或者下采样,得到分辨率与其余卷积支路分辨率对应的卷积特征,得到各个卷积支路的第二目标卷积特征。参照图10,图10为本申请实施例提供的提取第二目标卷积特征的示意图,如图10所示,当第M阶段引入新的卷积支路(卷积支路X)所对应的分辨率满足预设的分辨率阈值,则可以确定第M阶段为特征提取的最后一个阶段。因此,可以取第M阶段(最后一个阶段)中所有的卷积支路的输出即原始卷积特征,并对多个原始卷积特征进行融合,然后将融合后的卷积特征分别进行与各条卷积支路分辨率相同的卷积,得到对应分辨率的第二目标卷积特征。具体地,在对多个原始卷积特征进行融合的过程中,可以根据各个卷积支路与其余卷积支路的分辨率大小关系,分别对各个原始卷积特征进行上采样或下采样,添加至第M阶段中对应分辨率的卷积支路的待融合特征集中,然后将待融合特征集中的所有原始卷积特征进行相应分辨率的卷积,生成分辨率与各个卷积支路分辨率相同的第二目标卷积特征。
在一种可能的实现方式中,在融合第一图像特征和第二图像特征得到目标图像特征的过程中,可以将第一图像特征中各个像素点的特征值与第二图像特征中对应像素点的特征值进行级联,得到第三图像特征;接着,对第三图像特征进行降维,得到第四图像特征;然后,对第四图像特征进行激活,得到目标图像特征。参照图11,图11为本申请实施例提供的目标图像特征生成过程的示意图。目标差分图像为灰度图像,即单通道图像,而待测图像为彩色RGB图像,即三通道图像,为了能够复用特征提取模块,加速训练收敛,可以先将目标差分图像的单通道数据进行复制,形成三通道数据的图像,从而目标差分图像的通道数量与待测图像的通道数量相等。然后将三通道数据的目标差分图像和待测图像分别输入至缺陷目标检测模型中同一个特征提取模块,分别得到第一图像特征和得第二图像特征,其中,第一图像特征的维度与第二图像特征的维度相同,维度均为256。经过将第一图像特征与第二图像特征级联后,得到第三图像特征,级联操作相当于将两个特征张量沿着通道维度(特征维度)拼接,能够融合并保留第一图像特征和第二图像特征所包含的信息,由于融合得到的第三图像特征所对应的维度为256*2,第三图像特征存在冗余信息,因此可以采用1*1的卷积核对第三图像特征进行通道降维,得到维度为256的第四图像特征,来减少不必要的特征维度,压缩特征表示,降低后续处理的计算开销,同时将高维特征映射到较低维空间可以有效地从第三图像特征中抽取更高层次的特征表示,有利于提取出更加全局和抽象的信息,提高第四图像特征的质量和可靠性。然后,利用激活函数对第四图像特征进行激活,得到目标图像特征,即第四图像特征和目标图像特征的通道数与待测图像的通道数相同。
在一种可能的实现方式中,在基于目标图像特征对待测图像进行缺陷目标检测,得到待测图像中的缺陷检测框信息的过程中,可以先将基于目标图像特征进行池化得到的池化特征,输入至缺陷目标检测模型中多个级联的检测网络头进行缺陷目标检测,得到待测图像中的缺陷检测框信息。其中,输入至首个检测网络头的池化特征,是在目标图像特征中,提取参考检测框坐标对应的特征并与目标图像特征进行池化得到的,参考检测框坐标是将目标图像特征输入至缺陷目标检测模型中的区域提议网络进行区域提取得到的;输入至其余检测网络头的池化特征,是在目标图像特征中,提取前一个检测网络头输出的缺陷检测框坐标对应的特征,并与目标图像特征进行池化得到的。具体地,对目标图像特征进行池化获得的池化特征可以采用感兴趣区域池化(Region of Interest Pooling,ROIPooling)技术对目标图像特征进行处理得到,感兴趣区域池化是一个用于提取固定大小的特征区域的技术,能够根据特征映射关系从目标图像特征中提取出不同尺寸的感兴趣区域(Region of Interest,ROI)对应的卷积特征图,并池化形成维度相同的特征图。区域提议网络(Region Proposal Network,RPN)是一个全卷积网络,以任意大小的图像作为输入,输出一组矩形的目标提议,每个提议都有一个目标得分,因此,可以利用区域提议网络针对目标图像特征预测出缺陷检测框的边界以及缺陷检测框的置信度,具体地,目标图像特征会被输送至区域提议网络中,提取出目标图像特征中可能存在的缺陷区域,并输出参考检测框的坐标。在利用区域提议网络获取得到初步的参考缺陷检测框坐标后,后续阶段的检测网络头可以利用参考缺陷检测框进行优化,得到更详细准确的缺陷检测框坐标,而非首个阶段的检测网络头都能够接收前一个检测网络头的输出,多级联的方式能够让检测网络头不断学习并提取更高级别的特征表示,进一步优化和细化缺陷检测框,提高缺陷检测框的准确率。
参照图12,图12为本申请实施例提供的缺陷目标检测过程的示意图。缺陷目标检测模型中包括有多个级联的检测网络头,如图12所示,缺陷目标检测模型可以包括有检测网络头H1、检测网络头H2和检测网络头H3,以及局部区域特征提取器Pool,其中,检测网络头H1为首个检测网络头,而检测网络头H3为末尾检测网络头。首先将目标图像特征-图像特征P输入至区域提议网络RPN中进行区域提取,得到参考坐标框坐标B0,接着,将参考检测框坐标B0与图像特征P输入至局部区域特征提取器Pool进行感兴趣区域池化处理,提取池化特征,并送入首个检测网络头H1,网络检测头H1能够基于参考检测框坐标B0调整缺陷检测框的位置和大小,进而输出缺陷检测框坐标B1,网络检测头H1还可以对缺陷种类进行分类,并输出缺陷检测框坐标B1的分类结果C1,分类结果C1用于指示对应缺陷检测框坐标B1的缺陷种类。然后,缺陷检测框坐标B1将被用于与图像特征P提取下一阶段的池化特征,并送入下一个检测网络头H2。经过检测网络头H2对缺陷检测框坐标B1与图像特征P提取得出的池化特征进行缺陷目标检测,进一步调整缺陷检测框的位置和大小,输出新的缺陷检测框坐标B2,同时网络检测头H2还可以输出用于指示缺陷检测框坐标B2的缺陷种类的分类结果C2。接着,对缺陷检测框坐标B3与图像特征P共同输入至局部区域特征提取器Poo l进行感兴趣区域池化,提取得到新的池化特征后输入至最后一个网络检测头H3,网络检测头H3根据池化特征进行最后一次缺陷目标检测,再次调整缺陷检测框的位置和大小,输出新的缺陷检测框坐标B3,并将缺陷检测框坐标B3作为待测图像的缺陷检测框信息,另外,网络检测头H3也可以检测出缺陷检测框坐标B3对应的分类结果C3,从而待测图像的缺陷检测框信息还可以包括有对应缺陷检测框的缺陷种类的分类结果。由于每个阶段的检测结果将会影响下一个阶段的缺陷目标检测的效果,迭代的方式能够使得模型逐步改善检测结果,即先通过区域提议网络RPN粗略定位到参考缺陷检测框,然后通过多个级联的检测网络头不断细化缺陷检测框的位置和大小,提高检测的准确度。
在一种可能的实现方式中,缺陷检测框信息包括缺陷检测框坐标、检测框置信概率以及目标缺陷类别,在根据缺陷检测框信息和参考缺陷检测结果,确定目标工件的目标缺陷检测结果的过程中,当参考缺陷检测结果指示目标工件不存在缺陷时,获取目标缺陷类别对应的预设置信概率阈值以及预设面积阈值;接着,根据缺陷检测框坐标确定缺陷面积,确定缺陷面积与预设面积阈值之间的第一大小关系,以及检测框置信概率与预设置信概率阈值之间的第二大小关系;然后,根据第一大小关系和第二大小关系确定目标工件的目标缺陷检测结果。当参考缺陷检测结果指示目标工件不存在缺陷时,说明基于目标差分图像中目标工件不存在视觉明显的缺陷,因此,可以利用预设置信概率阈值和预设面积阈值对缺陷目标检测模型输出的缺陷检测框信息进行筛选,进一步判断目标工件是否存在缺陷,降低误报和漏报的发生。
缺陷目标检测模型在输出缺陷检测框坐标的同时,还会输出各个缺陷检测框坐标对应的和目标缺陷类别(即图12中的分类结果)和检测框置信概率。目标工件的缺陷类别可以包括多个,如脏污、掉色、划伤、破损、凹陷等,而目标工件针对不同的缺陷类别的质检标准不同,因此,需要根据各个缺陷检测框对应的目标缺陷类别获取预设置信概率阈值和预设面积阈值,即质检标准,通过分别比较缺陷检测框的缺陷面积与预设面积阈值之间的第一大小关系,以及检测置信概率与预设置信概率阈值之间的第二大小关系,来判断缺陷检测框是否存在无法通过质检的缺陷。其中,第一大小关系是用于指示缺陷面积是否超出预设面积阈值,可以反映目标工件的质量,若缺陷面积大于或等于预设面积阈值,则可以认为目标工件的质量不达标,目标工件存在缺陷;第二大小关系是用于指示缺陷检测框的可能性,可以反映目标工件存在该缺陷的可能性大小,若第二大小关系为检测框置信概率大于预设置信概率阈值,可以认为目标工件在对应缺陷检测框的位置中存在缺陷。
根据第一大小关系和第二大小关系来确定目标工件的目标缺陷检测结果,可以根据实际质检的情况调整判断逻辑,如当第一大小关系为缺陷面积大于或等于预设面积阈值,或第二大小关系为检测框置信概率大于预设置信概率阈值,则可以确定出目标工件的目标缺陷检测结果为目标工件存在缺陷,无法通过质检;又如,当第一大小关系为缺陷面积大于或等于预设面积阈值,且第二大小关系为检测框置信概率大于预设置信概率阈值,则可以确定出目标工件的目标缺陷检测结果为目标工件存在缺陷。
具体地,如图13所示,图13为本申请实施例提供的目标缺陷检测结果确定过程的示意图。当参考缺陷检测结果指示目标工件不存在缺陷时,获取缺陷目标检测模型输出的缺陷检测框信息,具体包括缺陷检测框坐标K1、缺陷检测框坐标K2和缺陷检测框坐标K3,其中,缺陷检测框坐标K1对应的检测框置信概率P1为0.8,对应的目标缺陷类别为脏污;缺陷检测框坐标K2对应的检测框置信概率P2为0.3,对应的目标缺陷类别为划损;缺陷检测框坐标K3对应的检测框置信概率P3为0.5,对应的目标缺陷类别为凹陷。接着,分别获取缺陷类别为脏污、划损和凹陷对应的预设置信概率阈值以及预设面积阈值,具体地,脏污对应的预设脏污置信概率阈值为0.7,预设脏污面积阈值为15cm2;划损对应的预设划损置信概率阈值为0.4,预设划损面积为3cm2;凹陷对应的预设凹陷置信概率阈值为0.7,预设凹陷面积为10cm2。然后,根据各个缺陷检测框坐标,确定出对应的缺陷面积,缺陷检测框坐标K1计算得出的脏污缺陷面积S1为20cm2,缺陷检测框坐K2计算得出的划损缺陷面积S2为3.5cm2,而缺陷检测框坐标K3计算得出的凹陷缺陷面积S3为2cm2。通过对比各个缺陷类别的缺陷面积与预设面积阈值,以及检测框置信概率和预设置信概率阈值,可以发现,脏污类别的第一大小关系为脏污缺陷面积大于预设脏污面积阈值,脏污类别的第二大小关系为脏污检测框置信概率大于预设脏污置信概率,因此,缺陷检测框坐标K1所划出的缺陷被认为无法通过质检的缺陷;而凹陷类别的第一大小关系为凹陷缺陷面积小于预设凹陷面积阈值,划损类别的第二大小关系为划损检测框置信概率小于预设划损置信概率,因此,缺陷检测框坐标K2和缺陷检测框坐标K3所划出的缺陷可以被认为能够通过质检的缺陷。但由于目标工件中存在无法通过质检的缺陷即缺陷检测框坐标K1划出的缺陷,所以可以确定出目标工件的目标缺陷检测结果为目标工件存在缺陷,无法通过质检。
在一种可能的实现方式中,当参考缺陷检测结果指示目标工件存在缺陷时,确定目标工件的目标缺陷检测结果为目标工件存在缺陷。若参考缺陷检测结果指示目标工件存在缺陷时,说明目标工件已经存在视觉上明显的缺陷,无需进行进一步的判断,可以直接确定目标工件的目标缺陷检测结果为目标工件存在缺陷,提高缺陷检测的效率。目标工件可以基于对比差分的方法和模型预测的方法分别进行缺陷检测,目标工件先基于对比差分的方法得到参考缺陷检测结果,若参考缺陷检测结果为目标工件存在缺陷,则可以直接得出目标工件存在缺陷的目标缺陷检测结果为目标工件存在缺陷,可以无需考虑模型预测方法得到的缺陷检测框信息。若参考缺陷结果为目标工件不存在缺陷,则需要获取缺陷目标检测模型输出的缺陷检测框信息,进而根据缺陷检测框信息中的缺陷检测框坐标、检测框置信概率以及目标缺陷类别,与目标缺陷类别对应的预设置信概率阈值以及预设面积阈值进行比较,来确定目标参考缺陷结果。
在一种可能的实现方式中,在将待测图像与模板图像进行对比差分,得到目标差分图像的过程中,可以先确定待测图像与模板图像之间的变换参数,根据变换参数将模板图像与待测图像进行配准;在进行配准后,将待测图像与模板图像进行对比差分,得到原始差分图像;接着,对原始差分图像进行形态学过滤,得到目标差分图像。
由于目标工件的待测图像通常是通过摄像设备拍摄得到的,每个目标工件的拍摄位置或摆放方向容易存在偏差,而且待测图像与模板图像是在不同的时间、不同的视角等不同条件下获取的,从而得到的待测图像中显示的目标工件难以与模板图像中显示的目标工件对准,避免影响对比差分效果,因此,可以通过对待测图像与模板图像进行配准,使得待测图像中显示的目标工件与模板图像中显示的目标工件对准,进而能够提高对比差分的效果,提高原始差分图像的准确性。具体地,首先确定出待测图像与模板图像之间的变换参数,将待测图像与模板图像对齐到相同的坐标空间中,使得同一坐标位置的像素对应到实际的同一位置,从而能够确保在对比差分的过程中,比较的是相同区域的内容。确定变换参数并进行图像配准能够实现待测图像与模板图像在空间上的一致性,有助于将两个图像带来的信息有效提炼,并消除因取景差距带来的噪声,从而有助于获得更为准确的原始差分图像。参照图14,图14为本申请实施例提供的形态学过滤的效果示意图。即使待测图像与模板图像经过图像配准,但两者的边缘区域均不可以避免出现无法对齐的部分,容易出现噪点,而干扰目标差分图像的生成,因此,可以通过对原始差分图像进行形态学图像处理过滤(如膨胀、腐蚀、滤波、平滑等),将边缘噪声进行剔除。如图14中的子图(a)所示,可以对原始差分图像进行腐蚀操作,将原始差分图像中的边缘腐蚀或者缩小,得到如图14中的子图(b)所示的腐蚀后的效果图,即将原始差分图像f中的每个像素f(x,y)替换为集合B(相邻像素)中的最小值,利用集合B对原始差分图像f的腐蚀操作,具体公式如下所示:
或者,可以对原始差分图像中的边缘膨胀或者扩张,得到如图16中的子图(c)所示的膨胀后的效果图,即将原始差分图像f中的每个像素f(x,y)替换为集合C(相邻像素)中的最大值,利用集合C对原始差分图像f的膨胀操作,具体公式如下所示:
f⊕C=max[f(x+w,y+v)](w,v)∈C (3)
经过形态学过滤处理后,可以将原始差分图像边缘处的噪声去除得到目标差分图像,将目标差分图像与待测图像输入至缺陷目标检测模型,能够辅助模型进行特征提取和缺陷检测,从而模型可以准确定位出如图14中的子图(d)所示的缺陷区域图像,缺陷区域图像为模型输出的缺陷检测框信息中的部分图像信息。
在一种可能的实现方式中,在确定待测图像与模板图像之间的变换参数的过程中,可以基于模板图像在待测图像中进行滑动窗口,确定模板图像每次停留时与待测图像中对应区域之间的相关性系数;接着,根据相关性系数在待测图像中确定目标区域,根据目标区域确定用于将待测图像变换至模板图像的位置的变换矩阵;然后,确定变换矩阵的逆矩阵,将逆矩阵作为待测图像与模板图像之间的变换参数。参照图15,图15为本申请实施例提供的确定相关性系数过程的示意图。滑动窗口方法是一种常见的计算机视觉中的图像搜索技术,通过在待测图像中对模板图像进行滑动,并每次计算模板图像与待测图像中对应窗口区域之间的相关性系数,可以测量两者的相似程度,从而能够在待测图像中寻找与模板图像最相似的区域,即相关性系数最大的窗口区域为目标区域。在得知目标区域之后,可以确定出变换矩阵,变换矩阵描述了待测图像中的目标区域转换为与模板图像对齐的位置所需要进行的位移、旋转或扭曲等几何变换处理。变换矩阵M可以如下所示:
其中,变换矩阵M中的(tx,ty)表示位移向量,在位移向量基础上增加旋转角度θ实现刚体变换,在位移与旋转的基础上中增加缩放变换参数s实现相似变换,相似变换使得变换前后点距离发生变化,但保持角度不变。如图16所示,图16为本申请实施例提供的模板图像与待测图像的相似变换对应关系的示意图。在确定出变换矩阵M之后,还需要计算出变换矩阵M的逆矩阵Minv,逆矩阵Minv能够应用于模板图像转换为与待测图像中的目标区域,即将模板图像中显示的目标工件变换到待测图像中目标区域显示的目标工件的位置,实现工件对齐。
其中,模板图像每次停留时与待测图像中对应区域之间的相关性系数,可以根据模板图像的像素点的像素值与其像素均值的相对值、待测图像中对应区域的像素点的像素值与其像素均值的相对值之间的相关性进行计算,可以得到相关性系数,相关性系数越大,说明待测图像中对应区域与模板图像越匹配。相关性系数的计算公式如下所示:
其中,T′(x′,y′)表示模板图像中(x′,y′)坐标的像素值与模板图像的像素均值的相对值,I′(x+x′,y+y′)表示待测图像中对应窗口区域(x+x′,y+y′)坐标的像素值与窗口区域的像素均值的相对值。
在一种可能的实现方式中,可以分别对模板图像和待测图像进行灰度转换,然后根据待测图像中滑动窗口区域与模板图像两者各自的灰度值,计算差值、平均绝对差值、绝对误差和、平均误差平方和、归一化积等作为相关性系数,来确定目标区域。
在一种可能的实现方式中,可以采用深度学习配准算法对待测图像中滑动窗口区域与模板图像进行图像匹配,如基于图卷积神经网络的特征匹配算法(SuperGlue)、基于深度学习的自监督特征点检测算法(SuperPoint)等。
在一种可能的实现方式中,参照图17,图17为本申请实施例提供的缺陷目标检测模型的训练过程的示意图,缺陷目标检测模型可以通过以下步骤1701至步骤1705训练得到:
步骤1701:获取目标工件的训练图像,将训练图像与模板图像进行对比差分,得到样本差分图像,其中,训练图像标注有对应的缺陷类别标签;
步骤1702:将训练图像与样本差分图像输入至缺陷目标检测模型,得到训练图像中的样本检测框信息,其中,样本检测框信息包括目标工件的样本缺陷类别;
步骤1703:根据样本缺陷类别与缺陷类别标签确定原始分类损失;
步骤1704:确定预设的第一调整参数和第二调整参数,根据第一调整参数和第二调整参数调整原始分类损失,得到目标分类损失,其中,第一调整参数与缺陷类别标签对应的正负样本数量相关,第二调整参数与缺陷类别标签对应的分类难易程度相关;
步骤1705:根据目标分类损失训练缺陷目标检测模型。
具体地,通过对训练图像与模板图像进行对比差分,可以更好地学习到目标工件的缺陷特征,样本差分图像有利于突出缺陷区域与正常区域之间的区别,然后将训练图像与样本差分图像输入至缺陷目标检测模型,通过样本差分图像为模型提供差分信息,辅助模型学习和训练,提高模型的泛化能力。基于交叉熵损失函数可以利用样本缺陷类别与缺陷类别标签确定出原始分类损失,接着确定预设的第一调整参数和第二调整参数,可以利用第一调整参数和第二调整参数对原始分类损失进行调整,得到目标损失函数,具体地,目标损失函数可以如下公式所示:
其中,x表示缺陷目标检测模型输出的预测分数向量,class表示缺陷类别标签,x[class]表示为模型对于当前输出的缺陷属于某个特定类别的原始预测分数,αclass表示为第一调整参数,γ表示为第二调整参数,而表示交叉熵运算过程,将模型的原始输出转换为概率形式,得到当前输出的缺陷属于某个特定类别的预测概率,当预测概率越大,说明当前输出的缺陷越接近特定类别,分类越准确。相比于交叉熵损失函数,目标损失函数增加了调制因子/>分类准确样本的预测概率趋近于1,调制因子趋近于0,而对于分类不准确的样本,调制因子趋近于0,因此,对于交叉熵损失函数来说,目标损失函数在对于分类不准确的样本的情况下,损失没有改变,而对于分类准确的样本来说,损失会变小,因此,对于整体来说,相当于增加了分类不准确样本在目标损失函数中的权重。同时,输出的预测概率能够反映了模型分类的难易程度,预测概率越大,说明模型分类的置信度越高,代表样本越容易分类;而预测概率越小,说明模型分类的置信度越低,代表样本越难以分类。因此,目标损失函数能够增加难以区分的样本在目标损失函数的权重,使得目标损失函数倾向于难以区分的样本,有助于提高对难样本分类的准确度。由于无缺陷的目标工件的训练图像容易获取,而带有缺陷的目标工件难以获得,而且随着缺陷种类增多,所需的缺陷样本所需数量越多,因此通过第一调整参数可以抑制正负样本的数量失衡,通过第二调整参数可以控制简单/难区分样本数量失衡,其中,正样本可以表示为带有缺陷的目标工件的样本图像,负样本可以表示为无缺陷的目标工件的样本图像。根据上述公式(5)可以看出,利用第一调整参数调节正负样本之间的损失比例,而通过第二调整参数可以调节难易样本之间的损失比例,用来解决目标检测中的类别不均衡问题,可以减少易分类样本的权重,使得模型在训练时更专注于难样本。
在一种可能的实现方式中,第二调整参数可以包括有第一解耦因子和第二解耦因子,第一解耦因子表示为用于调节分类难易程度样本之间的损失比例的基础值,第二解耦因子表示为与各个类别样本不平衡相关的变量参数。具体地,可以参照公式(5)中的第二调整参数γ,其中,γb表示为第一解耦因子,/>表示为第二解耦因子,j表示为第j类别样本,gj表示第j类别样本的训练平衡系数,gj越大说明第j类样本训练平衡,gj越小表示该类别训练不平衡,s表示为目标损失函数中决定第二调整参数上限的缩放因子,即用于辅助调节简单/难区分样本数量失衡问题,因此,通过对第二调整参数解耦,形成第一解耦因子和第二解耦因子,从而能够利用第一解耦因子和第二解耦因子独立处理每个类别样本不平衡的问题,提高模型的性能。具体地,以样本类别总数量为C为例,结合第一调整参数、第一解耦因子和第二解耦因子的目标损失函数可以如下式所示:
在一种可能的实现方式中,在缺陷目标检测模型的训练过程中,样本检测框信息包括缺陷检测框和对应的检测框置信度,在得到样本框信息之后,可以根据检测框置信度进行一次非极大值抑制处理,根据各个缺陷检测框对应的检测框置信度进行排序,将难样本(检测框置信度低)的缺陷检测框输入至下一阶段的训练进行前向传播和反向传播,能够让模型在进行有监督训练时,得到更多针对性的信息,提高训练的速度和质量。具体地,通过计算各个缺陷检测框的交并比(Intersection over Union,IoU),即各个缺陷检测框与当前检测框置信度最高的缺陷检测框的交集与并集的比值,根据各个缺陷检测框的交并比对各个缺陷检测框对应的检测框置信度进行调整,当交并比超过预设比值阈值,则降低该缺陷检测框对应的检测框置信度,若交并比未超过预设比值阈值,则不对该缺陷检测框对应的检测框置信度进行调整。具体地,检测框置信度调整公式如下所示:
其中,Nt表示为预设比值阈值,IoU(M,bi)表示为缺陷检测框的交并比,M表示为检测框置信度最高的缺陷检测框,bi表示为当前的缺陷检测框,si表示为当前的缺陷检测框bi的检测框置信度,从而能够保留重叠的、不明显的缺陷,减少漏检误检的概率。
在一种可能的实现方式中,在根据目标分类损失训练缺陷目标检测模型的过程中,还可以根据样本检测框信息中的缺陷检测框的坐标,以及训练图像中所标注的实际标签检测框的坐标,确定出缺陷检测框的坐标差值;接着,根据坐标差值确定出缺陷检测框的回归损失;然后,根据回归损失和目标分类损失训练缺陷目标检测模型。因此,通过结合回归损失和目标分类损失对模型进行训练,利用回归损失来进行缺陷检测框坐标的拟合回归,利用目标分类损失来对缺陷检测框的类别进行监督和约束,实现同时指导缺陷目标检测模型的缺陷检测框回归和分类问题,提高缺陷目标检测模型的性能,并缓解模型中样本类别不平衡的影响。
在一种可能的实现方式中,训练图像中的样本检测框信息还包括缺陷检测框的坐标,因此可以计算模型预测得出的缺陷检测框与训练图像的实际标签检测框之间在坐标(x,y,w,h)上的差异,其中,x元素表示检测框中心的横坐标,y元素表示检测框中心的纵坐标,w元素表示检测框的宽度,即沿图像水平方向的尺寸,h元素表示检测框的高度,即沿图像垂直方向的尺寸。具体地,可以分别对缺陷检测框与实际标签检测框分别进行归一化,以消除尺寸的影响,能够得到更为准确的坐标差值。接着,可以利用Smooth L1 Loss回归损失函数,根据缺陷检测框的坐标差值来计算缺陷检测框的回归损失,然后可以利用回归损失进行检测框的拟合回归,具体地,可以通过梯度下降法对回归损失进行优化,在优化过程中,不断更新模型的参数,使得模型预测输出的缺陷检测框逐渐接近实际标签检测框,通过最小化回归损失,使得缺陷目标检测模型能够拟合出更为准确的缺陷检测框。
在一种可能的实现方式中,参照图18,图18为本申请另一实施例提供的缺陷目标检测流程的示意图。如图18所示,目标工件的缺陷检测流程可以包括两个分支流程,其中一个分支流程可以包括以下步骤:1.获取目标工件的模板图像和待测图像→2.对待测图像与模板图像进行图像配准,生成变换矩阵→3.将模板图像旋转平移对齐待测图像→4.对待测图像与模板图像进行对比差分,生成目标差分图像→5.对目标差分图像进行形态学图像处理,如膨胀/腐蚀等,过滤噪声区域(工件轻微偏移带来的差分异常值)→6.基于传统逻辑算法定位目标差分图像中的缺陷区域,确定参考缺陷检测结果。另一分支流程可以包括以下步骤:1.将目标差分图像的图像特征与待测图像的图像特征进行串接,形成四通道的图像特征数据→2.利用缺陷目标检测模型进行缺陷检测,输出缺陷检测框信息→3.结合参考缺陷检测结果和缺陷检测框信息进行联合后处理,确定目标工件的目标缺陷检测结果。其中,在结合参考缺陷检测结果和缺陷检测框信息,确定目标工件的目标缺陷检测结果的步骤中,可以将参考缺陷检测结果和缺陷检测框信息输入至联合后处理模型中进行质检预测,输出目标工件的目标缺陷检测结果。
在一种可能的实现方式中,在将待测图像与目标差分图像输入至缺陷目标检测模型,提取出目标图像特征的过程中,可以将待测图像与目标差分图像进行串接,得到串接图像,然后将串接图像输入至缺陷目标检测模型,提取串接图像的目标图像特征。
在一种可能的实现方式中,先对待测图像与目标差分图像进行尺度变换,以保证两张图像在串接方向的对应维度是一致的。而待测图像与目标差分图像的串接可以是横向串接或者是纵向串接,即沿图像的水平方向将两张图像拼接在一起,或者沿图像的垂直方向将两张图像拼接在一起。
参照图19,图19是本申请另一实施例提供的缺陷检测框信息生成过程的示意图。待测图像为三通道的彩色RGB图像,而目标差分图像可以为单通道的灰色图像,通过直接串接待测图像和目标差分图像形成串接图像,串接图像为四通道图像,由于无需分别对待测图像和目标差分图像进行特征提取,减少因特征提取而带来损失,串接图像能够保留两个图像的原始特征信息,有助于模型挖掘学习,提取得到更为准确的目标图像特征,同时采用图像串接的方式输入至缺陷目标检测模型能够提供不同图像在相同位置的差异信息,有助于提高模型检测的准确性。
由于目标图像特征是基于串接图像提取得到的,串接图像是由待测图像和目标差分图像拼接生成,目标差分图像携带有目标工件与参考工件之间的差异信息,因此,目标图像特征能够捕捉到关键的差异信息,从而能够利用目标图像特征协助模型进行缺陷目标检测,提高缺陷检测框信息的准确性。
下面详细说明本申请实施例提供的缺陷检测方法。
参照图20,图20为本申请实施例提供的缺陷检测方法的一种可选的整体流程示意图,其中,该缺陷检测方法包括但不限于以下步骤2001至步骤2024:
步骤2001:获取目标工件的待测图像以及目标工件的模板图像。
步骤2002:基于模板图像在待测图像中进行滑动窗口,确定模板图像每次停留时与待测图像中对应区域之间的相关性系数。
步骤2003:根据相关性系数在待测图像中确定目标区域,根据目标区域确定用于将待测图像变换至模板图像的位置的变换矩阵。
步骤2004:确定变换矩阵的逆矩阵,将逆矩阵作为待测图像与模板图像之间的变换参数。
步骤2005:根据变换参数将模板图像与待测图像进行配准。
步骤2006:将待测图像与模板图像进行对比差分,得到原始差分图像。
步骤2007:对原始差分图像进行形态学过滤,得到目标差分图像。
步骤2008:对目标差分图像进行复制,直至目标差分图像的通道数量与待测图像的通道数量相等。
步骤2009:将待测图像与复制后的目标差分图像分别输入至缺陷目标检测模型。
在本步骤中,待测图像与复制后的目标差分图像共享缺陷目标检测模型中的同一个特征提取模块。
步骤2010:对待测图像依次进行多个阶段的卷积。
在本步骤中,每个阶段包括至少一条卷积支路,每条卷积支路用于进行多次卷积,每当进入下一个阶段的卷积时,增加卷积支路进行卷积,增加的卷积支路的分辨率小于所属阶段中任意一条已存在的卷积支路,任意一个阶段中任意一条卷积支路的输入,是根据前一个阶段中所有卷积支路的输出融合得到的。
步骤2011:获取最后一个阶段各条卷积支路输出的原始卷积特征,将多个原始卷积特征进行融合后,分别进行与最后一个阶段各条卷积支路分辨率相同的卷积,得到对应分辨率的第二目标卷积特征。
在本步骤中,在最后一次卷积时,对于任意一条第二卷积支路,根据与其余第二卷积支路之间的分辨率大小关系,对当前卷积的输出进行上采样或者下采样后,添加至其余第二卷积支路最后一次卷积的输入中;然后获取各条第二卷积支路最后一次卷积输出的原始卷积特征。
步骤2012:将多个第二目标卷积特征进行融合,得到第一目标卷积特征。
步骤2013:对第一目标卷积特征进行下采样,得到待测图像的第一图像特征。
步骤2014:将第一图像特征中各个像素点的特征值与第二图像特征中对应像素点的特征值进行级联,得到第三图像特征。
步骤2015:对第三图像特征进行降维,得到第四图像特征。
步骤2016:对第四图像特征进行激活,得到目标图像特征。
步骤2017:将基于目标图像特征进行池化得到的池化特征,输入至缺陷目标检测模型中多个级联的检测网络头进行缺陷目标检测,得到待测图像中的缺陷检测框信息。
在本步骤中,池化特征为用于表征目标区域的特征,缺陷检测框信息包括缺陷检测框坐标;输入至首个检测网络头的池化特征,是在目标图像特征中,提取参考检测框坐标对应的特征并与目标图像特征进行池化得到的,参考检测框坐标是将目标图像特征输入至缺陷目标检测模型中的区域提议网络进行区域提取得到的;输入至其余检测网络头的池化特征,是在目标图像特征中,提取前一个检测网络头输出的缺陷检测框坐标对应的特征,并与目标图像特征进行池化得到的。
步骤2018:在目标差分图像中定位出缺陷区域,根据缺陷区域确定目标工件的参考缺陷检测结果。
步骤2019:判断参考缺陷检测结果是否指示目标工件存在缺陷,若是,执行步骤2020,若否,执行步骤2021。
步骤2020:确定目标工件的目标缺陷检测结果为目标工件存在缺陷,执行步骤2024。
步骤2021:获取目标缺陷类别对应的预设置信概率阈值以及预设面积阈值。
步骤2022:根据缺陷检测框坐标确定缺陷面积,确定缺陷面积与预设面积阈值之间的第一大小关系,以及检测框置信概率与预设置信概率阈值之间的第二大小关系。
步骤2023:根据第一大小关系和第二大小关系确定目标工件的目标缺陷检测结果。
步骤2024:结束步骤流程。
下面详细说明本申请另一实施例提供的缺陷检测方法。
参照图21,图21为本申请实施例提供的缺陷检测方法的一种可选的整体流程示意图,其中,该缺陷检测方法包括但不限于以下步骤2101至步骤2120:
步骤2101:获取目标工件的待测图像以及目标工件的模板图像。
步骤2102:基于模板图像在待测图像中进行滑动窗口,确定模板图像每次停留时与待测图像中对应区域之间的相关性系数。
步骤2103:根据相关性系数在待测图像中确定目标区域,根据目标区域确定用于将待测图像变换至模板图像的位置的变换矩阵。
步骤2104:确定变换矩阵的逆矩阵,将逆矩阵作为待测图像与模板图像之间的变换参数。
步骤2105:根据变换参数将模板图像与待测图像进行配准。
步骤2106:将待测图像与模板图像进行对比差分,得到原始差分图像。
步骤2107:对原始差分图像进行形态学过滤,得到目标差分图像。
步骤2108:将待测图像与目标差分图像进行串接,得到串接图像。
步骤2109:将串接图像输入至缺陷目标检测模型,对串接图像进行多个阶段的卷积。
在本步骤中,每个阶段包括至少一条卷积支路,每条卷积支路用于进行多次卷积,每当进入下一个阶段的卷积时,增加卷积支路进行卷积,增加的卷积支路的分辨率小于所属阶段中任意一条已存在的卷积支路,任意一个阶段中任意一条卷积支路的输入,是根据前一个阶段中所有卷积支路的输出融合得到的。
步骤2110:获取最后一个阶段各条卷积支路输出的原始卷积特征,将多个原始卷积特征进行融合后,分别进行与最后一个阶段各条卷积支路分辨率相同的卷积,得到对应分辨率的第二目标卷积特征。
在本步骤中,在最后一次卷积时,对于任意一条第二卷积支路,根据与其余第二卷积支路之间的分辨率大小关系,对当前卷积的输出进行上采样或者下采样后,添加至其余第二卷积支路最后一次卷积的输入中;然后获取各条第二卷积支路最后一次卷积输出的原始卷积特征。
步骤2111:将多个第二目标卷积特征进行融合,得到第一目标卷积特征。
步骤2112:对第一目标卷积特征进行下采样,得到串接图像的目标图像特征。
步骤2113:将基于目标图像特征进行池化得到的池化特征,输入至缺陷目标检测模型中多个级联的检测网络头进行缺陷目标检测,得到待测图像中的缺陷检测框信息。
在本步骤中,池化特征为用于表征目标区域的特征,缺陷检测框信息包括缺陷检测框坐标;输入至首个检测网络头的池化特征,是在目标图像特征中,提取参考检测框坐标对应的特征并与目标图像特征进行池化得到的,参考检测框坐标是将目标图像特征输入至缺陷目标检测模型中的区域提议网络进行区域提取得到的;输入至其余检测网络头的池化特征,是在目标图像特征中,提取前一个检测网络头输出的缺陷检测框坐标对应的特征,并与目标图像特征进行池化得到的。
步骤2114:在目标差分图像中定位出缺陷区域,根据缺陷区域确定目标工件的参考缺陷检测结果。
步骤2115:判断参考缺陷检测结果是否指示目标工件存在缺陷,若是,执行步骤2116,若否,执行步骤2117。
步骤2116:确定目标工件的目标缺陷检测结果为目标工件存在缺陷,执行步骤2120。
步骤2117:获取目标缺陷类别对应的预设置信概率阈值以及预设面积阈值。
步骤2118:根据缺陷检测框坐标确定缺陷面积,确定缺陷面积与预设面积阈值之间的第一大小关系,以及检测框置信概率与预设置信概率阈值之间的第二大小关系。
步骤2119:根据第一大小关系和第二大小关系确定目标工件的目标缺陷检测结果。
步骤2120:结束步骤流程。
可以理解的是,虽然上述各个流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本实施例中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时间执行完成,而是可以在不同的时间执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
参照图22,图22为本申请实施例提供的缺陷检测装置2200的一种可选的结构示意图,该缺陷检测装置2200包括:
第一处理模块2201,用于获取目标工件的待测图像以及目标工件的模板图像,将待测图像与模板图像进行对比差分,得到目标差分图像;
第二处理模块2202,用于将待测图像与目标差分图像输入至缺陷目标检测模型,提取出目标图像特征,基于目标图像特征对待测图像进行缺陷目标检测,得到待测图像中的缺陷检测框信息,其中,目标图像特征包括待测图像的特征以及目标差分图像的特征;
第三处理模块2203,用于在目标差分图像中定位出缺陷区域,根据缺陷区域确定目标工件的参考缺陷检测结果;
第四处理模块2204,用于根据缺陷检测框信息和参考缺陷检测结果,确定目标工件的目标缺陷检测结果。
进一步地,第二处理模块2202还用于:
将待测图像与目标差分图像分别输入至缺陷目标检测模型,提取待测图像的第一图像特征,以及提取目标差分图像的第二图像特征;
融合第一图像特征和第二图像特征得到目标图像特征。
在一种可能的实现方式中,第二处理模块2202还用于:
对目标差分图像进行复制,直至目标差分图像的通道数量与待测图像的通道数量相等;
将待测图像与复制后的目标差分图像分别输入至缺陷目标检测模型,其中,待测图像与复制后的目标差分图像共享缺陷目标检测模型中的同一个特征提取模块。
在一种可能的实现方式中,第二处理模块2202还用于:
对待测图像依次进行多个阶段的卷积,其中,每个阶段包括至少一条卷积支路,每条卷积支路用于进行多次卷积,每当进入下一个阶段的卷积时,增加卷积支路进行卷积,增加的卷积支路的分辨率小于所属阶段中任意一条已存在的卷积支路,任意一个阶段中任意一条卷积支路的输入,是根据前一个阶段中所有卷积支路的输出融合得到的;
获取最后一个阶段各条卷积支路输出的原始卷积特征,将多个原始卷积特征进行融合,得到第一目标卷积特征;
对第一目标卷积特征进行下采样,得到待测图像的第一图像特征。
在一种可能的实现方式中,第二处理模块2202还用于:
将多个原始卷积特征进行融合后,分别进行与最后一个阶段各条卷积支路分辨率相同的卷积,得到对应分辨率的第二目标卷积特征;
将多个第二目标卷积特征进行融合,得到第一目标卷积特征。
在一种可能的实现方式中,第二处理模块2202还用于:
将第一图像特征中各个像素点的特征值与第二图像特征中对应像素点的特征值进行级联,得到第三图像特征;
对第三图像特征进行降维,得到第四图像特征;
对第四图像特征进行激活,得到目标图像特征。
在一种可能的实现方式中,第二处理模块2202还用于:
将基于目标图像特征进行池化得到的池化特征,输入至缺陷目标检测模型中多个级联的检测网络头进行缺陷目标检测,得到待测图像中的缺陷检测框信息;
其中,池化特征为用于表征目标区域的特征,缺陷检测框信息包括缺陷检测框坐标;
输入至首个检测网络头的池化特征,是在目标图像特征中,提取参考检测框坐标对应的特征并与目标图像特征进行池化得到的,参考检测框坐标是将目标图像特征输入至缺陷目标检测模型中的区域提议网络进行区域提取得到的;
输入至其余检测网络头的池化特征,是在目标图像特征中,提取前一个检测网络头输出的缺陷检测框坐标对应的特征,并与目标图像特征进行池化得到的。
在一种可能的实现方式中,第四处理模块2204还用于:
当参考缺陷检测结果指示目标工件不存在缺陷时,获取目标缺陷类别对应的预设置信概率阈值以及预设面积阈值;
根据缺陷检测框坐标确定缺陷面积,确定缺陷面积与预设面积阈值之间的第一大小关系,以及检测框置信概率与预设置信概率阈值之间的第二大小关系;
根据第一大小关系和第二大小关系确定目标工件的目标缺陷检测结果。
在一种可能的实现方式中,第四处理模块2204还用于:
当参考缺陷检测结果指示目标工件存在缺陷时,确定目标工件的目标缺陷检测结果为目标工件存在缺陷。
在一种可能的实现方式中,第一处理模块2201还用于:
确定待测图像与模板图像之间的变换参数,根据变换参数将模板图像与待测图像进行配准;
在进行配准后,将待测图像与模板图像进行对比差分,得到原始差分图像;
对原始差分图像进行形态学过滤,得到目标差分图像。
在一种可能的实现方式中,第一处理模块2201还用于:
基于模板图像在待测图像中进行滑动窗口,确定模板图像每次停留时与待测图像中对应区域之间的相关性系数;
根据相关性系数在待测图像中确定目标区域,根据目标区域确定用于将待测图像变换至模板图像的位置的变换矩阵;
确定变换矩阵的逆矩阵,将逆矩阵作为待测图像与模板图像之间的变换参数。
进一步地,第二处理模块2202还用于:
将待测图像与目标差分图像进行串接,得到串接图像;
将串接图像输入至缺陷目标检测模型,提取串接图像的目标图像特征。
在一种可能的实现方式中,缺陷检测装置还包括第一训练模块,该第一训练模块用于:
获取目标工件的训练图像,将训练图像与模板图像进行对比差分,得到样本差分图像,其中,训练图像标注有对应的缺陷类别标签;
将训练图像与样本差分图像输入至缺陷目标检测模型,得到训练图像中的样本检测框信息,其中,样本检测框信息包括目标工件的样本缺陷类别;
根据样本缺陷类别与缺陷类别标签确定原始分类损失;
确定预设的第一调整参数和第二调整参数,根据第一调整参数和第二调整参数调整原始分类损失,得到目标分类损失,其中,第一调整参数与缺陷类别标签对应的正负样本数量相关,第二调整参数与缺陷类别标签对应的分类难易程度相关;
根据目标分类损失训练缺陷目标检测模型。
上述缺陷检测装置2200与缺陷检测方法基于相同的发明构思,利用目标工件的待测图像和模板图像进行对比差分,得到目标差分图像,目标差分图像能够提供目标工件在视觉上的差异信息,接着将待测图像和目标差分图像输入至缺陷目标检测模型,从而能够为模型引入差异信息,有助于提高模型进行特征提取的准确率;然后再提取出目标图像特征,并基于目标图像特征对待测图像进行缺陷目标检测,得到待测图像中的缺陷检测框信息,通过利用目标图像特征中目标差分图像对应的特征突出待检测图像中的缺陷区域相关的特征,有助于提高模型对缺少训练样本而未学习的缺陷分类的检测能力,提高缺陷检测框信息的准确率;通过目标差分图像定位得出的缺陷区域确定出目标工件的参考缺陷检测结果,通过综合参考缺陷检测结果和缺陷检测框信息确定目标工件的目标缺陷检测结果,即在深度学习算法进行缺陷检测的基础上结合多次差分对比的特征,能够利用差分对比得到的特征的高视觉可见性,在视觉上辅助进行缺陷检测,有效提高缺陷检测的准确性,降低对训练样本的依赖。
本申请实施例提供的用于执行上述缺陷检测方法的电子设备可以是终端,参照图23,图23为本申请实施例提供的终端的部分结构框图,该终端包括:摄像头组件2310、存储器2320、输入单元2330、显示单元2340、传感器2350、音频电路2360、无线保真(wirelessfidelity,简称WiFi)模块2370、处理器2380、以及电源2390等部件。本领域技术人员可以理解,图23中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
摄像头组件2310可用于采集图像或视频。可选地,摄像头组件2310包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。
存储器2320可用于存储软件程序以及模块,处理器2380通过运行存储在存储器2320的软件程序以及模块,从而执行终端的各种功能应用以及数据处理。
输入单元2330可用于接收输入的数字或字符信息,以及产生与终端的设置以及功能控制有关的键信号输入。具体地,输入单元2330可包括触摸面板2331以及其他输入装置2332。
显示单元2340可用于显示输入的信息或提供的信息以及终端的各种菜单。显示单元2340可包括显示面板2341。
音频电路2360、扬声器2361,传声器2362可提供音频接口。
电源2390可以是交流电、直流电、一次性电池或可充电电池。
传感器2350的数量可以为一个或者多个,该一个或多个传感器2350包括但不限于:加速度传感器、陀螺仪传感器、压力传感器、光学传感器等等。其中:
加速度传感器可以检测以终端建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器可以用于检测重力加速度在三个坐标轴上的分量。处理器2380可以根据加速度传感器采集的重力加速度信号,控制显示单元2340以横向视图或纵向视图进行用户界面的显示。加速度传感器还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器可以检测终端的机体方向及转动角度,陀螺仪传感器可以与加速度传感器协同采集用户对终端的3D动作。处理器2380根据陀螺仪传感器采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器可以设置在终端的侧边框和/或显示单元2340的下层。当压力传感器设置在终端的侧边框时,可以检测用户对终端的握持信号,由处理器2380根据压力传感器采集的握持信号进行左右手识别或快捷操作。当压力传感器设置在显示单元2340的下层时,由处理器2380根据用户对显示单元2340的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
光学传感器用于采集环境光强度。在一个实施例中,处理器2380可以根据光学传感器采集的环境光强度,控制显示单元2340的显示亮度。具体地,当环境光强度较高时,调高显示单元2340的显示亮度;当环境光强度较低时,调低显示单元2340的显示亮度。在另一个实施例中,处理器2380还可以根据光学传感器采集的环境光强度,动态调整摄像头组件2310的拍摄参数。
在本实施例中,该终端所包括的处理器2380可以执行前面实施例的缺陷检测方法。
本申请实施例提供的用于执行上述缺陷检测方法的电子设备也可以是服务器,参照图24,图24为本申请实施例提供的服务器的部分结构框图,服务器2400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以***处理器(Central ProcessingUnits,简称CPU)2422(例如,一个或一个以上处理器)和存储器2432,一个或一个以上存储应用程序2442或数据2444的存储介质2430(例如一个或一个以上海量存储装置)。其中,存储器2432和存储介质2430可以是短暂存储或持久存储。存储在存储介质2430的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器2400中的一系列指令操作。更进一步地,中央处理器2422可以设置为与存储介质2430通信,在服务器2400上执行存储介质2430中的一系列指令操作。
服务器2400还可以包括一个或一个以上电源2424,一个或一个以上有线或无线网络接口2450,一个或一个以上输入输出接口2458,和/或,一个或一个以上操作***2441,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
服务器2400中的处理器可以用于执行缺陷检测方法。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质用于存储程序代码,程序代码用于执行前述各个实施例的缺陷检测方法。
本申请实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行实现上述的缺陷检测方法。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便描述本申请的实施例,例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或装置不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或装置固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
应了解,在本申请实施例的描述中,多个(或多项)的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。
在本申请所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-On ly Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
还应了解,本申请实施例提供的各种实施方式可以任意进行组合,以实现不同的技术效果。
以上是对本申请的较佳实施进行了具体说明,但本申请并不局限于上述实施方式,熟悉本领域的技术人员在不违背本申请精神的共享条件下还可作出种种等同的变形或替换,这些等同的变形或替换均包括在本申请权利要求所限定的范围内。
Claims (17)
1.一种缺陷检测方法,其特征在于,包括:
获取目标工件的待测图像以及所述目标工件的模板图像,将所述待测图像与所述模板图像进行对比差分,得到目标差分图像;
将所述待测图像与所述目标差分图像输入至缺陷目标检测模型,提取出目标图像特征,基于所述目标图像特征对所述待测图像进行缺陷目标检测,得到所述待测图像中的缺陷检测框信息,其中,所述目标图像特征包括所述待测图像的特征以及所述目标差分图像的特征;
在所述目标差分图像中定位出缺陷区域,根据所述缺陷区域确定所述目标工件的参考缺陷检测结果;
根据所述缺陷检测框信息和所述参考缺陷检测结果,确定所述目标工件的目标缺陷检测结果。
2.根据权利要求1所述的缺陷检测方法,其特征在于,所述将所述待测图像与所述目标差分图像输入至缺陷目标检测模型,提取出目标图像特征,包括:
将所述待测图像与所述目标差分图像分别输入至缺陷目标检测模型,提取所述待测图像的第一图像特征,以及提取所述目标差分图像的第二图像特征;
融合所述第一图像特征和所述第二图像特征得到目标图像特征。
3.根据权利要求2所述的缺陷检测方法,其特征在于,所述将所述待测图像与所述目标差分图像分别输入至缺陷目标检测模型,包括:
对所述目标差分图像进行复制,直至所述目标差分图像的通道数量与所述待测图像的通道数量相等;
将所述待测图像与复制后的所述目标差分图像分别输入至缺陷目标检测模型,其中,所述待测图像与复制后的所述目标差分图像共享缺陷所述缺陷目标检测模型中的同一个特征提取模块。
4.根据权利要求2所述的缺陷检测方法,其特征在于,所述提取所述待测图像的第一图像特征,包括:
对所述待测图像依次进行多个阶段的卷积,其中,每个阶段包括至少一条卷积支路,每条所述卷积支路用于进行多次卷积,每当进入下一个阶段的卷积时,增加所述卷积支路进行卷积,增加的所述卷积支路的分辨率小于所属阶段中任意一条已存在的所述卷积支路,任意一个阶段中任意一条所述卷积支路的输入,是根据前一个阶段中所有所述卷积支路的输出融合得到的;
获取最后一个阶段各条所述卷积支路输出的原始卷积特征,将多个所述原始卷积特征进行融合,得到第一目标卷积特征;
对所述第一目标卷积特征进行下采样,得到所述待测图像的第一图像特征。
5.根据权利要求4所述的缺陷检测方法,其特征在于,所述将多个所述原始卷积特征进行融合,得到第一目标卷积特征,包括:
将多个所述原始卷积特征进行融合后,分别进行与最后一个阶段各条所述卷积支路分辨率相同的卷积,得到对应分辨率的第二目标卷积特征;
将多个所述第二目标卷积特征进行融合,得到第一目标卷积特征。
6.根据权利要求2所述的缺陷检测方法,其特征在于,所述融合所述第一图像特征和所述第二图像特征得到目标图像特征,包括:
将所述第一图像特征中各个像素点的特征值与所述第二图像特征中对应像素点的特征值进行级联,得到第三图像特征;
对所述第三图像特征进行降维,得到第四图像特征;
对所述第四图像特征进行激活,得到目标图像特征。
7.根据权利要求1所述的缺陷检测方法,其特征在于,所述基于所述目标图像特征对所述待测图像进行缺陷目标检测,得到所述待测图像中的缺陷检测框信息,包括:
将基于所述目标图像特征进行池化得到的池化特征,输入至所述缺陷目标检测模型中多个级联的检测网络头进行缺陷目标检测,得到所述待测图像中的缺陷检测框信息;
其中,所述池化特征为用于表征目标区域的特征,所述缺陷检测框信息包括缺陷检测框坐标;
输入至首个所述检测网络头的所述池化特征,是在所述目标图像特征中,提取参考检测框坐标对应的特征并与所述目标图像特征进行池化得到的,所述参考检测框坐标是将所述目标图像特征输入至所述缺陷目标检测模型中的区域提议网络进行区域提取得到的;
输入至其余所述检测网络头的所述池化特征,是在所述目标图像特征中,提取前一个所述检测网络头输出的所述缺陷检测框坐标对应的特征,并与所述目标图像特征进行池化得到的。
8.根据权利要求1所述的缺陷检测方法,其特征在于,所述缺陷检测框信息包括缺陷检测框坐标、检测框置信概率以及目标缺陷类别,所述根据所述缺陷检测框信息和所述参考缺陷检测结果,确定所述目标工件的目标缺陷检测结果,包括:
当所述参考缺陷检测结果指示所述目标工件不存在缺陷时,获取所述目标缺陷类别对应的预设置信概率阈值以及预设面积阈值;
根据所述缺陷检测框坐标确定缺陷面积,确定所述缺陷面积与所述预设面积阈值之间的第一大小关系,以及所述检测框置信概率与所述预设置信概率阈值之间的第二大小关系;
根据所述第一大小关系和所述第二大小关系确定所述目标工件的目标缺陷检测结果。
9.根据权利要求8所述的缺陷检测方法,其特征在于,所述根据所述缺陷检测框信息和所述参考缺陷检测结果,确定所述目标工件的目标缺陷检测结果,还包括:
当所述参考缺陷检测结果指示所述目标工件存在缺陷时,确定所述目标工件的目标缺陷检测结果为所述目标工件存在缺陷。
10.根据权利要求1所述的缺陷检测方法,其特征在于,所述将所述待测图像与所述模板图像进行对比差分,得到目标差分图像,包括:
确定所述待测图像与所述模板图像之间的变换参数,根据所述变换参数将所述模板图像与所述待测图像进行配准;
在进行配准后,将所述待测图像与所述模板图像进行对比差分,得到原始差分图像;
对所述原始差分图像进行形态学过滤,得到目标差分图像。
11.根据权利要求10所述的缺陷检测方法,其特征在于,所述确定所述待测图像与所述模板图像之间的变换参数,包括:
基于所述模板图像在所述待测图像中进行滑动窗口,确定所述模板图像每次停留时与所述待测图像中对应区域之间的相关性系数;
根据所述相关性系数在所述待测图像中确定目标区域,根据所述目标区域确定用于将所述待测图像变换至所述模板图像的位置的变换矩阵;
确定所述变换矩阵的逆矩阵,将所述逆矩阵作为所述待测图像与所述模板图像之间的变换参数。
12.根据权利要求1所述的缺陷检测方法,其特征在于,所述将所述待测图像与所述目标差分图像输入至缺陷目标检测模型,提取出目标图像特征,包括:
将所述待测图像与所述目标差分图像进行串接,得到串接图像;
将所述串接图像输入至缺陷目标检测模型,提取所述串接图像的目标图像特征。
13.根据权利要求1至12任意一项所述的缺陷检测方法,其特征在于,所述缺陷目标检测模型通过以下步骤训练得到:
获取所述目标工件的训练图像,将所述训练图像与所述模板图像进行对比差分,得到样本差分图像,其中,所述训练图像标注有对应的缺陷类别标签;
将所述训练图像与所述样本差分图像输入至所述缺陷目标检测模型,得到所述训练图像中的样本检测框信息,其中,所述样本检测框信息包括所述目标工件的样本缺陷类别;
根据所述样本缺陷类别与所述缺陷类别标签确定原始分类损失;
确定预设的第一调整参数和第二调整参数,根据所述第一调整参数和所述第二调整参数调整所述原始分类损失,得到目标分类损失,其中,所述第一调整参数与所述缺陷类别标签对应的正负样本数量相关,所述第二调整参数与所述缺陷类别标签对应的分类难易程度相关;
根据所述目标分类损失训练所述缺陷目标检测模型。
14.一种缺陷检测装置,其特征在于,包括:
第一处理模块,用于获取目标工件的待测图像以及所述目标工件的模板图像,将所述待测图像与所述模板图像进行对比差分,得到目标差分图像;
第二处理模块,用于将所述待测图像与所述目标差分图像输入至缺陷目标检测模型,提取出目标图像特征,基于所述目标图像特征对所述待测图像进行缺陷目标检测,得到所述待测图像中的缺陷检测框信息,其中,所述目标图像特征包括所述待测图像的特征以及所述目标差分图像的特征;
第三处理模块,用于在所述目标差分图像中定位出缺陷区域,根据所述缺陷区域确定所述目标工件的参考缺陷检测结果;
第四处理模块,用于根据所述缺陷检测框信息和所述参考缺陷检测结果,确定所述目标工件的目标缺陷检测结果。
15.一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至13任意一项所述的缺陷检测方法。
16.一种计算机可读存储介质,所述存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至13任意一项所述的缺陷检测方法。
17.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至13任意一项所述的缺陷检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311498351.5A CN117830210A (zh) | 2023-11-10 | 2023-11-10 | 缺陷检测方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311498351.5A CN117830210A (zh) | 2023-11-10 | 2023-11-10 | 缺陷检测方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117830210A true CN117830210A (zh) | 2024-04-05 |
Family
ID=90503365
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311498351.5A Pending CN117830210A (zh) | 2023-11-10 | 2023-11-10 | 缺陷检测方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117830210A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118037741A (zh) * | 2024-04-15 | 2024-05-14 | 中国水利水电第十工程局有限公司 | 基于机器视觉的人字门焊接质量检测方法及*** |
-
2023
- 2023-11-10 CN CN202311498351.5A patent/CN117830210A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118037741A (zh) * | 2024-04-15 | 2024-05-14 | 中国水利水电第十工程局有限公司 | 基于机器视觉的人字门焊接质量检测方法及*** |
CN118037741B (zh) * | 2024-04-15 | 2024-06-11 | 中国水利水电第十工程局有限公司 | 基于机器视觉的人字门焊接质量检测方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109284670B (zh) | 一种基于多尺度注意力机制的行人检测方法及装置 | |
Yin et al. | Hot region selection based on selective search and modified fuzzy C-means in remote sensing images | |
US8019164B2 (en) | Apparatus, method and program product for matching with a template | |
CN111160249A (zh) | 基于跨尺度特征融合的光学遥感图像多类目标检测方法 | |
CN111985466A (zh) | 一种集装箱危险品标志识别方法 | |
CN107622280B (zh) | 基于场景分类的模块化处方式图像显著性检测方法 | |
CN109934081A (zh) | 一种基于深度神经网络的行人属性识别方法、装置及存储介质 | |
CN111339832A (zh) | 人脸合成图像的检测方法及装置 | |
CN117830210A (zh) | 缺陷检测方法、装置、电子设备及存储介质 | |
Farag | A lightweight vehicle detection and tracking technique for advanced driving assistance systems | |
KR20190059083A (ko) | 영상 분할 기반의 해양 상황 인식 장치 및 그 방법 | |
CN108647703B (zh) | 一种基于显著性的分类图像库的类型判断方法 | |
CN115019201B (zh) | 一种基于特征精细化深度网络的弱小目标检测方法 | |
US7403636B2 (en) | Method and apparatus for processing an image | |
CN117557784B (zh) | 目标检测方法、装置、电子设备及存储介质 | |
CN109658523A (zh) | 利用ar增强现实应用实现车辆各功能使用说明的方法 | |
CN117409244A (zh) | 一种SCKConv多尺度特征融合增强的低照度小目标检测方法 | |
CN117218633A (zh) | 一种物品检测方法、装置、设备及存储介质 | |
CN110910497A (zh) | 实现增强现实地图的方法和*** | |
CN110889418A (zh) | 一种气体轮廓识别方法 | |
CN113537397B (zh) | 基于多尺度特征融合的目标检测与图像清晰联合学习方法 | |
CN115100681A (zh) | 一种衣着识别方法、***、介质及设备 | |
CN114926675A (zh) | 外壳污损缺陷检测方法、装置、计算机设备及存储介质 | |
Chen et al. | EEE-Net: Efficient edge enhanced network for surface defect detection of glass | |
Laptev et al. | Integrating Traditional Machine Learning and Neural Networks for Image Processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |