CN114882298B - 一种对抗互补学习模型的优化方法及装置 - Google Patents
一种对抗互补学习模型的优化方法及装置 Download PDFInfo
- Publication number
- CN114882298B CN114882298B CN202210807113.7A CN202210807113A CN114882298B CN 114882298 B CN114882298 B CN 114882298B CN 202210807113 A CN202210807113 A CN 202210807113A CN 114882298 B CN114882298 B CN 114882298B
- Authority
- CN
- China
- Prior art keywords
- defect
- test set
- positioning frame
- training
- picture
- 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.)
- Active
Links
- 230000000295 complement effect Effects 0.000 title claims abstract description 71
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000005457 optimization Methods 0.000 title claims abstract description 16
- 238000012549 training Methods 0.000 claims abstract description 111
- 238000012360 testing method Methods 0.000 claims abstract description 109
- 230000007547 defect Effects 0.000 claims description 252
- 230000003042 antagnostic effect Effects 0.000 claims description 20
- 238000010586 diagram Methods 0.000 claims description 16
- 238000010276 construction Methods 0.000 claims description 9
- 230000006870 function Effects 0.000 claims description 9
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 230000003171 anti-complementary effect Effects 0.000 abstract 1
- 230000002950 deficient Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- GIYXAJPCNFJEHY-UHFFFAOYSA-N N-methyl-3-phenyl-3-[4-(trifluoromethyl)phenoxy]-1-propanamine hydrochloride (1:1) Chemical compound Cl.C=1C=CC=CC=1C(CCNC)OC1=CC=C(C(F)(F)F)C=C1 GIYXAJPCNFJEHY-UHFFFAOYSA-N 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002845 discoloration Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- 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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/22—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- 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
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本申请提供了一种对抗互补学习模型的优化方法及装置,包括:获取第一训练集和测试集;获取并采用第二训练集对选定的强监督定位模型进行训练;采用第一训练集对对抗互补学习模型进行训练后将测试集输入对抗互补学习模型,得到测试集图片的第一定位框;将测试集输入经过训练的强监督定位模型,得到测试集图片的第二定位框;若测试集中同一图片的第一定位框和第二定位框的偏差超过第一阈值,则对该图片进行标记,若被标记图片的数量超过第二阈值,则更新第一训练集和测试集,继续训练对抗互补学习模型,直至测试集中被标记图片数量小于等于第二阈值。解决了现有技术中缺乏对对抗互补学习模型的精确度进行识别并对其进行优化的方法的问题。
Description
技术领域
本申请涉及图像识别技术领域,具体涉及一种对抗互补学习模型的优化方法及装置。
背景技术
对抗互补学习定位方法多采用粗颗粒度的图片类别信息作为训练集来对目标定位模型进行训练,由于训练集不包括目标位置标签,采用这种训练集训练得到的目标定位模型精确度较差,也即,将测试集输入目标定位模型后,得到的目标定位结果与实际偏差较大。而现有技术中缺乏对对抗互补学习模型的精确度进行识别并对其进行优化的方法。
发明内容
有鉴于此,本申请提供了一种对抗互补学习模型的优化方法及装置,能够有效解决现有技术中缺乏对对抗互补学习模型的精确度进行识别并对其进行优化的方法的问题。
下文中将给出关于本申请的简要概述,以便提供关于本申请的某些方面的基本理解。应当理解,此概述并不是关于本申请的穷举性概述。它并不是意图确定本申请的关键或重要部分,也不是意图限定本申请的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
根据本申请的第一方面,提供了一种对抗互补学习模型的优化方法,包括:
步骤一:获取由缺陷图片构成的第一缺陷数据集,所述第一缺陷数据集中的缺陷图片设置有缺陷类别信息,将所述第一缺陷数据集划分为第一训练集和测试集;
步骤二:获取所述第一缺陷数据集中缺陷图片的缺陷位置信息,基于所述第一缺陷数据集及所述缺陷位置信息构建第二训练集,并采用所述第二训练集对选定的强监督定位模型进行训练;
步骤三:采用所述第一训练集对对抗互补学习模型进行训练并将所述测试集输入经过训练后的所述对抗互补学习模型,得到所述测试集缺陷图片的第一定位框;
步骤四:将所述测试集输入经过训练后的强监督定位模型,得到所述测试集缺陷图片的第二定位框,所述第二定位框及第一定位框用于对所述测试集中同一缺陷图片的同一缺陷分别进行定位;
步骤五:比较所述测试集中缺陷图片的第一定位框和第二定位框的位置信息,若其偏差超过第一阈值,则对该缺陷图片进行标记,若被标记缺陷图片数量与测试集图片数量的比值超过第二阈值,则更新所述第一训练集及所述测试集,重复步骤三至五,直至测试集中被标记缺陷图片数量与该测试集图片数量的比值小于等于所述第二阈值。
在一些实施例中,所述第一缺陷数据集中的缺陷图片采集于同一应用场景。
在一些实施例中,将第一缺陷数据集按照预设比例划分为所述第一训练集和所述测试集。
在一些实施例中,还包括,缩小所述第一缺陷数据集或所述第二训练集中缺陷图片的尺寸后,再将其输入相应的模型。
在一些实施例中,还包括,将所述第一缺陷数据集或所述第二训练集中的彩色图片转换为灰度图片后,再将其输入相应的模型。
在一些实施例中,所述采用所述第一训练集对对抗互补学习模型进行训练并将测试集输入经过训练后的对抗互补学习模型,得到测试集缺陷图片的第一定位框,包括:
构建对抗互补学习模型:选择ResNet18的前17层作为骨干网络,所述骨干网络包括五个卷积块,其中,第一卷积块由一个卷积层组成,其他四个卷积块均由四个卷积层组成;骨干网络后连接A、B两个分支,每个分支均包括一个特征提取器和一个分类器。
获取模型损失:建立A、B两个分支的损失函数,各分支损失函数为实际输出向量与目标输出向量的交叉熵,模型损失为A、B两个分支的损失之和;
训练对抗互补学习模型:设置迭代次数、学习率等超参数,将所述第一训练集输入所述对抗互补学习模型,利用随机梯度下降算法对网络参数进行迭代更新,根据得到的模型损失选择最优的对抗互补学习模型;
将所述测试集输入经过训练后的对抗互补学习模型,分别从A、B两个分支获得定位图,取两个定位图对应位置的最大值得到合成定位图,绘制合成定位图的最小外接矩形框,从而获取到缺陷图片上缺陷的第一定位框。
在一些实施例中,所述第一定位框或第二定位框的位置信息包括四个维度,分别为定位框中心点的横坐标和纵坐标,定位框的宽度和高度;所述第一阈值包括分别对应于定位框中心点的横坐标和纵坐标以及定位框的宽度和高度的四个阈值分量。
进一步的,比较所述测试集中缺陷图片的第一定位框和第二定位框的中心点的横坐标、纵坐标,以及两个定位框的宽度和高度,若有任一维度的偏差超过所述对应的阈值分量,则对该缺陷图片进行标记。
在一些实施例中,更新后的第一训练集及测试集与更新前的第一训练集及测试集属于同一应用场景。
根据本申请的第二方面,提供了一种对抗互补学习模型的优化装置,包括,
第一训练集构建单元,用于获取由缺陷图片构成的第一缺陷数据集,所述第一缺陷数据集中的缺陷图片设置有缺陷类别信息,将第一缺陷数据集划分为第一训练集和测试集;
第二训练集构建单元,用于获取所述第一缺陷数据集中缺陷图片的缺陷位置信息,基于所述第一缺陷数据集及所述缺陷位置信息构建第二训练集;
强监督定位模型训练单元,用于采用所述第二训练集对选定的强监督定位模型进行训练;
第一定位框获取单元,用于采用所述第一训练集对对抗互补学习模型进行训练并将所述测试集输入经过训练后的所述对抗互补学习模型,得到所述测试集缺陷图片的第一定位框;
第二定位框获取单元,用于将所述测试集输入经过训练后的强监督定位模型,得到所述测试集缺陷图片的第二定位框,所述第二定位框及第一定位框用于对所述测试集中同一缺陷图片的同一缺陷分别进行定位;
缺陷图片标记单元,用于比较所述测试集中缺陷图片的第一定位框和第二定位框的位置信息,若其偏差超过第一阈值,则对该缺陷图片进行标记,若被标记缺陷图片数量与所述测试集图片数量的比值超过第二阈值,则更新所述第一训练集及所述测试集,继续训练所述对抗互补学习模型,获取更新后测试集缺陷图片的第一定位框和第二定位框,并对第一定位框和第二定位框的位置信息偏差超过所述第一阈值的缺陷图片进行标记,直至测试集中被标记缺陷图片数量与该测试集图片数量的比值小于等于所述第二阈值。
根据本申请的第三方面,提供了一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如第一方面所述的方法。
根据本申请的第四方面,提供了一种计算机可读介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行如第一方面所述的方法。
本申请提出了一种对抗互补学习模型的优化方法及装置,通过强监督目标定位模型对对抗互补学习模型输出的缺陷图片位置信息进行校验,并根据校验结果不断优化对抗互补学习模型,有效解决了现有技术中缺乏对对抗互补学习模型的精确度进行识别并对其进行优化方法的问题。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。通过附图所示,本申请的上述及其它目的、特征和优势将更加清晰。在全部附图中相同的附图标记指示相同的部分。并未刻意按实际尺寸等比例缩放绘制附图,重点在于示出本申请的主旨。
图1为根据本申请实施例提供的一种对抗互补学习模型的优化方法的流程示意图。
图2为根据本申请实施例提供的一种对抗互补学习模型的骨干网络的结构示意图。
图3为根据本申请实施例提供的一种测试集缺陷图片第一定位框及第二定位框的示意图。
图4为根据本申请实施例提供的一种对抗互补学习模型的优化装置的系统结构图。
图5为根据本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中诸如“第一”、“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
再者,本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
下文中将结合附图对本申请的示例性实施例进行描述。为了清楚和简明起见,在说明书中并未描述实际实施例的所有特征。然而,应该了解,在开发任何这种实际实施例的过程中可以做出很多特定于实施例的决定,以便实现开发人员的具体目标,并且这些决定可能会随着实施例的不同而有所改变。
在此,还需要说明的一点是,为了避免因不必要的细节而模糊了本申请,在附图中仅仅示出了与根据本申请的方案密切相关的装置结构,而省略了与本申请关系不大的其他细节。
应理解的是,本申请并不会由于如下参照附图的描述而只限于所描述的实施形式。在本文中,在可行的情况下,实施例可以相互组合、不同实施例之间的特征替换或借用、在一个实施例中省略一个或多个特征。
图1示出了根据本申请实施例提供的一种对抗互补学习模型的优化方法的流程示意图,该方法具体包括:
步骤110:获取由缺陷图片构成的第一缺陷数据集,所述第一缺陷数据集中的缺陷图片设置有缺陷类别信息,将所述第一缺陷数据集划分为第一训练集和测试集。
本申请实施例中,所述第一缺陷数据集中的缺陷图片是从工程实践中的某一应用场景中收集而来,也即,第一缺陷数据集中的缺陷图片属于同一应用场景,例如,缺陷图片可以是从手机模组、电脑组件、LED元器件或半导体元器件等缺陷检测中的某一应用场景中获取到。本申请实施例中,所述应用场景并不局限于上述情况,能够通过计算机视觉对产品缺陷进行检测的应用场景,均在本申请实施例涉及的范围内。
本申请实施例中,所述获取到的第一缺陷数据集的每张缺陷图片中还设置有缺陷类别信息,所述缺陷类别信息用于标识该缺陷图片中的缺陷属于所属应用场景下的哪一种缺陷类别。例如,在缺陷图片是从手机模组缺陷检测这一应用场景中获取到的情况下,每张缺陷图片上均标识有缺陷类别,所述缺陷类别可以是气泡、划痕、不完整、变色等缺陷类别中的一种。本申请实施例中,上述对应于手机模组缺陷检测应用场景下的缺陷类别仅为示例,本申请实施例不对具体缺陷类别进行限制。
本申请实施例中,可以将第一缺陷数据集按照预设比例划分为第一训练集(包括张缺陷图片)和测试集(包括张缺陷图片)。优选的,可以将第一缺陷数据集按照4:1的预设比例划分为第一训练集和测试集,例如,在第一缺陷数据集包括1916张图片的情况下,将第一缺陷数据集按照4:1的比例划分为第一训练集和测试集,此时第一训练集中包括1532张图片,测试集中包括384张图片。但该比例仅为一种示例,本申请实施例并不对其进行限制。
本申请实施例中,在将第一缺陷数据集中的缺陷图片用于后续处理之前,可以先缩小第一缺陷数据集中缺陷图片的尺寸,再将其输入相应的模型,从而降低计算量。例如,在第一缺陷数据集中的图片尺寸为2820*1975的情况下,可以通过降采样或裁剪等方法将图片尺寸缩小为224*224。
本申请实施例中,在将第一缺陷数据集中的缺陷图片用于后续处理之前,可以先将第一缺陷数据集中的彩色图片转换为灰度图片后,再将其输入相应的模型,从而降低计算量。
步骤120:获取所述第一缺陷数据集中缺陷图片的缺陷位置信息,基于所述第一缺陷数据集及所述缺陷位置信息构建第二训练集,并采用所述第二训练集对选定的强监督定位模型进行训练。
本申请实施例中,获取第一缺陷数据集中缺陷图片的缺陷位置信息,所述缺陷位置信息用于对缺陷图片中缺陷的位置进行标识,可以包括缺陷的坐标信息(x,y)和大小信息(w,h),其中x,y表示缺陷最小外接矩形的中心点的二维坐标,w,h表示缺陷最小外接矩形的宽度和高度。进一步的,基于第一缺陷数据集及缺陷位置信息构建第二训练集,也即第二训练集中包括第一缺陷数据集中的缺陷图片、用于标识缺陷图片中的缺陷属于同一应用场景下的哪一种缺陷类别的缺陷类别信息,以及用于标识缺陷图片中缺陷位置的缺陷位置信息。
本申请实施例中,所述缺陷图片的缺陷位置信息可以通过人工标注获取,但本申请实施例并不对具体获取方法进行限定。
本申请实施例中,可以将第二训练集表示为,其中为缺陷图片,为缺陷类别信息,为缺陷位置信息,第二训练集包括涉及M类缺陷的N张缺陷图片,其中所述M类缺陷属于同一应用场景,此外,所述第二训练集还包括与N张缺陷图片对应的缺陷位置信息。
本申请实施例中,在将第二训练集中的缺陷图片用于后续处理之前,可以先缩小第二训练集中的缺陷图片尺寸,再将其输入相应的模型,从而降低计算量。例如,在第二训练集中的图片尺寸为2820*1975的情况下,可以通过降采样或裁剪等方法将图片尺寸缩小为416*416。
本申请实施例中,在将第二训练集中的缺陷图片用于后续处理之前,可以先将第二训练集中的彩色图片转换为灰度图片后,再将其输入相应的模型,从而降低计算量。
本申请实施例中,所述选定的强监督定位模型可以是YOLOv3、YOLOv4、YOLOv5或Faster-RCNN等模型,本申请实施例不对具体模型进行限制。
本申请实施例中,例如,在选定的强监督定位模型为YOLOv4模型的情况下,采用第二训练集对YOLOv4模型进行训练,具体包括以下步骤:
构建YOLOv4网络:网络结构分为Backbone、Neck、Head三个部分。Backbone部分采用CSPDarknet53来提取特征,Neck部分采用SPP和PANet网络来辅助Backbone部分对提取的特征进行充分利用,最后将提取的特征通过Head部分进行预测。
建立模型损失函数:损失函数可以表示为Loss= Loss1+ Loss2+ Loss3,其中Loss1为位置损失、Loss2为类别损失、Loss3为置信度损失。
训练YOLOv4网络:设置迭代次数和学习率,使用ImageNet训练的YOLOv4网络参数作为初始网络参数,将第二训练集输入YOLOv4网络,利用随机梯度下降算法对网络参数进行多次迭代更新,根据多次迭代更新后得到的模型损失来选取最优YOLOv4模型。
步骤130:采用所述第一训练集对对抗互补学习模型进行训练并将所述测试集输入经过训练后的所述对抗互补学习模型,得到所述测试集缺陷图片的第一定位框。具体包括:
构建对抗互补学习模型:选择ResNet18的前17层作为骨干网络,所述骨干网络包括五个卷积块,其中,第一卷积块由一个卷积层组成,其他四个卷积块均由四个卷积层组成,所述骨干网络的结构示意图如图2所示;骨干网络后连接A、B两个分支,每个分支均包括一个特征提取器和一个分类器,每个分支中相同数量的卷积层作为特征提取器,分别命名为EA和EB;每个分支中的GAP层及 softmax层作为分类器,分别命名为clsA和clsB。
本申请实施例中,所述骨干网络的输入为缺陷图片的灰度图,其中h和w分别表示缺陷图片的高度和宽度,1表示缺陷图片的通道数。优选的,本申请实施例中,所述缺陷图片的高度和宽度可以均为224。所述骨干网络的输出为多通道的位置感知特征图,其中512表示位置感知特征图的通道数,7×7为位置感知特征图的分辨率。该骨干网络表示为:
训练对抗互补学习模型:设置迭代次数、学习率等超参数,使用ImageNet训练的ResNet18网络参数作为初始化网络参数,将第一训练集输入对抗互补学习模型,利用随机梯度下降算法对网络参数进行多次迭代更新,根据多次迭代更新后获取到的模型损失选择最优的对抗互补学习模型。
优选的,本申请实施例中,所述迭代次数、学习率可以分别设置为100和0.001,但本申请实施例不对迭代次数、学习率的具体数值进行限制。本申请实施例中,可以利用随机梯度下降算法对网络参数进行100次迭代更新,并每隔10次迭代保存一次模型并计算模型损失,根据获取到的10个模型损失,选择最小模型损失对应的模型作为最优的对抗互补学习模型。
将测试集输入经过训练后的对抗互补模型,分别从A和B两个分支获得定位图和,利用Max函数取两个定位图对应位置的最大值得到合成定位图,绘制合成定位图的最小外接矩形,从而获取到缺陷图片上缺陷的第一定位框,如图3所示。
本申请实施例中,所述第一定位框的位置信息可以包括四个维度,分别为第一定位框中心点的横坐标和纵坐标,第一定位框的宽度和高度,具体可以表示为坐标信息(x1,y1)和大小信息(w1,h1),其中x1,y1表示第一定位框中心点的横坐标和纵坐标,w1,h1表示第一定位框的宽度和高度。
步骤140:将所述测试集输入经过训练后的强监督定位模型,得到所述测试集缺陷图片的第二定位框,所述第二定位框及第一定位框用于对所述测试集中同一缺陷图片上的同一缺陷分别进行定位,如图3所示。
本申请实施例中,所述第二定位框的位置信息可以包括四个维度,分别为第二定位框中心点的横坐标和纵坐标,第二定位框的宽度和高度,具体可以表示为坐标信息(x2,y2)和大小信息(w2,h2),其中x2,y2表示第二定位框中心点的横坐标和纵坐标,w2,h2表示第二定位框的宽度和高度。
步骤150:比较所述测试集中缺陷图片的第一定位框和第二定位框的位置信息,若其偏差超过第一阈值,则对该缺陷图片进行标记,若被标记缺陷图片数量与测试集图片数量的比值超过第二阈值,则更新所述第一训练集及所述测试集,重复步骤130至150,直至测试集中被标记缺陷图片数量与该测试集图片数量的比值小于等于所述第二阈值。
本申请实施例中,由于第一定位框和第二定位框的位置信息均包括定位框中心点的横坐标、纵坐标,以及定位框的宽度和高度等四个维度,所述第一阈值可以包括分别对应于定位框中心点的横坐标和纵坐标以及定位框的宽度和高度的四个阈值分量thx,thy,thw,thh。
因此,比较测试集中缺陷图片的第一定位框和第二定位框的位置信息,可以是,比较测试集中同一缺陷图片的同一缺陷的第一定位框和第二定位框中心点的横坐标、纵坐标,以及两个定位框的宽度和高度,若有任一维度的偏差超过所述对应的阈值分量,则对该缺陷图片进行标记。
例如,若对应于同一缺陷图片的同一缺陷的第一定位框和第二定位框的中心点的坐标(x,y)和宽度w均相同,但两个定位框的高度差大于对应的阈值分量thh,由于高度这一维度的偏差超过了对应的阈值分量,则需要对该缺陷图片进行标记。
优选的,本申请实施例中,所述第一阈值的对应于定位框中心点的横坐标和纵坐标,以及定位框宽度和高度的四个阈值分量thx,thy,thw,thh可以分别为5%,5%,10%,10%,但本申请实施例并不对所述第一阈值的阈值分量的具体数值进行限制。
本申请实施例中,对被标记缺陷图片数量与其所在的测试集图片数量的比值设置有第二阈值,在被标记缺陷图片数量与其所在的测试集图片数量的比值超过第二阈值的情况下,说明被标记图片的数量过多,也即当前得到的对抗互补学习模型的精确度较差,需要更新第一训练集和测试集,并采用更新后的第一训练集继续对对抗互补学习模型进行训练,采用更新后的测试集对对抗互补学习模型的精确度进行校验。
本申请实施例中,更新第一训练集的方法可以参考步骤110,也即,更新由缺陷图片构成的第一缺陷数据集,所述第一缺陷数据集中的缺陷图片均设置有缺陷类别信息,将第一缺陷数据集划分为第一训练集和测试集。所述更新后的第一缺陷数据集中的缺陷图片是从工程实践中的某一类应用场景中收集而来,该应用场景与前次获取第一缺陷数据集的应用场景相同,也即更新后的第一训练集及测试集与更新前的第一训练集及测试集属于同一应用场景。
本申请实施例中,更新后的第一缺陷数据集中的每张缺陷图片中还设置有缺陷类别信息,缺陷类别信息用于标识该缺陷图片中的缺陷属于所属应用场景下的某种缺陷类别。
本申请实施例中,在更新第一训练集和测试集后,重复步骤130至150,并再次判断被标记缺陷图片数量与其所在的测试集图片数量的比值是否小于等于所述第二阈值,若是,则获取到合格的对抗互补学习模型;若否,则继续更新第一训练集和训练集,并重复步骤130至150,直至测试集中被标记缺陷图片数量与该测试集图片数量的比值小于等于所述第二阈值。
本申请实施例中,优选的,所述第二阈值可以为60%,但本申请实施例并不对所述第二阈值的具体数值进行限制。
本申请将同一测试集分别通入弱监督的对抗互补学习模型和强监督定位模型,采用强监督定位模型输出的定位结果对对抗互补学习模型输出的定位结果进行验证,并根据验证结果不断更新训练集对对抗互补学习模型进行训练,从而得到优化后的对抗互补学习模型,有效解决了现有技术中对对抗互补学习模型的精确度缺乏判断,使得模型在欠优的情况下就被使用,从而导致定位结果较差的问题。
根据本申请实施例提供的对抗互补学习模型的优化方法,本申请实施例还提供了一种对抗互补学习模型的优化装置,其系统结构图如图4所示。
本申请实施例提供的对抗互补学习模型的优化装置400,包括第一训练集构建单元401、第二训练集构建单元402、强监督定位模型训练单元403、第一定位框获取单元404、第二定位框获取单元405以及缺陷图片标记单元406。其中,
第一训练集构建单元401,用于获取由缺陷图片构成的第一缺陷数据集,所述第一缺陷数据集中的缺陷图片均设置有缺陷类别信息,将第一缺陷数据集划分为第一训练集和测试集;
第二训练集构建单元402,用于获取所述第一缺陷数据集中缺陷图片的缺陷位置信息,基于所述第一缺陷数据集及所述缺陷位置信息构建第二训练集;
强监督定位模型训练单元403,用于采用所述第二训练集对选定的强监督定位模型进行训练;
第一定位框获取单元404,用于采用所述第一训练集对对抗互补学习模型进行训练并将所述测试集输入经过训练后的所述对抗互补学习模型,得到所述测试集缺陷图片的第一定位框;
第二定位框获取单元405,用于将所述测试集输入经过训练后的所述强监督定位模型,得到所述测试集缺陷图片的第二定位框,所述第二定位框及第一定位框用于对所述测试集中同一缺陷图片的同一缺陷分别进行定位;
缺陷图片标记单元406,用于比较所述测试集中缺陷图片的第一定位框和第二定位框的位置信息,若其偏差超过第一阈值,则对该缺陷图片进行标记,若被标记缺陷图片数量与所述测试集图片数量的比值超过第二阈值,则更新所述第一训练集及所述测试集,继续训练所述对抗互补学习模型,获取更新后的测试集缺陷图片的第一定位框和第二定位框,并对第一定位框和第二定位框的位置信息偏差超过所述第一阈值的缺陷图片进行标记,直至测试集中被标记缺陷图片数量与该测试集图片数量的比值小于等于所述第二阈值。
图5出了根据本申请实施例提供的电子设备500的结构示意图。如图5所示,电子设备500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有电子设备操作所需的各种程序和数据。CPU 501、ROM 502以及RAM503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,包括承载指令的在计算机可读介质,在这样的实施例中,该指令可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该指令被中央处理单元(CPU)501执行时,执行本发明中描述的各个方法步骤。
以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并非局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。
Claims (10)
1.一种对抗互补学习模型的优化方法,其特征在于,包括:
步骤一:获取由缺陷图片构成的第一缺陷数据集,所述第一缺陷数据集中的缺陷图片设置有缺陷类别信息,将所述第一缺陷数据集划分为第一训练集和测试集;
步骤二:获取所述第一缺陷数据集中缺陷图片的缺陷位置信息,基于所述第一缺陷数据集及所述缺陷位置信息构建第二训练集,并采用所述第二训练集对选定的强监督定位模型进行训练;
步骤三:采用所述第一训练集对对抗互补学习模型进行训练并将所述测试集输入经过训练后的所述对抗互补学习模型,得到所述测试集缺陷图片的第一定位框;
步骤四:将所述测试集输入经过训练后的所述强监督定位模型,得到所述测试集缺陷图片的第二定位框,所述第二定位框及第一定位框用于对所述测试集中同一缺陷图片的同一缺陷分别进行定位;
步骤五:比较所述测试集中缺陷图片的第一定位框和第二定位框的位置信息,若其偏差超过第一阈值,则对该缺陷图片进行标记,若被标记缺陷图片数量与所述测试集图片数量的比值超过第二阈值,则更新所述第一训练集及所述测试集,重复步骤三至五,直至测试集中被标记缺陷图片数量与该测试集图片数量的比值小于等于所述第二阈值。
2.如权利要求1所述的对抗互补学习模型的优化方法,其特征在于,所述第一缺陷数据集中的缺陷图片采集于同一应用场景。
3.如权利要求1所述的对抗互补学习模型的优化方法,其特征在于,将所述第一缺陷数据集按照预设比例划分为所述第一训练集和所述测试集。
4.如权利要求1所述的对抗互补学习模型的优化方法,其特征在于,还包括,缩小所述第一缺陷数据集或所述第二训练集中缺陷图片的尺寸后,再将其输入相应的模型。
5.如权利要求1所述的对抗互补学习模型的优化方法,其特征在于,还包括,将所述第一缺陷数据集或所述第二训练集中的彩色图片转换为灰度图片后,再将其输入相应的模型。
6.如权利要求1所述的对抗互补学习模型的优化方法,其特征在于,所述采用所述第一训练集对对抗互补学习模型进行训练并将所述测试集输入经过训练后的所述对抗互补学习模型,得到所述测试集缺陷图片的第一定位框,包括:
步骤6.1:构建对抗互补学习模型:选择ResNet18的前17层作为骨干网络,所述骨干网络包括五个卷积块,其中,第一卷积块由一个卷积层组成,其他四个卷积块均由四个卷积层组成;骨干网络后连接A、B两个分支,每个分支均包括一个特征提取器和一个分类器;
步骤6.2:获取模型损失:建立A、B两个分支的损失函数,各分支损失函数为实际输出向量与目标输出向量的交叉熵,模型损失为A、B两个分支的损失之和;
步骤6.3:训练对抗互补学习模型:设置迭代次数、学习率,将所述第一训练集输入所述对抗互补学习模型,利用随机梯度下降算法对网络参数进行迭代更新,根据得到的模型损失选择最优的对抗互补学习模型;
步骤6.4:将所述测试集输入经过训练后的对抗互补学习模型,分别从A、B两个分支获得定位图,取两个定位图对应位置的最大值得到合成定位图,绘制合成定位图的最小外接矩形框,从而获取到缺陷图片上缺陷的第一定位框。
7.如权利要求1所述的对抗互补学习模型的优化方法,其特征在于,所述第一定位框或第二定位框的位置信息包括四个维度,分别为定位框中心点的横坐标和纵坐标,定位框的宽度和高度;所述第一阈值包括分别对应于定位框中心点的横坐标和纵坐标以及定位框的宽度和高度的四个阈值分量。
8.如权利要求7所述的对抗互补学习模型的优化方法,其特征在于,比较所述测试集中缺陷图片的第一定位框和第二定位框的中心点的横坐标、纵坐标,以及两个定位框的宽度和高度,若有任一维度的偏差超过所述对应的阈值分量,则对该缺陷图片进行标记。
9.如权利要求1所述的对抗互补学习模型的优化方法,其特征在于,更新后的第一训练集及测试集与更新前的第一训练集及测试集属于同一应用场景。
10.一种对抗互补学习模型的优化装置,其特征在于,包括:
第一训练集构建单元,用于获取由缺陷图片构成的第一缺陷数据集,所述第一缺陷数据集中的缺陷图片设置有缺陷类别信息,将第一缺陷数据集划分为第一训练集和测试集;
第二训练集构建单元,用于获取所述第一缺陷数据集中缺陷图片的缺陷位置信息,基于所述第一缺陷数据集及所述缺陷位置信息构建第二训练集;
强监督定位模型训练单元,用于采用所述第二训练集对选定的强监督定位模型进行训练;
第一定位框获取单元,用于采用所述第一训练集对对抗互补学习模型进行训练并将所述测试集输入经过训练后的所述对抗互补学习模型,得到所述测试集缺陷图片的第一定位框;
第二定位框获取单元,用于将所述测试集输入经过训练后的所述强监督定位模型,得到所述测试集缺陷图片的第二定位框,所述第二定位框及第一定位框用于对所述测试集中同一缺陷图片的同一缺陷分别进行定位;
缺陷图片标记单元,用于比较所述测试集中缺陷图片的第一定位框和第二定位框的位置信息,若其偏差超过第一阈值,则对该缺陷图片进行标记,若被标记缺陷图片数量与所述测试集图片数量的比值超过第二阈值,则更新所述第一训练集及所述测试集,继续训练所述对抗互补学习模型,获取更新后的测试集缺陷图片的第一定位框和第二定位框,并对第一定位框和第二定位框的位置信息偏差超过所述第一阈值的缺陷图片进行标记,直至测试集中被标记缺陷图片数量与该测试集图片数量的比值小于等于所述第二阈值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210807113.7A CN114882298B (zh) | 2022-07-11 | 2022-07-11 | 一种对抗互补学习模型的优化方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210807113.7A CN114882298B (zh) | 2022-07-11 | 2022-07-11 | 一种对抗互补学习模型的优化方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114882298A CN114882298A (zh) | 2022-08-09 |
CN114882298B true CN114882298B (zh) | 2022-11-01 |
Family
ID=82682858
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210807113.7A Active CN114882298B (zh) | 2022-07-11 | 2022-07-11 | 一种对抗互补学习模型的优化方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114882298B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111340096A (zh) * | 2020-02-24 | 2020-06-26 | 北京工业大学 | 一种基于对抗互补学习的弱监督蝴蝶目标检测方法 |
CN112557833A (zh) * | 2020-10-10 | 2021-03-26 | 国网河南省电力公司焦作供电公司 | 一种基于深度样本增强的电缆局部放电模式识别方法 |
CN113314205A (zh) * | 2021-05-28 | 2021-08-27 | 北京航空航天大学 | 一种高效的医学影像标注与学习系统 |
CN113449643A (zh) * | 2021-06-29 | 2021-09-28 | 福信富通科技股份有限公司 | 使用自监督预训练的TimeSformer进行视频目标检测的方法及其应用 |
-
2022
- 2022-07-11 CN CN202210807113.7A patent/CN114882298B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111340096A (zh) * | 2020-02-24 | 2020-06-26 | 北京工业大学 | 一种基于对抗互补学习的弱监督蝴蝶目标检测方法 |
CN112557833A (zh) * | 2020-10-10 | 2021-03-26 | 国网河南省电力公司焦作供电公司 | 一种基于深度样本增强的电缆局部放电模式识别方法 |
CN113314205A (zh) * | 2021-05-28 | 2021-08-27 | 北京航空航天大学 | 一种高效的医学影像标注与学习系统 |
CN113449643A (zh) * | 2021-06-29 | 2021-09-28 | 福信富通科技股份有限公司 | 使用自监督预训练的TimeSformer进行视频目标检测的方法及其应用 |
Non-Patent Citations (1)
Title |
---|
Adversarial Complementary Learning for Weakly Supervised Object Localization;Xiaolin Zhang等;《2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition》;20181216;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114882298A (zh) | 2022-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108960135B (zh) | 基于高分辨遥感图像的密集舰船目标精确检测方法 | |
CN111709909A (zh) | 基于深度学习的通用印刷缺陷检测方法及其模型 | |
CN112307919B (zh) | 一种基于改进YOLOv3的单证图像中数字信息区域识别方法 | |
CN111242026B (zh) | 一种基于空间层次感知模块和度量学习的遥感图像目标检测方法 | |
CN112989995B (zh) | 文本检测方法、装置及电子设备 | |
CN114549507B (zh) | 改进Scaled-YOLOv4的织物瑕疵检测方法 | |
CN118154603B (zh) | 基于级联多层特征融合网络的显示屏缺陷检测方法及系统 | |
CN111209858A (zh) | 一种基于深度卷积神经网络的实时车牌检测方法 | |
CN115147418B (zh) | 缺陷检测模型的压缩训练方法和装置 | |
CN110852327A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN111754502A (zh) | 基于多尺度特征融合的Faster-RCNN算法检测磁芯表面缺陷的方法 | |
CN111881732B (zh) | 一种基于svm的人脸质量评价方法 | |
CN113313678A (zh) | 一种基于多尺度特征融合的精子形态学自动分析方法 | |
CN115984662A (zh) | 一种多模态数据预训练及识别方法、装置、设备及介质 | |
CN113963333B (zh) | 一种基于改进yolof模型的交通标志牌检测方法 | |
CN117557784B (zh) | 目标检测方法、装置、电子设备及存储介质 | |
CN116805387B (zh) | 基于知识蒸馏的模型训练方法、质检方法和相关设备 | |
CN109726754A (zh) | 一种lcd屏缺陷识别方法及装置 | |
CN114882298B (zh) | 一种对抗互补学习模型的优化方法及装置 | |
CN115205155A (zh) | 一种畸变图像的矫正方法、装置及终端设备 | |
CN115345895A (zh) | 用于视觉检测的图像分割方法、装置、计算机设备及介质 | |
CN115330705A (zh) | 一种基于自适应加权模板ncc的蒙皮漆面缺陷检测方法 | |
CN114548250A (zh) | 一种基于数据分析的手机外观检测方法及装置 | |
CN115512174A (zh) | 应用二次IoU损失函数的无锚框目标检测方法 | |
CN118570212B (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 |