CN116468725B - 基于预训练模型的工业缺陷检测方法、装置及存储介质 - Google Patents

基于预训练模型的工业缺陷检测方法、装置及存储介质 Download PDF

Info

Publication number
CN116468725B
CN116468725B CN202310691667.XA CN202310691667A CN116468725B CN 116468725 B CN116468725 B CN 116468725B CN 202310691667 A CN202310691667 A CN 202310691667A CN 116468725 B CN116468725 B CN 116468725B
Authority
CN
China
Prior art keywords
image
text
feature vector
defect
trained
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
Application number
CN202310691667.XA
Other languages
English (en)
Other versions
CN116468725A (zh
Inventor
金一舟
卢宇
李世伟
兰正华
刘亚洁
刘庆杰
王蕴红
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Innovation Research Institute of Beihang University
Original Assignee
Hangzhou Innovation Research Institute of Beihang University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Innovation Research Institute of Beihang University filed Critical Hangzhou Innovation Research Institute of Beihang University
Priority to CN202310691667.XA priority Critical patent/CN116468725B/zh
Publication of CN116468725A publication Critical patent/CN116468725A/zh
Application granted granted Critical
Publication of CN116468725B publication Critical patent/CN116468725B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/253Fusion techniques of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0499Feedforward networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing 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/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/806Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Quality & Reliability (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

本发明涉及基于预训练模型的工业缺陷检测方法、装置及存储介质,应用于工业缺陷检测技术领域,包括:通过获取工业缺陷检测图像数据集来训练视觉语言模型,针对每种场景下的每种工业缺陷设置语言文本,通过语言文本描述目标缺陷的特征,将待检测图像和目标缺陷所对应的语言文本一并输入到预训练的视觉语言模型中,这样预训练的视觉语言模型就可以结合待检测图像以及目标缺陷的语言文本,通过在待检测图像上寻找与语言文本相关联的物体区域,从而实现目标缺陷的检测;本申请中,针对每一种缺陷设置不同的语言文本,而不是针对每一种缺陷单独训练模型,从而节省模型训练过程中花费的时间,节约成本,同时还能实现工业检测上多种缺陷的识别检测。

Description

基于预训练模型的工业缺陷检测方法、装置及存储介质
技术领域
本发明涉及工业缺陷检测技术领域,具体涉及基于预训练模型的工业缺陷检测方法、装置及存储介质。
背景技术
由于工业图像中缺陷类别繁多,且缺陷形态和大小差异较大,传统的手工特征难以适应这种复杂的情况,而针对每一类缺陷场景训练一个单独的模型不但在训练过程中会耗费大量的时间,同时还会提高模型落地的成本。
发明内容
有鉴于此,本发明的目的在于提供基于预训练模型的工业缺陷检测方法、装置及存储介质,以解决现有技术中,工业图像中缺陷类别繁多,且缺陷形态和大小差异较大,传统的手工特征难以适应这种复杂的情况,而针对每一类缺陷场景训练一个单独的模型不但在训练过程中会耗费大量的时间,同时还会提高模型落地的成本的问题。
根据本发明实施例的第一方面,提供基于预训练模型的工业缺陷检测方法,所述方法包括:
获取工业缺陷检测图像数据集,通过工业缺陷检测图像数据集来训练视觉语言模型,得到预训练的视觉语言模型;
针对每种场景下的每种工业缺陷设置语言文本,所述语言文本用于描述该工业缺陷的特征;
将待检测图像和目标缺陷所对应的语言文本输入到所述预训练的视觉语言模型中;
所述预训练的视觉语言模型结合所述待检测图像以及目标缺陷的语言文本,输出目标缺陷在所述待检测图像上的定位框,完成目标缺陷的检测。
优选地,
所述预训练的视觉语言模型结合所述待检测图像以及目标缺陷的语言文本,输出目标缺陷在所述待检测图像上的定位框,完成目标缺陷的检测,包括:
所述预训练的视觉语言模型通过图像编码器对所述待检测图像进行编码,得到图像特征向量;
所述预训练的视觉语言模型通过文本编码器对所述目标缺陷的语言文本进行编码,得到文本特征向量;
所述预训练的视觉语言模型将所述图像特征向量以及所述文本特征向量进行融合,得到融合特征向量;
所述预训练的视觉语言模型将所述融合特征向量输入到多层感知机中,通过所述多层感知机来预测目标缺陷的定位框。
优选地,
所述针对每种场景下的每种工业缺陷设置语言文本包括:
针对具有固定属性的目标缺陷,通过预训练的文本模型生成该目标缺陷的语言文本;
针对不具有固定属性的目标缺陷,通过生成式的视觉语言模型来得到关于目标缺陷的多个属性词,将所述目标缺陷的多个属性词进行组合得到该目标缺陷的语言文本。
优选地,
所述通过工业缺陷检测图像数据集来训练视觉语言模型,得到预训练的视觉语言模型包括:
获取包含不同工业缺陷的图像,得到工业缺陷检测图像数据集;
对所述工业缺陷检测图像数据集中的每一张图像的缺陷类型以及位置进行标注,为相同类型的缺陷设置一个语言文本;
将每张含有工业缺陷的图像和对应的语言文本作为一组,分别输入到待训练的视觉语言模型的图像编码器以及文本编码器中;
通过图像编码器获得含有工业缺陷的图像的图像特征向量,通过文本编码器获得语言文本的文本特征向量;
将所述图像特征向量以及文本特征向量进行深度融合,得到融合特征向量;
将所述融合特征向量输入到所述待训练的视觉语言模型的分类器中,所述分类器根据自身的权重矩阵输出预测的分类结果,将所述预测的分类结果与预先标注的缺陷类型进行损失计算,得到分类损失;
将所述融合特征向量输入到所述待训练的视觉语言模型的回归头中,所述回归头输出预测的检测框位置,将所述预测的检测框位置与预先标注的缺陷位置进行损失计算,得到定位损失;
以所述分类损失以及定位损失最小为目的,通过梯度下降法对所述待训练的视觉语言模型进行训练,直到所述待训练的视觉语言模型收敛为止,得到预训练的视觉语言模型。
优选地,
所述预训练的视觉语言模型通过图像编码器对所述待检测图像进行编码,得到图像特征向量包括:
将所述待检测图像划分为固定大小的图像块,将所述固定大小的图像块展平为图像块序列;
将所述图像块序列输入到位置编码器中,所述位置编码器将每个图像块的位置信息嵌入到所述图像块序列中,得到位置特征向量;
将所述位置特征向量输入到所述预训练的视觉语言模型的图像编码器中,所述图像编码器通过多头子注意力机制以及前馈神经网络对所述位置特征向量进行处理,输出图像特征向量。
优选地,
所述预训练的视觉语言模型通过文本编码器对所述目标缺陷的语言文本进行编码,得到文本特征向量包括:
通过WordPiece嵌入器对语言文本中的单词进行分割,将切割后的单词映射到一个固定大小的词汇表中,将切割后的单词转换为对应的数字张量,按照单词的切割顺序将所有单词对应的数字张量组合成输入张量;
将所述输入张量输入到所述预训练的视觉语言模型的文本编码器中;
所述文本编码器通过多层双向编码器捕获输入张量的单词之间的上下文信息,并生成一个表示整个句子的向量,将最后一层双向编码器输出的向量作为文本特征向量。
优选地,
所述预训练的视觉语言模型将所述图像特征向量以及所述文本特征向量进行融合,得到融合特征向量包括:
将所述图像特征向量以及文本特征向量输入到所述预训练的视觉语言模型的跨模态多头注意力模块中,所述跨模态多头注意力模块分别输出融合了文本信息的图像特征向量,以及融合了图像特征的文本特征向量;
将所述融合了文本信息的图像特征向量乘以所述融合了图像特征的文本特征向量,得到融合特征向量。
根据本发明实施例的第二方面,提供基于预训练模型的工业缺陷检测装置,所述装置包括:
视觉语言模型训练模块:用于获取工业缺陷检测图像数据集,通过工业缺陷检测图像数据集来训练视觉语言模型,得到预训练的视觉语言模型;
语言文本生成模块:用于针对每种场景下的每种工业缺陷设置语言文本,所述语言文本用于描述该工业缺陷的特征;
输入模块:用于将待检测图像和目标缺陷所对应的语言文本输入到所述预训练的视觉语言模型中;
目标缺陷检测模块:用于通过所述预训练的视觉语言模型结合所述待检测图像以及目标缺陷的语言文本,输出目标缺陷在所述待检测图像上的定位框,完成目标缺陷的检测。
根据本发明实施例的第三方面,提供一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被主控器执行时,实现所述的上述方法中的各个步骤。
本发明的实施例提供的技术方案可以包括以下有益效果:
本申请通过获取工业缺陷检测图像数据集来训练视觉语言模型,得到预训练的视觉语言模型,同时针对每种场景下的每种工业缺陷设置语言文本,通过语言文本描述目标缺陷的特征,将待检测图像和目标缺陷所对应的语言文本一并输入到预训练的视觉语言模型中,这样预训练的视觉语言模型就可以结合待检测图像以及目标缺陷的语言文本,通过在待检测图像上寻找与语言文本相关联的物体区域,从而实现目标缺陷的检测;本申请中,针对每一种缺陷设置不同的语言文本,而不是针对每一种缺陷单独训练模型,从而节省模型训练过程中花费的时间,节约成本,同时还能实现工业检测上多种缺陷的识别检测。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的基于预训练模型的工业缺陷检测方法的流程示意图;
图2是根据另一示例性实施例示出的定位框输出方法的流程示意图;
图3是根据一示例性实施例示出的基于预训练模型的工业缺陷检测装置的系统示意图;
附图中:1-视觉语言模型训练模块,2-语言文本生成模块,3-输入模块,4-目标缺陷检测模块。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
实施例一
图1是根据一示例性实施例示出的基于预训练模型的工业缺陷检测方法的流程示意图,如图1所示,该方法包括:
S1,获取工业缺陷检测图像数据集,通过工业缺陷检测图像数据集来训练视觉语言模型,得到预训练的视觉语言模型;
S2,针对每种场景下的每种工业缺陷设置语言文本,所述语言文本用于描述该工业缺陷的特征;
S3,将待检测图像和目标缺陷所对应的语言文本输入到所述预训练的视觉语言模型中;
S4,所述预训练的视觉语言模型结合所述待检测图像以及目标缺陷的语言文本,输出目标缺陷在所述待检测图像上的定位框,完成目标缺陷的检测;
可以理解的是,本申请先是获取工业缺陷检测图像数据集,通过工业缺陷检测图像数据集来训练视觉语言模型,得到预训练的视觉语言模型,然后针对不同的缺陷设置语言文本,所述语言文本用于描述该工业缺陷的特征,如:形状、颜色、纹理特征等等,将待检测图像和目标缺陷所对应的语言文本输入到所述预训练的视觉语言模型中,所述预训练的视觉语言模型结合所述待检测图像以及目标缺陷的语言文本,输出目标缺陷在所述待检测图像上的定位框,完成目标缺陷的检测;本申请通过获取工业缺陷检测图像数据集来训练视觉语言模型,得到预训练的视觉语言模型,同时针对每种场景下的每种工业缺陷设置语言文本,通过语言文本描述目标缺陷的特征,将待检测图像和目标缺陷所对应的语言文本一并输入到预训练的视觉语言模型中,这样预训练的视觉语言模型就可以结合待检测图像以及目标缺陷的语言文本,通过在待检测图像上寻找与语言文本相关联的物体区域,从而实现目标缺陷的检测;本申请中,针对每一种缺陷设置不同的语言文本,而不是针对每一种缺陷单独训练模型,从而节省模型训练过程中花费的时间,节约成本,同时还能实现工业检测上多种缺陷的识别检测。
优选地,
所述预训练的视觉语言模型结合所述待检测图像以及目标缺陷的语言文本,输出目标缺陷在所述待检测图像上的定位框,完成目标缺陷的检测,包括:
S401,所述预训练的视觉语言模型通过图像编码器对所述待检测图像进行编码,得到图像特征向量;
S402,所述预训练的视觉语言模型通过文本编码器对所述目标缺陷的语言文本进行编码,得到文本特征向量;
S403,所述预训练的视觉语言模型将所述图像特征向量以及所述文本特征向量进行融合,得到融合特征向量;
S404,所述预训练的视觉语言模型将所述融合特征向量输入到多层感知机中,通过所述多层感知机来预测目标缺陷的定位框;
可以理解的是,如附图2所示,本申请将待检测图像和目标缺陷所对应的语言文本输入到所述预训练的视觉语言模型后,模型会将输入的图片通过一个图像编码器进行编码,得到一组图像特征向量,接下来,模型会将输入的文本语言通过一个文本编码器进行编码,得到一个文本特征向量,接着,模型会将图像特征向量和文本特征向量进行融合,具体来说,它会使用一种称为“深度融合”的技术来将两个特征向量结合起来,最后,模型会使用融合后的特征向量作为输入,并通过一个多层感知机(MLP)来预测每个物体类别的定位框,这些定位框表示了图像中与给定文本短语相关联的物体区域,也就是目标缺陷。
优选地,
所述针对每种场景下的每种工业缺陷设置语言文本包括:
针对具有固定属性的目标缺陷,通过预训练的文本模型生成该目标缺陷的语言文本;
针对不具有固定属性的目标缺陷,通过生成式的视觉语言模型来得到关于目标缺陷的多个属性词,将所述目标缺陷的多个属性词进行组合得到该目标缺陷的语言文本;
可以理解的是,针对每类缺陷每种场景手工构建文本语言较为费时,可以依靠其他预训练模型依照模板自动生成文本语言(文本语言中主要包含针对缺陷的位置、形状、颜色和纹理这类属性描述),如:针对具有固定属性的缺陷,采用预训练的文本模型如:基于Bert预训练的语言模型,通过问答的形式获取针对缺陷的文本描述,如针对手机裂缝的缺陷检测,我们可以提问,“请给我一段关于手机裂缝这一缺陷的描述,包含该缺陷的位置、形状、颜色和纹理信息”,可以得到如下回答“手机裂缝是指手机外壳出现的裂缝缺陷,通常出现在手机屏幕周围、边框、后壳等位置;裂缝的形状可以是直线型、弧形、星形等各种不同形状,大小也不一,颜色方面,裂缝通常呈现出黑色或白色,也可能是其他颜色,纹理方面,裂缝会影响到手机表面的光滑度,使其表面出现不平整的感觉,有些裂缝还会导致碎裂或割伤”,这个回答就可以作为检测手机裂缝缺陷的文本语言;
而针对不具有固定属性的缺陷,可以借助生成式的视觉语言模型,让它去回答我们针对属性的问题,例如我们提问:‘这个手机裂缝一般是什么颜色?这个手机裂缝的形状怎么样?’,就可以得到针对这张图的属性词,再将这些属性词进行组合,就能得到对应的文本语言,生成式的视觉语言模型可以采用预训练好的OFA模型,OFA(Once-for-All)是一种高效的神经网络架构搜索方法,它可以在一次搜索中生成适用于多个设备和任务的模型,OFA模型结构包括两个部分:共享骨干网络和可调整的微调层,共享骨干网络是一个通用的、固定的神经网络结构,它可以适应不同的设备和任务,OFA模型支持多种视觉和语言任务,包括图像分类、目标检测、图像分割、图像生成、图像字幕、视觉问答等,在我们的应用中,主要使用了这个模型的视觉问答功能,具体来说,我们将待测试图片输入OFA模型,同时对其进行提问,如我们提问:‘这个手机裂缝一般是什么颜色?这个手机裂缝的形状怎么样?’,OFA模型会依照图片,给出对应的回答,这样我们就可以得到针对这张图的属性词,同理,我们也可以使用其他由视觉问答功能的模型。
优选地,
所述通过工业缺陷检测图像数据集来训练视觉语言模型,得到预训练的视觉语言模型包括:
获取包含不同工业缺陷的图像,得到工业缺陷检测图像数据集;
对所述工业缺陷检测图像数据集中的每一张图像的缺陷类型以及位置进行标注,为相同类型的缺陷设置一个语言文本;
将每张含有工业缺陷的图像和对应的语言文本作为一组,分别输入到待训练的视觉语言模型的图像编码器以及文本编码器中;
通过图像编码器获得含有工业缺陷的图像的图像特征向量,通过文本编码器获得语言文本的文本特征向量;
将所述图像特征向量以及文本特征向量进行深度融合,得到融合特征向量;
将所述融合特征向量输入到所述待训练的视觉语言模型的分类器中,所述分类器根据自身的权重矩阵输出预测的分类结果,将所述预测的分类结果与预先标注的缺陷类型进行损失计算,得到分类损失;
将所述融合特征向量输入到所述待训练的视觉语言模型的回归头中,所述回归头输出预测的检测框位置,将所述预测的检测框位置与预先标注的缺陷位置进行损失计算,得到定位损失;
以所述分类损失以及定位损失最小为目的,通过梯度下降法对所述待训练的视觉语言模型进行训练,直到所述待训练的视觉语言模型收敛为止,得到预训练的视觉语言模型;
可以理解的是,首先搜集大量工业缺陷图片,对于每张图片上的缺陷进行标注,同时,为每类缺陷,设计一个人工模板提示,模型训练时,每次将图片和对应的人工模板提示作为一组,分别输入图像编码器和文本编码器中,图像编码器我们可以采用ViT或者DyHead,文本编码器我们可以采用Bert,分别获得这组的图像特征和文本特征,同时在特征提取将图像特征和文本特征进行深度融合,得到一个更加丰富的视觉-语言表示,也就是融合特征向量,然后定义一个统一损失:,由分类损失和定位损失组成,其中,分类损失定义如下:
式中,O表示融合特征向量,EncI为图像编码器,Img为输入的图片,W为分类器的权重矩阵,T为计算出的区域和类别之间的目标匹配(由标注获得),定位损失则是由获取的融合特征向量经过一个回归头后,得到预测的检测框位置,将预测的检测框位置和标注的位置进行对比计算而来,我们使用训练数据对模型进行训练,以最小化损失函数提高模型性能,得到预训练的视觉语言模型;
值得强调的是,在模型训练过程中提到的模型中的分类器与回归头的组合便是上述的多层感知机。
优选地,
所述预训练的视觉语言模型通过图像编码器对所述待检测图像进行编码,得到图像特征向量包括:
将所述待检测图像划分为固定大小的图像块,将所述固定大小的图像块展平为图像块序列;
将所述图像块序列输入到位置编码器中,所述位置编码器将每个图像块的位置信息嵌入到所述图像块序列中,得到位置特征向量;
将所述位置特征向量输入到所述预训练的视觉语言模型的图像编码器中,所述图像编码器通过多头子注意力机制以及前馈神经网络对所述位置特征向量进行处理,输出图像特征向量;
可以理解的是,图像编码器我们可以采用ViT模型,我们先将输入图片划分为固定大小的图像块,并将这些图块展平为序列,将所述图像块序列输入到位置编码器中,所述位置编码器将每个图像块的位置信息嵌入到所述图像块序列中,得到位置特征向量,然后,将位置特征向量输入到ViT中,在ViT中,每个向量都会通过多头子注意力机制和前馈神经网络进行处理,并输出一个特征向量,也就是图像特征向量。
优选地,
所述预训练的视觉语言模型通过文本编码器对所述目标缺陷的语言文本进行编码,得到文本特征向量包括:
通过WordPiece嵌入器对语言文本中的单词进行分割,将切割后的单词映射到一个固定大小的词汇表中,将切割后的单词转换为对应的数字张量,按照单词的切割顺序将所有单词对应的数字张量组合成输入张量;
将所述输入张量输入到所述预训练的视觉语言模型的文本编码器中;
所述文本编码器通过多层双向编码器捕获输入张量的单词之间的上下文信息,并生成一个表示整个句子的向量,将最后一层双向编码器输出的向量作为文本特征向量;
可以理解的是,文本编码器,我们采用Bert模型,它是一个基于transformer的多层双向编码器,特征得到的过程可以分为两个阶段,预处理阶段和实际推理阶段,预处理阶段,输入文本会被标记化并转换为数字表示,具体为:Bert模型使用WordPiece嵌入器来对单词进行分割,并将它们映射到一个固定大小的词汇表中,该词汇表为现有技术中通用的单词转换为数字张量的标准比对表,按照单词的切割顺序将所有单词对应的数字张量组合成输入张量,也就是说,一段文字经过转化之后,会变为一串数字,也就是数字张量;在实际推理阶段,Bert模型将输入张量作为输入,并通过多层双向编码器进行处理,每个编码器都由多头自注意力机制和前馈神经网络组成,这些编码器可以捕获单词之间的上下文信息,并生成一个表示整个句子的向量,最后一层编码器的输出被用作整个句子的表示,这个输出也就是我们所关注的文本特征向量。
优选地,
所述预训练的视觉语言模型将所述图像特征向量以及所述文本特征向量进行融合,得到融合特征向量包括:
将所述图像特征向量以及文本特征向量输入到所述预训练的视觉语言模型的跨模态多头注意力模块中,所述跨模态多头注意力模块分别输出融合了文本信息的图像特征向量,以及融合了图像特征的文本特征向量;
将所述融合了文本信息的图像特征向量乘以所述融合了图像特征的文本特征向量,得到融合特征向量;
可以理解的是,将所述图像特征向量以及文本特征向量一并输入到跨模态多头注意力模块中,跨模态多头注意力模块分别输出融合了文本信息的图像特征向量,以及融合了图像特征的文本特征向量;再将融合了文本信息的图像特征向量乘以融合了图像特征的文本特征向量,就可以得到融合特征向量。
实施例二
图3是根据一示例性实施例示出的基于预训练模型的工业缺陷检测装置的系统示意图,包括:
视觉语言模型训练模块1:用于获取工业缺陷检测图像数据集,通过工业缺陷检测图像数据集来训练视觉语言模型,得到预训练的视觉语言模型;
语言文本生成模块2:用于针对每种场景下的每种工业缺陷设置语言文本,所述语言文本用于描述该工业缺陷的特征;
输入模块3:用于将待检测图像和目标缺陷所对应的语言文本输入到所述预训练的视觉语言模型中;
目标缺陷检测模块4:用于通过所述预训练的视觉语言模型结合所述待检测图像以及目标缺陷的语言文本,输出目标缺陷在所述待检测图像上的定位框,完成目标缺陷的检测;
可以理解的是,本申请通过视觉语言模型训练模块1用于获取工业缺陷检测图像数据集,通过工业缺陷检测图像数据集来训练视觉语言模型,得到预训练的视觉语言模型;通过语言文本生成模块2用于针对每种场景下的每种工业缺陷设置语言文本,所述语言文本用于描述该工业缺陷的特征;通过输入模块3用于将待检测图像和目标缺陷所对应的语言文本输入到所述预训练的视觉语言模型中;通过目标缺陷检测模块4用于通过所述预训练的视觉语言模型结合所述待检测图像以及目标缺陷的语言文本,输出目标缺陷在所述待检测图像上的定位框,完成目标缺陷的检测;本申请通过获取工业缺陷检测图像数据集来训练视觉语言模型,得到预训练的视觉语言模型,同时针对每种场景下的每种工业缺陷设置语言文本,通过语言文本描述目标缺陷的特征,将待检测图像和目标缺陷所对应的语言文本一并输入到预训练的视觉语言模型中,这样预训练的视觉语言模型就可以结合待检测图像以及目标缺陷的语言文本,通过在待检测图像上寻找与语言文本相关联的物体区域,从而实现目标缺陷的检测;本申请中,针对每一种缺陷设置不同的语言文本,而不是针对每一种缺陷单独训练模型,从而节省模型训练过程中花费的时间,节约成本,同时还能实现工业检测上多种缺陷的识别检测。
实施例三:
本实施例提供一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被主控器执行时,实现上述方法中的各个步骤;
可以理解的是,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (8)

1.基于预训练模型的工业缺陷检测方法,其特征在于,所述方法包括:
获取工业缺陷检测图像数据集,通过工业缺陷检测图像数据集来训练视觉语言模型,得到预训练的视觉语言模型;
所述通过工业缺陷检测图像数据集来训练视觉语言模型,得到预训练的视觉语言模型包括:
获取包含不同工业缺陷的图像,得到工业缺陷检测图像数据集;
对所述工业缺陷检测图像数据集中的每一张图像的缺陷类型以及位置进行标注,为相同类型的缺陷设置一个语言文本;
将每张含有工业缺陷的图像和对应的语言文本作为一组,分别输入到待训练的视觉语言模型的图像编码器以及文本编码器中;
通过图像编码器获得含有工业缺陷的图像的图像特征向量,通过文本编码器获得语言文本的文本特征向量;
将所述图像特征向量以及文本特征向量进行深度融合,得到融合特征向量;
将所述融合特征向量输入到所述待训练的视觉语言模型的分类器中,所述分类器根据自身的权重矩阵输出预测的分类结果,将所述预测的分类结果与预先标注的缺陷类型进行损失计算,得到分类损失;
将所述融合特征向量输入到所述待训练的视觉语言模型的回归头中,所述回归头输出预测的检测框位置,将所述预测的检测框位置与预先标注的缺陷位置进行损失计算,得到定位损失;
以所述分类损失以及定位损失最小为目的,通过梯度下降法对所述待训练的视觉语言模型进行训练,直到所述待训练的视觉语言模型收敛为止,得到预训练的视觉语言模型;
针对每种场景下的每种工业缺陷设置语言文本,所述语言文本用于描述该工业缺陷的特征;
将待检测图像和目标缺陷所对应的语言文本输入到所述预训练的视觉语言模型中;
所述预训练的视觉语言模型结合所述待检测图像以及目标缺陷的语言文本,输出目标缺陷在所述待检测图像上的定位框,完成目标缺陷的检测。
2.根据权利要求1所述的方法,其特征在于,
所述预训练的视觉语言模型结合所述待检测图像以及目标缺陷的语言文本,输出目标缺陷在所述待检测图像上的定位框,完成目标缺陷的检测,包括:
所述预训练的视觉语言模型通过图像编码器对所述待检测图像进行编码,得到图像特征向量;
所述预训练的视觉语言模型通过文本编码器对所述目标缺陷的语言文本进行编码,得到文本特征向量;
所述预训练的视觉语言模型将所述图像特征向量以及所述文本特征向量进行融合,得到融合特征向量;
所述预训练的视觉语言模型将所述融合特征向量输入到多层感知机中,通过所述多层感知机来预测目标缺陷的定位框。
3.根据权利要求1所述的方法,其特征在于,
所述针对每种场景下的每种工业缺陷设置语言文本包括:
针对具有固定属性的目标缺陷,通过预训练的文本模型生成该目标缺陷的语言文本;
针对不具有固定属性的目标缺陷,通过生成式的视觉语言模型来得到关于目标缺陷的多个属性词,将所述目标缺陷的多个属性词进行组合得到该目标缺陷的语言文本。
4.根据权利要求2所述的方法,其特征在于,
所述预训练的视觉语言模型通过图像编码器对所述待检测图像进行编码,得到图像特征向量包括:
将所述待检测图像划分为固定大小的图像块,将所述固定大小的图像块展平为图像块序列;
将所述图像块序列输入到位置编码器中,所述位置编码器将每个图像块的位置信息嵌入到所述图像块序列中,得到位置特征向量;
将所述位置特征向量输入到所述预训练的视觉语言模型的图像编码器中,所述图像编码器通过多头子注意力机制以及前馈神经网络对所述位置特征向量进行处理,输出图像特征向量。
5.根据权利要求4所述的方法,其特征在于,
所述预训练的视觉语言模型通过文本编码器对所述目标缺陷的语言文本进行编码,得到文本特征向量包括:
通过WordPiece嵌入器对语言文本中的单词进行分割,将切割后的单词映射到一个固定大小的词汇表中,将切割后的单词转换为对应的数字张量,按照单词的切割顺序将所有单词对应的数字张量组合成输入张量;
将所述输入张量输入到所述预训练的视觉语言模型的文本编码器中;
所述文本编码器通过多层双向编码器捕获输入张量的单词之间的上下文信息,并生成一个表示整个句子的向量,将最后一层双向编码器输出的向量作为文本特征向量。
6.根据权利要求5所述的方法,其特征在于,
所述预训练的视觉语言模型将所述图像特征向量以及所述文本特征向量进行融合,得到融合特征向量包括:
将所述图像特征向量以及文本特征向量输入到所述预训练的视觉语言模型的跨模态多头注意力模块中,所述跨模态多头注意力模块分别输出融合了文本信息的图像特征向量,以及融合了图像特征的文本特征向量;
将所述融合了文本信息的图像特征向量乘以所述融合了图像特征的文本特征向量,得到融合特征向量。
7.基于预训练模型的工业缺陷检测装置,其特征在于,所述装置包括:
视觉语言模型训练模块:用于获取工业缺陷检测图像数据集,通过工业缺陷检测图像数据集来训练视觉语言模型,得到预训练的视觉语言模型;
所述通过工业缺陷检测图像数据集来训练视觉语言模型,得到预训练的视觉语言模型包括:
获取包含不同工业缺陷的图像,得到工业缺陷检测图像数据集;
对所述工业缺陷检测图像数据集中的每一张图像的缺陷类型以及位置进行标注,为相同类型的缺陷设置一个语言文本;
将每张含有工业缺陷的图像和对应的语言文本作为一组,分别输入到待训练的视觉语言模型的图像编码器以及文本编码器中;
通过图像编码器获得含有工业缺陷的图像的图像特征向量,通过文本编码器获得语言文本的文本特征向量;
将所述图像特征向量以及文本特征向量进行深度融合,得到融合特征向量;
将所述融合特征向量输入到所述待训练的视觉语言模型的分类器中,所述分类器根据自身的权重矩阵输出预测的分类结果,将所述预测的分类结果与预先标注的缺陷类型进行损失计算,得到分类损失;
将所述融合特征向量输入到所述待训练的视觉语言模型的回归头中,所述回归头输出预测的检测框位置,将所述预测的检测框位置与预先标注的缺陷位置进行损失计算,得到定位损失;
以所述分类损失以及定位损失最小为目的,通过梯度下降法对所述待训练的视觉语言模型进行训练,直到所述待训练的视觉语言模型收敛为止,得到预训练的视觉语言模型;
语言文本生成模块:用于针对每种场景下的每种工业缺陷设置语言文本,所述语言文本用于描述该工业缺陷的特征;
输入模块:用于将待检测图像和目标缺陷所对应的语言文本输入到所述预训练的视觉语言模型中;
目标缺陷检测模块:用于通过所述预训练的视觉语言模型结合所述待检测图像以及目标缺陷的语言文本,输出目标缺陷在所述待检测图像上的定位框,完成目标缺陷的检测。
8.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被主控器执行时,实现如权利要求1-6任一项所述的基于预训练模型的工业缺陷检测方法中的各个步骤。
CN202310691667.XA 2023-06-13 2023-06-13 基于预训练模型的工业缺陷检测方法、装置及存储介质 Active CN116468725B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310691667.XA CN116468725B (zh) 2023-06-13 2023-06-13 基于预训练模型的工业缺陷检测方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310691667.XA CN116468725B (zh) 2023-06-13 2023-06-13 基于预训练模型的工业缺陷检测方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN116468725A CN116468725A (zh) 2023-07-21
CN116468725B true CN116468725B (zh) 2023-09-05

Family

ID=87182860

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310691667.XA Active CN116468725B (zh) 2023-06-13 2023-06-13 基于预训练模型的工业缺陷检测方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN116468725B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116994098B (zh) * 2023-09-27 2023-12-05 西南交通大学 基于类别属性知识增强的大模型提示学习方法
CN117057443B (zh) * 2023-10-09 2024-02-02 杭州海康威视数字技术股份有限公司 视觉语言模型的提示学习方法及电子设备
CN117173530B (zh) * 2023-11-02 2024-02-13 中国科学院自动化研究所 目标异常检测方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113792113A (zh) * 2020-07-31 2021-12-14 北京京东尚科信息技术有限公司 视觉语言模型获得及任务处理方法、装置、设备及介质
WO2022100366A1 (zh) * 2020-11-13 2022-05-19 华为云计算技术有限公司 工业缺陷识别方法、系统、计算设备及存储介质
CN115017911A (zh) * 2021-03-05 2022-09-06 微软技术许可有限责任公司 针对视觉和语言的跨模态处理
CN115760843A (zh) * 2022-12-06 2023-03-07 凌云光技术股份有限公司 缺陷检测模型的训练方法、装置、终端设备及存储介质
CN115861227A (zh) * 2022-11-30 2023-03-28 清华大学 基于图像语义重建的无监督工业表面缺陷检测方法与装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113705187B (zh) * 2021-08-13 2023-08-01 北京百度网讯科技有限公司 预训练语言模型的生成方法、装置、电子设备和存储介质
US20230162481A1 (en) * 2021-11-21 2023-05-25 Microsoft Technology Licensing, Llc Pre-training of computer vision foundational models

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113792113A (zh) * 2020-07-31 2021-12-14 北京京东尚科信息技术有限公司 视觉语言模型获得及任务处理方法、装置、设备及介质
WO2022100366A1 (zh) * 2020-11-13 2022-05-19 华为云计算技术有限公司 工业缺陷识别方法、系统、计算设备及存储介质
CN115017911A (zh) * 2021-03-05 2022-09-06 微软技术许可有限责任公司 针对视觉和语言的跨模态处理
CN115861227A (zh) * 2022-11-30 2023-03-28 清华大学 基于图像语义重建的无监督工业表面缺陷检测方法与装置
CN115760843A (zh) * 2022-12-06 2023-03-07 凌云光技术股份有限公司 缺陷检测模型的训练方法、装置、终端设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于深度学习语义分割的导光板缺陷检测方法;柳锋;李俊峰;戴文战;;计算机系统应用(第06期);全文 *

Also Published As

Publication number Publication date
CN116468725A (zh) 2023-07-21

Similar Documents

Publication Publication Date Title
CN116468725B (zh) 基于预训练模型的工业缺陷检测方法、装置及存储介质
CN109299274B (zh) 一种基于全卷积神经网络的自然场景文本检测方法
CN110807422A (zh) 一种基于深度学习的自然场景文本检测方法
CN110837870B (zh) 基于主动学习的声呐图像目标识别方法
CN109635676B (zh) 一种从视频中定位音源的方法
CN111985376A (zh) 一种基于深度学习的遥感影像舰船轮廓提取方法
US11715190B2 (en) Inspection system, image discrimination system, discrimination system, discriminator generation system, and learning data generation device
CN110880176B (zh) 一种基于对抗生成网络的半监督工业图像缺陷分割方法
CN112861785B (zh) 一种基于实例分割和图像修复的带遮挡行人重识别方法
CN110135327B (zh) 一种基于多区域特征学习模型的驾驶员行为识别方法
CN110796018A (zh) 一种基于深度图像和彩色图像的手部运动识别方法
CN111027538A (zh) 一种基于实例分割模型的集装箱检测方法
CN114693908A (zh) 一种基于YOLOv5的工业二维码定位方法
CN112528782A (zh) 水下鱼类目标检测方法及装置
CN116703919A (zh) 一种基于最优传输距离损失模型的表面杂质检测方法
CN115797808A (zh) 一种无人机巡检缺陷图像的识别方法、系统、装置及介质
CN114663382A (zh) 基于YOLOv5卷积神经网络的电子元器件表面缺陷检测方法
CN116843657A (zh) 基于注意力融合的焊接缺陷检测方法及装置
JP6425468B2 (ja) 教師データ作成支援方法、画像分類方法、教師データ作成支援装置および画像分類装置
CN114898290A (zh) 一种海上船舶实时检测方法及系统
CN117671426B (zh) 基于概念蒸馏和clip的可提示分割模型预训练方法及系统
CN113159020B (zh) 基于核尺度扩张的文本检测方法
US20220215651A1 (en) Fiber Placement Tow End Detection Using Machine Learning
CN114022876A (zh) 一种基于人工智能ocr的电子秤图像文字识别方法
CN115035212A (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