CN117011650A - 一种图像编码器的确定方法及相关装置 - Google Patents
一种图像编码器的确定方法及相关装置 Download PDFInfo
- Publication number
- CN117011650A CN117011650A CN202311285085.8A CN202311285085A CN117011650A CN 117011650 A CN117011650 A CN 117011650A CN 202311285085 A CN202311285085 A CN 202311285085A CN 117011650 A CN117011650 A CN 117011650A
- Authority
- CN
- China
- Prior art keywords
- image
- initial
- model
- training
- codes
- 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
- 238000000034 method Methods 0.000 title claims abstract description 107
- 238000012549 training Methods 0.000 claims abstract description 234
- 238000001514 detection method Methods 0.000 claims abstract description 132
- 230000007547 defect Effects 0.000 claims abstract description 102
- 230000006870 function Effects 0.000 claims abstract description 89
- 238000007689 inspection Methods 0.000 claims abstract description 89
- 238000004590 computer program Methods 0.000 claims description 16
- 238000005070 sampling Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 20
- 238000013473 artificial intelligence Methods 0.000 abstract description 13
- 238000010586 diagram Methods 0.000 description 22
- 238000002372 labelling Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 10
- 238000012545 processing Methods 0.000 description 8
- 230000002950 deficient Effects 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 5
- 238000003908 quality control method Methods 0.000 description 5
- 239000013598 vector Substances 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000010606 normalization Methods 0.000 description 4
- 238000004422 calculation algorithm 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
- 238000013135 deep learning Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 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
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/0895—Weakly supervised learning, e.g. semi-supervised or self-supervised learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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
- G06V10/7747—Organisation of the process, 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/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
- G06V10/7753—Incorporation of unlabelled data, e.g. multiple instance learning [MIL]
-
- 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]
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/06—Recognition of objects for industrial automation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Medical Informatics (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本申请公开一种图像编码器的确定方法及相关装置,可应用于云技术、人工智能、智慧交通、辅助驾驶等各种场景。该方法包括:针对不同光源下第一质检对象的第一样本图像和第二样本图像,将第一样本图像输入初始重建模型中的图像编码器进行图像编码,输出多个第一图像块对应的多个第一图像块编码;将多个第一图像块编码输入初始重建模型中的重建网络,对第二样本图像中多个第二图像块进行编码预测输出多个第一预测编码;结合多个第二图像块经过预训练编码器得到的多个第二图像块编码和损失函数,对初始重建模型进行模型训练得到第一重建模型。将第一重建模型中的图像编码器作为用于训练图像缺陷检测模型的初始检测模型中的图像编码器。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种图像编码器的确定方法及相关装置。
背景技术
随着人工智能的快速发展,产品质检是指:先对待质检产品进行线扫成像得到待质检产品的线扫图像,再通过视觉算法对待质检产品的线扫图像进行自动化缺陷检测。
相关技术中,通常是标注人员从多个已质检产品对应的多个线扫图像中标注一定数量的缺陷样本,以训练初始检测模型得到图像缺陷检测模型;通过图像缺陷检测模型对待质检产品的线扫图像进行缺陷检测。
但是,上述方法从多个已质检产品对应的多个线扫图像中标注一定数量的缺陷样本比较困难,需要耗费大量的标注时间和标注成本,导致图像缺陷检测模型的训练成本较高,难以适用于缺陷产品较少的产品质检场景。
发明内容
为了解决上述技术问题,本申请提供了一种图像编码器的确定方法及相关装置,减少缺陷样本的标注数量,节省大量的标注时间和标注成本,以便后续结合大量的正常样本训练得到特征表达能力更强的图像缺陷检测模型,降低图像缺陷检测模型的训练成本,从而适用于缺陷产品较少的产品质检场景。
本申请实施例公开了如下技术方案:
一方面,本申请实施例提供一种图像编码器的确定方法,所述方法包括:
通过初始重建模型中的图像编码器,对第一样本图像进行图像编码,获得所述第一样本图像中多个第一图像块对应的多个第一图像块编码;
通过所述初始重建模型中的重建网络,根据所述多个第一图像块编码对第二样本图像中多个第二图像块进行编码预测,获得所述多个第二图像块对应的多个第一预测编码;所述第一样本图像和所述第二样本图像是不同光源下第一质检对象的多个线扫图像;
根据所述多个第一预测编码、所述多个第二图像块对应的多个第二图像块编码和所述初始重建模型的损失函数,对所述初始重建模型进行模型训练,获得第一重建模型;所述多个第二图像块编码是通过预训练编码器对所述多个第二图像块进行图像编码获得的;
将所述第一重建模型中的图像编码器确定为初始检测模型中的图像编码器;所述初始检测模型用于训练图像缺陷检测模型。
另一方面,本申请实施例提供一种图像编码器的确定装置,所述装置包括:编码单元、预测单元、训练单元和确定单元;
所述编码单元,用于通过初始重建模型中的图像编码器,对第一样本图像进行图像编码,获得所述第一样本图像中多个第一图像块对应的多个第一图像块编码;
所述预测单元,用于通过所述初始重建模型中的重建网络,根据所述多个第一图像块编码对第二样本图像中多个第二图像块进行编码预测,获得所述多个第二图像块对应的多个第一预测编码;所述第一样本图像和所述第二样本图像是不同光源下第一质检对象的多个线扫图像;
所述训练单元,用于根据所述多个第一预测编码、所述多个第二图像块对应的多个第二图像块编码和所述初始重建模型的损失函数,对所述初始重建模型进行模型训练,获得第一重建模型;所述多个第二图像块编码是通过预训练编码器对所述多个第二图像块进行图像编码获得的;
所述确定单元,用于将所述第一重建模型中的图像编码器确定为初始检测模型中的图像编码器;所述初始检测模型用于训练图像缺陷检测模型。
另一方面,本申请实施例提供一种计算机设备,所述计算机设备包括处理器以及存储器:
所述存储器用于存储计算机程序,并将所述计算机程序传输给所述处理器;
所述处理器用于根据所述计算机程序中的指令执行前述任一方面所述的方法。
另一方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,当所述计算机程序在计算机设备上运行时,使得所述计算机设备执行前述任一方面所述的方法。
另一方面,本申请实施例提供一种计算机程序产品,包括计算机程序,当所述计算机程序在计算机设备上运行时,使得所述计算机设备执行前述任一方面所述的方法。
由上述技术方案可以看出,首先,将第一样本图像输入初始重建模型中的图像编码器进行图像编码,输出第一样本图像中多个第一图像块对应的多个第一图像块编码;将多个第一图像块编码输入初始重建模型中的重建网络,对第二样本图像中多个第二图像块进行编码预测,输出多个第二图像块对应的多个第一预测编码,其中,第一样本图像和第二样本图像是不同光源下第一质检对象的多个线扫图像;通过多个第一预测编码、多个第二图像块对应的多个第二图像块编码和初始重建模型的损失函数,对初始重建模型进行模型训练得到第一重建模型;多个第二图像块编码是将多个第二图像块输入预训练编码器进行图像编码得到的。该方式在不同光源下同一质检对象的多个线扫图像之间具有关联性的基础上,通过重建图像块编码以挖掘关联性,自监督训练初始重建模型得到第一重建模型;即,该方式通过无标注标签的不同光源下同一质检对象的多个线扫图像,优化初始重建模型中的图像编码器,使得第一重建模型中的图像编码器的特征表达能力更强。
然后,将第一重建模型中的图像编码器确定为用于训练图像缺陷检测模型的初始检测模型中的图像编码器。该方式将上述自监督训练得到的第一重建模型中的图像编码器作为初始检测模型中的图像编码器,能够减少缺陷样本的标注数量,后续结合大量的正常对象的线扫图像作为正常样本,即可训练初始检测模型得到特征表达能力更强的图像缺陷检测模型。
基于此,该方法利用不同光源下同一质检对象的多个线扫图像具有关联性的特点,通过重建图像块编码以挖掘关联性,优化重建模型中的图像编码器,使得图像编码器的特征表达能力更强;将优化后的图像编码器用于检测模型,减少缺陷样本的标注数量,节省大量的标注时间和标注成本,以便后续结合大量的正常样本训练得到特征表达能力更强的图像缺陷检测模型,降低图像缺陷检测模型的训练成本,从而适用于缺陷产品较少的产品质检场景。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术成员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种图像编码器的确定方法的系统架构示意图;
图2为本申请实施例提供的一种图像编码器的确定方法的流程图;
图3为本申请实施例提供的一种在一个光源下多个点位对应的质检对象的线扫图像中多个图像块的示意图;
图4为本申请实施例提供的一种通过初始重建模型中的图像编码器对质检对象的线扫图像进行图像编码,得到质检对象的线扫图像中多个图像块对应的多个图像块编码的示意图;
图5为本申请实施例提供的一种初始编码器的结构图;
图6为本申请实施例提供的一种基于初始编码器和初始解码器训练得到预训练编码器的示意图;
图7为本申请实施例提供的一种多阶段级联检测器的示意图;
图8为本申请实施例提供的一种通过图像缺陷检测模型对待质检产品的线扫图像进行缺陷检测的输出数据示意图;
图9为本申请实施例提供的一种图像编码器的确定装置的结构图;
图10为本申请实施例提供的一种服务器的结构图;
图11为本申请实施例提供的一种终端的结构图。
具体实施方式
下面结合附图,对本申请的实施例进行描述。
现阶段,通过视觉算法对待质检产品的线扫图像进行自动化缺陷检测,以实现智能化产品质检。具体是指:首先,标注人员从多个已质检产品对应的多个线扫图像中标注一定数量的缺陷样本,训练初始检测模型得到图像缺陷检测模型;然后,通过图像缺陷检测模型对待质检产品的线扫图像进行缺陷检测。
但是,在缺陷产品较少的产品质检场景中,例如工业质检场景等,上述方法从多个已质检产品对应的多个线扫图像中标注一定数量的缺陷样本比较困难,需要耗费大量的标注时间和标注成本,导致图像缺陷检测模型的训练成本较高,从而导致智能化产品质检的质检成本较高。
本申请实施例提供一种图像编码器的确定方法,利用不同光源下同一质检对象的多个线扫图像具有关联性的特点,通过重建图像块编码以挖掘关联性,优化重建模型中的图像编码器,使得图像编码器的特征表达能力更强;将优化后的图像编码器用于检测模型,减少缺陷样本的标注数量,节省大量的标注时间和标注成本,以便后续结合大量的正常样本训练得到特征表达能力更强的图像缺陷检测模型,降低图像缺陷检测模型的训练成本,从而适用于缺陷产品较少的产品质检场景。
接下来,将对图像编码器的确定方法的系统架构进行介绍。参见图1,图1为本申请实施例提供的一种图像编码器的确定方法的系统架构示意图,该系统架构中包括服务器100,该服务器100用于执行图像编码器的确定方法。
服务器100通过初始重建模型中的图像编码器,对第一样本图像进行图像编码,获得第一样本图像中多个第一图像块对应的多个第一图像块编码。
作为一种示例,图像编码器为Encoder1,第一样本图像为x1,第一图像块为Patch1;服务器100将x1输入初始重建模型中的Encoder1进行图像编码,输出x1中多个Patch1对应的多个第一图像块编码为多个z1。
服务器100通过初始重建模型中的重建网络,根据多个第一图像块编码对第二样本图像中多个第二图像块进行编码预测,获得多个第二图像块对应的多个第一预测编码;第一样本图像和第二样本图像是不同光源下第一质检对象的多个线扫图像。
作为一种示例,第二样本图像为x2,第二图像块为Patch2,在上述示例的基础上,服务器100将多个z1输入初始重建模型中的重建网络,对x2中多个Patch2进行编码预测,输出多个Patch2对应的多个第一预测编码为多个zp。
服务器100根据多个第一预测编码、多个第二图像块对应的多个第二图像块编码和初始重建模型的损失函数,对初始重建模型进行模型训练,获得第一重建模型;多个第二图像块编码是通过预训练编码器对多个第二图像块进行图像编码获得的。
作为一种示例,预训练编码器为Encoder2,在上述示例的基础上,服务器100将x2输入Encoder2进行图像编码,输出x2中多个Patch2对应的多个第二图像块编码为多个z2;通过多个zp、多个z2和初始重建模型的损失函数,对初始重建模型进行模型训练得到第一重建模型。
服务器100将第一重建模型中的图像编码器确定为用于训练图像缺陷检测模型的初始检测模型中的图像编码器;初始检测模型用于训练图像缺陷检测模型。
作为一种示例,在上述示例的基础上,服务器100将第一重建模型中的Encoder1确定为用于训练图像缺陷检测模型的初始检测模型中的Encoder1。
也就是说,在不同光源下同一质检对象的多个线扫图像之间具有关联性的基础上,通过重建图像块编码以挖掘关联性,自监督训练初始重建模型得到第一重建模型;即,该方式通过无标注标签的不同光源下同一质检对象的多个线扫图像,优化初始重建模型中的图像编码器,使得第一重建模型中的图像编码器的特征表达能力更强。将上述自监督训练得到的第一重建模型中的图像编码器作为初始检测模型中的图像编码器,能够减少缺陷样本的标注数量,后续结合大量的正常对象的线扫图像作为正常样本,即可训练初始检测模型得到特征表达能力更强的图像缺陷检测模型。基于此,该方法利用不同光源下同一质检对象的多个线扫图像具有关联性的特点,通过重建图像块编码以挖掘关联性,优化重建模型中的图像编码器,使得图像编码器的特征表达能力更强;将优化后的图像编码器用于检测模型,减少缺陷样本的标注数量,节省大量的标注时间和标注成本,以便后续结合大量的正常样本训练得到特征表达能力更强的图像缺陷检测模型,降低图像缺陷检测模型的训练成本,从而适用于缺陷产品较少的产品质检场景。
需要说明的是,在本申请实施例中,计算机设备可以是服务器或终端,本申请实施例提供的方法可以由终端或服务器单独执行,也可以由终端和服务器配合执行。其中,图1对应的实施例主要以服务器执行本申请实施例提供的方法为例进行介绍。
此外,当本申请实施例提供的方法由终端单独执行时,其执行方法与图1对应的实施例类似,主要是将服务器换成终端。另外,当由终端和服务器配合执行本申请实施例提供的方法时,需要体现在前端界面上的步骤可以由终端执行,而一些需要后台计算、无需体现在前端界面上的步骤可以由服务器执行。
其中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能语音交互设备、车载终端或飞行器等,但并不局限于此。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器,但并不局限于此。终端和服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。例如终端和服务器可以通过网络连接,该网络可以是有线或无线网络。
其中,本申请实施例提供的方法涉及人工智能。人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习、自动驾驶、智慧交通等几大方向。本申请实施例提供的方法主要涉及计算机视觉技术、自然语言处理技术以及机器学习/深度学习。
其中,计算机视觉技术是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟随和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。大模型技术为计算机视觉技术发展带来重要变革,swin-transformer、VisionTransformer(ViT)、Vision MoE(V-MOE)、Masked Autoencoders(MAE)等视觉领域的预训练模型经过微调可以快速、广泛适用于下游具体任务。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建、自动驾驶、智慧交通等技术。
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
此外,本申请实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、音视频、辅助驾驶等。
接下来,将以服务器执行本申请实施例提供的方法为例、结合附图对本申请实施例提供的图像编码器的确定方法进行详细介绍。参见图2,图2为本申请实施例提供的一种图像编码器的确定方法的流程图,方法包括:
S201:通过初始重建模型中的图像编码器,对第一样本图像进行图像编码,获得第一样本图像中多个第一图像块对应的多个第一图像块编码。
由于相关技术中,标注人员从多个已质检产品对应的多个线扫图像中标注一定数量的缺陷样本,训练初始检测模型得到图像缺陷检测模型,通过图像缺陷检测模型对待质检产品的线扫图像进行缺陷检测。但是,在缺陷产品较少的产品质检场景中,例如工业质检场景等,上述方法从多个已质检产品对应的多个线扫图像中标注一定数量的缺陷样本比较困难,需要耗费大量的标注时间和标注成本,导致图像缺陷检测模型的训练成本较高,从而导致智能化产品质检的质检成本较高。
因此,本申请实施例中,考虑到在线扫成像的场景中,通常配置有不同光源用于拍摄质检产品,不同光源中的任意一个光源都包括数十个不同点位,同一点位在不同光源下同一质检产品的多个线扫图像上具有一定的关联性;基于此,为了解决上述技术问题,首先,可以构建包括图像编码器和重建网络的重建模型,针对同一质检产品而言,将一个或多个光源下的线扫图像先经过图像编码器编码为线扫图像中多个图像块的图像块编码,再经过重建网络预测另一光源下线扫图像中多个图像块的预测编码,在另一光源下的预测编码、另一光源下的图像块编码和初始重建模型的损失函数,自监督训练重建模型以挖掘关联性,优化重建模型中的图像编码器,使得图像编码器的特征表达能力更强;其中,另一光源下的图像块编码是另一光源下的线扫图像经过预训练编码器编码得到的。然后,将优化后的图像编码器用于检测模型,减少缺陷样本的标注数量,节省大量的标注时间和标注成本,以便后续结合大量的正常样本训练得到特征表达能力更强的图像缺陷检测模型,降低图像缺陷检测模型的训练成本,从而适用于缺陷产品较少的产品质检场景。
在上述说明的基础上,首先,构建包括图像编码器和重建网络的重建模型作为初始重建模型,在质检产品属于质检对象的基础上,将一个或多个光源下第一质检对象的线扫图像作为第一样本图像;将第一样本图像输入初始重建模型中的图像编码器进行图像编码,输出第一样本图像中多个第一图像块对应的多个第一图像块编码。
实际应用中,先将第一样本图像划分为多个第一图像块,再通过图像编码器对多个第一图像块进行图像编码,得到多个第一图像块对应的多个第一图像块编码。
其中,图像编码是指将图像映射到一个低维表示,该低维表示可以是向量或矩阵,通常具有更好的可解释性和更强的表达能力;多个第一图像块编码是指多个第一图像块的图像块特征的低维表示,以更好的解释和表达多个第一图像块的图像块特征。
上述S201将一个或多个光源下第一质检对象的线扫图像,即,第一样本图像,经过图像编码器编码为第一样本图像中多个第一图像块对应的多个第一图像块编码,为后续通过重建图像块编码以挖掘不同光源下第一质检对象的多个线扫图像之间的关联性提供图像块编码数据。
作为上述S201的一种示例,图像编码器为Encoder1,第一样本图像为x1,第一图像块为Patch1;将x1输入初始重建模型中的Encoder1进行图像编码,输出x1中多个Patch1对应的多个第一图像块编码为多个z1。
参见图3,图3为本申请实施例提供的一种在一个光源下多个点位对应的质检对象的线扫图像中多个图像块的示意图;其中,一个光源下包括6×6个点位,即,36个点位,对应地,每个质检对象的每个线扫图像需要划分为36个图像块,即,P001、P002、…、P036;基于此,多个Patch1可以是36个Patch1。
参见图4,图4为本申请实施例提供的一种通过初始重建模型中的图像编码器对质检对象的线扫图像进行图像编码,得到质检对象的线扫图像中多个图像块对应的多个图像块编码的示意图;其中,针对每个质检对象的每个线扫图像,将线扫图像划分为多个图像块,在该多个图像块对应的多个图像块嵌入向量和多个位置嵌入向量的基础上,输入初始重建模型中的图像编码器进行图像编码,得到该多个图像块对应的多个图像块编码。基于此,将多个Patch1对应的多个图像块嵌入向量和多个位置嵌入向量输入初始重建模型中的Encoder1进行图像编码,输出多个Patch1对应的多个z1。
S202:通过初始重建模型中的重建网络,根据多个第一图像块编码对第二样本图像中多个第二图像块进行编码预测,获得多个第二图像块对应的多个第一预测编码;第一样本图像和第二样本图像是不同光源下第一质检对象的多个线扫图像。
本申请实施例中,在执行S201得到多个第一图像块对应的多个第一图像块编码之后,考虑到不同光源下第一质检对象的多个线扫图像之间具有关联性,为了挖掘关联性以优化初始重建模型中的图像编码器,使得第一重建模型中的图像编码器的特征表达能力更强,可以重建图像块编码;即,在将另一个光源下第一质检对象的线扫图像作为第二样本图像的基础上,将多个第一图像块编码输入初始重建模型中的重建网络,对第二样本图像中多个第二图像块进行编码预测,输出多个第二图像块对应的多个第一预测编码。
其中,编码预测是指通过图像重构机制预测图像的低维表示;多个第一预测编码是指第二样本图像中多个第二图像块的预测低维表示。
当一个或多个光源下第一质检对象的线扫图像、以及另一个光源下第一质检对象的线扫图像是三个光源下第一质检对象的三个线扫图像时,将三个光源下第一质检对象的三个线扫图像中任意两个光源下第一质检对象的两个线扫图像作为第一样本图像,将该三个光源下第一质检对象的三个线扫图像中另一个光源下第一质检对象的线扫图像作为第二样本图像;其中,可以对任意两个光源下第一质检对象的两个线扫图像进行重复抽样,以实现第一样本图像三通道输入初始重建模型中的图像编码器。
上述S202在上述S201的基础上,将一个或多个光源下多个第一图像块编码经过重建网络预测另一光源下多个第二图像块对应的多个第一预测编码,实现重建图像块编码,为后续挖掘不同光源下第一质检对象的多个线扫图像之间的关联性,以自监督训练初始重建模型得到第一重建模型提供预测编码数据。
作为上述S202的一种示例,第二样本图像为x2,第二图像块为Patch2,在上述S201的示例基础上,将多个第一图像块编码z1输入初始重建模型中的重建网络,对x2中多个Patch2进行编码预测,输出多个Patch2对应的多个第一预测编码为多个zp。
S203:根据多个第一预测编码、多个第二图像块对应的多个第二图像块编码和初始重建模型的损失函数,对初始重建模型进行模型训练,获得第一重建模型;多个第二图像块编码是通过预训练编码器对多个第二图像块进行图像编码获得的。
本申请实施例中,在执行S202预测得到多个第二图像块对应的多个第一预测编码之后,为了挖掘不同光源下第一质检对象的多个线扫图像之间的关联性,以优化初始重建模型中的图像编码器,使得第一重建模型中的图像编码器的特征表达能力更强,可以自监督训练初始重建模型;即,在将第二样本图像输入预训练编码器进行图像编码,输出第二样本图像中多个第二图像块对应的多个第二图像块编码的基础上,通过多个第一预测编码、多个第二图像块编码和初始重建模型的损失函数,对初始重建模型进行模型训练得到第一重建模型。其中,预训练编码器的模型结构与初始重建模型中的图像编码器的模型结构可以相同。
实际应用中,先将第二样本图像划分为多个第二图像块,再通过预训练编码器对多个第二图像块进行图像编码,得到多个第二图像块对应的多个第二图像块编码;多个第二图像块编码是指多个第二图像块的图像块特征的低维表示,以更好的解释和表达多个第二图像块的图像块特征。
其中,初始重建模型的损失函数用于衡量多个第一预测编码和对应的多个第二图像块编码之间的差异;模型训练是指对初始重建模型的模型参数进行参数调整;第一重建模型是指模型训练结束后的初始重建模型,模型训练的结束条件是指初始重建模型的模型训练收敛或初始重建模型的模型训练次数达到最大训练次数。
上述S203通过初始重建模型的损失函数挖掘多个第一预测编码与多个第二图像块编码之间关联性,以挖掘不同光源下第一质检对象的多个线扫图像之间关联性,实现自监督训练初始重建模型,优化初始重建模型中的图像编码器,使得第一重建模型中的图像编码器的特征表达能力更强;为后续构建初始检测模型用于训练图像缺陷检测模型提供图像编码器。
作为上述S203的一种示例,预训练编码器为Encoder2,在上述S202的示例基础上,将第二样本图像x2中多个第二图像块Patch2输入Encoder2进行图像编码,输出多个Patch2对应的多个第二图像块编码为多个z2;通过多个第一预测编码zp、多个z2和初始重建模型的损失函数,对初始重建模型进行模型训练得到第一重建模型。
S204:将第一重建模型中的图像编码器确定为用于训练图像缺陷检测模型的初始检测模型中的图像编码器;初始检测模型用于训练图像缺陷检测模型。
本申请实施例中,在执行S203训练得到第一重建模型之后,考虑到第一重建模型中的图像编码器的特征表达能力更强,初始检测模型用于训练图像缺陷检测模型,将第一重建模型中的图像编码器确定为初始检测模型中的图像编码器,可以减少缺陷样本的标注数量,节省大量的标注时间和标注成本,以便后续结合大量的正常质检对象的线扫图像作为正常样本,即可训练初始检测模型得到特征表达能力更强的图像缺陷检测模型,降低图像缺陷检测模型的训练成本,从而适用于缺陷产品较少的产品质检场景。
上述S204将自监督训练得到的第一重建模型中的图像编码器作为初始检测模型中的图像编码器,能够减少缺陷样本的标注数量,后续结合大量的正常对象的线扫图像作为正常样本,即可训练初始检测模型得到特征表达能力更强的图像缺陷检测模型。
作为上述S204的一种示例,在上述S203的示例基础上,将第一重建模型中的图像编码器Encoder1确定为用于训练图像缺陷检测模型的初始检测模型中的Encoder1。
由上述技术方案可以看出,首先,将第一样本图像输入初始重建模型中的图像编码器进行图像编码,输出第一样本图像中多个第一图像块对应的多个第一图像块编码;将多个第一图像块编码输入初始重建模型中的重建网络,对第二样本图像中多个第二图像块进行编码预测,输出多个第二图像块对应的多个第一预测编码,其中,第一样本图像和第二样本图像是不同光源下第一质检对象的多个线扫图像;通过多个第一预测编码、多个第二图像块对应的多个第二图像块编码和初始重建模型的损失函数,对初始重建模型进行模型训练得到第一重建模型;多个第二图像块编码是将多个第二图像块输入预训练编码器进行图像编码得到的。该方式在不同光源下同一质检对象的多个线扫图像之间具有关联性的基础上,通过重建图像块编码以挖掘关联性,自监督训练初始重建模型得到第一重建模型;即,该方式通过无标注标签的不同光源下同一质检对象的多个线扫图像,优化初始重建模型中的图像编码器,使得第一重建模型中的图像编码器的特征表达能力更强。
然后,将第一重建模型中的图像编码器确定为用于训练图像缺陷检测模型的初始检测模型中的图像编码器。该方式将上述自监督训练得到的第一重建模型中的图像编码器作为初始检测模型中的图像编码器,能够减少缺陷样本的标注数量,后续结合大量的正常对象的线扫图像作为正常样本,即可训练初始检测模型得到特征表达能力更强的图像缺陷检测模型。
基于此,该方法利用不同光源下同一质检对象的多个线扫图像具有关联性的特点,通过重建图像块编码以挖掘关联性,优化重建模型中的图像编码器,使得图像编码器的特征表达能力更强;将优化后的图像编码器用于检测模型,减少缺陷样本的标注数量,节省大量的标注时间和标注成本,以便后续结合大量的正常样本训练得到特征表达能力更强的图像缺陷检测模型,降低图像缺陷检测模型的训练成本,从而适用于缺陷产品较少的产品质检场景。
上述实施例中,在S203具体实现时,初始重建模型的损失函数可以是交叉熵损失函数;基于此,首先,将多个第一预测编码和多个第二图像块编码代入交叉熵损失函数,计算多个第一预测编码为对应的多个第二图像块编码的多个第一预测概率;然后,考虑到初始重建模型的训练方向是使得多个第一预测编码接近对应的多个第二图像块编码,通过最大化多个第一预测概率,对初始重建模型进行模型训练得到第一重建模型。因此,本申请提供了一种可能的实现方式,初始重建模型的损失函数是交叉熵损失函数;S203包括如下S2031-S2032(图中未示出):
S2031:根据多个第一预测编码、多个第二图像块编码和交叉熵损失函数,确定多个第一预测编码为对应的多个第二图像块编码的多个第一预测概率。
S2032:根据最大化多个第一预测概率对初始重建模型进行模型训练,获得第一重建模型。
上述S2031-S2032通过计算多个第一预测编码为对应的多个第二图像块编码的多个第一预测概率,准确地挖掘不同光源下第一质检对象的多个线扫图像之间关联性;通过最大化多个第一预测概率,按照使得多个第一预测编码接近对应的多个第二图像块编码的训练方向训练初始重建模型,准确地实现自监督训练初始重建模型,准确地优化初始重建模型中的图像编码器,使得第一重建模型中的图像编码器的特征表达能力更强。
作为上述S2031-S2032的一种示例,在上述S203示例的基础上,将多个第一预测编码zp和多个第二图像块编码z2代入交叉熵损失函数,计算多个zp为对应的多个z2的多个第一预测概率为多个p1;通过最大化多个p1,对初始重建模型进行模型训练得到第一重建模型。
上述实施例中,预训练编码器是预先训练得到的,考虑到质检对象的线扫图像是对质检对象进行清晰拍摄得到的,即,质检对象的线扫图像的分辨率很高,存在一定的像素冗余;为了减小线扫图像的像素冗余,可以通过将线扫图像中图像块映射为离散编码并基于离散编码重建线扫图像的训练方式,训练得到预训练编码器。基于此,预训练编码器的获得步骤是指:首先,将第二质检对象的线扫图像作为第三样本图像,将第三样本图像输入初始编码器进行图像编码,输出第三样本图像中多个第三图像块对应的多个第三图像块特征;其次,通过多个预设离散编码将多个第三图像块特征离散化为多个第三图像块编码,即,多个第三图像块编码属于多个预设离散编码;然后,将多个第三图像块编码输入初始解码器对第三样本图像进行图像重建,输出第三样本图像的重建样本图像;最后,通过重建样本图像、第三样本图像、以及初始编码器与初始解码器的损失函数,对初始编码器和多个预设离散编码进行模型训练得到预训练编码器。因此,本申请提供了一种可能的实现方式,预训练编码器的获得步骤包括如下S1-S4(图中未示出):
S1:通过初始编码器对第三样本图像进行图像编码,获得第三样本图像中多个第三图像块对应的多个第三图像块特征;第三样本图像是第二质检对象的线扫图像。
参见图5,图5为本申请实施例提供的一种初始编码器的结构图;其中,初始编码器是基于ViT作为基础网络的编码器,该ViT由6个transformer encoder构成,每个transformer encoder包括一个归一化层(Norm层)、一个多头注意力层(Muliti-HeadAttention层)、一个归一化层(Norm层)和一个多层感知机(Multilayer Perceptron,MLP)。
S2:在多个预设离散编码中,确定多个第三图像块特征对应的多个第三图像块编码;多个第三图像块编码属于多个预设离散编码。
其中,每个预设离散编码是由多个整数值组成的编码,每个预设离散编码的维度与初始编码器输出数据的维度相同,即,每个预设离散编码的维度与每个第三图像块特征的维度相同。
S3:通过初始解码器根据多个第三图像块编码对第三样本图像进行图像重建,获得重建样本图像。
S4:根据重建样本图像、第三样本图像、以及初始编码器与初始解码器的损失函数,对初始编码器和多个预设离散编码进行模型训练,获得预训练编码器。
上述S1-S4通过多个预设离散编码,将第三样本图像中多个第三图像块经过初始编码器映射为属于多个预设离散编码的多个第三图像块编码,并基于多个第三图像块编码经过初始解码器重建第三样本图像的训练方式,优化初始编码器和多个预设离散编码,提升初始编码器的训练速度和训练效果,使得预训练编码器能够减小线扫图像的像素冗余,从而提升初始重建模型的训练速度和训练效果;此外,能够避免初始重建模型训练得到的第一重建模型出现过拟合问题。
作为上述S1-S4的一种示例,参见图6,图6为本申请实施例提供的一种基于初始编码器和初始解码器训练得到预训练编码器的示意图,初始编码器为encoder,初始解码器为decoder,第三样本图像为x3,第三图像块为Patch3,多个预设离散编码为E=[e1,e2,…,eK],在上述S201示例的基础上,将x3输入encoder进行图像编码,输出x3中多个Patch3对应的多个第三图像块特征为多个v3;通过E=[e1,e2,…,eK]将多个v3离散化为多个z3,即,多个z3属于E=[e1,e2,…,eK];将多个z3输入decoder对x3进行图像重建,输出x3的重建样本图像为x'3;通过x'3、x3、以及encoder与decoder的损失函数,对encoder和E=[e1,e2,…,eK]进行模型训练得到预训练编码器Encoder2,即,Encoder2是训练结束的encoder。
由于通过E=[e1,e2,…,eK]将多个v3离散化为多个z3的过程不支持反向传播,在反向传播进行模型训练时,停止训练通过E=[e1,e2,…,eK]将多个v3离散化为多个z3的过程的模型参数,直接通过x'3、x3、以及encoder与decoder的损失函数,训练将x3输入encoder进行图像编码输出x3中多个Patch3对应的多个v3的过程的模型参数、以及E=[e1,e2,…,eK]。
其中,在S2具体实现时,在多个预设离散编码中,可以通过最邻近搜索方式确定多个第三图像块特征对应的多个第三图像块编码;具体是指:针对每个第三图像块特征,先计算该第三图像块特征与每个预设离散编码之间的相似度,得到第三图像块特征与多个预设离散编码之间的多个相似度;再将多个相似度中最大相似度对应的预设离散编码,作为第三图像块特征对应的第三图像块编码。因此,本申请提供了一种可能的实现方式, S2包括如下S21-S22(图中未示出):
S21:针对每个第三图像块特征,根据第三图像块特征和多个预设离散编码进行相似度计算,获得第三图像块特征与多个预设离散编码之间的多个相似度。
S22:将多个相似度中最大相似度对应的预设离散编码,确定为第三图像块特征对应的第三图像块编码。
上述S21-S22在多个预设离散编码的基础上,通过最邻近搜索方式将多个第三图像块特征离散化为多个第三图像块编码,能够更准确地将第三样本图像中多个第三图像块映射为属于多个预设离散编码的多个第三图像块编码,为后续优化初始编码器和多个预设离散编码,使得预训练编码器能够减小线扫图像的像素冗余,提供更准确的图像块编码数据。
作为上述S21-S22的一种示例,在上述S1-S4示例的基础上,针对每个第三图像块特征v3,计算v3与多个预设离散编码E=[e1,e2,…,eK]中每个预设离散编码ei之间的相似度,i为正整数,i=1、2、…、K,得到v3与ei之间的多个相似度;再将多个相似度中最大相似度对应的ei,作为v3对应的第三图像块编码z3。其中,v3与ei之间的相似度可以通过v3与ei之间的距离表示,即,||v3-ei||2,则多个相似度中最大相似度对应的ei中的i=argmini||v3-ei||2。
本申请实施例中,在执行S203训练得到第一重建模型之后,考虑到第一重建模型中的图像编码器的特征表达能力更强,初始检测模型用于训练图像缺陷检测模型,将第一重建模型中的图像编码器确定为初始检测模型中的图像编码器,可以减少缺陷样本的标注数量,节省大量的标注时间和标注成本,以便后续结合大量的正常质检对象的线扫图像作为正常样本,即可训练初始检测模型得到特征表达能力更强的图像缺陷检测模型,降低图像缺陷检测模型的训练成本,从而适用于缺陷产品较少的产品质检场景。
上述S204将自监督训练得到的第一重建模型中的图像编码器作为初始检测模型中的图像编码器,能够减少缺陷样本的标注数量,后续结合大量的正常对象的线扫图像作为正常样本,即可训练初始检测模型得到特征表达能力更强的图像缺陷检测模型。
作为上述S204的一种示例,在上述S203的示例基础上,将第一重建模型中的图像编码器Encoder1确定为用于训练图像缺陷检测模型的初始检测模型中的Encoder1。
由上述技术方案可以看出,首先,将第一样本图像输入初始重建模型中的图像编码器进行图像编码,输出第一样本图像中多个第一图像块对应的多个第一图像块编码;将多个第一图像块编码输入初始重建模型中的重建网络,对第二样本图像中多个第二图像块进行编码预测,输出多个第二图像块对应的多个第一预测编码,其中,第一样本图像和第二样本图像是不同光源下第一质检对象的多个线扫图像;通过多个第一预测编码、多个第二图像块对应的多个第二图像块编码和初始重建模型的损失函数,对初始重建模型进行模型训练得到第一重建模型;多个第二图像块编码是将多个第二图像块输入预训练编码器进行图像编码得到的。该方式在不同光源下同一质检对象的多个线扫图像之间具有关联性的基础上,通过重建图像块编码以挖掘关联性,自监督训练初始重建模型得到第一重建模型;即,该方式通过无标注标签的不同光源下同一质检对象的多个线扫图像,优化初始重建模型中的图像编码器,使得第一重建模型中的图像编码器的特征表达能力更强。
然后,将第一重建模型中的图像编码器确定为用于训练图像缺陷检测模型的初始检测模型中的图像编码器。该方式将上述自监督训练得到的第一重建模型中的图像编码器作为初始检测模型中的图像编码器,能够减少缺陷样本的标注数量,后续结合大量的正常对象的线扫图像作为正常样本,即可训练初始检测模型得到特征表达能力更强的图像缺陷检测模型。
基于此,该方法利用不同光源下同一质检对象的多个线扫图像具有关联性的特点,通过重建图像块编码以挖掘关联性,优化重建模型中的图像编码器,使得图像编码器的特征表达能力更强;将优化后的图像编码器用于检测模型,减少缺陷样本的标注数量,节省大量的标注时间和标注成本,以便后续结合大量的正常样本训练得到特征表达能力更强的图像缺陷检测模型,降低图像缺陷检测模型的训练成本,从而适用于缺陷产品较少的产品质检场景。
上述实施例中,在S203具体实现时,初始重建模型的损失函数可以是交叉熵损失函数;基于此,首先,将多个第一预测编码和多个第二图像块编码代入交叉熵损失函数,计算多个第一预测编码为对应的多个第二图像块编码的多个第一预测概率;然后,考虑到初始重建模型的训练方向是使得多个第一预测编码接近对应的多个第二图像块编码,通过最大化多个第一预测概率,对初始重建模型进行模型训练得到第一重建模型。因此,本申请提供了一种可能的实现方式,初始重建模型的损失函数是交叉熵损失函数;S203包括如下S2031-S2032(图中未示出):
S2031:根据多个第一预测编码、多个第二图像块编码和交叉熵损失函数,确定多个第一预测编码为对应的多个第二图像块编码的多个第一预测概率。
S2032:根据最大化多个第一预测概率对初始重建模型进行模型训练,获得第一重建模型。
上述S2031-S2032通过计算多个第一预测编码为对应的多个第二图像块编码的多个第一预测概率,准确地挖掘不同光源下第一质检对象的多个线扫图像之间关联性;通过最大化多个第一预测概率,按照使得多个第一预测编码接近对应的多个第二图像块编码的训练方向训练初始重建模型,准确地实现自监督训练初始重建模型,准确地优化初始重建模型中的图像编码器,使得第一重建模型中的图像编码器的特征表达能力更强。
作为上述S2031-S2032的一种示例,在上述S203示例的基础上,将多个第一预测编码zp和多个第二图像块编码z2代入交叉熵损失函数,计算多个zp为对应的多个z2的多个第一预测概率为多个p1;通过最大化多个p1,对初始重建模型进行模型训练得到第一重建模型。
上述实施例中,预训练编码器是预先训练得到的,考虑到质检对象的线扫图像是对质检对象进行清晰拍摄得到的,即,质检对象的线扫图像的分辨率很高,存在一定的像素冗余;为了减小线扫图像的像素冗余,可以通过将线扫图像中图像块映射为离散编码并基于离散编码重建线扫图像的训练方式,训练得到预训练编码器。基于此,预训练编码器的获得步骤是指:首先,将第二质检对象的线扫图像作为第三样本图像,将第三样本图像输入初始编码器进行图像编码,输出第三样本图像中多个第三图像块对应的多个第三图像块特征;其次,通过多个预设离散编码将多个第三图像块特征离散化为多个第三图像块编码,即,多个第三图像块编码属于多个预设离散编码;然后,将多个第三图像块编码输入初始解码器对第三样本图像进行图像重建,输出第三样本图像的重建样本图像;最后,通过重建样本图像、第三样本图像、以及初始编码器与初始解码器的损失函数,对初始编码器和多个预设离散编码进行模型训练得到预训练编码器。因此,本申请提供了一种可能的实现方式,预训练编码器的获得步骤包括如下S1-S4(图中未示出):
S1:通过初始编码器对第三样本图像进行图像编码,获得第三样本图像中多个第三图像块对应的多个第三图像块特征;第三样本图像是第二质检对象的线扫图像。
参见图5,图5为本申请实施例提供的一种初始编码器的结构图;其中,初始编码器是基于ViT作为基础网络的编码器,该ViT由6个transformer encoder构成,每个transformer encoder包括一个归一化层(Norm层)、一个多头注意力层(Muliti-HeadAttention层)、一个归一化层(Norm层)和一个多层感知机(Multilayer Perceptron,MLP)。
S2:在多个预设离散编码中,确定多个第三图像块特征对应的多个第三图像块编码;多个第三图像块编码属于多个预设离散编码。
其中,每个预设离散编码是由多个整数值组成的编码,每个预设离散编码的维度与初始编码器输出数据的维度相同,即,每个预设离散编码的维度与每个第三图像块特征的维度相同。
S3:通过初始解码器根据多个第三图像块编码对第三样本图像进行图像重建,获得重建样本图像。
S4:根据重建样本图像、第三样本图像、以及初始编码器与初始解码器的损失函数,对初始编码器和多个预设离散编码进行模型训练,获得预训练编码器。
上述S1-S4通过多个预设离散编码,将第三样本图像中多个第三图像块经过初始编码器映射为属于多个预设离散编码的多个第三图像块编码,并基于多个第三图像块编码经过初始解码器重建第三样本图像的训练方式,优化初始编码器和多个预设离散编码,提升初始编码器的训练速度和训练效果,使得预训练编码器能够减小线扫图像的像素冗余,从而提升初始重建模型的训练速度和训练效果;此外,能够避免初始重建模型训练得到的第一重建模型出现过拟合问题。
作为上述S1-S4的一种示例,参见图6,图6为本申请实施例提供的一种基于初始编码器和初始解码器训练得到预训练编码器的示意图,初始编码器为encoder,初始解码器为decoder,第三样本图像为x3,第三图像块为Patch3,多个预设离散编码为E=[e1,e2,…,eK],在上述S201示例的基础上,将x3输入encoder进行图像编码,输出x3中多个Patch3对应的多个第三图像块特征为多个v3;通过E=[e1,e2,…,eK]将多个v3离散化为多个z3,即,多个z3属于E=[e1,e2,…,eK];将多个z3输入decoder对x3进行图像重建,输出x3的重建样本图像为x'3;通过x'3、x3、以及encoder与decoder的损失函数,对encoder和E=[e1,e2,…,eK]进行模型训练得到预训练编码器Encoder2,即,Encoder2是训练结束的encoder。
由于通过E=[e1,e2,…,eK]将多个v3离散化为多个z3的过程不支持反向传播,在反向传播进行模型训练时,停止训练通过E=[e1,e2,…,eK]将多个v3离散化为多个z3的过程的模型参数,直接通过x'3、x3、以及encoder与decoder的损失函数,训练将x3输入encoder进行图像编码输出x3中多个Patch3对应的多个v3的过程的模型参数、以及E=[e1,e2,…,eK]。
其中,在S2具体实现时,在多个预设离散编码中,可以通过最邻近搜索方式确定多个第三图像块特征对应的多个第三图像块编码;具体是指:针对每个第三图像块特征,先计算该第三图像块特征与每个预设离散编码之间的相似度,得到第三图像块特征与多个预设离散编码之间的多个相似度;再将多个相似度中最大相似度对应的预设离散编码,作为第三图像块特征对应的第三图像块编码。因此,本申请提供了一种可能的实现方式, S2包括如下S21-S22(图中未示出):
S21:针对每个第三图像块特征,根据第三图像块特征和多个预设离散编码进行相似度计算,获得第三图像块特征与多个预设离散编码之间的多个相似度。
S22:将多个相似度中最大相似度对应的预设离散编码,确定为第三图像块特征对应的第三图像块编码。
上述S21-S22在多个预设离散编码的基础上,通过最邻近搜索方式将多个第三图像块特征离散化为多个第三图像块编码,能够更准确地将第三样本图像中多个第三图像块映射为属于多个预设离散编码的多个第三图像块编码,为后续优化初始编码器和多个预设离散编码,使得预训练编码器能够减小线扫图像的像素冗余,提供更准确的图像块编码数据。
作为上述S21-S22的一种示例,在上述S1-S4示例的基础上,针对每个第三图像块特征v3,计算v3与多个预设离散编码E=[e1,e2,…,eK]中每个预设离散编码ei之间的相似度,i为正整数,i=1、2、…、K,得到v3与ei之间的多个相似度;再将多个相似度中最大相似度对应的ei,作为v3对应的第三图像块编码z3。其中,v3与ei之间的相似度可以通过v3与ei之间的距离表示,即,||v3-ei||2,则多个相似度中最大相似度对应的ei中的i=argmini||v3-ei||2。
其中,训练后的每个预设离散编码的维度与每个第一图像块特征的维度相同,训练后的每个预设离散编码的维度与每个第二图像块特征的维度相同。
上述S5-S6通过训练后的多个预设离散编码,将第二样本图像中多个第二图像块经过预训练编码器映射为属于训练后的多个预设离散编码的多个第二图像块编码,能够减小第二样本图像的像素冗余;为后续降低通过多个第一图像块编码经过重建网络预测多个第二图像块对应的多个第一预测编码的预测难度,提供图像块编码数据。
作为上述S2010、S5-S6的一种示例,在上述S201和上述S1-S4示例的基础上,将第一样本图像x1输入初始重建模型中的Encoder1进行图像编码,输出x1中多个第一图像块Patch1对应的多个第一图像块特征为多个v1;将第二样本图像x2中多个第二图像块Patch2输入预训练编码器进行图像编码,输出多个Patch2对应的多个第二图像块特征为多个v2;通过训练后的E=[e1,e2,…,eK]将多个v2离散化为多个z2,即,多个z2属于训练后的E=[e1,e2,…,eK]。其中,多个v1即为x1中多个Patch1对应的多个第一图像块编码z1。
上述实施例中,对应于上述S2010、S5-S6,在S203具体实现时,初始重建模型的损失函数可以是交叉熵损失函数;基于此,首先,将多个第一预测编码和多个第二图像块编码代入交叉熵损失函数,计算多个第一预测编码为对应的多个第二图像块编码的多个第一预测概率;然后,在多个第一图像块编码属于训练后的多个预设离散编码的基础上,将初始重建模型的训练方向进一步精确为使得属于训练后的多个预设离散编码的多个第一预测编码接近对应的多个第二图像块编码;因此,针对每个第一预测编码,先判断第一预测编码是否属于训练后的多个预设离散编码,若是,将第一预测编码对应的第一预测概率关联的预设系数确定为1;再通过最大化预设系数为1关联的多个第一预测概率,对初始重建模型进行模型训练得到第一重建模型。即,本申请提供了一种可能的实现方式,初始重建模型的损失函数是交叉熵损失函数;S203包括如下S2033-S2035(图中未示出):
S2033:根据多个第一预测编码、多个第二图像块编码和交叉熵损失函数,确定多个第一预测编码为对应的多个第二图像块编码的多个第一预测概率。
S2034:针对每个第一预测编码,若第一预测编码属于训练后的多个预设离散编码,确定第一预测编码对应的第一预测概率关联的预设系数为1。
S2035:根据最大化预设系数为1关联的多个第一预测概率,对初始重建模型进行模型训练,获得第一重建模型。
上述S2033-S2035通过计算多个第一预测编码为对应的多个第二图像块编码的多个第一预测概率,准确地挖掘不同光源下同一质检对象的多个线扫图像之间关联性;通过最大化属于训练后的多个预设离散编码的多个第一预测编码对应的多个第一预测概率,按照使得属于训练后的多个预设离散编码的多个第一预测编码接近对应的多个第二图像块编码的训练方向训练初始重建模型,进一步准确地实现自监督训练初始重建模型,以进一步优化初始重建模型中的图像编码器,使得第一重建模型中的图像编码器的特征表达能力更强。
作为上述S2033-S2035的一种示例,在上述S203和上述S2011-S2012示例的基础上,将多个第一预测编码zp和多个第二图像块编码z2代入交叉熵损失函数,计算多个zp为对应的多个z2的多个第一预测概率为多个p1;针对每个zp,先判断zp是否属于训练后的多个预设离散编码E=[e1,e2,…,eK],若是,将zp对应的p1关联的预设系数确定为1;再通过最大化预设系数为1关联的多个p1,对初始重建模型进行模型训练得到第一重建模型。
其中,在S2034具体实现时,为了降低判断第一预测编码是否属于训练后的多个预设离散编码的判断难度,可以针对训练后的多个预设离散编码配置对应的多个预设离散标识;基于此,针对每个第一预测编码,无需判断第一预测编码本身是否属于训练后的多个预设离散编码,而是判断第一预测编码是否对应多个预设离散标识中任一预设离散标识,若是,表示第一预测编码属于训练后的多个预设离散编码,即可将第一预测编码对应的第一预测概率关联的预设系数确定为1。因此,本申请提供了一种可能的实现方式,S2034包括如下S7-S8(图中未示出):
S7:获取训练后的多个预设离散编码对应的多个预设离散标识。
S8:针对每个第一预测编码,若第一预测编码对应多个预设离散标识中任一预设离散标识,确定第一预测编码对应的第一预测概率关联的预设系数为1。
上述S7-S8在训练后的多个预设离散编码配置对应的多个预设离散标识的基础上,判断第一预测编码是否对应多个预设离散标识中任一预设离散标识,代替判断第一预测编码是否属于训练后的多个预设离散编码,判断操作更为简单、便捷,以降低判断难度,从而提升初始重建模型的训练速度。
作为上述S7-S8的一种示例,在上述S2034示例的基础上,获取训练后的多个预设离散编码E=[e1,e2,…,eK]对应的多个预设离散标识为C=[1,2,…,K],针对每个zp,先判断zp是否对应C=[1,2,…,K]中任一预设离散标识,若是,将zp对应的p1关联的预设系数确定为1。
基于上述说明,初始重建模型的损失函数的形式化表示例如可以如下所示:
其中,m×n表示多个第一预测编码的数量,j为正整数,yj表示第j个第一预测编码为对应的第j个第二图像块编码的第一预测概率,cj表示第j个第一预测编码对应的编码标识,∏(cj=C)表示第j个第一预测编码对应的yj关联的预设系数。当第j个第一预测编码对应C=[1,2,…,K]中任一预设离散标识,∏(cj=C)=1;反之,∏(cj=C)=0。
此外,本申请实施例中,为了提升初始重建模型的训练速度,在执行S201得到多个第一图像块对应的多个第一图像块编码之后,无需将多个第一图像块编码均输入初始重建模型中的重建网络对多个第二图像块进行编码预测,可以将部分第一图像块对应的部分第一图像块编码输入初始重建模型中的重建网络对部分第二图像块进行编码预测,减少编码预测数量,从而提升初始重建模型的训练速度。
具体实现时,先对多个第一图像块进行随机抽样得到部分第一图像块,即,第一数量的第一图像块,第一数量小于多个第一图像块的块数量;再将第一数量的第一图像块对应的第一数量的第一图像块编码输入初始重建模型中的重建网络,对第一数量的第一图像块对应的第二数量的第二图像块进行编码预测,输出第二数量的第二图像块对应的第二数量的第一预测编码。对应地,后续通过第二数量的第一预测编码、第二数量的第二图像块对应的第二数量的第二图像块编码、以及初始重建模型的损失函数,对初始重建模型进行模型训练即可得到第一重建模型。
因此,本申请提供了一种可能的实现方式,方法还包括S9(图中未示出):对多个第一图像块进行随机抽样,获得第一数量的第提图像块;第一数量小于多个第一图像块的块数量。对应地,S202包括S2021(图中未示出):通过初始重建模型中的重建网络,根据第一数量的第一图像块对应的第一数量的第一图像块编码,对第一数量的第一图像块对应的第二数量的第二图像块进行编码预测,获得第二数量的第二图像块对应的第二数量的第一预测编码。S203包括S2036(图中未示出):根据第二数量的第一预测编码、第二数量的第二图像块对应的第二数量的第二图像块编码、以及初始重建模型的损失函数,对初始重建模型进行模型训练,获得第一重建模型。
作为上述S9、S2021和S2036的一种示例,第一数量为s1,第二数量为s2,s1、s2均为正整数,在上述S201示例的基础上,s1小于多个第一图像块Patch1的块数量,s2小于多个第二图像块Patch2的块数量,s1个Patch1对应s2个Patch2;对多个Patch1进行随机抽样得到s1个Patch1,将s1个Patch1对应的s1个第一图像块编码z1输入初始重建模型中的重建网络,对s2个Patch2进行编码预测,输出s2个Patch2对应的s2个第一预测编码zp。通过s2个zp、s2个Patch2对应的s2个第二图像块编码z2、以及初始重建模型的损失函数,对初始重建模型进行模型训练即可得到第一重建模型。
此外,本申请实施例中,在执行上述S201-S203通过初始重建模型,将第一样本图像中多个第一图像块编码为多个第一图像块编码,通过多个第一图像块编码预测多个第二图像块对应的多个第一预测编码,实现重建多个第二图像块的图像块编码,以挖掘第一样本图像和第二样本图像之间的关联性,自监督训练初始重建模型得到第一重建模型的基础上,为了充分挖掘第一样本图像和第二样本图像之间的关联性,以进一步优化初始重建模型中的图像编码器,使得第一重建模型中的图像编码器的特征表达能力更强;还可以进一步通过第一重建模型,将多个第二图像块编码为多个第四图像块编码,通过多个第四图像块编码预测多个第一图像块对应的多个第二预测编码,实现重建多个第一图像块的图像块编码,以充分挖掘第一样本图像和第二样本图像之间的关联性,自监督训练第一重建模型得到第二重建模型;使得第二重建模型中的图像编码器相较于第一重建模型中的图像编码器的特征表达能力更强。对应地,第二重建模型中的图像编码器相较于第一重建模型中的图像编码器更适合用于构建初始检测模型,以训练图像缺陷检测模型。
具体实现时,首先,将多个第二图像块输入第一重建模型中的图像编码器进行图像编码,输出多个第二图像块对应的多个第四图像块编码;其次,将多个第四图像块编码输入第一重建模型中的重建网络,对多个第一图像块进行编码预测,输出多个第一图像块对应的多个第二预测编码;然后,通过多个第二预测编码、多个第二图像块对应的多个第五图像块编码和第一重建模型的损失函数,对第一重建模型进行模型训练得到第二重建模型,其中,多个第五图像块编码是将多个第二图像块输入预训练编码器进行图像编码得到的;最后,将第二重建模型中的图像编码器确定为初始检测模型中的图像编码器。因此,本申请提供了一种可能的实现方式,方法还包括如下S10-S12(图中未示出):
S10:通过第一重建模型中的图像编码器,对多个第二图像块进行图像编码,获得多个第二图像块对应的多个第四图像块编码。
S11:通过第一重建模型中的重建网络,根据多个第四图像块编码对多个第一图像块进行编码预测,获得多个第一图像块对应的多个第二预测编码。
S12:根据多个第二预测编码、多个第一图像块对应的多个第五图像块编码和第一重建模型的损失函数,对第一重建模型进行模型训练,获得第二重建模型;多个第五图像块编码是通过预训练编码器对多个第一图像块进行图像编码获得的。
对应地,S204包括S2041(图中未示出):将第二重建模型中的图像编码器确定为初始检测模型中的图像编码器。
综上所述,本申请实施例中,并不限定初始检测模型的具体架构,初始检测模型可以是多阶段级联检测器,也可以是端到端的基于集合预测的检测器等。参见图7,图7为本申请实施例提供的一种多阶段级联检测器的示意图;其中,B0表示第一阶段的检测框,H1表示第二阶段的检测网络,C1表示第二阶段的分类结果,B1表示第二阶段的检测框;H2表示第三阶段的检测网络,C2表示第三阶段的分类结果,B2表示第三阶段的检测框;H3表示第四阶段的检测网络,C3表示第四阶段的分类结果,B3表示第四阶段的检测框。
参见图8,图8为本申请实施例提供的一种通过图像缺陷检测模型对待质检产品的线扫图像进行缺陷检测的输出数据示意图;其中,待质检产品具有缺陷,通过上述实施例确定初始检测模型中的图像编码器,训练得到图像缺陷检测模型之后,待质检产品的线扫图像输入图像缺陷检测模型进行缺陷检测,输出待质检产品的线扫图像中的缺陷检测框。
需要说明的是,本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
基于图2对应实施例提供的图像编码器的确定方法,本申请实施例还提供一种图像编码器的确定装置,参见图9,图9为本申请实施例提供的一种图像编码器的确定装置的结构图,该图像编码器的确定装置900包括:编码单元901、预测单元902、训练单元903和确定单元904;
编码单元901,用于通过初始重建模型中的图像编码器,对第一样本图像进行图像编码,获得第一样本图像中多个第一图像块对应的多个第一图像块编码;
预测单元902,用于通过初始重建模型中的重建网络,根据多个第一图像块编码对第二样本图像中多个第二图像块进行编码预测,获得多个第二图像块对应的多个第一预测编码;第一样本图像和第二样本图像是不同光源下第一质检对象的多个线扫图像;
训练单元903,用于根据多个第一预测编码、多个第二图像块对应的多个第二图像块编码和初始重建模型的损失函数,对初始重建模型进行模型训练,获得第一重建模型;多个第二图像块编码是通过预训练编码器对多个第二图像块进行图像编码获得的;
确定单元904,用于将第一重建模型中的图像编码器确定为用于训练图像缺陷检测模型的初始检测模型中的图像编码器;初始检测模型用于训练图像缺陷检测模型。
在一种可能的实现方式中,初始重建模型的损失函数是交叉熵损失函数;训练单元903,具体用于:
根据多个第一预测编码、多个第二图像块编码和交叉熵损失函数,确定多个第一预测编码为对应的多个第二图像块编码的多个第一预测概率;
根据最大化多个第一预测概率,对初始重建模型进行模型训练,获得第一重建模型。
在一种可能的实现方式中,训练单元903,还用于:
通过初始编码器对第三样本图像进行图像编码,获得第三样本图像中多个第三图像块对应的多个第三图像块特征;第三样本图像是第二质检对象的线扫图像;
在多个预设离散编码中,确定多个第三图像块特征对应的多个第三图像块编码;多个第三图像块编码属于多个预设离散编码;
通过初始解码器根据多个第三图像块编码对第三样本图像进行图像重建,获得重建样本图像;
根据重建样本图像、第三样本图像、以及初始编码器与初始解码器的损失函数,对初始编码器和多个预设离散编码进行模型训练,获得预训练编码器。
在一种可能的实现方式中,确定单元904,还用于:
针对每个第三图像块特征,根据第三图像块特征和多个预设离散编码进行相似度计算,获得第三图像块特征与多个预设离散编码之间的多个相似度;
将多个相似度中最大相似度对应的预设离散编码,确定为第三图像块特征对应的第三图像块编码。
在一种可能的实现方式中,初始编码器与初始解码器的损失函数是交叉熵损失函数;训练单元903,还具体用于:
根据重建样本图像、第三样本图像和交叉熵损失函数,确定重建样本图像为第三样本图像的第二预测概率;
根据最大化第二预测概率,对初始编码器和多个预设离散编码进行模型训练,获得预训练编码器。
在一种可能的实现方式中,多个第一图像块编码是多个第一图像块特征,多个第二图像块编码属于训练后的多个预设离散编码;编码单元901,具体用于:
通过初始重建模型中的图像编码器,对第一样本图像进行图像编码,获得多个第一图像块对应的多个第一图像块特征;
编码单元901,还具体用于:
通过预训练编码器对多个第二图像块进行图像编码,获得多个第二图像块对应的多个第二图像块特征;
在训练后的多个预设离散编码中,确定多个第二图像块特征对应的多个第二图像块编码。
在一种可能的实现方式中,初始重建模型的损失函数是交叉熵损失函数;训练单元903,具体用于:
根据多个第一预测编码、多个第二图像块编码和交叉熵损失函数,确定多个第一预测编码为对应的多个第二图像块编码的多个第一预测概率;
针对每个第一预测编码,若第一预测编码属于训练后的多个预设离散编码,确定第一预测编码对应的第一预测概率关联的预设系数为1;
根据最大化预设系数为1关联的多个第一预测概率,对初始重建模型进行模型训练,获得第一重建模型。
在一种可能的实现方式中,确定单元904,还用于:
获取训练后的多个预设离散编码对应的多个预设离散标识;
针对每个第一预测编码,若第一预测编码对应多个预设离散标识中任一预设离散标识,确定第一预测编码对应的第一预测概率关联的预设系数为1。
在一种可能的实现方式中,装置还包括:抽样单元;
抽样单元,用于对多个第一图像块进行随机抽样,获得第一数量的第一图像块;第一数量小于多个第一图像块的块数量;
预测单元902,具体用于:
通过初始重建模型中的重建网络,根据第一数量的第一图像块对应的第一数量的第一图像块编码,对第一数量的第一图像块对应的第二数量的第二图像块进行编码预测,获得第二数量的第二图像块对应的第二数量的第一预测编码;
训练单元903,具体用于:
根据第二数量的第一预测编码、第二数量的第二图像块对应的第二数量的第二图像块编码、以及初始重建模型的损失函数,对初始重建模型进行模型训练,获得第一重建模型。
在一种可能的实现方式中,编码单元901,还用于:
通过第一重建模型中的图像编码器,对多个第二图像块进行图像编码,获得多个第二图像块对应的多个第四图像块编码;
预测单元902,还用于:
通过第一重建模型中的重建网络,根据多个第四图像块编码对多个第一图像块进行编码预测,获得多个第一图像块对应的多个第二预测编码;
训练单元903,还用于:
根据多个第二预测编码、多个第一图像块对应的多个第五图像块编码和第一重建模型的损失函数,对第一重建模型进行模型训练,获得第二重建模型;多个第五图像块编码是通过预训练编码器对多个第一图像块进行图像编码获得的;
确定单元904,具体用于:
将第二重建模型中的图像编码器确定为初始检测模型中的图像编码器。
由上述技术方案可以看出,首先,将第一样本图像输入初始重建模型中的图像编码器进行图像编码,输出第一样本图像中多个第一图像块对应的多个第一图像块编码;将多个第一图像块编码输入初始重建模型中的重建网络,对第二样本图像中多个第二图像块进行编码预测,输出多个第二图像块对应的多个第一预测编码,其中,第一样本图像和第二样本图像是不同光源下第一质检对象的多个线扫图像;通过多个第一预测编码、多个第二图像块对应的多个第二图像块编码和初始重建模型的损失函数,对初始重建模型进行模型训练得到第一重建模型;多个第二图像块编码是将多个第二图像块输入预训练编码器进行图像编码得到的。在不同光源下同一质检对象的多个线扫图像之间具有关联性的基础上,通过重建图像块编码以挖掘关联性,自监督训练初始重建模型得到第一重建模型;即,通过无标注标签的不同光源下同一质检对象的多个线扫图像,优化初始重建模型中的图像编码器,使得第一重建模型中的图像编码器的特征表达能力更强。
然后,将第一重建模型中的图像编码器确定为用于训练图像缺陷检测模型的初始检测模型中的图像编码器。将上述自监督训练得到的第一重建模型中的图像编码器作为初始检测模型中的图像编码器,能够减少缺陷样本的标注数量,后续结合大量的正常对象的线扫图像作为正常样本,即可训练初始检测模型得到特征表达能力更强的图像缺陷检测模型。
基于此,该装置利用不同光源下同一质检对象的多个线扫图像具有关联性的特点,通过重建图像块编码以挖掘关联性,优化重建模型中的图像编码器,使得图像编码器的特征表达能力更强;将优化后的图像编码器用于检测模型,减少缺陷样本的标注数量,节省大量的标注时间和标注成本,以便后续结合大量的正常样本训练得到特征表达能力更强的图像缺陷检测模型,降低图像缺陷检测模型的训练成本,从而适用于缺陷产品较少的产品质检场景。
本申请实施例还提供了一种计算机设备,该计算机设备可以是服务器,参见图10,图10为本申请实施例提供的一种服务器的结构图,服务器1000可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器,例如CPU1022,以及存储器1032,一个或一个以上存储应用程序1042或数据1044的存储介质1030(例如一个或一个以上海量存储设备)。其中,存储器1032和存储介质1030可以是短暂存储或持久存储。存储在存储介质1030的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1022可以设置为与存储介质1030通信,在服务器1000上执行存储介质1030中的一系列指令操作。
服务器1000还可以包括一个或一个以上电源1026,一个或一个以上有线或无线网络接口1050,一个或一个以上输入输出接口1058,和/或,一个或一个以上操作系统1041,例如Windows ServerTM,Mac OS XTM,UnixTM, LinuxTM,FreeBSDTM等等。
在本实施例中,由服务器1000中的中央处理器1022可以执行上述实施例各种可选实现方式中提供的方法。
本申请实施例提供的计算机设备还可以是终端,参见图11,图11为本申请实施例提供的一种终端的结构图。以终端为智能手机为例,智能手机包括:射频(RadioFrequency,RF)电路1110、存储器1120、输入单元1130、显示单元1140、传感器1150、音频电路1160、无线保真(Wireless Fidelity,WiFi)模块1170、处理器1180、以及电源11120等部件。输入单元1130可包括触控面板1131以及其他输入设备1132,显示单元1140可包括显示面板1141,音频电路1160可以包括扬声器1161和传声器1162。本领域技术人员可以理解,图11中示出的智能手机结构并不构成对智能手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储器1120可用于存储软件程序以及模块,处理器1180通过运行存储在存储器1120的软件程序以及模块,从而执行智能手机的各种功能应用以及数据处理。存储器1120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据智能手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器1180是智能手机的控制中心,利用各种接口和线路连接整个智能手机的各个部分,通过运行或执行存储在存储器1120内的软件程序和/或模块,以及调用存储在存储器1120内的数据,执行智能手机的各种功能和处理数据。可选的,处理器1180可包括一个或多个处理单元;优选的,处理器1180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1180中。
在本实施例中,智能手机中的处理器1180可以执行上述实施例各种可选实现方式中提供的方法。
根据本申请的一个方面,提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,当所述计算机程序在计算机设备上运行时,使得所述计算机设备执行上述实施例各种可选实现方式中提供的方法。
根据本申请的一个方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行上述实施例各种可选实现方式中提供的方法。
上述各个附图对应的流程或结构的描述各有侧重,某个流程或结构中没有详述的部分,可以参见其他流程或结构的相关描述。
本申请的说明书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、RAM、磁碟或者光盘等各种可以存储计算机程序的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术成员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (14)
1.一种图像编码器的确定方法,其特征在于,所述方法包括:
通过初始重建模型中的图像编码器,对第一样本图像进行图像编码,获得所述第一样本图像中多个第一图像块对应的多个第一图像块编码;
通过所述初始重建模型中的重建网络,根据所述多个第一图像块编码对第二样本图像中多个第二图像块进行编码预测,获得所述多个第二图像块对应的多个第一预测编码;所述第一样本图像和所述第二样本图像是不同光源下第一质检对象的多个线扫图像;
根据所述多个第一预测编码、所述多个第二图像块对应的多个第二图像块编码和所述初始重建模型的损失函数,对所述初始重建模型进行模型训练,获得第一重建模型;所述多个第二图像块编码是通过预训练编码器对所述多个第二图像块进行图像编码获得的;
将所述第一重建模型中的图像编码器确定为初始检测模型中的图像编码器;所述初始检测模型用于训练图像缺陷检测模型。
2.根据权利要求1所述的方法,其特征在于,所述初始重建模型的损失函数是交叉熵损失函数;所述根据所述多个第一预测编码、所述多个第二图像块对应的多个第二图像块编码和所述初始重建模型的损失函数,对所述初始重建模型进行模型训练,获得第一重建模型,包括:
根据所述多个第一预测编码、所述多个第二图像块编码和所述交叉熵损失函数,确定所述多个第一预测编码为对应的所述多个第二图像块编码的多个第一预测概率;
根据最大化所述多个第一预测概率对所述初始重建模型进行模型训练,获得所述第一重建模型。
3.根据权利要求1所述的方法,其特征在于,所述预训练编码器的获得步骤,包括:
通过初始编码器对第三样本图像进行图像编码,获得所述第三样本图像中多个第三图像块对应的多个第三图像块特征;所述第三样本图像是第二质检对象的线扫图像;
在多个预设离散编码中,确定所述多个第三图像块特征对应的多个第三图像块编码;所述多个第三图像块编码属于所述多个预设离散编码;
通过初始解码器根据所述多个第三图像块编码对所述第三样本图像进行图像重建,获得重建样本图像;
根据所述重建样本图像、所述第三样本图像、以及所述初始编码器与所述初始解码器的损失函数,对所述初始编码器和所述多个预设离散编码进行模型训练,获得所述预训练编码器。
4.根据权利要求3所述的方法,其特征在于,所述在多个预设离散编码中,确定所述多个第三图像块特征对应的多个第三图像块编码,包括:
针对每个第三图像块特征,根据所述第三图像块特征和所述多个预设离散编码进行相似度计算,获得所述第三图像块特征与所述多个预设离散编码之间的多个相似度;
将所述多个相似度中最大相似度对应的预设离散编码,确定为所述第三图像块特征对应的第三图像块编码。
5.根据权利要求3所述的方法,其特征在于,所述初始编码器与所述初始解码器的损失函数是交叉熵损失函数;所述根据所述重建样本图像、所述第三样本图像、以及所述初始编码器与所述初始解码器的损失函数,对所述初始编码器和所述多个预设离散编码进行模型训练,获得所述预训练编码器,包括:
根据所述重建样本图像、所述第三样本图像和所述交叉熵损失函数,确定所述重建样本图像为所述第三样本图像的第二预测概率;
根据最大化所述第二预测概率对所述初始编码器和所述多个预设离散编码进行模型训练,获得所述预训练编码器。
6.根据权利要求3所述的方法,其特征在于,所述多个第一图像块编码是多个第一图像块特征,所述多个第二图像块编码属于训练后的多个预设离散编码;所述通过初始重建模型中的图像编码器,对第一样本图像进行图像编码,获得所述第一样本图像中多个第一图像块对应的多个第一图像块编码,包括:
通过所述初始重建模型中的图像编码器,对所述第一样本图像进行图像编码,获得所述多个第一图像块对应的多个第一图像块特征;
所述多个第二图像块编码的获得步骤,包括:
通过所述预训练编码器对所述多个第二图像块进行图像编码,获得所述多个第二图像块对应的多个第二图像块特征;
在所述训练后的多个预设离散编码中,确定所述多个第二图像块特征对应的多个第二图像块编码。
7.根据权利要求6所述的方法,其特征在于,所述初始重建模型的损失函数是交叉熵损失函数;所述根据所述多个第一预测编码、所述多个第二图像块对应的多个第二图像块编码和所述初始重建模型的损失函数,对所述初始重建模型进行模型训练,获得第一重建模型,包括:
根据所述多个第一预测编码、所述多个第二图像块编码和所述交叉熵损失函数,确定所述多个第一预测编码为对应的所述多个第二图像块编码的多个第一预测概率;
针对每个第一预测编码,若所述第一预测编码属于所述训练后的多个预设离散编码,确定所述第一预测编码对应的第一预测概率关联的预设系数为1;
根据最大化所述预设系数为1关联的多个第一预测概率,对所述初始重建模型进行模型训练,获得所述第一重建模型。
8.根据权利要求7所述的方法,其特征在于,所述针对每个第一预测编码,若所述第一预测编码属于所述训练后的多个预设离散编码,确定所述第一预测编码对应的第一预测概率关联的预设系数为1,包括:
获取所述训练后的多个预设离散编码对应的多个预设离散标识;
针对每个第一预测编码,若所述第一预测编码对应所述多个预设离散标识中任一预设离散标识,确定所述第一预测编码对应的第一预测概率关联的预设系数为1。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对所述多个第一图像块进行随机抽样,获得第一数量的第一图像块;所述第一数量小于所述多个第一图像块的块数量;
所述通过所述初始重建模型中的重建网络,根据所述多个第一图像块编码对第二样本图像中多个第二图像块进行编码预测,获得所述多个第二图像块对应的多个第一预测编码,包括:
通过所述初始重建模型中的重建网络,根据所述第一数量的第一图像块对应的所述第一数量的第一图像块编码,对所述第一数量的第一图像块对应的第二数量的第二图像块进行编码预测,获得所述第二数量的第二图像块对应的第二数量的第一预测编码;
所述根据所述多个第一预测编码、所述多个第二图像块对应的多个第二图像块编码和所述初始重建模型的损失函数,对所述初始重建模型进行模型训练,获得第一重建模型,包括:
根据所述第二数量的第一预测编码、所述第二数量的第二图像块对应的所述第二数量的第二图像块编码、以及所述初始重建模型的损失函数,对所述初始重建模型进行模型训练,获得所述第一重建模型。
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过所述第一重建模型中的图像编码器,对所述多个第二图像块进行图像编码,获得所述多个第二图像块对应的多个第四图像块编码;
通过所述第一重建模型中的重建网络,根据所述多个第四图像块编码对所述多个第一图像块进行编码预测,获得所述多个第一图像块对应的多个第二预测编码;
根据所述多个第二预测编码、所述多个第一图像块对应的多个第五图像块编码和所述第一重建模型的损失函数,对所述第一重建模型进行模型训练,获得第二重建模型;所述多个第五图像块编码是通过所述预训练编码器对所述多个第一图像块进行图像编码获得的;
所述将所述第一重建模型中的图像编码器确定为初始检测模型中的图像编码器,包括:
将所述第二重建模型中的图像编码器确定为所述初始检测模型中的图像编码器。
11.一种图像编码器的确定装置,其特征在于,所述装置包括:编码单元、预测单元、训练单元和确定单元;
所述编码单元,用于通过初始重建模型中的图像编码器,对第一样本图像进行图像编码,获得所述第一样本图像中多个第一图像块对应的多个第一图像块编码;
所述预测单元,用于通过所述初始重建模型中的重建网络,根据所述多个第一图像块编码对第二样本图像中多个第二图像块进行编码预测,获得所述多个第二图像块对应的多个第一预测编码;所述第一样本图像和所述第二样本图像是不同光源下第一质检对象的多个线扫图像;
所述训练单元,用于根据所述多个第一预测编码、所述多个第二图像块对应的多个第二图像块编码和所述初始重建模型的损失函数,对所述初始重建模型进行模型训练,获得第一重建模型;所述多个第二图像块编码是通过预训练编码器对所述多个第二图像块进行图像编码获得的;
所述确定单元,用于将所述第一重建模型中的图像编码器确定为初始检测模型中的图像编码器;所述初始检测模型用于训练图像缺陷检测模型。
12.根据权利要求11所述的装置,其特征在于,所述初始重建模型的损失函数是交叉熵损失函数;所述训练单元,具体用于:
根据所述多个第一预测编码、所述多个第二图像块编码和所述交叉熵损失函数,确定所述多个第一预测编码为对应的所述多个第二图像块编码的多个第一预测概率;
根据最大化所述多个第一预测概率对所述初始重建模型进行模型训练,获得所述第一重建模型。
13.一种计算机设备,其特征在于,所述计算机设备包括处理器以及存储器:
所述存储器用于存储计算机程序,并将所述计算机程序传输给所述处理器;
所述处理器用于根据所述计算机程序中的指令执行权利要求1-10任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,当所述计算机程序在计算机设备上运行时,使得所述计算机设备执行权利要求1-10任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311285085.8A CN117011650B (zh) | 2023-10-07 | 2023-10-07 | 一种图像编码器的确定方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311285085.8A CN117011650B (zh) | 2023-10-07 | 2023-10-07 | 一种图像编码器的确定方法及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117011650A true CN117011650A (zh) | 2023-11-07 |
CN117011650B CN117011650B (zh) | 2023-12-08 |
Family
ID=88563999
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311285085.8A Active CN117011650B (zh) | 2023-10-07 | 2023-10-07 | 一种图像编码器的确定方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117011650B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118097323A (zh) * | 2024-04-22 | 2024-05-28 | 阿里巴巴达摩院(杭州)科技有限公司 | 自回归生成模型的训练方法、图像处理方法以及电子设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111815601A (zh) * | 2020-07-03 | 2020-10-23 | 浙江大学 | 一种基于深度卷积自编码器的纹理图像表面缺陷检测方法 |
CN112686202A (zh) * | 2021-01-12 | 2021-04-20 | 武汉大学 | 一种基于3d重建的人头识别方法及系统 |
CN113920096A (zh) * | 2021-10-14 | 2022-01-11 | 广东工业大学 | 一种集成电路金属封装缺陷检测方法 |
CN114862811A (zh) * | 2022-05-19 | 2022-08-05 | 湖南大学 | 一种基于变分自动编码器的缺陷检测方法 |
CN114926338A (zh) * | 2022-05-25 | 2022-08-19 | 上海商汤智能科技有限公司 | 模型训练方法及装置、电子设备和存储介质 |
CN115222650A (zh) * | 2022-04-22 | 2022-10-21 | 西安和硕物流科技有限公司 | 一种混合工业零件缺陷检测算法 |
US20220383479A1 (en) * | 2021-05-20 | 2022-12-01 | Hon Hai Precision Industry Co., Ltd. | Method for detecting defects in images, computer device, and storage medium |
-
2023
- 2023-10-07 CN CN202311285085.8A patent/CN117011650B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111815601A (zh) * | 2020-07-03 | 2020-10-23 | 浙江大学 | 一种基于深度卷积自编码器的纹理图像表面缺陷检测方法 |
CN112686202A (zh) * | 2021-01-12 | 2021-04-20 | 武汉大学 | 一种基于3d重建的人头识别方法及系统 |
US20220383479A1 (en) * | 2021-05-20 | 2022-12-01 | Hon Hai Precision Industry Co., Ltd. | Method for detecting defects in images, computer device, and storage medium |
CN113920096A (zh) * | 2021-10-14 | 2022-01-11 | 广东工业大学 | 一种集成电路金属封装缺陷检测方法 |
CN115222650A (zh) * | 2022-04-22 | 2022-10-21 | 西安和硕物流科技有限公司 | 一种混合工业零件缺陷检测算法 |
CN114862811A (zh) * | 2022-05-19 | 2022-08-05 | 湖南大学 | 一种基于变分自动编码器的缺陷检测方法 |
CN114926338A (zh) * | 2022-05-25 | 2022-08-19 | 上海商汤智能科技有限公司 | 模型训练方法及装置、电子设备和存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118097323A (zh) * | 2024-04-22 | 2024-05-28 | 阿里巴巴达摩院(杭州)科技有限公司 | 自回归生成模型的训练方法、图像处理方法以及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN117011650B (zh) | 2023-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111930992B (zh) | 神经网络训练方法、装置及电子设备 | |
CN112418292B (zh) | 一种图像质量评价的方法、装置、计算机设备及存储介质 | |
CN115083435B (zh) | 音频数据处理方法、装置、计算机设备和存储介质 | |
CN114419351B (zh) | 图文预训练模型训练、图文预测模型训练方法和装置 | |
CN117011650B (zh) | 一种图像编码器的确定方法及相关装置 | |
CN110188158B (zh) | 关键词及话题标签生成方法、装置、介质及电子设备 | |
CN116935188B (zh) | 模型训练方法、图像识别方法、装置、设备及介质 | |
WO2024083121A1 (zh) | 一种数据处理方法及其装置 | |
CN115512005A (zh) | 一种数据处理方法及其装置 | |
CN115359314A (zh) | 模型训练方法、图像编辑方法、装置、介质与电子设备 | |
CN114495916B (zh) | 背景音乐的插入时间点确定方法、装置、设备和存储介质 | |
CN116541492A (zh) | 一种数据处理方法及相关设备 | |
Liu et al. | A survey on semantic communications: technologies, solutions, applications and challenges | |
CN117877125B (zh) | 动作识别及其模型训练方法、装置、电子设备、存储介质 | |
CN117094362B (zh) | 一种任务处理方法及相关装置 | |
CN116824308B (zh) | 图像分割模型训练方法与相关方法、装置、介质及设备 | |
CN114139703A (zh) | 知识蒸馏方法及装置、存储介质及电子设备 | |
CN117634459A (zh) | 目标内容生成及模型训练方法、装置、系统、设备及介质 | |
CN111260074B (zh) | 一种超参数确定的方法、相关装置、设备及存储介质 | |
CN113850012A (zh) | 数据处理模型生成方法、装置、介质及电子设备 | |
CN114757247A (zh) | 分类预测模型的训练方法、分类预测方法、装置和设备 | |
CN117034133A (zh) | 一种数据处理方法、装置、设备和介质 | |
CN117011569A (zh) | 一种图像处理方法和相关装置 | |
CN116992947A (zh) | 模型训练方法、视频查询方法和装置 | |
CN114330239A (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 |