CN117252822A - 缺陷检测网络的构建及缺陷检测方法、装置和设备 - Google Patents
缺陷检测网络的构建及缺陷检测方法、装置和设备 Download PDFInfo
- Publication number
- CN117252822A CN117252822A CN202311142382.7A CN202311142382A CN117252822A CN 117252822 A CN117252822 A CN 117252822A CN 202311142382 A CN202311142382 A CN 202311142382A CN 117252822 A CN117252822 A CN 117252822A
- Authority
- CN
- China
- Prior art keywords
- defect detection
- network
- target product
- target
- defect
- 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.)
- Granted
Links
- 230000007547 defect Effects 0.000 title claims abstract description 612
- 238000001514 detection method Methods 0.000 title claims abstract description 593
- 238000010276 construction Methods 0.000 title claims description 10
- 238000012549 training Methods 0.000 claims abstract description 73
- 238000000034 method Methods 0.000 claims abstract description 66
- 230000006870 function Effects 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 17
- 239000011159 matrix material Substances 0.000 claims description 13
- 238000003860 storage Methods 0.000 claims description 12
- 238000013138 pruning Methods 0.000 claims description 7
- 238000004891 communication Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 19
- 238000000605 extraction Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 11
- 230000005236 sound signal Effects 0.000 description 8
- 230000000875 corresponding effect Effects 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000002596 correlated effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000003709 image segmentation Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 241000282326 Felis catus Species 0.000 description 1
- 206010037180 Psychiatric symptoms Diseases 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例提供一种缺陷检测网络的构建及缺陷检测方法、装置和设备。在本申请实施例中,能够获取目标产品的数据集和其他数据集,目标产品的数据集由目标产品的缺陷图像和所述目标产品的正常图像组成,所述其他数据集由所述目标产品以外的其他图像组成,所述目标产品的缺陷图像包含有对缺陷位置和缺陷类别的标记;基于所述目标产品的数据集训练得到所述目标产品的缺陷检测子网络,以及基于所述目标产品的数据集和所述其他数据集训练得到所述目标产品的场景检测子网络,所述目标产品的场景检测子网络用于预测待缺陷检测的图像与所述目标产品之间的相关度;基于所述目标产品的场景检测子网络和缺陷检测子网络,构建所述目标产品的缺陷检测网络。
Description
技术领域
本申请涉及深度学习技术领域,尤其涉及一种缺陷检测网络的构建及缺陷检测方法、装置和设备。
背景技术
工业制造的过程中,生产制造的产品缺陷往往是不可避免的,随着用户和生产企业对产品质量的要求越来越高,对于不合格产品的控制和处理要求也进一步提高。由于产品缺陷多种多样,如划痕、破损、异物等类别的缺陷,传统机器视觉算法很难做到对缺陷特征完整的建模和迁移,这类算法对不同类别的产品的缺陷检测的复用性不大,而且在建模和迁移过程中还会浪费大量人力成本。针对此,使用深度学习算法模型对产品的图像进行缺陷检测已经成为一大趋势。
与普通生活场景的检测任务不同,工业产品缺陷检测的领域中,由于产品的种类和缺陷的类别的多样性,所用到的缺陷检测模型也是多种多样的,如TDD-net,FCN,Mask R-CNN,YOLO等。而且这些缺陷检测模型是经过不同的训练集进行训练得到的,其所适用的任务场景也不尽相同,往往需要根据不同的产品,选择不同的缺陷检测模型进行缺陷检测。目前,主要通过人工进行模型的选择,然而这种方式通常依赖于选择模型者的经验水平而且人工选择还存在有一定的主观性,很难基于当前应用场景的图像数据进行正确选择。
因此,如何提供一种缺陷检测方法,以解决现有的人工选择缺陷检测模型导致的所选择的缺陷检测模型不够准确,进而导致缺陷检测效率和准确率较低的问题,仍然需要提供进一步的解决方案。
发明内容
本申请的多个方面提供一种缺陷检测网络的构建及缺陷检测方法、装置和设备,用于解决现有的人工选择缺陷检测模型导致的所选择的缺陷检测模型不够准确,进而导致缺陷检测效率和准确率较低的问题。
本申请实施例提供一种缺陷检测网络的构建方法,包括:获取目标产品的数据集和其他数据集,所述目标产品的数据集由所述目标产品的缺陷图像和所述目标产品的正常图像组成,所述其他数据集由所述目标产品以外的其他图像组成,所述目标产品的缺陷图像包含有对缺陷位置和缺陷类别的标记;基于所述目标产品的数据集训练得到所述目标产品的缺陷检测子网络,以及基于所述目标产品的数据集和所述其他数据集训练得到所述目标产品的场景检测子网络,所述目标产品的场景检测子网络用于预测待缺陷检测的图像与所述目标产品之间的相关度;基于所述目标产品的场景检测子网络和缺陷检测子网络,构建所述目标产品的缺陷检测网络。
本申请实施例提供一种缺陷检测方法,所述方法包括:从目标缺陷检测场景中获取指定数量的待检测图像;将所述指定数量的待检测图像依次输入到多个缺陷检测网络中,以通过多个所述缺陷检测网络中的场景检测子网络,分别确定多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度;其中,多个所述缺陷检测网络中的各缺陷检测网络为基于缺陷检测网络的构建方法构建得到;基于多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度,从多个所述缺陷检测网络中确定目标缺陷检测网络;将所述指定数量的待检测图像输入至所述目标缺陷检测网络中,以通过所述目标缺陷检测网络的缺陷检测子网络对所述指定数量的待检测图像进行缺陷检测。
本申请实施例还提供一种缺陷检测网络的构建装置,包括:数据获取模块,用于获取目标产品的数据集和其他数据集,所述目标产品的数据集由所述目标产品的缺陷图像和所述目标产品的正常图像组成,所述其他数据集由所述目标产品以外的其他图像组成,所述目标产品的缺陷图像包含有对缺陷位置和缺陷类别的标记;网络训练模块,用于基于所述目标产品的数据集训练得到所述目标产品的缺陷检测子网络,以及基于所述目标产品的数据集和所述其他数据集训练得到所述目标产品的场景检测子网络;网络构建模块,用于基于所述目标产品的场景检测子网络和缺陷检测子网络,构建所述目标产品的缺陷检测网络。
本申请实施例还提供一种缺陷检测装置,包括:图像获取模块,用于从目标缺陷检测场景中获取指定数量的待检测图像;相关度确定模块,用于将所述指定数量的待检测图像依次输入到多个缺陷检测网络中,以通过多个所述缺陷检测网络中的场景检测子网络,分别确定多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度;其中,多个所述缺陷检测网络中的各缺陷检测网络为基于缺陷检测网络的构建方法构建得到;网络确定模块,用于基于多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度,从多个所述缺陷检测网络中确定目标缺陷检测网络;缺陷检测模块,用于将所述指定数量的待检测图像输入至所述目标缺陷检测网络中,以通过所述目标缺陷检测网络的缺陷检测子网络对所述指定数量的待检测图像进行缺陷检测。
本申请实施例还提供一种电子设备,包括:处理器和存储器,所述处理器与所述存储器耦合,用于执行存储器中的计算程序以用于执行如缺陷检测网络的构建方法,或如缺陷检测方法中的步骤。
本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,当所述计算机程序被处理器执行时,致使所述处理器实现本申请实施例提供的缺陷检测网络的构建方法或缺陷检测方法中的步骤。
本申请实施例提供的缺陷检测网络的构建方法,能够获取目标产品的数据集和其他数据集,目标产品的数据集由目标产品的缺陷图像和目标产品的正常图像组成,其他数据集由目标产品以外的其他图像组成,目标产品的缺陷图像包含有对缺陷位置和缺陷类别的标记;基于目标产品的数据集训练得到目标产品的缺陷检测子网络,以及基于目标产品的数据集和其他数据集训练得到目标产品的场景检测子网络;基于目标产品的场景检测子网络和缺陷检测子网络,构建目标产品的缺陷检测网络。由于在构建的缺陷检测网络中还添加了用于预测待缺陷检测的图像与目标产品之间的相关度的场景检测子网络,即在使用目标产品的场景检测子网络进行缺陷检测之前,还可通过场景检测子网络对待缺陷检测的图像与目标产品之间的相关度进行预测,以确定目标产品的缺陷检测网络是否与待缺陷检测的图像相匹配,从而确定出与待缺陷检测的图像匹配的缺陷检测网络,提高对待缺陷检测的图像的缺陷检测的准确率。
本申请实施例中提供的缺陷检测方法,能够从目标缺陷检测场景中获取指定数量的待检测图像;并将指定数量的待检测图像依次输入到多个缺陷检测网络中,以通过多个缺陷检测网络中的场景检测子网络,分别确定多个缺陷检测网络中的缺陷检测子网络与目标缺陷检测场景的相关度;再基于多个缺陷检测网络中的缺陷检测子网络与目标缺陷检测场景的相关度,便可以从多个缺陷检测网络中确定出与目标缺陷检测场景最相关的目标缺陷检测网络;最后将指定数量的待检测图像输入至与目标缺陷检测场景最相关的目标缺陷检测网络中,以通过目标缺陷检测网络的缺陷检测子网络对指定数量的待检测图像进行缺陷检测,由于缺陷检测过程中用到的缺陷检测网络与当前的目标缺陷检测场景的相关度最大,因此能够有效提高目标缺陷检测场景中的缺陷检测的准确率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请示例性实施例提供的一种现有的缺陷检测网络的结构示意图;
图2为本申请实施例提供的一种缺陷检测网络的构建方法的实现流程示意图;
图3为本申请实施例提供的缺陷检测网络的构建方法构建得到的缺陷检测网络的结构示意图;
图4为本申请实施例提供的一种缺陷检测方法的实现流程示意图;
图5为本申请示例性实施例提供的一种缺陷检测网络的构建装置的结构示意图;
图6为本申请示例性实施例提供的一种缺陷检测装置的结构示意图;
图7为本申请示例性实施例提供的一种电子设备的结构示意图;
图8为本申请示例性实施例提供的另一种电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
首先,对本申请一个或多个实施例涉及的名词术语进行解释。
目标检测:英文名称为Object Detection,目标检测的任务是找出图像中所有感兴趣的目标(物体),确定它们的类别和位置,是计算机视觉领域的核心问题之一。
计算机视觉中关于图像识别有四大类任务:
(1)分类:英文名称为Classification,解决“是什么?”的问题,即给定一张图片或一段视频判断里面包含什么类别的目标。
(2)定位:英文名称为Location,解决“在哪里?”的问题,即定位出这个目标的位置。
(3)检测:英文名称为Detection,解决“在哪里?是什么”的问题,即定位出这个目标的位置并且知道目标物是什么。
(4)分割:英文名称为Segmentation,分为实例的分割(英文名称为Instance-level)和场景分割(Scene-level),解决“每一个像素属于哪个目标物或场景”的问题。
目前,一个缺陷检测网络通常是针对一种产品或一种缺陷类别训练得到的。例如,针对裂纹的缺陷检测网络可包括目标检测网络YOLO、目标缺陷检测网络SSD、以及图像分割网络UNet,Deeplab等。以目标检测网络YOLO结构为例,图1为本申请示例性实施例提供的一种现有的目标检测网络YOLO的结构示意图。图1是将待缺陷检测图像输入至特征提取模块得到待缺陷检测图像的特征表示,再将待缺陷检测图像的特征表示输入至包含有多个不同尺寸的检测头的缺陷检测模块,得到待缺陷检测图像的缺陷描述,该缺陷描述包含有待检测图像的缺陷位置和缺陷类别。其中,多个不同尺寸的检测头可包括小目标、中目标、大目标的检测头,各检测头包含的预设锚框尺寸不同,具体地,小目标对应的检测头锚框<中目标对应的检测头锚框<大目标对应的检测头锚框。
为解决现有的人工选择缺陷检测模型导致的所选择的缺陷检测模型不够准确,进而导致缺陷检测效率和准确率较低的问题,在本申请一些实施例中提供一种缺陷检测网络的构建方法及其缺陷检测方法。其中,在构建的缺陷检测网络中还添加了用于预测待缺陷检测的图像与目标产品之间的相关度的场景检测子网络,即在使用目标产品的场景检测子网络进行缺陷检测之前,还可通过场景检测子网络对待缺陷检测的图像与目标产品之间的相关度进行预测,以确定目标产品的缺陷检测网络是否与待缺陷检测的图像相匹配,从而确定出与待缺陷检测的图像匹配的缺陷检测网络,提高对待缺陷检测的图像的缺陷检测的准确率,而且缺陷检测网络匹配的过程中不需要人工参与匹配,也有效提高了缺陷检测网络模型的匹配效率。
这样在对目标缺陷检测场景中进行缺陷检测时,能够从目标缺陷检测场景中获取指定数量的待检测图像;并将指定数量的待检测图像依次输入到多个缺陷检测网络中,以通过多个缺陷检测网络中的场景检测子网络,分别确定多个缺陷检测网络中的缺陷检测子网络与目标缺陷检测场景的相关度;再基于多个缺陷检测网络中的缺陷检测子网络与目标缺陷检测场景的相关度,便可以从多个缺陷检测网络中确定出与目标缺陷检测场景最相关的目标缺陷检测网络;最后将指定数量的待检测图像输入至与目标缺陷检测场景最相关的目标缺陷检测网络中,以通过目标缺陷检测网络的缺陷检测子网络对指定数量的待检测图像进行缺陷检测,由于缺陷检测过程中用到的缺陷检测网络与当前的目标缺陷检测场景的相关度最大,因此能够有效提高目标缺陷检测场景中的缺陷检测的准确率以及缺陷检测网络模型的匹配效率。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图2为本申请示例性实施例提供的一种缺陷检测网络的构建方法的流程示意图。如图2所示,该方法包括:
步骤210,获取目标产品的数据集和其他数据集,目标产品的数据集由目标产品的缺陷图像和目标产品的正常图像组成,其他数据集由目标产品以外的其他图像组成,目标产品的缺陷图像包含有对缺陷位置和缺陷类别的标记。
其中,目标产品可以是某一类产品或者可能存在指定缺陷类别的产品。目标产品的缺陷图像为存在缺陷的图像,目标产品的正常图像为不存在缺陷的图像。其他数据集中的图像可以是目标产品以外的其他场景中产生的图像。
步骤220,基于目标产品的数据集训练得到目标产品的缺陷检测子网络,以及基于目标产品的数据集和其他数据集训练得到目标产品的场景检测子网络,目标产品的场景检测子网络用于预测待缺陷检测的图像与目标产品之间的相关度。
其中,缺陷检测子网络和场景检测子网络采用不同的数据集进行迭代训练,具体地,可基于目标产品的数据集训练得到目标产品的缺陷检测子网络,以及基于目标产品的数据集和其他数据集训练得到目标产品的场景检测子网络。
可选地,为提高缺陷检测子网络对目标产品的缺陷图像的检测准确率,可基于目标产品的数据集迭代训练得到缺陷检测子网络。具体地,目标产品的数据集包括目标产品的缺陷图像组成的第一数据集、以及目标产品的正常图像组成的第二数据集,基于目标产品的数据集训练得到目标产品的缺陷检测子网络,包括:
对第一数据集中的图像进行随机打乱;
从随机打乱后的第一数据集中选择第三数量的样本图像,以及从第二数据集中选择一个样本图像,每个训练批次的预设训练样本数量与所述第三数量之差为1;
基于第三数量的样本图像和该一个样本图像,以及预设的第二损失函数更新缺陷检测子网络的网络参数,第二损失函数为基于缺陷检测子网络预测的缺陷检测框的中心点损失、缺陷检测子网络预测的缺陷检测框的宽和高的损失、缺陷检测子网络预测的缺陷检测框中是否包含有缺陷的置信度损失、以及缺陷检测子网络预测的缺陷检测框的类别损失构建得到的;
按照预设的训练轮次,重复执行从随机打乱后的第一数据集中选择第三数量的样本图像,以及从第二数据集中选择一个样本图像至更新缺陷检测子网络的网络参数的步骤,训练得到缺陷检测子网络。
其中,第二损失函数的计算公式为Loss=λcoord∑loss(xy)+λcoord∑loss(wh)λconf∑loss(conf)+λcls∑loss(cls),其中,loss(xy)表示缺陷检测子网络预测的缺陷检测框的中心点的损失,loss(wh)表示缺陷检测子网络预测的缺陷检测框的宽和高的损失,loss(conf)表示缺陷检测子网络预测的缺陷检测框是否有缺陷的置信度损失,loss(cls)表示缺陷检测子网络预测的缺陷检测框的类别损失。其中,缺陷检测框是缺陷检测子网络对输入的待缺陷检测图像进行缺陷检测时,所预测的该待缺陷检测图像中包含缺陷的区域框。
在一些示例性的实施例中,目标产品的数据集可记为S,第一数据集可记为SNG,第二数据集可记为SOK,第一数据集SNG中的缺陷图像包含有对缺陷位置和缺陷类别等缺陷描述的标记,其中,第二数据集SOK由目标产品的正常图像组成。则上述训练缺陷检测子网络的步骤可包括:
S11,对第一数据集SNG中的图像进行随机打乱,使得每次的组合都不一样,进而保证每次取的样本图像的多样性。
S12,每个训练批次的预设样本数量可设置为BS=2N个图像,具体可从第一数据集SNG中选择BS-1个图像,从第二数据集SOK中选择1个图像。
其中,上述第三数量为BS-1,第四数量为1。
S13,根据所选的BS-1个目标产品的缺陷图像以及1个目标产品的正常图像计算第二损失函数的值LAb,并基于第二损失函数的值LAb对缺陷检测子网络的网络参数以及特征提取主干网络的网络参数进行参数更新。
其中,特征提取主干网络是缺陷检测子网络的特征提取模块,这两个任务共用一个特征提取模块。
基于第二损失函数的值LAb对缺陷检测子网络的网络参数以及特征提取主干网络的网络参数进行参数更新的过程是:模型的优化器选用Adam优化算法,momentum:0.937,初始化学习率0.01,训练90轮后停止。
S14,按照预设的训练轮次,重复S12和S13直到当前批次训练完成。
其中,缺陷检测子网络可包括目标检测网络YOLO,SSD,或图像分割网络Unet,Deeplab等网络,本申请实施例对此不作具体限定。
可选地,为提高确定待缺陷检测的图像与缺陷检测网络之间的匹配度,可通过训练得到的目标产品的场景检测子网络来确定待缺陷检测的图像与缺陷检测网络之间的相关度。具体地,基于目标产品的数据集和其他数据集训练得到目标产品的场景检测子网络,包括:
分别对目标产品的数据集以及其他数据集中的图像进行随机打乱;
从随机打乱后的目标产品的数据集中选择第一数量的样本图像,以及从随机打乱后的其他数据集中选择第二数量的样本图像,第一数量和第二数量之和为每个训练批次的预设训练样本数量;
基于第一数量的样本图像和第二数量的样本图像,以及预设的第一损失函数更新所述场景检测子网络的网络参数,第一损失函数为基于距离矩阵的宽和高、样本图像的标签以及距离矩阵上各位置处的值构建得到;
按照预设的训练轮次,重复执行从随机打乱后的目标产品的数据集中选择第一数量的样本图像,以及从随机打乱后的其他数据集中选择第二数量的样本图像至更新场景检测子网络的网络参数的步骤,训练得到场景检测子网络。
其中,距离矩阵是根据第一损失函数设定得到的,每张大小为W*H的原始图像I(该原始图像I来源于第一数量的样本图像)由缺陷检测网络的特征提取主干网络提取得到该图像的特征表示,在此基础上加上两层卷积层得到一个2维距离矩阵Dw,h,其中,w,h是距离矩阵的宽和高。由于只使用了特征提取模块的卷积操作,距离矩阵Dw,h和原始图像I仍然保持有位置上的对应关系,即Dw,h上第i,j位置处的值表示原始图像对应位置图像区域与和来自第二数量的样本图像中的样本图像的距离。所得到的二维的距离表示转换为一维的距离表示可用于场景相关性的度量,待缺陷检测的图像和缺陷检测网络之间的相关度则可表示为C=1-mean(Di,j),mean(Di,j)为待缺陷检测的图像和缺陷检测网络之间的距离。
其中,场景检测子网络可采用OCCNN结构,本申请实施例对此不作具体限定。
在一些示例性的实施例中,目标产品的数据集可记为S,第一数据集可记为SNG,第二数据集可记为SOK,第一数据集SNG中的缺陷图像包含有对缺陷位置和缺陷类别等缺陷描述的标记,其他数据集可记为O。则上述训练场景检测子网络的步骤可包括:
S21,对目标产品的数据集S和其他数据集O中的图像进行随机打乱。
S22,每个训练批次的预设样本数量可设置为BS=2N个图像,具体可从目标产品的数据集S中依次选择BS/2个图像,从其他数据集O中随机选择BS/2个图像。
其中,上述第一数量和第二数量为BS/2。
S23,基于从目标产品的数据集S中选择的BS/2个图像,以及从其他数据集O中随机选择的BS/2个图像,计算第一损失函数的值,其中,第一损失函数的计算公式为式(1):
其中,lossr为第一损失函数,W为距离矩阵的宽,H为距离矩阵的高,Yi为第i张图片的标签,Yi=1表示正常图片,Yi=0表示非正常图片,Di,j为距离矩阵上第(i,j)位置处的值。检测图像和网络之间的相关度则表示为C=1-mean(Di,j)。
S24,利用第一损失函数lossr对场景检测子网络以及特征提取主干网络的网络参数进行参数更新。
S25,按照预设的训练轮次,重复S22和S23直到当前批次训练完成。
S26,交替进行S11~S14和S21~S25两个训练过程E轮次,直至缺陷检测网络的模型收敛,便停止训练。
步骤230,基于目标产品的场景检测子网络和缺陷检测子网络,构建目标产品的缺陷检测网络。
其中,场景检测子网络和缺陷检测子网络为缺陷检测网络的并行分支,所构建的目标产品的缺陷检测网络的结构示意图如图3所示。在图3中,可将待缺陷检测的图像输入至缺陷检测网络的特征提取主干网络中,提取得到待缺陷检测的图像的特征,再将待缺陷检测的图像输入至场景检测子网络中,由场景检测子网络基于待缺陷检测的图像的特征确定待缺陷检测的图像与目标产品之间的相关度。其中,场景检测子网络包括特征提取模块和相关度计算模块,其中,特征提取模块用于从待缺陷检测的图像中提取待缺陷检测的图像的特征表示,相关度计算模块用于基于待缺陷检测的图像的特征表示,计算待缺陷检测的图像与目标产品之间的相关度。在场景检测子网络确定待缺陷检测的图像与目标产品之间的相关度满足一定的条件时,将待缺陷检测的图像输入至缺陷检测子网络中,由缺陷检测子网络对待缺陷检测的图像进行缺陷检测。其中,缺陷检测网络的特征提取主干网络与缺陷检测子网络的特征提取模块是同一个网络模块。
本申请实施例提供的缺陷检测网络的构建方法,能够获取目标产品的数据集和其他数据集,目标产品的数据集由目标产品的缺陷图像和目标产品的正常图像组成,其他数据集由目标产品以外的其他图像组成,目标产品的缺陷图像包含有对缺陷位置和缺陷类别的标记;基于目标产品的数据集训练得到目标产品的缺陷检测子网络,以及基于目标产品的数据集和其他数据集训练得到目标产品的场景检测子网络;基于目标产品的场景检测子网络和缺陷检测子网络,构建目标产品的缺陷检测网络。由于在构建的缺陷检测网络中还添加了用于预测待缺陷检测的图像与目标产品之间的相关度的场景检测子网络,即在使用目标产品的场景检测子网络进行缺陷检测之前,还可通过场景检测子网络对待缺陷检测的图像与目标产品之间的相关度进行预测,以确定目标产品的缺陷检测网络是否与待缺陷检测的图像相匹配,从而确定出与待缺陷检测的图像匹配的缺陷检测网络,提高对待缺陷检测的图像的缺陷检测的准确率。
图4为本申请示例性实施例提供的一种缺陷检测方法的流程示意图,该方法应用于图2~图3所述的缺陷检测网络的构建方法得到的缺陷检测网络。如图4所示,该方法包括:
步骤410,从目标缺陷检测场景中获取指定数量的待检测图像。
其中,该指定数量的待检测图像用于作为多个缺陷检测网络中的场景检测子网络度量目标缺陷检测场景与各缺陷检测网络之间的相关度的依据。该指定数量可根据实际经验来设置,本申请实施例对此不作具体限定。
步骤420,将指定数量的待检测图像依次输入到多个缺陷检测网络中,以通过多个缺陷检测网络中的场景检测子网络,分别确定多个缺陷检测网络中的缺陷检测子网络与目标缺陷检测场景的相关度。
其中,多个缺陷检测网络中的各缺陷检测网络为基于图2所述的缺陷检测网络的构建方法构建得到。
具体地,将指定数量的待检测图像依次输入到多个缺陷检测网络中,具体可将指定数量的待检测图像依次输入到多个缺陷检测网络的场景检测子网络中,由多个缺陷检测网络的场景检测子网络依次确定指定数量的待检测图像与多个缺陷检测网络之间的相关度。
可选地,将指定数量的待检测图像依次输入到多个缺陷检测网络中,以通过多个缺陷检测网络中的场景检测子网络,分别确定多个缺陷检测网络中的缺陷检测子网络与目标缺陷检测场景的相关度,包括:
将指定数量的待检测图像依次输入到多个缺陷检测网络中,以通过多个缺陷检测网络中的场景检测子网络,分别确定指定数量的待检测图像与多个缺陷检测网络中的各缺陷检测子网络的相关度;
基于指定数量的待检测图像与多个缺陷检测网络中的各缺陷检测子网络的相关度,确定指定数量的待检测图像与多个缺陷检测网络中的各缺陷检测子网络的相关度的平均值;
基于指定数量的待检测图像与多个缺陷检测网络中的各缺陷检测子网络的相关度的平均值,确定多个缺陷检测网络中的缺陷检测子网络与目标缺陷检测场景的相关度。
假设多个缺陷检测网络的数量为m个,缺陷检测网络Deti为其中的一个缺陷检测网络,i∈[1,m],指定数量为K,为指定数量的待检测图像中的第j个待检测图像与缺陷检测网络Deti之间的相关度,j∈[1,K],那么缺陷检测网络Deti中的缺陷检测子网络与目标缺陷检测场景的相关度Ci可通过公式/>来表征。
步骤430,基于多个缺陷检测网络中的缺陷检测子网络与目标缺陷检测场景的相关度,从多个缺陷检测网络中确定目标缺陷检测网络。
可选地,基于多个缺陷检测网络中的缺陷检测子网络与目标缺陷检测场景的相关度,从多个缺陷检测网络中确定目标缺陷检测网络,包括:
从多个缺陷检测网络中的缺陷检测子网络与目标缺陷检测场景的相关度中,确定相关度最大的缺陷检测网络;
在相关度最大的缺陷检测网络的缺陷检测子网络与目标缺陷检测场景的相关度不小于预设阈值的情况下,将相关度最大的缺陷检测网络确定为目标缺陷检测网络。
在一些示例性的实施例中,从多个缺陷检测网络中的缺陷检测子网络与目标缺陷检测场景的相关度中,确定相关度最大的缺陷检测网络x=argmax{C1,C2,...,Ci,Cm},若Cx>t(t为预设阈值,代表相关度达标),则选用缺陷检测网络Detx对目标缺陷检测场景中的图像进行缺陷检测。
步骤440,将指定数量的待检测图像输入至目标缺陷检测网络中,以通过目标缺陷检测网络的缺陷检测子网络对所述指定数量的待检测图像进行缺陷检测。
可选地,为避免场景检测子网络对缺陷检测速度的影响,可在确定了目标缺陷检测网络之后,对目标缺陷检测网络中的场景检测子网络进行结构化剪枝。具体地,将指定数量的待检测图像输入至目标缺陷检测网络中,以通过目标缺陷检测网络的缺陷检测子网络对指定数量的待检测图像进行缺陷检测,包括:
对目标缺陷检测网络进行结构化剪枝,以将目标缺陷检测网络的场景相关子网络去除;
将指定数量的待检测图像输入至结构化剪枝后的目标缺陷检测网络中,以通过目标缺陷检测网络的缺陷检测子网络对指定数量的待检测图像进行缺陷检测。
本申请实施例中提供的缺陷检测方法,能够从目标缺陷检测场景中获取指定数量的待检测图像;并将指定数量的待检测图像依次输入到多个缺陷检测网络中,以通过多个缺陷检测网络中的场景检测子网络,分别确定多个缺陷检测网络中的缺陷检测子网络与目标缺陷检测场景的相关度;再基于多个缺陷检测网络中的缺陷检测子网络与目标缺陷检测场景的相关度,便可以从多个缺陷检测网络中确定出与目标缺陷检测场景最相关的目标缺陷检测网络;最后将指定数量的待检测图像输入至与目标缺陷检测场景最相关的目标缺陷检测网络中,以通过目标缺陷检测网络的缺陷检测子网络对指定数量的待检测图像进行缺陷检测,由于缺陷检测过程中用到的缺陷检测网络与当前的目标缺陷检测场景的相关度最大,因此能够有效提高目标缺陷检测场景中的缺陷检测的准确率。
需要说明的是,上述实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤210至步骤230的执行主体可以为设备A;又比如,步骤210至步骤220的执行主体可以为设备A,步骤230的执行主体可以为设备B;等等。
还需要说明的是,本申请实施例提供的缺陷检测网络的构建方法及缺陷检测方法的网络训练和缺陷检测的思路,不仅局限于缺陷检测的场景,将缺陷检测替换为其他目标检测,比如更加通用普适的物体(车辆、人、猫等物体)检测场景中,上述发明构思中的网络训练、网络构建方法也同样适用于这类场景中。
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如210、220、410、等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类别。
图5为本申请示例性实施例提供的一种缺陷检测网络的构建装置500的结构示意图。如图5所示,该装置500包括:数据获取模块510、网络训练模块520和网络构建模块530,其中:
数据获取模块510,用于获取目标产品的数据集和其他数据集,所述目标产品的数据集由所述目标产品的缺陷图像和所述目标产品的正常图像组成,所述其他数据集由所述目标产品以外的其他图像组成,所述目标产品的缺陷图像包含有对缺陷位置和缺陷类别的标记;
网络训练模块520,用于基于所述目标产品的数据集训练得到所述目标产品的缺陷检测子网络,以及基于所述目标产品的数据集和所述其他数据集训练得到所述目标产品的场景检测子网络,所述目标产品的场景检测子网络用于预测待缺陷检测的图像与所述目标产品之间的相关度;
网络构建模块530,用于基于所述目标产品的场景检测子网络和缺陷检测子网络,构建所述目标产品的缺陷检测网络。
可选地,所述网络训练模块520在基于所述目标产品的数据集和所述其他数据集训练得到场景检测子网络时,具体用于:
分别对所述目标产品的数据集以及所述其他数据集中的图像进行随机打乱;
从所述随机打乱后的目标产品的数据集中选择第一数量的样本图像,以及从所述随机打乱后的其他数据集中选择第二数量的样本图像,所述第一数量和所述第二数量之和为每个训练批次的预设训练样本数量;
基于所述第一数量的样本图像和所述第二数量的样本图像,以及预设的第一损失函数更新所述场景检测子网络的网络参数,所述第一损失函数为基于距离矩阵的宽和高、样本图像的标签以及距离矩阵上各位置处的值构建得到;
按照预设的训练轮次,重复执行从所述随机打乱后的目标产品的数据集中选择第一数量的样本图像,以及从所述随机打乱后的其他数据集中选择第二数量的样本图像至更新所述场景检测子网络的网络参数的步骤,训练得到所述场景检测子网络。
可选地,所述目标产品的数据集包括所述目标产品的缺陷图像组成的第一数据集、以及所述目标产品的正常图像组成的第二数据集,所述网络训练模块520在基于所述目标缺陷类别的数据集训练得到缺陷检测子网络时,具体用于:
对所述第一数据集中的图像进行随机打乱;
从所述随机打乱后的第一数据集中选择第三数量的样本图像,以及从所述第二数据集中选择一个样本图像,每个训练批次的预设训练样本数量与所述第三数量之差为1;
基于所述第三数量的样本图像和所述一个样本图像,以及预设的第二损失函数更新所述缺陷检测子网络的网络参数;
按照预设的训练轮次,重复执行从所述随机打乱后的第一数据集中选择第三数量的样本图像,以及从所述第二数据集中选择一个样本图像至更新所述缺陷检测子网络的网络参数的步骤,训练得到所述缺陷检测子网络。
缺陷检测网络的构建装置能够实现图2~图3的方法实施例的方法,具体可参考图2~图3所示实施例的缺陷检测网络的构建方法,不再赘述。
图6为本申请示例性实施例提供的一种缺陷检测装置的结构示意图。如图6所示,该装置600包括:图像获取模块610、相关度确定模块620、网络确定模块630和缺陷检测模块640,其中:
图像获取模块610,用于从目标缺陷检测场景中获取指定数量的待检测图像;
相关度确定模块620,用于将所述指定数量的待检测图像依次输入到多个缺陷检测网络中,以通过多个所述缺陷检测网络中的场景检测子网络,分别确定多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度;
其中,多个所述缺陷检测网络中的各缺陷检测网络为基于图2所述的缺陷检测网络的构建方法构建得到。
网络确定模块630,用于基于多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度,从多个所述缺陷检测网络中确定目标缺陷检测网络;
缺陷检测模块640,用于将所述指定数量的待检测图像输入至所述目标缺陷检测网络中,以通过所述目标缺陷检测网络的缺陷检测子网络对所述指定数量的待检测图像进行缺陷检测。
其中,缺陷检测网络的构建方法具体可参考图1~图4所示实施例的缺陷检测网络的构建方法中的相关过程描述,不再赘述。
可选地,所述相关度确定模块620,具体用于:
将所述指定数量的待检测图像依次输入到多个缺陷检测网络中,以通过多个所述缺陷检测网络中的场景检测子网络,分别确定所述指定数量的待检测图像与多个所述缺陷检测网络中的各缺陷检测子网络的相关度;
基于所述指定数量的待检测图像与多个所述缺陷检测网络中的各缺陷检测子网络的相关度,确定所述指定数量的待检测图像与多个所述缺陷检测网络中的各缺陷检测子网络的相关度的平均值;
基于所述指定数量的待检测图像与多个所述缺陷检测网络中的各缺陷检测子网络的相关度的平均值,确定多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度。
可选地,所述网络确定模块630,具体用于:
从多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度中,确定相关度最大的缺陷检测网络;
在所述相关度最大的缺陷检测网络的缺陷检测子网络与所述目标缺陷检测场景的相关度不小于预设阈值的情况下,将所述相关度最大的缺陷检测网络确定为所述目标缺陷检测网络。
可选地,所述缺陷检测模块640,具体用于:
对所述目标缺陷检测网络进行结构化剪枝,以将所述目标缺陷检测网络的场景相关子网络去除;
将所述指定数量的待检测图像输入至所述结构化剪枝后的目标缺陷检测网络中,以通过所述目标缺陷检测网络的缺陷检测子网络对所述指定数量的待检测图像进行缺陷检测。
缺陷检测装置能够实现图4的方法实施例的方法,具体可参考图4所示实施例的缺陷检测方法,不再赘述。
本申请实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如上述的缺陷检测网络的构建方法,或如上述的缺陷检测方法。具体地,图7为本申请示例性实施例提供的一种电子设备的结构示意图。如图7所示,该设备包括:第一存储器71和第一处理器72。
第一存储器71,用于存储计算机程序,并可被配置为存储其它各种数据以支持在计算设备上的操作。这些数据的示例包括用于在计算设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图像,视频等。
第一处理器72,与第一存储器71耦合,用于执行第一存储器71中的计算机程序,以用于:获取目标产品的数据集和其他数据集,所述目标产品的数据集由所述目标产品的缺陷图像和所述目标产品的正常图像组成,所述其他数据集由所述目标产品以外的其他图像组成,所述目标产品的缺陷图像包含有对缺陷位置和缺陷类别的标记;基于所述目标产品的数据集训练得到所述目标产品的缺陷检测子网络,以及基于所述目标产品的数据集和所述其他数据集训练得到所述目标产品的场景检测子网络,所述目标产品的场景检测子网络用于预测待缺陷检测的图像与所述目标产品之间的相关度;基于所述目标产品的场景检测子网络和缺陷检测子网络,构建所述目标产品的缺陷检测网络。
进一步,如图7所示,该电子设备还包括:第一通信组件73、第一显示器74、第一电源组件75、第一音频组件76等其它组件。图7中仅示意性给出部分组件,并不意味着电子设备只包括图7所示组件。另外,根据流量回放设备的实现形态的不同,图7中虚线框内的组件为可选组件,而非必选组件。例如,当电子设备实现为智能手机、平板电脑或台式电脑等终端设备时,可以包括图7中虚线框内的组件;当电子设备实现为常规服务器、云服务器、数据中心或服务器阵列等服务端设备时,可以不包括图7中虚线框内的组件。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被第一处理器执行时,致使第一处理器能够实现上述缺陷检测网络的构建方法实施例中的步骤。
上述图7中的第一通信组件被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。第一通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,第一通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述第一通信组件还可以包括近场通信(NFC)模块,射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术等。
上述图7中的第一存储器可以由任何类别的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
上述图7中的第一显示器包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
上述图7中的第一电源组件,为第一电源组件所在设备的各种组件提供电力。第一电源组件可以包括电源管理系统,一个或多个电源,及其他与为第一电源组件所在设备生成、管理和分配电力相关联的组件。
上述图7中的第一音频组件,可被配置为输出和/或输入音频信号。例如,第一音频组件包括一个麦克风(MIC),当第一音频组件所在设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在第一存储器或经由第一通信组件发送。在一些实施例中,第一音频组件还包括一个扬声器,用于输出音频信号。
图8为本申请示例性实施例提供的另一种电子设备的结构示意图。如图8所示,该设备包括:第二存储器81和第二处理器82。
第二存储器81,用于存储计算机程序,并可被配置为存储其它各种数据以支持在计算设备上的操作。这些数据的示例包括用于在计算设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图像,视频等。
第二处理器82,与第二存储器81耦合,用于执行第二存储器81中的计算机程序,以用于:从目标缺陷检测场景中获取指定数量的待检测图像;将所述指定数量的待检测图像依次输入到多个缺陷检测网络中,以通过多个所述缺陷检测网络中的场景检测子网络,分别确定多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度;基于多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度,从多个所述缺陷检测网络中确定目标缺陷检测网络;将所述指定数量的待检测图像输入至所述目标缺陷检测网络中,以通过所述目标缺陷检测网络的缺陷检测子网络对所述指定数量的待检测图像进行缺陷检测。
其中,缺陷检测网络的构建方法可详见图2~图3所述的缺陷检测网络的构建方法的实施例。
进一步,如图8所示,该电子设备还包括:第二通信组件83、第二显示器84、第二电源组件85、第二音频组件86等其它组件。图8中仅示意性给出部分组件,并不意味着电子设备只包括图8所示组件。另外,根据流量回放设备的实现形态的不同,图8中虚线框内的组件为可选组件,而非必选组件。例如,当电子设备实现为智能手机、平板电脑或台式电脑等终端设备时,可以包括图8中虚线框内的组件;当电子设备实现为常规服务器、云服务器、数据中心或服务器阵列等服务端设备时,可以不包括图8中虚线框内的组件。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被第二处理器执行时,致使第二处理器能够实现上述缺陷检测方法实施例中的步骤。
上述图8中的第二通信组件被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。第二通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,第二通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述第二通信组件还可以包括近场通信(NFC)模块,射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术等。
上述图8中的第二存储器可以由任何类别的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
上述图8中的第二显示器包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
上述图8中的第二电源组件,为第二电源组件所在设备的各种组件提供电力。第二电源组件可以包括电源管理系统,一个或多个电源,及其他与为第二电源组件所在设备生成、管理和分配电力相关联的组件。
上述图8中的第二音频组件,可被配置为输出和/或输入音频信号。例如,第二音频组件包括一个麦克风(MIC),当第二音频组件所在设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在第二存储器或经由第二通信组件发送。在一些实施例中,第二音频组件还包括一个扬声器,用于输出音频信号。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类别的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (11)
1.一种缺陷检测网络的构建方法,其特征在于,包括:
获取目标产品的数据集和其他数据集,所述目标产品的数据集由所述目标产品的缺陷图像和所述目标产品的正常图像组成,所述其他数据集由所述目标产品以外的其他图像组成,所述目标产品的缺陷图像包含有对缺陷位置和缺陷类别的标记;
基于所述目标产品的数据集训练得到所述目标产品的缺陷检测子网络,以及基于所述目标产品的数据集和所述其他数据集训练得到所述目标产品的场景检测子网络,所述目标产品的场景检测子网络用于预测待缺陷检测的图像与所述目标产品之间的相关度;
基于所述目标产品的场景检测子网络和缺陷检测子网络,构建所述目标产品的缺陷检测网络。
2.如权利要求1所述的方法,其特征在于,所述基于所述目标产品的数据集和所述其他数据集训练得到场景检测子网络,包括:
分别对所述目标产品的数据集以及所述其他数据集中的图像进行随机打乱;
从所述随机打乱后的目标产品的数据集中选择第一数量的样本图像,以及从所述随机打乱后的其他数据集中选择第二数量的样本图像,所述第一数量和所述第二数量之和为每个训练批次的预设训练样本数量;
基于所述第一数量的样本图像和所述第二数量的样本图像,以及预设的第一损失函数更新所述场景检测子网络的网络参数,所述第一损失函数为基于距离矩阵的宽和高、样本图像的标签以及所述距离矩阵上各位置处的值构建得到;
按照预设的训练轮次,重复执行从所述随机打乱后的目标产品的数据集中选择第一数量的样本图像,以及从所述随机打乱后的其他数据集中选择第二数量的样本图像至更新所述场景检测子网络的网络参数的步骤,训练得到所述场景检测子网络。
3.如权利要求1所述的方法,其特征在于,所述目标产品的数据集包括所述目标产品的缺陷图像组成的第一数据集、以及所述目标产品的正常图像组成的第二数据集,所述基于所述目标缺陷类别的数据集训练得到缺陷检测子网络,包括:
对所述第一数据集中的图像进行随机打乱;
从所述随机打乱后的第一数据集中选择第三数量的样本图像,以及从所述第二数据集中选择一个样本图像,每个训练批次的预设训练样本数量与所述第三数量之差为1;
基于所述第三数量的样本图像和所述一个样本图像,以及预设的第二损失函数更新所述缺陷检测子网络的网络参数,所述第二损失函数为基于所述缺陷检测子网络预测的缺陷检测框的中心点损失、所述缺陷检测框的宽和高的损失、所述缺陷检测框中是否包含有缺陷的置信度损失以及所述缺陷检测框的类别损失构建得到的;
按照预设的训练轮次,重复执行从所述随机打乱后的第一数据集中选择第三数量的样本图像,以及从所述第二数据集中选择一个样本图像至更新所述缺陷检测子网络的网络参数的步骤,训练得到所述缺陷检测子网络。
4.一种缺陷检测方法,其特征在于,包括:
从目标缺陷检测场景中获取指定数量的待检测图像;
将所述指定数量的待检测图像依次输入到多个缺陷检测网络中,以通过多个所述缺陷检测网络中的场景检测子网络,分别确定多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度;其中,多个所述缺陷检测网络中的各缺陷检测网络为基于权利要求1~3中任一所述的方法构建得到;
基于多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度,从多个所述缺陷检测网络中确定目标缺陷检测网络;
将所述指定数量的待检测图像输入至所述目标缺陷检测网络中,以通过所述目标缺陷检测网络的缺陷检测子网络对所述指定数量的待检测图像进行缺陷检测。
5.如权利要求4所述的方法,其特征在于,所述将所述指定数量的待检测图像依次输入到多个缺陷检测网络中,以通过多个所述缺陷检测网络中的场景检测子网络,分别确定多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度,包括:
将所述指定数量的待检测图像依次输入到多个缺陷检测网络中,以通过多个所述缺陷检测网络中的场景检测子网络,分别确定所述指定数量的待检测图像与多个所述缺陷检测网络中的各缺陷检测子网络的相关度;
基于所述指定数量的待检测图像与多个所述缺陷检测网络中的各缺陷检测子网络的相关度,确定所述指定数量的待检测图像与多个所述缺陷检测网络中的各缺陷检测子网络的相关度的平均值;
基于所述指定数量的待检测图像与多个所述缺陷检测网络中的各缺陷检测子网络的相关度的平均值,确定多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度。
6.如权利要求4所述的方法,其特征在于,所述基于多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度,从多个所述缺陷检测网络中确定目标缺陷检测网络,包括:
从多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度中,确定相关度最大的缺陷检测网络;
在所述相关度最大的缺陷检测网络的缺陷检测子网络与所述目标缺陷检测场景的相关度不小于预设阈值的情况下,将所述相关度最大的缺陷检测网络确定为所述目标缺陷检测网络。
7.如权利要求4所述的方法,其特征在于,所述将所述指定数量的待检测图像输入至所述目标缺陷检测网络中,以通过所述目标缺陷检测网络的缺陷检测子网络对所述指定数量的待检测图像进行缺陷检测,包括:
对所述目标缺陷检测网络进行结构化剪枝,以将所述目标缺陷检测网络的场景相关子网络去除;
将所述指定数量的待检测图像输入至所述结构化剪枝后的目标缺陷检测网络中,以通过所述目标缺陷检测网络的缺陷检测子网络对所述指定数量的待检测图像进行缺陷检测。
8.一种缺陷检测网络的构建装置,其特征在于,包括:
数据获取模块,用于获取目标产品的数据集和其他数据集,所述目标产品的数据集由所述目标产品的缺陷图像和所述目标产品的正常图像组成,所述其他数据集由所述目标产品以外的其他图像组成,所述目标产品的缺陷图像包含有对缺陷位置和缺陷类别的标记;
网络训练模块,用于基于所述目标产品的数据集训练得到所述目标产品的缺陷检测子网络,以及基于所述目标产品的数据集和所述其他数据集训练得到所述目标产品的场景检测子网络,所述目标产品的场景检测子网络用于预测待缺陷检测的图像与所述目标产品之间的相关度;
网络构建模块,用于基于所述目标产品的场景检测子网络和缺陷检测子网络,构建所述目标产品的缺陷检测网络。
9.一种缺陷检测装置,其特征在于,包括:
图像获取模块,用于从目标缺陷检测场景中获取指定数量的待检测图像;
相关度确定模块,用于将所述指定数量的待检测图像依次输入到多个缺陷检测网络中,以通过多个所述缺陷检测网络中的场景检测子网络,分别确定多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度;其中,多个所述缺陷检测网络中的各缺陷检测网络为基于权利要求1~3中任一所述的方法构建得到;
网络确定模块,用于基于多个所述缺陷检测网络中的缺陷检测子网络与所述目标缺陷检测场景的相关度,从多个所述缺陷检测网络中确定目标缺陷检测网络;
缺陷检测模块,用于将所述指定数量的待检测图像输入至所述目标缺陷检测网络中,以通过所述目标缺陷检测网络的缺陷检测子网络对所述指定数量的待检测图像进行缺陷检测。
10.一种电子设备,其特征在于,包括:处理器和存储器,所述处理器与所述存储器耦合,用于执行存储器中的计算程序以用于执行如权利要求1至3任一项所述的缺陷检测网络的构建方法,或如权利要求4至7任一所述的缺陷检测方法中的步骤。
11.一种存储有计算机程序的计算机可读存储介质,其特征在于,当所述计算机程序被处理器执行时,致使所述处理器实现如权利要求1至3任一项所述的缺陷检测网络的构建方法,或如权利要求4至7任一所述的缺陷检测方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311142382.7A CN117252822B (zh) | 2023-09-05 | 2023-09-05 | 缺陷检测网络的构建及缺陷检测方法、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311142382.7A CN117252822B (zh) | 2023-09-05 | 2023-09-05 | 缺陷检测网络的构建及缺陷检测方法、装置和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117252822A true CN117252822A (zh) | 2023-12-19 |
CN117252822B CN117252822B (zh) | 2024-07-09 |
Family
ID=89134076
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311142382.7A Active CN117252822B (zh) | 2023-09-05 | 2023-09-05 | 缺陷检测网络的构建及缺陷检测方法、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117252822B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110598761A (zh) * | 2019-08-26 | 2019-12-20 | 深圳大学 | 一种点胶检测方法、装置及计算机可读存储介质 |
CN111832101A (zh) * | 2020-06-18 | 2020-10-27 | 湖北博华自动化系统工程有限公司 | 一种水泥强度预测模型的构建方法及水泥强度预测方法 |
US20210407062A1 (en) * | 2020-06-30 | 2021-12-30 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Product defect detection method and apparatus, electronic device and storage medium |
CN115112661A (zh) * | 2022-05-11 | 2022-09-27 | 腾讯科技(深圳)有限公司 | 一种缺陷检测方法、装置、计算机设备和存储介质 |
CN115146761A (zh) * | 2022-05-26 | 2022-10-04 | 腾讯科技(深圳)有限公司 | 一种缺陷检测模型的训练方法和相关装置 |
CN115937170A (zh) * | 2022-12-23 | 2023-04-07 | 正泰集团研发中心(上海)有限公司 | 电路板检测方法、装置、计算机设备及存储介质 |
-
2023
- 2023-09-05 CN CN202311142382.7A patent/CN117252822B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110598761A (zh) * | 2019-08-26 | 2019-12-20 | 深圳大学 | 一种点胶检测方法、装置及计算机可读存储介质 |
CN111832101A (zh) * | 2020-06-18 | 2020-10-27 | 湖北博华自动化系统工程有限公司 | 一种水泥强度预测模型的构建方法及水泥强度预测方法 |
US20210407062A1 (en) * | 2020-06-30 | 2021-12-30 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Product defect detection method and apparatus, electronic device and storage medium |
CN115112661A (zh) * | 2022-05-11 | 2022-09-27 | 腾讯科技(深圳)有限公司 | 一种缺陷检测方法、装置、计算机设备和存储介质 |
CN115146761A (zh) * | 2022-05-26 | 2022-10-04 | 腾讯科技(深圳)有限公司 | 一种缺陷检测模型的训练方法和相关装置 |
CN115937170A (zh) * | 2022-12-23 | 2023-04-07 | 正泰集团研发中心(上海)有限公司 | 电路板检测方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117252822B (zh) | 2024-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190332710A1 (en) | Selectively identifying and recommending digital content items for synchronization | |
CN115797349B (zh) | 一种缺陷检测方法、装置和设备 | |
CN111126262A (zh) | 基于图神经网络的视频精彩片段检测方法及装置 | |
CN114529566B (zh) | 图像处理方法、装置、设备及存储介质 | |
CN109902588B (zh) | 一种手势识别方法、装置及计算机可读存储介质 | |
CN110717509A (zh) | 基于树分裂算法的数据样本分析方法及装置 | |
CN116309554A (zh) | 缺陷检测网络的构建及缺陷检测方法、装置和设备 | |
CN114708287A (zh) | 一种镜头边界检测方法、设备及存储介质 | |
CN114005019B (zh) | 一种翻拍图像识别方法及其相关设备 | |
CN111814538A (zh) | 目标对象的类别识别方法、装置、电子设备及存储介质 | |
CN110427998A (zh) | 模型训练、目标检测方法及装置、电子设备、存储介质 | |
CN115810011B (zh) | 异常检测网络的训练及异常检测方法、装置和设备 | |
CN117252822B (zh) | 缺陷检测网络的构建及缺陷检测方法、装置和设备 | |
CN116630362A (zh) | 模型训练、图像处理方法、设备及存储介质 | |
CN116167454A (zh) | 智能化的二分类模型训练方法及装置 | |
CN112070094B (zh) | 训练数据的筛选方法、装置、电子设备及存储介质 | |
CN114494486A (zh) | 户型图生成方法、设备及存储介质 | |
CN113516615A (zh) | 一种样本生成方法、系统、设备及存储介质 | |
CN117253233B (zh) | 一种字符擦除方法、装置和设备 | |
CN113420844B (zh) | 物体缺陷检测方法、装置、电子设备和存储介质 | |
CN117333383B (zh) | 一种表面缺陷检测方法、装置和设备 | |
CN116612474B (zh) | 对象检测方法、装置、计算机设备及计算机可读存储介质 | |
CN118608895A (zh) | 缺陷检测模型训练和缺陷检测方法及相关设备 | |
WO2020164401A1 (zh) | 服装计数方法、计数方法和装置以及电子设备 | |
CN110866431B (zh) | 人脸识别模型的训练方法、人脸识别的方法和装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |