CN114757869A - 产品瑕疵检测方法及计算机装置 - Google Patents
产品瑕疵检测方法及计算机装置 Download PDFInfo
- Publication number
- CN114757869A CN114757869A CN202011599676.9A CN202011599676A CN114757869A CN 114757869 A CN114757869 A CN 114757869A CN 202011599676 A CN202011599676 A CN 202011599676A CN 114757869 A CN114757869 A CN 114757869A
- Authority
- CN
- China
- Prior art keywords
- test
- product
- defect
- blocks
- mean square
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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/0006—Industrial image inspection using a design-rule based approach
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/22—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
- G06V10/225—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition based on a marking or identifier characterising the area
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
-
- 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/762—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine 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/20021—Dividing image into blocks, subimages or windows
-
- 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
- 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
- G06T2207/30136—Metal
-
- 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)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Quality & Reliability (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)
- Image Processing (AREA)
Abstract
本发明提供一种产品瑕疵检测方法,包括:获取产品的测试影像;将所述测试影像切割为N个测试区块;将所述N个测试区块分别输入至自动编码器获得N个重构区块;计算所述N个测试区块中的每个测试区块与对应的重构区块之间的均方误差,并将计算得到的均方误差与该每个测试区块建立关联;及基于所述N个测试区块中的每个测试区块所对应的均方误差确定所述产品是否存在瑕疵。本发明还提供实现所述产品瑕疵检测方法的计算机装置。本发明可在实现产品质量检测的同时有效提升产品的检测精度。
Description
技术领域
本发明涉及一种产品质量管控技术领域,尤其涉及一种产品瑕疵检测方法及计算机装置。
背景技术
对金属表面瑕疵进行检测时,通常直接使用整张重建图像与整张输入图像计算重建误差来判断是否为瑕疵影像,其效果不佳,使得瑕疵检测结果精度不高。
发明内容
鉴于以上内容,有必要提供一种产品瑕疵检测方法及计算机装置,可在实现产品质量检测的同时有效提升产品的检测精度。
所述产品瑕疵检测方法,包括:获取产品的测试影像;将所述测试影像切割为N个测试区块;将所述N个测试区块分别输入至自动编码器获得N个重构区块;计算所述N个测试区块中的每个测试区块与对应的重构区块之间的均方误差,并将计算得到的均方误差与该每个测试区块建立关联;及基于所述N个测试区块中的每个测试区块所对应的均方误差确定所述产品是否存在瑕疵。
优选地,所述基于所述N个测试区块中的每个测试区块所对应的均方误差确定所述产品是否存在瑕疵包括:确定所述N个测试区块中的每个测试区块所对应的均方误差是否大于预设值;当所述N个测试区块中的任意一个测试区块所对应的均方误差大于所述预设值时,确定所述产品存在瑕疵;及当所述N个测试区块中的每个测试区块所对应的均方误差都小于或等于所述预设值时,确定所述产品不存在瑕疵。
优选地,该方法还包括:基于所述产品的多张瑕疵图像获取所述产品的N个瑕疵形态,包括:对所述多张瑕疵图像中的每张瑕疵图像的瑕疵形态的形状以及大小进行标注;将作了标注后的所述多张瑕疵图像作为瑕疵样本集;使用聚类方法从所述瑕疵样本集中获得所述N个瑕疵形态。
优选地,所述将所述测试影像切割为N个测试区块包括:参照所述N个瑕疵形态,将所述测试影像切割为所述N个测试区块。
优选地,该方法还包括:在将所述N个测试区块输入至所述自动编码器之前,还对所述自动编码器进行训练,包括:收集所述产品的多张无瑕疵图像;参照所述N个瑕疵形态,将所述多张无瑕疵图像中的每张无瑕疵图像切割为N个无瑕疵区块;通过将每张无瑕疵图像所对应的所述N个无瑕疵区块作为一个无瑕疵样本,获得多个无瑕疵样本,并将该多个无瑕疵样本作为一个瑕疵样本集;及利用所述瑕疵样本集训练所述自动编码器。
所述计算机装置包括:存储器;处理器;以及多个模块,所述多个模块被存储在所述存储器中并由所述处理器执行,所述多个模块包括:获取模块,用于获取产品的测试影像;执行模块,用于将所述测试影像切割为N个测试区块;所述执行模块,还用于将所述N个测试区块分别输入至自动编码器获得N个重构区块;所述执行模块,还用于计算所述N个测试区块中的每个测试区块与对应的重构区块之间的均方误差,并将计算得到的均方误差与该每个测试区块建立关联;及所述执行模块,还用于基于所述N个测试区块中的每个测试区块所对应的均方误差确定所述产品是否存在瑕疵。
优选地,所述基于所述N个测试区块中的每个测试区块所对应的均方误差确定所述产品是否存在瑕疵包括:确定所述N个测试区块中的每个测试区块所对应的均方误差是否大于预设值;当所述N个测试区块中的任意一个测试区块所对应的均方误差大于所述预设值时,确定所述产品存在瑕疵;及当所述N个测试区块中的每个测试区块所对应的均方误差都小于或等于所述预设值时,确定所述产品不存在瑕疵。
优选地,所述执行模块,还用于基于所述产品的多张瑕疵图像获取所述产品的N个瑕疵形态,包括:对所述多张瑕疵图像中的每张瑕疵图像的瑕疵形态的形状以及大小进行标注;将作了标注后的所述多张瑕疵图像作为瑕疵样本集;使用聚类方法从所述瑕疵样本集中获得所述N个瑕疵形态。
优选地,所述将所述测试影像切割为N个测试区块包括:参照所述N个瑕疵形态,将所述测试影像切割为所述N个测试区块。
优选地,优选地,所述执行模块,还用于在将所述N个测试区块输入至所述自动编码器之前,对所述自动编码器进行训练,包括:收集所述产品的多张无瑕疵图像;参照所述N个瑕疵形态,将所述多张无瑕疵图像中的每张无瑕疵图像切割为N个无瑕疵区块;通过将每张无瑕疵图像所对应的所述N个无瑕疵区块作为一个无瑕疵样本,获得多个无瑕疵样本,并将该多个无瑕疵样本作为一个瑕疵样本集;及利用所述瑕疵样本集训练所述自动编码器。
相较于现有技术,所述产品瑕疵检测方法及计算机装置,可在实现产品质量检测的同时有效提升产品的检测精度。
附图说明
图1是本发明较佳实施例的计算机装置的架构图。
图2是本发明较佳实施例的产品瑕疵检测系统的功能模块图。
图3是本发明较佳实施例的产品瑕疵检测方法的流程图。
主要元件符号说明
计算机装置 | 3 |
存储器 | 31 |
处理器 | 32 |
显示屏 | 33 |
产品瑕疵检测系统 | 30 |
获取模块 | 301 |
执行模块 | 302 |
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施例对本发明进行详细描述。需要说明的是,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
参阅图1所示,为本发明较佳实施例提供的计算机装置的架构图。
本实施例中,计算机装置3包括互相之间电气连接的存储器31、至少一个处理器32、显示屏33。
本领域技术人员应该了解,图1示出的计算机装置3的结构并不构成本发明实施例的限定,所述计算机装置3还可以包括比图1更多或更少的其他硬件或者软件,或者不同的部件布置。
需要说明的是,所述计算机装置3仅为举例,其他现有的或今后可能出现的计算机装置如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。
在一些实施例中,所述存储器31可以用于存储计算机程序的程序代码和各种数据。例如,所述存储器31可以用于存储安装在所述计算机装置3中的产品瑕疵检测系统30,并在计算机装置3的运行过程中实现高速、自动地完成程序或数据的存取。所述存储器31可以是包括只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-OnlyMemory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子擦除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者任何其他能够用于携带或存储数据的非易失性的计算机可读的存储介质。
在一些实施例中,所述至少一个处理器32可以由集成电路组成。例如,可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述至少一个处理器32是所述计算机装置3的控制核心(Control Unit),利用各种接口和线路连接整个计算机装置3的各个部件,通过执行存储在所述存储器31内的程序或者模块或者指令,以及调用存储在所述存储器31内的数据,以执行计算机装置3的各种功能和处理数据,例如,对产品瑕疵进行检测的功能(具体细节参后面对图3的介绍)。
在本实施例中,产品瑕疵检测系统30可以包括一个或多个模块,所述一个或多个模块存储在所述存储器31中,并由至少一个或多个处理器(本实施例为处理器32)执行,以实现对产品瑕疵进行检测的功能(具体细节参后面对图3的介绍)。
在本实施例中,所述产品瑕疵检测系统30根据其所执行的功能,可以被划分为多个模块。参阅图2所示,所述多个模块包括获取模块301、执行模块302。本发明所称的模块是指一种能够被至少一个处理器(例如处理器32)所执行并且能够完成固定功能的一系列计算机可读的指令段,其存储在存储器(例如计算机装置3的存储器31)中。在本实施例中,关于各模块的功能将在后续结合图3详述。
本实施例中,以软件功能模块的形式实现的集成的单元,可以存储在一个非易失性可读取存储介质中。上述软件功能模块包括一个或多个计算机可读指令,所述计算机装置3或一个处理器(processor)通过执行所述一个或多个计算机可读指令实现本发明各个实施例的方法的部分,例如图3所示的对产品瑕疵进行检测的方法。
在进一步的实施例中,结合图2,所述至少一个处理器32可执行所述计算机装置3中所安装的各类应用程序(如所述的产品瑕疵检测系统30)、程序代码等。
在进一步的实施例中,所述存储器31中存储有计算机程序的程序代码,且所述至少一个处理器32可调用所述存储器31中存储的程序代码以执行相关的功能。例如,图2中所述产品瑕疵检测系统30的各个模块是存储在所述存储器31中的程序代码,并由所述至少一个处理器32所执行,从而实现所述各个模块的功能以达到对产品瑕疵进行检测的目的(详见下文中对图3的描述)。
在本发明的一个实施例中,所述存储器31存储一个或多个计算机可读指令,所述一个或多个计算机可读指令被所述至少一个处理器32所执行以实现对产品瑕疵进行检测的目的。具体地,所述至少一个处理器32对上述计算机可读指令的具体实现方法详见下文中对图3的描述。
图3是本发明较佳实施例提供的产品瑕疵检测方法的流程图。
在本实施例中,所述产品瑕疵检测方法可以应用于计算机装置3中,对于需要进行产品瑕疵检测的计算机装置3,可以直接在该计算机装置3上集成本发明的方法所提供的用于产品瑕疵检测的功能,或者以软件开发工具包(Software Development Kit,SDK)的形式运行在所述计算机装置3上。
如图3所示,所述产品瑕疵检测方法具体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
步骤S1、获取模块301获取待检测的产品的影像(为清楚简单说明本发明,以下将待检测的产品的影像的称为“测试影像”)。
所述待检测的产品也即是需要进行瑕疵检测的产品。例如,可以为机箱、手机壳、手机保护套,或者任何其他适合的产品。
在一个实施例中,所述获取模块301可以利用摄像头(图中未示出)对所述待检测的产品进行拍摄,获得该待检测的产品的测试影像。当然,该待检测的产品的测试影像也可以预先存储在存储器31中,所述获取模块301可以直接从该存储器31中获取所述产品的测试影像。
步骤S2、执行模块302将所述测试影像切割为N个测试区块。
需要说明的是,这里的“测试区块”是指将所述测试影像切割后所获得的影像区块。
在一个实施例中,所述执行模块302参照预先确定的所述产品的N个瑕疵形态,将所述测试影像切割为所述N个测试区块。
在一个实施例中,所述N个瑕疵形态是指N个形状及/或大小各不相同的瑕疵样式。所述参照预先确定的所述产品的N个瑕疵形态,将所述测试影像切割为所述N个测试区块包括:
根据所述N个瑕疵形态中的每个瑕疵形态所对应的形状及大小将所述测试影像切割所述N个测试区块。
在一个实施例中,所述根据所述N个瑕疵形态中的每个瑕疵形态所对应的形状及大小将所述测试影像切割为所述N个测试区块包括:
将所述测试影像复制为N张影像;
根据所述N个瑕疵形态,从所述N张影像中的每张影像对应切割出与其中一个瑕疵形态所对应的测试区块,由此获得所述N个测试区块。
举例而言,假设预先确定了三个瑕疵形态,该三个瑕疵形态分别为具有第一长度和第一宽度的正方形,具有第二长度和第二宽度的长方形,具有第三长度和第三宽度的长方形;则将所述测试影像复制为三张测试影像,分别是第一影像、第二影像以及第三影像;那么可以从所述第一影像中切割出具有所有第一长度和第一宽度的正方形的测试区块;从所述第二影像中切割出具有所有第二长度和第二宽度的长方形的测试区块;以及从所述第三影像中切割出具有所有第三长度和第三宽度的长方形的测试区块,由此获得所述测试影像所对应的三个测试区块。
在一个实施例中,所述执行模块302可以基于所述产品的多张瑕疵图像来确定所述产品的N个瑕疵形态。
具体地,所述基于所述产品的多张瑕疵图像来确定所述产品的N个瑕疵形态包括:对所述多张瑕疵图像中的每张瑕疵图像的瑕疵形态的形状以及大小进行标注;将作了标注后的所述多张瑕疵图像作为瑕疵样本集;使用聚类方法从所述瑕疵样本集中获得所述N个瑕疵形态。
本实施例中,所述聚类方法可以为k均值聚类算法(k-means clusteringalgorithm)。那么本实施例中,k的值即等于N。
步骤S3、执行模块302将所述N个测试区块分别输入至自动编码器(Autoencoder,AE)获得N个重构区块。
需要说明的是,这里的“重构区块”是指所述自动编码器基于所述测试区块所重构获得的影像区块。
需要说明的是,所述自动编码器是一种利用反向传播算法使得输出值等于输入值的神经网络。通常一个自编码器包括编码器(Encoder)和解码器(Decoder)。其中,编码器可以将输入压缩为潜在空间表征,解码器将潜在空间表征重构为输出。
本实施例中,执行模块302在将所述N个测试区块输入至所述自动编码器之前,还对所述自动编码器进行训练。即所述N个重构区块是由训练后的所述自动编码器基于所述N个测试区块重构获得。
具体地,所述对所述自动编码器进行训练包括:收集所述产品的多张无瑕疵图像;参照所述N个瑕疵形态,将所述多张无瑕疵图像中的每张无瑕疵图像切割为N个无瑕疵区块;将每张无瑕疵图像所对应的所述N个无瑕疵区块作为一个无瑕疵样本,由此获得多个无瑕疵样本,将该多个无瑕疵样本作为一个瑕疵样本集;及利用所述瑕疵样本集训练所述自动编码器。
本实施例中,所述参照所述N个瑕疵形态,将所述多张无瑕疵图像中的每张无瑕疵图像切割为N个无瑕疵区块包括:根据所述N个瑕疵形态中的每个瑕疵形态所对应的形状及大小,从每张无瑕疵图像中切割出N个无瑕疵区块。类似地,可以采用将所述测试影像切割为所述N个测试区块方法,将每张无瑕疵图像复制为N张图像;根据所述N个瑕疵形态,从所复制的N张图像中的每张图像对应切割出与其中一个瑕疵形态所对应的区块,由此获得每张无瑕疵图所对应的N个无瑕疵区块。
本实施例中,可以利用每个无瑕疵区块与对应的重构区块之间的均方误差作为损失函数来训练自动编码器。
步骤S4、执行模块302计算所述N个测试区块中的每个测试区块与对应的重构区块之间的均方误差(mean-square error,MSE),并将计算得到的均方误差与该每个测试区块建立关联。
步骤S5、执行模块302基于所述N个测试区块中的每个测试区块所对应的均方误差确定所述产品是否存在瑕疵。
本实施例中,所述基于所述N个测试区块中的每个测试区块所对应的均方误差确定所述产品是否存在瑕疵包括:
确定所述N个测试区块中的每个测试区块所对应的均方误差是否大于预设值;
当所述N个测试区块中的任意一个测试区块所对应的均方误差大于所述预设值时,确定所述产品存在瑕疵;及
当所述N个测试区块中的每个测试区块所对应的均方误差都小于或等于所述预设值时,确定所述产品不存在瑕疵。
本实施例中,所述预设值可以为经验值。
本实施例中,由于参照了瑕疵型态来对测试影像进行切割,提高了瑕疵判断的准确度。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照以上较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (10)
1.一种产品瑕疵检测方法,其特征在于,该方法包括:
获取产品的测试影像;
将所述测试影像切割为N个测试区块;
将所述N个测试区块分别输入至自动编码器获得N个重构区块;
计算所述N个测试区块中的每个测试区块与对应的重构区块之间的均方误差,并将计算得到的均方误差与该每个测试区块建立关联;及
基于所述N个测试区块中的每个测试区块所对应的均方误差确定所述产品是否存在瑕疵。
2.如权利要求1所述的产品瑕疵检测方法,其特征在于,所述基于所述N个测试区块中的每个测试区块所对应的均方误差确定所述产品是否存在瑕疵包括:
确定所述N个测试区块中的每个测试区块所对应的均方误差是否大于预设值;
当所述N个测试区块中的任意一个测试区块所对应的均方误差大于所述预设值时,确定所述产品存在瑕疵;及
当所述N个测试区块中的每个测试区块所对应的均方误差都小于或等于所述预设值时,确定所述产品不存在瑕疵。
3.如权利要求1所述的产品瑕疵检测方法,其特征在于,该方法还包括:基于所述产品的多张瑕疵图像获取所述产品的N个瑕疵形态,包括:
对所述多张瑕疵图像中的每张瑕疵图像的瑕疵形态的形状以及大小进行标注;
将作了标注后的所述多张瑕疵图像作为瑕疵样本集;
使用聚类方法从所述瑕疵样本集中获得所述N个瑕疵形态。
4.如权利要求3所述的产品瑕疵检测方法,其特征在于,所述将所述测试影像切割为N个测试区块包括:
参照所述N个瑕疵形态,将所述测试影像切割为所述N个测试区块。
5.如权利要求4所述的产品瑕疵检测方法,其特征在于,该方法还包括:
在将所述N个测试区块输入至所述自动编码器之前,还对所述自动编码器进行训练,包括:
收集所述产品的多张无瑕疵图像;
参照所述N个瑕疵形态,将所述多张无瑕疵图像中的每张无瑕疵图像切割为N个无瑕疵区块;
通过将每张无瑕疵图像所对应的所述N个无瑕疵区块作为一个无瑕疵样本,获得多个无瑕疵样本,并将该多个无瑕疵样本作为一个瑕疵样本集;及
利用所述瑕疵样本集训练所述自动编码器。
6.一种计算机装置,其特征在于,该计算机装置包括:
存储器;
处理器;以及
多个模块,所述多个模块被存储在所述存储器中并由所述处理器执行,所述多个模块包括:
获取模块,用于获取产品的测试影像;
执行模块,用于将所述测试影像切割为N个测试区块;
所述执行模块,还用于将所述N个测试区块分别输入至自动编码器获得N个重构区块;
所述执行模块,还用于计算所述N个测试区块中的每个测试区块与对应的重构区块之间的均方误差,并将计算得到的均方误差与该每个测试区块建立关联;及
所述执行模块,还用于基于所述N个测试区块中的每个测试区块所对应的均方误差确定所述产品是否存在瑕疵。
7.如权利要求6所述的计算机装置,其特征在于,所述基于所述N个测试区块中的每个测试区块所对应的均方误差确定所述产品是否存在瑕疵包括:
确定所述N个测试区块中的每个测试区块所对应的均方误差是否大于预设值;
当所述N个测试区块中的任意一个测试区块所对应的均方误差大于所述预设值时,确定所述产品存在瑕疵;及
当所述N个测试区块中的每个测试区块所对应的均方误差都小于或等于所述预设值时,确定所述产品不存在瑕疵。
8.如权利要求6所述的计算机装置,其特征在于,所述执行模块,还用于基于所述产品的多张瑕疵图像获取所述产品的N个瑕疵形态,包括:
对所述多张瑕疵图像中的每张瑕疵图像的瑕疵形态的形状以及大小进行标注;
将作了标注后的所述多张瑕疵图像作为瑕疵样本集;
使用聚类方法从所述瑕疵样本集中获得所述N个瑕疵形态。
9.如权利要求8所述的计算机装置,其特征在于,所述将所述测试影像切割为N个测试区块包括:
参照所述N个瑕疵形态,将所述测试影像切割为所述N个测试区块。
10.如权利要求9所述的计算机装置,其特征在于,所述执行模块还用于在将所述N个测试区块输入至所述自动编码器之前,对所述自动编码器进行训练,包括:
收集所述产品的多张无瑕疵图像;
参照所述N个瑕疵形态,将所述多张无瑕疵图像中的每张无瑕疵图像切割为N个无瑕疵区块;
通过将每张无瑕疵图像所对应的所述N个无瑕疵区块作为一个无瑕疵样本,获得多个无瑕疵样本,并将该多个无瑕疵样本作为一个瑕疵样本集;及
利用所述瑕疵样本集训练所述自动编码器。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011599676.9A CN114757869A (zh) | 2020-12-29 | 2020-12-29 | 产品瑕疵检测方法及计算机装置 |
US17/560,663 US20220207714A1 (en) | 2020-12-29 | 2021-12-23 | Product defect detection method, computing device, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011599676.9A CN114757869A (zh) | 2020-12-29 | 2020-12-29 | 产品瑕疵检测方法及计算机装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114757869A true CN114757869A (zh) | 2022-07-15 |
Family
ID=82117285
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011599676.9A Pending CN114757869A (zh) | 2020-12-29 | 2020-12-29 | 产品瑕疵检测方法及计算机装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20220207714A1 (zh) |
CN (1) | CN114757869A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113971650A (zh) * | 2020-07-22 | 2022-01-25 | 富泰华工业(深圳)有限公司 | 产品瑕疵检测方法、计算机装置及存储介质 |
CN117491391B (zh) * | 2023-12-29 | 2024-03-15 | 登景(天津)科技有限公司 | 基于芯片计算的玻璃基板光三维健康检测方法及设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020031984A1 (ja) * | 2018-08-08 | 2020-02-13 | Blue Tag株式会社 | 部品の検査方法及び検査システム |
US10803646B1 (en) * | 2019-08-19 | 2020-10-13 | Neon Evolution Inc. | Methods and systems for image and voice processing |
-
2020
- 2020-12-29 CN CN202011599676.9A patent/CN114757869A/zh active Pending
-
2021
- 2021-12-23 US US17/560,663 patent/US20220207714A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220207714A1 (en) | 2022-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7000627B2 (ja) | 標的細胞標識方法、装置、記憶媒体及び端末デバイス | |
CN110111334B (zh) | 一种裂缝分割方法、装置、电子设备及存储介质 | |
CN108805180B (zh) | 目标对象的检测方法及装置 | |
CN114757869A (zh) | 产品瑕疵检测方法及计算机装置 | |
US20230214989A1 (en) | Defect detection method, electronic device and readable storage medium | |
CN110969600A (zh) | 一种产品缺陷检测方法、装置、电子设备及存储介质 | |
CN112634203B (zh) | 图像检测方法、电子设备及计算机可读存储介质 | |
TWI748828B (zh) | 產品瑕疵檢測方法、電腦裝置及儲存媒體 | |
CN111476759B (zh) | 一种屏幕表面检测方法、装置、终端及存储介质 | |
CN117392042A (zh) | 缺陷检测方法、缺陷检测设备及存储介质 | |
CN113205511B (zh) | 基于深层神经网络的电子元器件批量信息检测方法及系统 | |
CN116385331A (zh) | 瑕疵检测方法、系统、电子设备及介质 | |
CN114757868A (zh) | 产品瑕疵检测方法、计算机装置及存储介质 | |
CN116137061B (zh) | 数量统计模型的训练方法、装置、电子设备及存储介质 | |
CN113971650A (zh) | 产品瑕疵检测方法、计算机装置及存储介质 | |
CN114663334A (zh) | 瑕疵检测方法、装置、电子设备及存储介质 | |
CN112001891A (zh) | 一种金手指缺陷检测方法、系统、终端及存储介质 | |
CN116596903A (zh) | 缺陷识别方法、装置、电子设备及可读存储介质 | |
TWI808595B (zh) | 分析缺陷的方法 | |
CN115601341A (zh) | Pcba板缺陷检测方法、系统、设备、介质及产品 | |
CN111709951B (zh) | 目标检测网络训练方法及系统及网络及装置及介质 | |
CN111818557B (zh) | 网络覆盖问题识别方法、装置及系统 | |
CN113658096A (zh) | 板材异常检测方法及装置 | |
TW202225674A (zh) | 產品瑕疵檢測方法及電腦裝置 | |
CN113838053B (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 |