CN117011213A - 一种缺陷检测模型的训练方法和相关装置 - Google Patents
一种缺陷检测模型的训练方法和相关装置 Download PDFInfo
- Publication number
- CN117011213A CN117011213A CN202211025608.0A CN202211025608A CN117011213A CN 117011213 A CN117011213 A CN 117011213A CN 202211025608 A CN202211025608 A CN 202211025608A CN 117011213 A CN117011213 A CN 117011213A
- Authority
- CN
- China
- Prior art keywords
- sample
- product image
- sample product
- loss function
- feature
- 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 335
- 238000001514 detection method Methods 0.000 title claims abstract description 176
- 238000012549 training Methods 0.000 title claims abstract description 122
- 238000000034 method Methods 0.000 title claims abstract description 89
- 238000000605 extraction Methods 0.000 claims abstract description 190
- 230000006870 function Effects 0.000 claims description 151
- 238000002372 labelling Methods 0.000 claims description 21
- 238000003860 storage Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 10
- 230000004927 fusion Effects 0.000 claims description 10
- 238000010276 construction Methods 0.000 claims description 8
- 238000002513 implantation Methods 0.000 claims description 7
- 238000004821 distillation Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 15
- 238000013473 artificial intelligence Methods 0.000 abstract description 14
- 238000007689 inspection Methods 0.000 description 29
- 230000008569 process Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 17
- 238000012360 testing method Methods 0.000 description 16
- 238000012545 processing Methods 0.000 description 13
- 238000009826 distribution Methods 0.000 description 12
- 239000010985 leather Substances 0.000 description 11
- 230000000694 effects Effects 0.000 description 9
- 230000002950 deficient Effects 0.000 description 8
- 238000010801 machine learning Methods 0.000 description 7
- 230000007306 turnover Effects 0.000 description 6
- 239000003292 glue Substances 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000013145 classification model Methods 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000004891 communication Methods 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
- 238000007405 data analysis Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000002156 mixing Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000007477 logistic regression Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 229910000831 Steel Inorganic materials 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 239000010959 steel Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 239000002023 wood Substances 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
- G06T7/001—Industrial image inspection using an image reference approach
-
- 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
-
- 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
- G06T7/0008—Industrial image inspection checking presence/absence
-
- 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/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
-
- 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
- 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
- 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)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
本申请公开一种缺陷检测模型的训练方法和相关装置,可应用于云技术、人工智能、智慧交通、辅助驾驶等各种场景。针对每个样本产品图像,通过第一特征提取模块得到第一样本特征,通过第二特征提取模块得到第二样本特征,进而得到每个样本产品图像的目标样本特征。基于每个样本产品图像的目标样本特征,通过第一分类模块得到查询样本产品图像的第一预测缺陷结果。基于每个样本产品图像的第一样本特征和第二样本特征构建特征偏移损失函数,根据查询样本产品图像的第一预测缺陷结果和样本标签构建第一分类损失函数,根据特征偏移损失函数和第一分类损失函数训练得到缺陷检测模型。由此提升模型的泛化性,降低漏失的可能性,提高缺陷检测结果的准确性。
Description
技术领域
本申请涉及检测技术领域,特别是涉及一种缺陷检测模型的训练方法和相关装置。
背景技术
工业质检是指对生产制造过程中的产品进行质量检测,传统的质检一般是由质检工人进行人工目检,近年来随着人工智能(Artificial Intelligence,AI)技术的兴起,基于机器视觉的AI质检可以大幅提升质检准确率、节省人力成本,具有广阔的市场应用前景。
目前的AI质检方式可以是通过大量有标签的图像数据训练缺陷检测模型,进而利用训练得到的缺陷检测模型对工业对象进行检测。
然而,这种方法主要还是停留在学术界的理论分析阶段,在实际的工业质检场景下,通常需要对样本量极少的缺陷进行准确识别,而工业质检场景下能够收集到的缺陷的样本产品图像极少,针对样本产品图像提取到的特征泛化性不够,从而使得训练得到的缺陷检测模型泛化性不够,容易导致漏失的情况,进而使得缺陷检测结果不够准确。
发明内容
为了解决上述技术问题,本申请提供了一种缺陷检测模型的训练方法和相关装置,提升模型的泛化性,降低漏失的可能性,提高缺陷检测结果的准确性。
本申请实施例公开了如下技术方案:
一方面,本申请实施例提供一种缺陷检测模型的训练方法,所述方法包括:
获取样本产品图像集,所述样本产品图像集中每个样本产品图像具有样本标签,所述样本产品图像集中的多个样本产品图像划分为支持样本产品图像和查询样本产品图像,所述支持样本产品图像构成支持图像集,所述查询样本产品图像构成查询图像集;
基于所述样本产品图像集中每个样本产品图像,通过初始网络模型中的第一特征提取模块进行特征提取得到第一样本特征,以及基于所述样本产品图像集中每个样本产品图像,通过第二特征提取模块进行特征提取得到第二样本特征;
针对所述每个样本产品图像,基于对应的第一样本特征和第二样本特征得到目标样本特征;
针对每个查询样本产品图像,通过所述初始网络模型中的第一分类模块对所述查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征相似度比对,并基于比对结果和支持样本产品图像的样本标签得到所述查询样本产品图像的第一预测缺陷结果;
基于所述每个样本产品图像的第一样本特征和第二样本特征构建特征偏移损失函数,以及根据所述查询样本产品图像的第一预测缺陷结果和所述查询样本产品图像的样本标签构建第一分类损失函数;
根据所述特征偏移损失函数和所述第一分类损失函数,对所述初始网络模型进行训练得到所述缺陷检测模型。
一方面,本申请实施例提供一种缺陷检测模型的训练装置,所述装置包括获取单元、提取单元、确定单元、构建单元和训练单元:
所述获取单元,用于获取样本产品图像集,所述样本产品图像集中每个样本产品图像具有样本标签,所述样本产品图像集中的多个样本产品图像划分为支持样本产品图像和查询样本产品图像,所述支持样本产品图像构成支持图像集,所述查询样本产品图像构成查询图像集;
所述提取单元,用于基于所述样本产品图像集中每个样本产品图像,通过初始网络模型中的第一特征提取模块进行特征提取得到第一样本特征,以及基于所述样本产品图像集中每个样本产品图像,通过第二特征提取模块进行特征提取得到第二样本特征;
所述确定单元,用于针对所述每个样本产品图像,基于对应的第一样本特征和第二样本特征得到目标样本特征;
所述确定单元,还用于针对每个查询样本产品图像,通过所述初始网络模型中的第一分类模块对所述查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征相似度比对,并基于比对结果和支持样本产品图像的样本标签得到所述查询样本产品图像的第一预测缺陷结果;
所述构建单元,用于基于所述每个样本产品图像的第一样本特征和第二样本特征构建特征偏移损失函数,以及根据所述查询样本产品图像的第一预测缺陷结果和所述查询样本产品图像的样本标签构建第一分类损失函数;
所述训练单元,用于根据所述特征偏移损失函数和所述第一分类损失函数,对所述初始网络模型进行训练得到所述缺陷检测模型。
一方面,本申请实施例提供一种计算机设备,所述计算机设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行前述任一方面所述的方法。
一方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码当被处理器执行时使所述处理器执行前述任一方面所述的方法。
一方面,本申请实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现前述任一方面所述的方法。
由上述技术方案可以看出,在工业质检场景下,需要基于小样本训练得到缺陷检测模型,为此可以先获取样本产品图像集,样本产品图像集中每个样本产品图像具有样本标签,样本产品图像集中的多个样本产品图像划分为支持样本产品图像和查询样本产品图像,支持样本产品图像构成支持图像集,查询样本产品图像构成查询图像集。由于样本产品图像集中的样本产品图像数量极少,为了提高缺陷检测模型的泛化性,本申请以提高缺陷检测模型的特征提取能力为目的,引入额外的第二特征提取模块辅助缺陷检测模型中的第一特征提取模块的训练。具体的,可以基于样本产品图像集中每个样本产品图像,通过初始网络模型中的第一特征提取模块进行特征提取得到第一样本特征,以及基于样本产品图像集中每个样本产品图像,通过第二特征提取模块进行特征提取得到第二样本特征。针对每个样本产品图像,基于对应的第一样本特征和第二样本特征得到目标样本特征,从而针对每个查询样本产品图像,通过初始网络模型中的第一分类模块对查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征相似度比对,并基于比对结果和支持样本产品图像的样本标签得到查询样本产品图像的第一预测缺陷结果。基于每个样本产品图像的第一样本特征和第二样本特征构建特征偏移损失函数,特征偏移损失函数用于体现两个特征提取模块提取到的特征分布的相似程度,从而保证两个特征提取模块提取到的特征分布相似,不会产生较大的特征偏移,从而提高第一特征提取模块的特征提取能力,提高特征泛化性。根据查询样本产品图像的第一预测缺陷结果和查询样本产品图像的样本标签构建第一分类损失函数,第一分类损失函数用于表征第一分类模块的分类能力,这样根据特征偏移损失函数和第一分类损失函数对初始网络模型进行训练,可以得到用于缺陷检测且泛化性较强的缺陷检测模型。由此提升模型的泛化性,降低漏失的可能性,提高缺陷检测结果的准确性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术成员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种缺陷检测模型的训练方法的应用场景架构图;
图2为本申请实施例提供的一种缺陷检测模型的训练方法的流程图;
图3为相关技术提供的一种基于缺陷检测模型训练方法的总体架构图;
图4为本申请实施例提供的一种用于特征提取的双生网络结构示意图;
图5为本申请实施例提供的不同缺陷类别的样本产品图像按照比例进行融合的示例图;
图6为本申请实施例提供的一种用于分类预测的网络框架示例图;
图7为本申请实施例提供的一种缺陷检测方法的流程图;
图8为本申请实施例提供的一种缺陷检测展示界面示例图;
图9为本申请实施例提供的一种AI质检场景下的整体架构图;
图10为本申请实施例提供的一种缺陷检测模型的训练装置的结构图;
图11为本申请实施例提供的一种终端的结构图;
图12为本申请实施例提供的一种服务器的结构图。
具体实施方式
下面结合附图,对本申请的实施例进行描述。
为了保证生产制造过程中的产品质量,需要对产品进行缺陷质检。例如对于皮革缺陷识别、钢板表面缺陷识别、木材表面缺陷识别等等。在进行缺陷识别时,目前主要是基于机器视觉的AI质检,通过AI质检得出其是否有缺陷,以及缺陷类别,即小样本分类。当然也可以检测到缺陷位置,即小样本检测,或者将缺陷部分分割出来,即小样本分割。本申请主要以工业质检场景下的小样本分类为例进行介绍。以皮革缺陷识别为例,将皮革图像输入至缺陷检测模型,从而通过AI质检得出其是否有缺陷,以及缺陷类别。
然而,这种方法主要还是停留在学术界的理论分析阶段,在实际的工业质检场景下,通常需要对样本量极少的缺陷进行准确识别,而工业质检场景下能够收集到的缺陷的样本产品图像极少,针对样本产品图像提取到的特征泛化性不够,从而使得训练得到的缺陷检测模型泛化性不够,容易导致漏失的情况,进而使得缺陷检测结果不够准确。
为了解决上述技术问题,本申请实施例提供一种缺陷检测模型的训练方法,该方法为了提高缺陷检测模型的泛化性,以提高缺陷检测模型的特征提取能力为目的,引入额外的第二特征提取模块辅助缺陷检测模型中的第一特征提取模块的训练。在训练过程中,通过第二特征提取模块和初始网络模型中的第一特征提取模块之间相互监督,保证两个特征提取模块提取到的特征分布相似,不会产生较大的特征偏移,从而提高第一特征提取模块的特征提取能力,提高特征泛化性。进而提升模型的泛化性,降低漏失的可能性,提高缺陷检测结果的准确性。
需要说明的是,本申请实施例提供的缺陷检测模型的训练方法可以由计算机设备执行,该计算机设备例如可以是服务器,也可以是终端。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。终端包括但不限于智能手机、电脑、智能语音交互设备、智能家电、车载终端、飞行器等。
需要说明的是,本申请实施例提供的方法可应用于云技术、人工智能、智慧交通、辅助驾驶等各种场景。
如图1所示,图1示出了一种缺陷检测模型的训练方法的应用场景架构图,该应用场景以服务器执行本申请实施例提供的缺陷检测模型的训练方法为例进行介绍。在该应用场景中可以包括服务器100,在工业质检场景下,需要基于小样本训练得到缺陷检测模型,为此服务器100在训练得到缺陷检测模型时,可以获取样本产品图像集。样本产品图像集是能够收集到的已知缺陷检测结果的样品产品的集合,样本产品图像集中每个样本产品图像具有样本标签。样本产品图像是对样本产品进行图像采集得到的图像,样本标签用于指示样本产品图像的缺陷检测结果,样本标签可以是数字、符号、文字等,缺陷检测结果可以包括缺陷类别、缺陷位置、缺陷分割结果中至少一种。样本产品图像集中的多个样本产品图像划分为支持样本产品图像和查询样本产品图像,支持样本产品图像构成支持图像集,查询样本产品图像构成查询图像集。
由于样本产品图像集中的样本产品图像数量极少,为了提高缺陷检测模型的泛化性,本申请以提高缺陷检测模型的特征提取能力为目的,引入额外的第二特征提取模块与第一特征提取模块进行合作学习,以辅助缺陷检测模型中的第一特征提取模块的训练。具体的,服务器100可以基于样本产品图像集中每个样本产品图像,通过初始网络模型中的第一特征提取模块进行特征提取得到第一样本特征,以及基于样本产品图像集中每个样本产品图像,通过第二特征提取模块进行特征提取得到第二样本特征。每个样本产品图像的第一样本特征和第二样本特征可以用于构建特征偏移损失函数,特征偏移损失函数用于体现两个特征提取模块(即第一特征提取模块和第二特征提取模块)提取到的特征分布的相似程度,从而保证两个特征提取模块提取到的特征分布相似,不会产生较大的特征偏移,从而提高第一特征提取模块的特征提取能力,提高特征泛化性。
服务器100可以针对每个样本产品图像,基于对应的第一样本特征和第二样本特征得到目标样本特征,从而针对每个查询样本产品图像,通过初始网络模型中的第一分类模块对查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征相似度比对,并基于比对结果和支持样本产品图像的样本标签得到查询样本产品图像的第一预测缺陷结果。进而根据查询样本产品图像的第一预测缺陷结果和查询样本产品图像的样本标签构建第一分类损失函数,第一分类损失函数用于表征第一分类模块的分类能力。
在得到第一分类损失函数和特征偏移损失函数后,服务器100根据特征偏移损失函数和第一分类损失函数对初始网络模型进行训练,可以得到用于缺陷检测且泛化性较强的缺陷检测模型。由此提升模型的泛化性,降低漏失的可能性,提高缺陷检测结果的准确性。
需要说明的是,本申请实施例提供的方法主要涉及人工智能,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。本申请实施例提供的方法主要涉及计算机视觉技术和机器学习/深度学习。
计算机视觉技术(Computer Vision,CV)是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟随和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。例如,本申请实施例可能会对产品图像例如第一产品图像和第二产品图像进行图像处理,通过图像语义理解进行特征提取,等等。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。在本申请实施例中,可以通过机器学习训练缺陷检测模型。
接下来,将以服务器执行缺陷检测模型的训练方法为例,结合附图对本申请实施例提供的缺陷检测模型的训练方法进行详细介绍。参见图2,图2示出了一种缺陷检测模型的训练方法的流程图,所述方法包括:
S201、获取样本产品图像集。
在工业质检场景下,需要基于小样本训练得到缺陷检测模型,为此服务器在训练得到缺陷检测模型时,可以先获取样本产品图像集。样本产品图像集中每个样本产品图像具有样本标签,样本产品图像集中的多个样本产品图像划分为支持样本产品图像和查询样本产品图像,支持样本产品图像构成支持图像集(support集),查询样本产品图像构成查询图像集(query集)。其中,在划分支持样本产品图像和查询样本产品图像时,可以将样本标签相同的样本产品图像按照一定比例划分为支持样本产品图像和查询样本产品图像,通常情况下,支持样本产品图像的数量多于查询样本产品图像的数量。
以样本产品是皮革、样本标签指示的缺陷检测结果是缺陷类别为例,缺陷类别可以包括胶溢、划伤、翻折、破洞、正常,若不同样本产品图像的缺陷类别相同,则不同样本产品图像的样本标签相同,则针对每种类型的缺陷,可以将样本标签相同的样本产品图像按照一定比例划分为支持样本产品图像和查询样本产品图像,例如对于缺陷类别为胶溢的样本产品图像,将其中一部分作为支持样本产品图像,另一部分作为查询样本产品图像。
S202、基于所述样本产品图像集中每个样本产品图像,通过初始网络模型中的第一特征提取模块进行特征提取得到第一样本特征,以及基于所述样本产品图像集中每个样本产品图像,通过第二特征提取模块进行特征提取得到第二样本特征。
在学术界中基于小样本训练缺陷检测模型时,主要通过大量有样本标签的样本产品图像构成support集和query集。训练的时候,support集和query集中的样本产品图像都有样本标签,而测试的时候只有support集中的样本产品图像有样本标签。总体架构图如图3所示,每次迭代,都会训练特征提取模块301,来提取support集和query集中样本产品图像的样本特征,之后将提取的support集中样本产品图像的样本特征和query集中样本产品图像的样本特征进行逐一融合,再训练一个分类模块302,从而得到最终的缺陷检测结果。
在图3中,以缺陷类别包括胶溢、划伤、翻折、破洞、正常为例,support集中样本产品图像的缺陷类别分别是上述五种,通过其对应的样本标签来体现,以每种类型的样本产品图像分别是一张为例,support集可以参见图3中303所示,其中样本产品图像如3031-3035所示。query集中样本产品图像的缺陷类别可以是上述五种类型中的一种,通过其对应的样本标签来体现,以query集中样本产品图像是一张为例,query集可以参见图3中304所示,其中样本产品图像如3041所示。
每次迭代,都会训练特征提取模块301,通过特征提取模块301来提取support集和query集中样本产品图像的样本特征,之后将提取的support集中样本产品图像的样本特征和query集中样本产品图像的样本特征进行逐一融合,得到的融合特征可以参见图3中303所示,分别是P1Q1、P2Q2、P3Q3、P4Q4、P5Q5,其中P1、P2、P3、P4、P5分别是support集中每张样本产品图像的样本特征,Q1、Q2、Q3、Q4、Q5为query集中一张样本产品图像的样本特征,虽然Q1、Q2、Q3、Q4、Q5属于同一张样本产品图像,但该样本产品图像的样本特征可以与support集中不同样本产品图像的样本特征进行融合,故根据support集中样本产品图像的不同,将query集中同一张样本产品图像的样本特征采用不同的标号进行区分。再训练一个分类模块302,从而得到最终的缺陷检测结果。例如,图3中确定query集中的样本产品图像的缺陷检测结果与support集中3032所示的样产品图像相同。
在学术界的测试中,测试集的样本产品图像会轮流放入support集和query集中,最终的准确率是通过一定次数(例如:10000次)的测试之后取得概率统计的平均值。
而在工业AI质检场景中,因为已收集的样本产品图像极少,需要增强特征提取模块的泛化性,同时也不可能像学术界那样测试多次取平均值,所以已知的学术界的方法不完全适用于工业质检任务,需要对其进行修改。因此,本申请实施例在训练缺陷检测模型的过程中,在图3的基础上,在训练过程中改进特征提取模块的结构,在原特征提取模块的基础上,引入额外的特征提取模块辅助原特征提取模块的训练,即采用双生网络结构,同时训练两个特征提取模块。其中,两个特征提取模块可以是卷积网络。
为了对两个特征提取模块进行区分,可以将缺陷检测模型中的原特征提取模块称为第一特征提取模块,参见图4所示,将额外引入的特征提取模块称为第二特征提取模块,参见图4所示。与图3所示的总体架构图相比,主要是多个一个特征提取模块的处理过程,其余处理过程与图3类似。其中,第一特征提取模块可以用fθ表示,第二特征提取模块可以用fθ’表示。
在图4所示的结构下,在进行特征提取时,可以基于样本产品图像集中每个样本产品图像,通过初始网络模型中的第一特征提取模块进行特征提取得到第一样本特征,以及基于样本产品图像集中每个样本产品图像,通过第二特征提取模块进行特征提取得到第二样本特征。
需要说明的是,第二特征提取模块主要是在模型训练过程中为了提升第一特征提取模块的特征提取能力而引入的,在完成模型训练过程得到的缺陷检测模型中并不包括第二特征提取模块,即第二特征提取模块仅存在于模型训练过程,当使用缺陷检测模型进行缺陷检测时无需第二特征提取模块。
S203、针对所述每个样本产品图像,基于对应的第一样本特征和第二样本特征得到目标样本特征。
针对每个样本产品图像可以得到两个样本特征,分别是第一样本特征和第二样本特征,为此可以根据每个样本产品图像对应的第一样本特征和第二样本特征得到目标样本特征。
可以理解的是,根据第一样本特征和第二样本特征得到目标样本特征的方式可以包括多种,一种方式可以是直接将第一样本特征作为目标样本特征。在一些情况下,由于第一特征提取模块是初始网络模型的一部分,而第二特征提取模块仅是辅助第一特征提取模块的训练,在训练完成后使用得到的缺陷检测模型进行缺陷检测时,缺陷检测模型中并不会包括第二特征提取模块,因此在这种情况下,可以是直接将第一样本特征作为目标样本特征。
在另一些可能的情况下,由于第二特征提取模块的作用是辅助第一特征提取模块的训练,而第一特征提取模块的训练还可能依赖于后续第一预测缺陷结果的反馈,目标样本特征的好坏直接影响第一预测缺陷结果的好坏,进而影响第一特征提取模块的训练。为此,可以从第一样本特征和第二样本特征中选择效果较好的一个样本特征作为目标样本特征,从而提高后续预测准确性,进而提高训练效果。
S204、针对每个查询样本产品图像,通过所述初始网络模型中的第一分类模块对所述查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征相似度比对,并基于比对结果和支持样本产品图像的样本标签得到所述查询样本产品图像的第一预测缺陷结果。
在得到每个样本产品图像的目标样本特征之后,服务器可以将目标样本特征输入到第一分类模块,进而通过第一分类模块对查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征相似度比对,从而得到比对结果,该比对结果可以体现查询样本产品图像与支持样本产品图像之间的特征相似度,进而根据比对结果将特征相似度最高的支持样本产品图像的样本标签所标识的缺陷检测结果作为查询样本产品图像的第一预测缺陷结果。
例如,样本产品图像集参见图3所示,若比对结果显示query集中的查询样本产品图像3041的目标样本特征与support集中3032所示的支持样本产品图像的目标样本特征最相似,则3032所示的支持样本产品图像的样本标签所标识的缺陷检测结果作为查询样本产品图像的第一预测缺陷结果。若缺陷检测结果为缺陷类别,支持样本产品图像3032的缺陷类别为翻折,则可以确定查询样本产品图像的缺陷类别为翻折,即第一预测缺陷结果。
在一种可能的实现方式中,初始网络模型中还可以包括特征植入模块,此时进行特征相似度比对的方式可以是针对每个查询样本产品图像,先通过特征植入模块对查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征关联性编码,然后基于特征关联性编码结果,通过第一分类模块进行特征相似度比对。其中,特征植入模块可以是图卷积结构或者transformer结构等,本申请实施例对此不做限定。
通过特征关联性编码,可以进一步提升support集中支持样本产品图像和query集中查询样本产品图像的特征交互,进而提升特征相似度比对的准确率。
S205、基于所述每个样本产品图像的第一样本特征和第二样本特征构建特征偏移损失函数,以及根据所述查询样本产品图像的第一预测缺陷结果和所述查询样本产品图像的样本标签构建第一分类损失函数。
在对初始网络模型进行训练以得到缺陷检测模型时,引入额外的第二特征提取模块与第一特征提取模块进行合作学习,以辅助缺陷检测模型中的第一特征提取模块的训练。在该过程中,同时训练第一特征提取模块和第二特征提取模块,二者相互监督。为此,可以根据每个样本产品图像的第一样本特征和第二样本特征构建特征偏移损失函数,特征偏移损失函数用于体现两个特征提取模块(即第一特征提取模块和第二特征提取模块)提取到的特征分布的相似程度,从而保证两个特征提取模块提取到的样本特征分布相似,不会产生较大的特征偏移,另一方面,两个网络fθ以及fθ′增加了学习参数量,从而提高第一特征提取模块的特征提取能力,提高特征泛化性。
其中,特征偏移损失函数可以是KL(Kullback-Leibler)散度损失函数,即KLloss,KL散度用来度量两个样本特征分布之间的距离,也可以称为交叉熵,表示为DKL(fθ(.)||f′θ(.)),具体计算公式如下:
其中,x表示样本产品图像,X表示样本产品图像集,fθ(x)表示第一特征提取模块提取到的第一样本特征,f′θ(x)表示第二特征提取模块提取到的第二样本特征。
需要说明的是,本申请实施例对特征偏移损失函数的构建时机不做限定,在得到第一样本特征和第二样本特征之后且在S206之前构建即可。例如可以是在此步骤中构建,也可以是在S202之后且在S206之前任何时机构建。
另外,本申请实施例训练得到缺陷检测模型的作用是为了进行缺陷检测,因此,在训练过程中,还需要训练第一分类模块的分类能力。为此,还需要根据查询样本产品图像的第一预测缺陷结果和查询样本产品图像的样本标签构建第一分类损失函数。第一分类损失函数用于表征第一分类模块的分类能力,第一分类损失函数越小,说明第一预测缺陷结果与样本标签所表示的缺陷检测结果差距越小,分类能力越强。
S206、根据所述特征偏移损失函数和所述第一分类损失函数,对所述初始网络模型进行训练得到所述缺陷检测模型。
在得到第一分类损失函数和特征偏移损失函数后,服务器可以根据特征偏移损失函数和第一分类损失函数对初始网络模型进行训练,从而得到用于缺陷检测且泛化性较强的缺陷检测模型。
在一种可能的实现方式中,在训练初始网络模型的过程中,第一特征提取模块、第二特征提取模块和第一分类模块都需要进行训练,由于第一特征提取模块和第二特征提取模块的特征提取能力也会影响缺陷检测结果,因此,在训练两个特征提取模块时还可以引入额外的分类损失函数,分别是第二分类损失函数和第三分类损失函数(参见图4所示)。具体的,可以根据每个样本产品图像的第一样本特征和对应的样本标签构建第二分类损失函数,以及根据每个样本产品图像的第二样本特征和对应的样本标签构建第三分类损失函数。在这种情况下,根据特征偏移损失函数和第一分类损失函数,对初始网络模型进行训练得到缺陷检测模型的方式可以是根据特征偏移损失函数、第二分类损失函数和第三分类损失函数对第一特征提取模块和第二特征提取模块进行训练,根据第一分类损失函数训练第一分类模块。
其中,第二分类损失函数可以用C(.|Wb,θ)表示,具体计算公式可以为:
其中,x表示样本产品图像,X表示样本产品图像集,为输入的样本产品图像的样本标签,softmax()为逻辑回归函数,用于进行缺陷预测得到预测缺陷结果,θ为整个初始网络模型的模型参数,Wb为第一分类模块的模型参数,softmax(Wb(x,θ))表示基于第一样本特征得到的预测缺陷结果。
第三分类损失函数可以用C′(.|Wb,θ)表示,其计算方式与第二分类损失函数的计算方式类似,此处不再赘述。
需要说明的是,在本申请实施例中,为了提升推理速度,缺陷检测模型中的第一特征提取模块可以采用小模型,即模型参数较少。而为了保证小模型训练的准确性,可以通过蒸馏训练的方式,利用大模型的训练效果提升小模型的训练效果。在这种情况下,第一特征提取模块可以为学习模型,第二特征提取模块可以为指导模型,根据特征偏移损失函数、第二分类损失函数和第三分类损失函数对第一特征提取模块和第二特征提取模块的方式可以是根据第三分类损失函数和特征偏移损失函数训练指导模型,进而基于特征偏移损失函数和第二分类损失函数,利用训练好的指导模型对学习模型进行蒸馏训练。
通过蒸馏训练,可以实现利用大模型的训练效果提升小模型的训练效果,在保证缺陷检测模型的训练效果的前提下,对缺陷检测模型进行压缩,从而提升推理速度,降低缺陷检测耗时,从而提升缺陷检测效率。
由上述技术方案可以看出,在工业质检场景下,需要基于小样本训练得到缺陷检测模型,为此可以先获取样本产品图像集,样本产品图像集中每个样本产品图像具有样本标签,样本产品图像集中的多个样本产品图像划分为支持样本产品图像和查询样本产品图像,支持样本产品图像构成支持图像集,查询样本产品图像构成查询图像集。由于样本产品图像集中的样本产品图像数量极少,为了提高缺陷检测模型的泛化性,本申请以提高缺陷检测模型的特征提取能力为目的,引入额外的第二特征提取模块辅助缺陷检测模型中的第一特征提取模块的训练。具体的,可以基于样本产品图像集中每个样本产品图像,通过初始网络模型中的第一特征提取模块进行特征提取得到第一样本特征,以及基于样本产品图像集中每个样本产品图像,通过第二特征提取模块进行特征提取得到第二样本特征。针对每个样本产品图像,基于对应的第一样本特征和第二样本特征得到目标样本特征,从而针对每个查询样本产品图像,通过初始网络模型中的第一分类模块对查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征相似度比对,并基于比对结果和支持样本产品图像的样本标签得到查询样本产品图像的第一预测缺陷结果。基于每个样本产品图像的第一样本特征和第二样本特征构建特征偏移损失函数,特征偏移损失函数用于体现两个特征提取模块提取到的特征分布的相似程度,从而保证两个特征提取模块提取到的特征分布相似,不会产生较大的特征偏移,从而提高第一特征提取模块的特征提取能力,提高特征泛化性。根据查询样本产品图像的第一预测缺陷结果和查询样本产品图像的样本标签构建第一分类损失函数,第一分类损失函数用于表征第一分类模块的分类能力,这样根据特征偏移损失函数和第一分类损失函数对初始网络模型进行训练,可以得到用于缺陷检测且泛化性较强的缺陷检测模型。由此提升模型的泛化性,降低漏失的可能性,提高缺陷检测结果的准确性。
前述实施例通过在训练过程中引入第二特征提取模块辅助第一特征提取模块的训练,从而提升模型的泛化性,即从网络结构层面进行改进。然而,模型泛化性不够的原因主要是工业质检场景下能够收集到的缺陷的样本产品图像极少,为此,还可以从用于训练缺陷检测模型的样本产品图像集角度来提高模型泛化性。在这种情况下,可以扩充样本产品图像集中的样本产品图像的数量,进行数据增强。
第一种数据增强方式可以是旋转的数据增强。具体的,获取样本产品图像集的方式可以是获取多个样本产品原始图像,对每个样本产品原始图像分别进行不同角度的旋转,得到每个样本产品原始图像的样本产品扩充图像,将多个样本产品原始图像和每个样本产品原始图像的样本产品扩充图像作为样本产品图像,构成样本产品图像集,样本产品图像集中每个样本产品图像还具有旋转角度标签。
对每个样本产品原始图像可以进行至少一种角度的旋转,本申请实施例以对样本产品原始图像进行四种角度的旋转为例进行介绍,该4中角度可以分别是0°,90°,180°,270°,并且这四种角度作为训练的分类标签,即旋转角度标签。
参见图4所示,图4以一个样本产品原始图像(参见图4中401)为例,针对该样本产品原始图像分别进行0°、90°、180°、270°的旋转,从而得到样本产品扩充图像,参见图4中402所示,将样本产品原始图像和样本产品原始图像的样本产品扩充图像作为样本产品图像,构成样本产品图像集输入至第一特征提取模块和第二特征提取模块。
在这种情况下,基于比对结果和支持样本产品图像的样本标签得到查询样本产品图像的第一预测缺陷结果的方式可以是基于比对结果、支持样本产品图像的样本标签和旋转角度标签得到查询样本产品图像的第一预测缺陷结果。由于旋转角度可能会为缺陷预测带来一定的损失,因此在进行训练的过程中,还可以用对应的旋转角度标签进行监督,即根据第一预测缺陷结果和对应的旋转角度标签构建旋转损失函数,从而根据特征偏移损失函数、第一分类损失函数和旋转损失函数,对初始网络模型进行训练得到缺陷检测模型。
需要说明的是,旋转损失函数的引入可以用于对整个初始网络模型的训练,在一些情况下,还可以将旋转损失函数用于两个特征提取模块的训练,参见图4所示,在训练第一特征提取模块和第二特征提取模块的过程中引入各自的旋转损失函数。其中,第一特征提取模块对应的旋转损失函数可以用A(.|Wb,θ)表示,A(.|Wb,θ)的计算公式可以是:
其中,x表示样本产品图像,X表示样本产品图像集,为输入的样本产品图像的旋转角度标签,softmax()为逻辑回归函数,用于进行缺陷预测得到预测缺陷结果,θ为整个初始网络模型的模型参数,Wb为第一分类模块的模型参数,softmax(Wb(x,θ))表示基于第一样本特征得到的预测缺陷结果。
第二特征提取模块对应的旋转损失函数可以用A′(.|Wb,θ)表示,其计算方式与A(.|Wb,θ)的计算方式类似,此处不再赘述。
本申请实施例通过对样本产品原始图像进行不同角度的旋转,从而得到样本产品扩充图像,该样本产品扩充图像与样本产品原始图像一起作为样本产品图像来训练初始网络模型。由于样本产品扩充图像的加入,大大增加了样本产品图像的数量,即扩充了样本数量,有利于提高训练得到的缺陷检测模型的泛化性。
第二种数据增强方式可以是图像混合的数据增强。在这种方式下,为了使第一特征提取模块在进行特征提取时可以关注到不同图像块之间的特征,使特征提取的粒度更加精细,提高特征提取的准确性,可以将输入至第一特征提取模块的样本产品图像进行图像混合。在这种情况下,基于样本产品图像集中每个样本产品图像,通过初始网络模型中的第一特征提取模块进行特征提取得到第一样本特征的方式可以是将样本产品图像集中每个样本产品图像分别作为第一样本产品图像,将第一样本产品图像与第二样本产品图像按照比例进行融合得到融合样本图像,第二样本产品图像与第一样本产品图像的缺陷类别不同,融合样本图像的样本标签是将第一样本产品图像的样本标签和第二样本产品图像的样本标签按照比例进行融合得到的。然后将融合样本图像输入至第一特征提取模块得到第一样本特征。
此时,用于确定第一预测缺陷结果的支持样本产品图像的样本标签为其对应的融合样本图像的样本标签,用于构建第一分类损失函数的查询样本产品图像的样本标签为其对应的融合样本图像的样本标签。其中,第二样本产品图像可以为至少一张图像,本申请实施例主要以第二样本产品图像为一张图像为例进行介绍。融合所采用的比例可以是预先设置的,例如第一样本产品图像与第二样本产品图像的比例可以是1:3,本申请实施例对比例的具体值不做限定。
增加了图像混合的数据增强方式进入第一特征提取模块的训练中,在图4的示意图中,输入至第一特征提取模块的样本产品图像是将第一样本产品图像与第二样本产品图像以一定随机的比例融合起来得到的融合样本图像。以样本标签指示缺陷类别为例,第一样本产品图像的缺陷类别为A类,第二样本产品图像的缺陷类别为B类,第一样本产品图像和第二样本产品图像按照1:3的比例进行融合得到的融合样本图像可以参见图4中403所示。其中,403所示的融合样本图像中白色边缘的图像块为第一样本产品图像,黑色边缘的图像块为第二样本产品图像。
在融合后,融合样本图像的样本标签是将第一样本产品图像的样本标签和第二样本产品图像的样本标签按照上述比例进行融合得到的,该比例与两个样本产品图像融合时所采用的比例是一样的。具体操作如图5所示,从图5中可以看出,融合样本产品图像是以1:3的比例,将缺陷类别为A类的第一样本产品图像和缺陷类别为B类的第二样本产品图像融合得到的,其各自的样本标签分别为yA和yB,则融合样本图像的样本标签y可以表示为:y=0.75yA+0.25yB。
在本申请实施例中,通过将多个不同缺陷类型的样本产品图像混合得到的融合样本产品图像输入初始网络模型,从而使得第一特征提取模块可以关注不同图像块之间的特征,关注粒度更细,进而提高提取样本特征的准确性。
在学术界基于小样本训练缺陷检测模型时,其总体架构参见上述图3所示。因为用于训练缺陷检测模型的样本产品图像集里面没有待检测缺陷类别的样本产品图像,所以在测试的时候还需要不断更新图3中的分类模块,并且将用于测试的样本产品图像轮流放入support集和query集,最终通过多次测试取平均值得到准确率。而本申请实施例为了避免测试时不断更新第一分类模块,新增一个用于分类的网络分支,即初始网络模型还包括第二分类模块,第一分类模块和第二分类模块共同用于分类预测。并且将所收集到的待检测缺陷类别的样本产品图像加入到本产品图像集中进行训练。在这种情况下,可以通过第二分类模块对目标样本特征进行预测,得到第二预测缺陷结果,进而在根据查询样本产品图像的第一预测缺陷结果和查询样本产品图像的样本标签构建第一分类损失函数时,先根据查询样本产品图像的第二预测缺陷结果和第一预测缺陷结果得到最终预测缺陷结果,进而基于最终预测缺陷结果和查询样本产品图像的样本标签构建第一分类损失函数,从而对初始网络模型进行训练。其中,待检测缺陷类别与测试集中样本产品图像的缺陷类别相同。
此时初始网络模型中用于分类预测的网络框架可以参见图6所示,601示出了第一分类模块,602示出了第二分类模块,基于目标样本特征,通过第一分类模块得到第一预测缺陷结果,基于目标样本特征,通过第二分类模块得到第二预测缺陷结果。需要说明的是,在本申请实施例中,在向第一分类模块中输入每个样本产品图像的目标样本特征时,可以将query集中查询样本产品图像的目标样本特征分别与support集中支持样本产品图像的目标样本特征进行融合,得到融合特征P1Q1、P2Q2、P3Q3、P4Q4、P5Q5输入第一分类模块,从而基于P1Q1、P2Q2、P3Q3、P4Q4、P5Q5进行特征相似度比对得到第一预测缺陷结果。而向第二分类模块中输入每个样本产品图像的目标样本特征时,可以将每个样本产品图像的目标样本特征直接输入到第二分类模块,即图6中P1、P2、P3、P4、P5,从而直接预测得到第二预测缺陷结果。然后根据查询样本产品图像的第二预测缺陷结果和第一预测缺陷结果得到最终预测缺陷结果。
其中,最终预测缺陷结果的确定方式可以包括多种,例如可以对第一预测缺陷结果和第二预测缺陷结果进行加权求和得到最终预测缺陷结果,当然也可以采用其他方式计算最终预测缺陷结果,例如将第一预测缺陷结果和第二预测缺陷结果的乘积作为最终预测缺陷结果。本申请实施例主要以对第一预测缺陷结果和第二预测缺陷结果进行加权求和得到最终预测缺陷结果为例进行介绍。
若第一分类模型通过gθ表示,第二分类模型通过g′θ表示,对第一预测缺陷结果和第二预测缺陷结果进行加权求和得到最终预测缺陷结果的计算公式如下:
g=γ·gθ+(1-γ)·g′θ
其中,g表示到最终预测缺陷结果,gθ表示第一分类模型输出的第一预测缺陷结果,g′θ表示第二分类模型输出的第二预测缺陷结果,γ为超参数。
本申请实施例通过增加第二分类模块改进训练方式,保证样本产品图像集里有测试集里同缺陷类别的样本产品图像,但support集和query集合里没有相同的样本产品图像,从而实现能直接一次测试得出准确率,而不是通过多次测试取平均值的方法得到准确率。进而使得本申请在训练过程中更新第一分类模块,而在测试过程无需更新第一分类模块。
可以理解的是,在工业AI质检场景中,虽然带有样本标签的样本产品图像极少,但是却有很多无标注产品图像,在本申请实施例中可以将这些无标注产品图像用于缺陷检测模型的训练,以进一步提高训练效果。具体的,服务器可以获取多个无标注产品图像,针对每个无标注产品图像,确定无标注产品图像与样本产品图像集中每个样本产品图像的相似度,进而根据该相似度确定无标注产品图像中哪些与样本产品图像集中的样本产品图像相似。若多个无标注产品图像中目标无标注产品图像与多个样本产品图像中目标样本产品图像的相似度满足预设阈值,则说明目标无标注产品图像与目标样本产品图像相似,从而将目标无标注产品图像加入至支持图像集,得到更新后的样本产品图像集。此时,目标无标注产品图像的样本标签与目标样本产品图像的样本标签相同,即将目标样本产品图像的样本标签作为目标无标注产品图像的样本标签,该目标无标注产品图像的样本标签是伪标签。进而利用更新后的样本产品图像集对缺陷检测模型进行二次训练。
本申请实施例将与各个缺陷类别相似的目标无标注产品图像筛选出来加入support集进行二次训练,从而进一步提升提取样本特征的准确度。
在训练得到缺陷检测模型后,可以将缺陷检测模型应用到实际工业AI质检场景中,从而利用缺陷检测模型进行缺陷检测,为此,本申请实施例还提供一种缺陷检测方法,参见图7所示,所述方法包括:
S701、获取待检测产品图像。
在对某个产品进行缺陷检测时,可以首先获取该检测产品的图像,该检测产品的图像可以称为待检测产品图像。获取待检测产品图像的方式可以是对该产品进行拍照。
S702、通过所述缺陷检测模型中的第一特征提取模块对所述待检测产品图像进行特征提取得到待检测特征。
S703、通过所述缺陷检测模型中的第一分类模块对所述待检测特征进行特征相似度比对,得到比对结果。
S704、基于所述比对结果得到所述待检测产品图像的第一缺陷检测结果。
在得到待检测产品图像后,可以通过缺陷检测模型中的第一特征提取模块对待检测产品图像进行特征提取得到待检测特征。通过缺陷检测模型中的第一分类模块对待检测特征进行特征相似度比对,得到比对结果,并基于比对结果得到待检测产品图像的第一缺陷检测结果。其中,S702-S704的具体实现方式与缺陷检测模型训练过程类似,此处不再赘述。
在一种可能的实现方式中,缺陷检测模型中还可以包括第二分类模块,以通过第二分类模块对待检测特征进行预测,得到第二缺陷检测结果。然后,根据第一缺陷检测结果和第二缺陷检测结果得到最终缺陷检测结果。
在工业AI质检场景中,通过本申请实施例提供的方法,可以对样本量极少的缺陷进行准确识别,例如对于皮革(即产品为皮革)缺陷的识别,将皮革的待检测产品图像输入,利用缺陷检测模型进行AI质检可以得出其是否有缺陷,以及缺陷类别。参见图8所示,图8示出了5种缺陷类别的皮革分别对应的待检测产品图像,每张待检测产品图像具有对应的标识,例如图8所示,5张待检测产品图像的标识从左至右依次是3127、4515、7349、8140、9508。通过缺陷检测模型得到每张待检测产品图像的最终缺陷检测结果依次是破洞、胶溢、翻折、划伤、正常。
参见图8,在针对大量皮革进行检测后,基于每个皮革的最终缺陷检测结果,统计有缺陷的皮革和无缺陷的皮革的比例,得到统计结果,其中有缺陷的皮革占1%,正常的皮革占99%。而在有缺陷的皮革中,统计各种缺陷类型所占比例得到缺陷类别统计结果,各种缺陷类别所占比例分别是:破洞占10%、胶溢占10%、翻折占30%、划伤占50%。
当利用缺陷检测模型进行缺陷检测时,相当于将本申请实施例提供的缺陷检测方法作为一款人工智能产品向业务方(即提供缺陷检测业务的对象)进行服务输出时,缺陷检测方法在实际业务使用中往往作为缺陷识别模块的子模块被集成在技术服务商的后台服务中,它的上游模块包括了产品成像模块、缺陷检测模块等,它的下游模块包括了数据库模块、数据分析统计模块等,其整体架构图如图9所示。其中,产品成像模块可以用于对产品进行拍照得到待检测产品图像;缺陷检测模块主要是用于定位缺陷,进而基于定位得到的缺陷,通过缺陷识别模块对缺陷进行检测得到缺陷类别;数据分析统计模块用于统计有缺陷的产品和无缺陷的产品的数量或比例,以及各种缺陷类别的产品的数量或比例;数据库模块可以用于记录统计结果。在图9中,9011所示的产品成像模块和9012所示的缺陷检测模块位于前端模块901上,该前端模块901可以是客户端;9021所示的缺陷识别模块、9022所示的数据分析统计模块和9023所示的数据库模块位于后端模块902上。
可以理解的是,当本申请实施例中第一预测缺陷结果、第二预测缺陷结果、第一缺陷检测结果是缺陷类别时,本申请实施例提供的缺陷检测方法以及缺陷检测模型的训练方法所属模块为缺陷识别模块。
需要说明的是,本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
基于图2对应实施例提供的缺陷检测模型的训练方法,本申请实施例还提供一种缺陷检测模型的训练装置1000。参见图10,所述缺陷检测模型的训练装置1000包括获取单元1001、提取单元1002、确定单元1003、构建单元1004和训练单元1005:
所述获取单元1001,用于获取样本产品图像集,所述样本产品图像集中每个样本产品图像具有样本标签,所述样本产品图像集中的多个样本产品图像划分为支持样本产品图像和查询样本产品图像,所述支持样本产品图像构成支持图像集,所述查询样本产品图像构成查询图像集;
所述提取单元1002,用于基于所述样本产品图像集中每个样本产品图像,通过初始网络模型中的第一特征提取模块进行特征提取得到第一样本特征,以及基于所述样本产品图像集中每个样本产品图像,通过第二特征提取模块进行特征提取得到第二样本特征;
所述确定单元1003,用于针对所述每个样本产品图像,基于对应的第一样本特征和第二样本特征得到目标样本特征;
所述确定单元1003,还用于针对每个查询样本产品图像,通过所述初始网络模型中的第一分类模块对所述查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征相似度比对,并基于比对结果和支持样本产品图像的样本标签得到所述查询样本产品图像的第一预测缺陷结果;
所述构建单元1004,用于基于所述每个样本产品图像的第一样本特征和第二样本特征构建特征偏移损失函数,以及根据所述查询样本产品图像的第一预测缺陷结果和所述查询样本产品图像的样本标签构建第一分类损失函数;
所述训练单元1005,用于根据所述特征偏移损失函数和所述第一分类损失函数,对所述初始网络模型进行训练得到所述缺陷检测模型。
在一种可能的实现方式中,所述获取单元1001,具体用于:
获取多个样本产品原始图像;
对每个样本产品原始图像分别进行不同角度的旋转,得到每个样本产品原始图像的样本产品扩充图像;
将所述多个样本产品原始图像和每个样本产品原始图像的样本产品扩充图像作为样本产品图像,构成所述样本产品图像集,所述样本产品图像集中每个样本产品图像还具有旋转角度标签。
在一种可能的实现方式中,所述确定单元1003,具体用于:
基于所述比对结果、支持样本产品图像的样本标签和旋转角度标签得到所述查询样本产品图像的第一预测缺陷结果;
所述构建单元1004,还用于:
根据所述第一预测缺陷结果和对应的旋转角度标签构建旋转损失函数;
所述训练单元1005,具体用于:
根据所述特征偏移损失函数、所述第一分类损失函数和所述旋转损失函数,对所述初始网络模型进行训练得到所述缺陷检测模型。
在一种可能的实现方式中,所述提取单元1002,具体用于:
将所述样本产品图像集中每个样本产品图像分别作为第一样本产品图像,将所述第一样本产品图像与第二样本产品图像按照比例进行融合得到融合样本图像,所述第二样本产品图像与所述第一样本产品图像的缺陷类别不同,所述融合样本图像的样本标签是将所述第一样本产品图像的样本标签和所述第二样本产品图像的样本标签按照所述比例进行融合得到的;
将所述融合样本图像输入至所述第一特征提取模块得到所述第一样本特征;
相应的,用于确定所述第一预测缺陷结果的支持样本产品图像的样本标签为其对应的融合样本图像的样本标签,用于构建所述第一分类损失函数的查询样本产品图像的样本标签为其对应的融合样本图像的样本标签。
在一种可能的实现方式中,所述构建单元1004,还用于:
根据所述每个样本产品图像的第一样本特征和对应的样本标签构建第二分类损失函数,以及根据每个样本产品图像的第二样本特征和对应的样本标签构建第三分类损失函数;
所述训练单元1005,具体用于:
根据所述特征偏移损失函数、所述第二分类损失函数和所述第三分类损失函数对所述第一特征提取模块和所述第二特征提取模块进行训练;
根据所述第一分类损失函数训练所述第一分类模块。
在一种可能的实现方式中,所述第一特征提取模块为学习模型,所述第二特征提取模块为指导模型,所述训练单元1005,具体用于:
根据所述第三分类损失函数和所述特征偏移损失函数训练所述指导模型;
基于所述特征偏移损失函数和所述第二分类损失函数,利用训练好的指导模型对所述学习模型进行蒸馏训练。
在一种可能的实现方式中,所述样本产品图像集中包括待检测缺陷类别的样本产品图像,所述初始网络模型还包括第二分类模块,所述确定单元1003,还用于:
通过所述第二分类模块对所述目标样本特征进行预测,得到第二预测缺陷结果;
所述构建单元1004,具体用于:
根据所述查询样本产品图像的第二预测缺陷结果和第一预测缺陷结果得到最终预测缺陷结果;
基于所述最终预测缺陷结果和所述查询样本产品图像的样本标签构建所述第一分类损失函数。
在一种可能的实现方式中,所述初始网络模型中还包括特征植入模块,所述确定单元1003,具体用于:
针对每个查询样本产品图像,通过所述特征植入模块对所述查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征关联性编码;
基于特征关联性编码结果,通过所述第一分类模块进行特征相似度比对。
在一种可能的实现方式中,所述装置还包括加入单元:
所述获取单元1001,还用于获取多个无标注产品图像;
所述确定单元1003,还用于针对每个无标注产品图像,确定所述无标注产品图像与所述样本产品图像集中每个样本产品图像的相似度;
所述加入单元,用于若所述多个无标注产品图像中目标无标注产品图像与所述多个样本产品图像中目标样本产品图像的相似度满足预设阈值,将所述目标无标注产品图像加入至所述支持图像集,得到更新后的样本产品图像集,所述目标无标注产品图像的样本标签与所述目标样本产品图像的样本标签相同;
所述训练单元1005,还用于利用所述更新后的样本产品图像集对所述缺陷检测模型进行二次训练。
在一种可能的实现方式中,所述获取单元1001,还用于获取待检测产品图像;
所述提取单元1002,还用于通过所述缺陷检测模型中的第一特征提取模块对所述待检测产品图像进行特征提取得到待检测特征;
所述确定单元1003,还用于通过所述缺陷检测模型中的第一分类模块对所述待检测特征进行特征相似度比对,得到比对结果;
所述确定单元1003,还用于基于所述比对结果得到所述待检测产品图像的第一缺陷检测结果。
在一种可能的实现方式中,所述缺陷检测模型还包括第二分类模块,所述确定单元1003,还用于:
通过所述第二分类模块对所述待检测特征进行预测,得到第二缺陷检测结果;
根据所述第一缺陷检测结果和所述第二缺陷检测结果得到最终缺陷检测结果。
由上述技术方案可以看出,在工业质检场景下,需要基于小样本训练得到缺陷检测模型,为此可以先获取样本产品图像集,样本产品图像集中每个样本产品图像具有样本标签,样本产品图像集中的多个样本产品图像划分为支持样本产品图像和查询样本产品图像,支持样本产品图像构成支持图像集,查询样本产品图像构成查询图像集。由于样本产品图像集中的样本产品图像数量极少,为了提高缺陷检测模型的泛化性,本申请以提高缺陷检测模型的特征提取能力为目的,引入额外的第二特征提取模块辅助缺陷检测模型中的第一特征提取模块的训练。具体的,可以基于样本产品图像集中每个样本产品图像,通过初始网络模型中的第一特征提取模块进行特征提取得到第一样本特征,以及基于样本产品图像集中每个样本产品图像,通过第二特征提取模块进行特征提取得到第二样本特征。针对每个样本产品图像,基于对应的第一样本特征和第二样本特征得到目标样本特征,从而针对每个查询样本产品图像,通过初始网络模型中的第一分类模块对查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征相似度比对,并基于比对结果和支持样本产品图像的样本标签得到查询样本产品图像的第一预测缺陷结果。基于每个样本产品图像的第一样本特征和第二样本特征构建特征偏移损失函数,特征偏移损失函数用于体现两个特征提取模块提取到的特征分布的相似程度,从而保证两个特征提取模块提取到的特征分布相似,不会产生较大的特征偏移,从而提高第一特征提取模块的特征提取能力,提高特征泛化性。根据查询样本产品图像的第一预测缺陷结果和查询样本产品图像的样本标签构建第一分类损失函数,第一分类损失函数用于表征第一分类模块的分类能力,这样根据特征偏移损失函数和第一分类损失函数对初始网络模型进行训练,可以得到用于缺陷检测且泛化性较强的缺陷检测模型。由此提升模型的泛化性,降低漏失的可能性,提高缺陷检测结果的准确性。
本申请实施例还提供了一种计算机设备,该计算机设备可以执行缺陷检测模型的训练方法。该计算机设备例如可以是终端,以终端为智能手机为例:
图11示出的是与本申请实施例提供的智能手机的部分结构的框图。参考图11,智能手机包括:射频(英文全称:Radio Frequency,英文缩写:RF)电路1110、存储器1120、输入单元1130、显示单元1140、传感器1150、音频电路1160、无线保真(英文缩写:WiFi)模块1170、处理器1180、以及电源1190等部件。输入单元1130可包括触控面板1131以及其他输入设备1132,显示单元1140可包括显示面板1141,音频电路1160可以包括扬声器1161和传声器1162。可以理解的是,图11中示出的智能手机结构并不构成对智能手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储器1120可用于存储软件程序以及模块,处理器1180通过运行存储在存储器1120的软件程序以及模块,从而执行智能手机的各种功能应用以及数据处理。存储器1120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据智能手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器1180是智能手机的控制中心,利用各种接口和线路连接整个智能手机的各个部分,通过运行或执行存储在存储器1120内的软件程序和/或模块,以及调用存储在存储器1120内的数据,执行智能手机的各种功能和处理数据。可选的,处理器1180可包括一个或多个处理单元;优选的,处理器1180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1180中。
在本实施例中,智能手机中的处理器1180可以执行以下步骤:
获取样本产品图像集,所述样本产品图像集中每个样本产品图像具有样本标签,所述样本产品图像集中的多个样本产品图像划分为支持样本产品图像和查询样本产品图像,所述支持样本产品图像构成支持图像集,所述查询样本产品图像构成查询图像集;
基于所述样本产品图像集中每个样本产品图像,通过初始网络模型中的第一特征提取模块进行特征提取得到第一样本特征,以及基于所述样本产品图像集中每个样本产品图像,通过第二特征提取模块进行特征提取得到第二样本特征;
针对所述每个样本产品图像,基于对应的第一样本特征和第二样本特征得到目标样本特征;
针对每个查询样本产品图像,通过所述初始网络模型中的第一分类模块对所述查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征相似度比对,并基于比对结果和支持样本产品图像的样本标签得到所述查询样本产品图像的第一预测缺陷结果;
基于所述每个样本产品图像的第一样本特征和第二样本特征构建特征偏移损失函数,以及根据所述查询样本产品图像的第一预测缺陷结果和所述查询样本产品图像的样本标签构建第一分类损失函数;
根据所述特征偏移损失函数和所述第一分类损失函数,对所述初始网络模型进行训练得到所述缺陷检测模型。
本申请实施例提供的计算机设备还可以是服务器,请参见图12所示,图12为本申请实施例提供的服务器1200的结构图,服务器1200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器,例如中央处理器(Central Processing Units,简称CPU)1222,以及存储器1232,一个或一个以上存储应用程序1242或数据1244的存储介质1230(例如一个或一个以上海量存储设备)。其中,存储器1232和存储介质1230可以是短暂存储或持久存储。存储在存储介质1230的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1222可以设置为与存储介质1230通信,在服务器1200上执行存储介质1230中的一系列指令操作。
服务器1200还可以包括一个或一个以上电源1226,一个或一个以上有线或无线网络接口1250,一个或一个以上输入输出接口1258,和/或,一个或一个以上操作系统1241,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
在本实施例中,服务器1200中的中央处理器1222可以执行以下步骤:
获取样本产品图像集,所述样本产品图像集中每个样本产品图像具有样本标签,所述样本产品图像集中的多个样本产品图像划分为支持样本产品图像和查询样本产品图像,所述支持样本产品图像构成支持图像集,所述查询样本产品图像构成查询图像集;
基于所述样本产品图像集中每个样本产品图像,通过初始网络模型中的第一特征提取模块进行特征提取得到第一样本特征,以及基于所述样本产品图像集中每个样本产品图像,通过第二特征提取模块进行特征提取得到第二样本特征;
针对所述每个样本产品图像,基于对应的第一样本特征和第二样本特征得到目标样本特征;
针对每个查询样本产品图像,通过所述初始网络模型中的第一分类模块对所述查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征相似度比对,并基于比对结果和支持样本产品图像的样本标签得到所述查询样本产品图像的第一预测缺陷结果;
基于所述每个样本产品图像的第一样本特征和第二样本特征构建特征偏移损失函数,以及根据所述查询样本产品图像的第一预测缺陷结果和所述查询样本产品图像的样本标签构建第一分类损失函数;
根据所述特征偏移损失函数和所述第一分类损失函数,对所述初始网络模型进行训练得到所述缺陷检测模型。
根据本申请的一个方面,提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行前述各个实施例所述的缺陷检测模型的训练方法。
根据本申请的一个方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行上述实施例各种可选实现方式中提供的方法。
上述各个附图对应的流程或结构的描述各有侧重,某个流程或结构中没有详述的部分,可以参见其他流程或结构的相关描述。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储计算机程序的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术成员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (15)
1.一种缺陷检测模型的训练方法,其特征在于,所述方法包括:
获取样本产品图像集,所述样本产品图像集中每个样本产品图像具有样本标签,所述样本产品图像集中的多个样本产品图像划分为支持样本产品图像和查询样本产品图像,所述支持样本产品图像构成支持图像集,所述查询样本产品图像构成查询图像集;
基于所述样本产品图像集中每个样本产品图像,通过初始网络模型中的第一特征提取模块进行特征提取得到第一样本特征,以及基于所述样本产品图像集中每个样本产品图像,通过第二特征提取模块进行特征提取得到第二样本特征;
针对所述每个样本产品图像,基于对应的第一样本特征和第二样本特征得到目标样本特征;
针对每个查询样本产品图像,通过所述初始网络模型中的第一分类模块对所述查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征相似度比对,并基于比对结果和支持样本产品图像的样本标签得到所述查询样本产品图像的第一预测缺陷结果;
基于所述每个样本产品图像的第一样本特征和第二样本特征构建特征偏移损失函数,以及根据所述查询样本产品图像的第一预测缺陷结果和所述查询样本产品图像的样本标签构建第一分类损失函数;
根据所述特征偏移损失函数和所述第一分类损失函数,对所述初始网络模型进行训练得到所述缺陷检测模型。
2.根据权利要求1所述的方法,其特征在于,所述获取样本产品图像集,包括:
获取多个样本产品原始图像;
对每个样本产品原始图像分别进行不同角度的旋转,得到每个样本产品原始图像的样本产品扩充图像;
将所述多个样本产品原始图像和每个样本产品原始图像的样本产品扩充图像作为样本产品图像,构成所述样本产品图像集,所述样本产品图像集中每个样本产品图像还具有旋转角度标签。
3.根据权利要求2所述的方法,其特征在于,所述基于比对结果和支持样本产品图像的样本标签得到所述查询样本产品图像的第一预测缺陷结果,包括:
基于所述比对结果、支持样本产品图像的样本标签和旋转角度标签得到所述查询样本产品图像的第一预测缺陷结果;
所述方法还包括:
根据所述第一预测缺陷结果和对应的旋转角度标签构建旋转损失函数;
所述根据所述特征偏移损失函数和所述第一分类损失函数,对所述初始网络模型进行训练得到所述缺陷检测模型,包括:
根据所述特征偏移损失函数、所述第一分类损失函数和所述旋转损失函数,对所述初始网络模型进行训练得到所述缺陷检测模型。
4.根据权利要求1所述的方法,其特征在于,所述基于所述样本产品图像集中每个样本产品图像,通过初始网络模型中的第一特征提取模块进行特征提取得到第一样本特征,包括:
将所述样本产品图像集中每个样本产品图像分别作为第一样本产品图像,将所述第一样本产品图像与第二样本产品图像按照比例进行融合得到融合样本图像,所述第二样本产品图像与所述第一样本产品图像的缺陷类别不同,所述融合样本图像的样本标签是将所述第一样本产品图像的样本标签和所述第二样本产品图像的样本标签按照所述比例进行融合得到的;
将所述融合样本图像输入至所述第一特征提取模块得到所述第一样本特征;
相应的,用于确定所述第一预测缺陷结果的支持样本产品图像的样本标签为其对应的融合样本图像的样本标签,用于构建所述第一分类损失函数的查询样本产品图像的样本标签为其对应的融合样本图像的样本标签。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述每个样本产品图像的第一样本特征和对应的样本标签构建第二分类损失函数,以及根据每个样本产品图像的第二样本特征和对应的样本标签构建第三分类损失函数;
所述根据所述特征偏移损失函数和所述第一分类损失函数,对所述初始网络模型进行训练得到所述缺陷检测模型,包括:
根据所述特征偏移损失函数、所述第二分类损失函数和所述第三分类损失函数对所述第一特征提取模块和所述第二特征提取模块进行训练;
根据所述第一分类损失函数训练所述第一分类模块。
6.根据权利要求5所述的方法,其特征在于,所述第一特征提取模块为学习模型,所述第二特征提取模块为指导模型,所述根据所述特征偏移损失函数、所述第二分类损失函数和所述第三分类损失函数对所述第一特征提取模块和所述第二特征提取模块,包括:
根据所述第三分类损失函数和所述特征偏移损失函数训练所述指导模型;
基于所述特征偏移损失函数和所述第二分类损失函数,利用训练好的指导模型对所述学习模型进行蒸馏训练。
7.根据权利要求1所述的方法,其特征在于,所述样本产品图像集中包括待检测缺陷类别的样本产品图像,所述初始网络模型还包括第二分类模块,所述方法还包括:
通过所述第二分类模块对所述目标样本特征进行预测,得到第二预测缺陷结果;
所述根据所述查询样本产品图像的第一预测缺陷结果和所述查询样本产品图像的样本标签构建第一分类损失函数,包括:
根据所述查询样本产品图像的第二预测缺陷结果和第一预测缺陷结果得到最终预测缺陷结果;
基于所述最终预测缺陷结果和所述查询样本产品图像的样本标签构建所述第一分类损失函数。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述初始网络模型中还包括特征植入模块,所述针对每个查询样本产品图像,通过所述初始网络模型中的第一分类模块对所述查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征相似度比对,包括:
针对每个查询样本产品图像,通过所述特征植入模块对所述查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征关联性编码;
基于特征关联性编码结果,通过所述第一分类模块进行特征相似度比对。
9.根据权利要求1-7任一项所述的方法,其特征在于,所述方法还包括:
获取多个无标注产品图像;
针对每个无标注产品图像,确定所述无标注产品图像与所述样本产品图像集中每个样本产品图像的相似度;
若所述多个无标注产品图像中目标无标注产品图像与所述多个样本产品图像中目标样本产品图像的相似度满足预设阈值,将所述目标无标注产品图像加入至所述支持图像集,得到更新后的样本产品图像集,所述目标无标注产品图像的样本标签与所述目标样本产品图像的样本标签相同;
利用所述更新后的样本产品图像集对所述缺陷检测模型进行二次训练。
10.根据权利要求1-7任一项所述的方法,其特征在于,所述方法还包括:
获取待检测产品图像;
通过所述缺陷检测模型中的第一特征提取模块对所述待检测产品图像进行特征提取得到待检测特征;
通过所述缺陷检测模型中的第一分类模块对所述待检测特征进行特征相似度比对,得到比对结果;
基于所述比对结果得到所述待检测产品图像的第一缺陷检测结果。
11.根据权利要求10所述的方法,其特征在于,所述缺陷检测模型还包括第二分类模块,所述方法还包括:
通过所述第二分类模块对所述待检测特征进行预测,得到第二缺陷检测结果;
根据所述第一缺陷检测结果和所述第二缺陷检测结果得到最终缺陷检测结果。
12.一种缺陷检测模型的训练装置,其特征在于,所述装置包括获取单元、提取单元、确定单元、构建单元和训练单元:
所述获取单元,用于获取样本产品图像集,所述样本产品图像集中每个样本产品图像具有样本标签,所述样本产品图像集中的多个样本产品图像划分为支持样本产品图像和查询样本产品图像,所述支持样本产品图像构成支持图像集,所述查询样本产品图像构成查询图像集;
所述提取单元,用于基于所述样本产品图像集中每个样本产品图像,通过初始网络模型中的第一特征提取模块进行特征提取得到第一样本特征,以及基于所述样本产品图像集中每个样本产品图像,通过第二特征提取模块进行特征提取得到第二样本特征;
所述确定单元,用于针对所述每个样本产品图像,基于对应的第一样本特征和第二样本特征得到目标样本特征;
所述确定单元,还用于针对每个查询样本产品图像,通过所述初始网络模型中的第一分类模块对所述查询样本产品图像的目标样本特征和每个支持样本产品图像的目标样本特征进行特征相似度比对,并基于比对结果和支持样本产品图像的样本标签得到所述查询样本产品图像的第一预测缺陷结果;
所述构建单元,用于基于所述每个样本产品图像的第一样本特征和第二样本特征构建特征偏移损失函数,以及根据所述查询样本产品图像的第一预测缺陷结果和所述查询样本产品图像的样本标签构建第一分类损失函数;
所述训练单元,用于根据所述特征偏移损失函数和所述第一分类损失函数,对所述初始网络模型进行训练得到所述缺陷检测模型。
13.一种计算机设备,其特征在于,所述计算机设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行权利要求1-11任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储程序代码,所述程序代码当被处理器执行时使所述处理器执行权利要求1-11任一项所述的方法。
15.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-11任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211025608.0A CN117011213B (zh) | 2022-08-25 | 2022-08-25 | 一种缺陷检测模型的训练方法和相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211025608.0A CN117011213B (zh) | 2022-08-25 | 2022-08-25 | 一种缺陷检测模型的训练方法和相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117011213A true CN117011213A (zh) | 2023-11-07 |
CN117011213B CN117011213B (zh) | 2024-08-06 |
Family
ID=88564198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211025608.0A Active CN117011213B (zh) | 2022-08-25 | 2022-08-25 | 一种缺陷检测模型的训练方法和相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117011213B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111192262A (zh) * | 2020-01-03 | 2020-05-22 | 腾讯云计算(北京)有限责任公司 | 基于人工智能的产品缺陷分类方法、装置、设备及介质 |
CN113450307A (zh) * | 2021-05-12 | 2021-09-28 | 西安电子科技大学 | 一种产品边缘缺陷检测方法 |
US20210319156A1 (en) * | 2020-04-09 | 2021-10-14 | Wuhan University | Method and system for fault diagnosis with small samples of power equipment based on virtual and real twin spaces |
CN114022479A (zh) * | 2022-01-05 | 2022-02-08 | 高视科技(苏州)有限公司 | 电池极耳外观缺陷检测方法 |
CN114037653A (zh) * | 2021-09-23 | 2022-02-11 | 上海仪电人工智能创新院有限公司 | 基于二阶段知识蒸馏的工业机器视觉缺陷检测方法和系统 |
CN114627383A (zh) * | 2022-05-13 | 2022-06-14 | 南京航空航天大学 | 一种基于度量学习的小样本缺陷检测方法 |
-
2022
- 2022-08-25 CN CN202211025608.0A patent/CN117011213B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111192262A (zh) * | 2020-01-03 | 2020-05-22 | 腾讯云计算(北京)有限责任公司 | 基于人工智能的产品缺陷分类方法、装置、设备及介质 |
US20210319156A1 (en) * | 2020-04-09 | 2021-10-14 | Wuhan University | Method and system for fault diagnosis with small samples of power equipment based on virtual and real twin spaces |
CN113450307A (zh) * | 2021-05-12 | 2021-09-28 | 西安电子科技大学 | 一种产品边缘缺陷检测方法 |
CN114037653A (zh) * | 2021-09-23 | 2022-02-11 | 上海仪电人工智能创新院有限公司 | 基于二阶段知识蒸馏的工业机器视觉缺陷检测方法和系统 |
CN114022479A (zh) * | 2022-01-05 | 2022-02-08 | 高视科技(苏州)有限公司 | 电池极耳外观缺陷检测方法 |
CN114627383A (zh) * | 2022-05-13 | 2022-06-14 | 南京航空航天大学 | 一种基于度量学习的小样本缺陷检测方法 |
Non-Patent Citations (1)
Title |
---|
康维新;彭喜元;: "基于二层SVM多分类器的桩基缺陷诊断", 《电子学报》, no. 1, 15 December 2008 (2008-12-15), pages 66 - 70 * |
Also Published As
Publication number | Publication date |
---|---|
CN117011213B (zh) | 2024-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109948425B (zh) | 一种结构感知自注意和在线实例聚合匹配的行人搜索方法及装置 | |
CN111476284B (zh) | 图像识别模型训练及图像识别方法、装置、电子设备 | |
CN112434721A (zh) | 一种基于小样本学习的图像分类方法、系统、存储介质及终端 | |
CN112199375A (zh) | 跨模态的数据处理方法、装置、存储介质以及电子装置 | |
CN108734184B (zh) | 一种对敏感图像进行分析的方法及装置 | |
CN110598019B (zh) | 重复图像识别方法及装置 | |
CN113157678B (zh) | 一种多源异构数据关联方法 | |
CN113449725B (zh) | 对象分类方法、装置、设备及存储介质 | |
CN112949408B (zh) | 一种过鱼通道目标鱼类实时识别方法和系统 | |
Fu et al. | Complementarity-aware Local-global Feature Fusion Network for Building Extraction in Remote Sensing Images | |
Xiao et al. | Deterministic model fitting by local-neighbor preservation and global-residual optimization | |
CN112308148A (zh) | 缺陷类别识别、孪生神经网络训练方法、装置及存储介质 | |
CN117516937A (zh) | 基于多模态特征融合增强的滚动轴承未知故障检测方法 | |
CN117036843A (zh) | 目标检测模型训练方法、目标检测方法和装置 | |
CN113313215A (zh) | 图像数据处理方法、装置、计算机设备和存储介质 | |
Xu et al. | Hybrid attention-aware transformer network collaborative multiscale feature alignment for building change detection | |
CN113537207B (zh) | 视频处理方法、模型的训练方法、装置以及电子设备 | |
CN113395584B (zh) | 一种视频数据处理方法、装置、设备以及介质 | |
CN113705468A (zh) | 基于人工智能的数字图像识别方法及相关设备 | |
CN113704276A (zh) | 地图更新方法、装置、电子设备及计算机可读存储介质 | |
CN116958724A (zh) | 一种产品分类模型的训练方法和相关装置 | |
CN117011213B (zh) | 一种缺陷检测模型的训练方法和相关装置 | |
CN117011539A (zh) | 目标检测方法、目标检测模型的训练方法、装置及设备 | |
CN114332599A (zh) | 图像识别方法、装置、计算机设备、存储介质和产品 | |
CN109446330B (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 |