CN112581462A - 工业产品的外观缺陷检测方法、装置及存储介质 - Google Patents
工业产品的外观缺陷检测方法、装置及存储介质 Download PDFInfo
- Publication number
- CN112581462A CN112581462A CN202011560774.1A CN202011560774A CN112581462A CN 112581462 A CN112581462 A CN 112581462A CN 202011560774 A CN202011560774 A CN 202011560774A CN 112581462 A CN112581462 A CN 112581462A
- Authority
- CN
- China
- Prior art keywords
- appearance
- sample
- training
- defect detection
- appearance defect
- 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
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种工业产品的外观缺陷检测方法、装置及存储介质。其中,工业产品的外观缺陷检测方法,包括:获取待检测的工业产品的外观图像;基于外观图像,利用预先训练的外观缺陷检测模型,对工业产品进行外观缺陷检测,其中通过以下操作对外观缺陷检测模型进行训练:获取存在外观缺陷的样本工业产品的多个样本图像;采用预设的数据变换规则,对多个样本图像进行数据增强,生成第一样本图像集合;基于第一样本图像集合,利用预设的DCGAN模型,生成第二样本图像集合;以及利用第二样本图像集合,训练外观缺陷检测模型。
Description
技术领域
本申请涉及工业外观检测技术领域,特别是涉及一种工业产品的外观缺陷检测方法、装置及存储介质。
背景技术
在工业检测领域,外观检测是一项重要内容,外观的好坏在一定程度上影响产品的质量,现阶段的外观检测自动化程度低,大部分依靠人工检测,即使在少量利用图像处理做检测的自动化设备中也存在一定缺陷。
现阶段的工业检测主要存在以下问题:
1、人工检测成本高、效率低、检测精度低并且检测结果不稳定。
2、现有基于深度学习的智能检测模型,在进行模型训练时需要大量样本,但是工业产品的缺陷样本数量往往很少,在样本不足或样本较少的情况下,模型训练无法成功,导致后续的检测成功率极低。
3、基于深度学习的智能检测,直接使用在工业检测上时,由于检测背景单一,检测特征提取不充分,无法准确识别,导致检测精度低。
发明内容
本公开的实施例提供了一种工业产品的外观缺陷检测方法、装置及存储介质,以至少解决现有技术中存在的上述技术问题。
根据本公开实施例的一个方面,提供了一种工业产品的外观缺陷检测方法,包括:获取待检测的工业产品的外观图像;基于外观图像,利用预先训练的外观缺陷检测模型,对工业产品进行外观缺陷检测,其中通过以下操作对外观缺陷检测模型进行训练:获取存在外观缺陷的样本工业产品的多个样本图像;采用预设的数据变换规则,对多个样本图像进行数据增强,生成第一样本图像集合;基于第一样本图像集合,利用预设的DCGAN模型,生成第二样本图像集合;以及利用第二样本图像集合,训练外观缺陷检测模型。
根据本公开实施例的另一个方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时由处理器执行以上任意一项所述的方法。
根据本公开实施例的另一个方面,还提供了一种工业产品的外观缺陷检测装置,包括:外观图像获取模块,用于获取待检测的工业产品的外观图像;外观缺陷检测模块,用于基于外观图像,利用预先训练的外观缺陷检测模型,对工业产品进行外观缺陷检测,其中外观缺陷检测装置还包括训练模块,用于通过以下子模块对外观缺陷检测模型进行训练:样本图像获取子模块,用于获取存在外观缺陷的样本工业产品的多个样本图像;第一生成子模块,用于采用预设的数据变换规则,对多个样本图像进行数据增强,生成第一样本图像集合;第二生成子模块,用于基于第一样本图像集合,利用预设的DCGAN模型,生成第二样本图像集合;以及训练子模块,用于利用第二样本图像集合,训练外观缺陷检测模型。
根据本公开实施例的另一个方面,还提供了一种工业产品的外观缺陷检测装置,包括:处理器;以及存储器,与处理器连接,用于为所处理器提供处理以下处理步骤的指令:获取待检测的工业产品的外观图像;基于外观图像,利用预先训练的外观缺陷检测模型,对工业产品进行外观缺陷检测,其中通过以下操作对外观缺陷检测模型进行训练:获取存在外观缺陷的样本工业产品的多个样本图像;采用预设的数据变换规则,对多个样本图像进行数据增强,生成第一样本图像集合;基于第一样本图像集合,利用预设的DCGAN模型,生成第二样本图像集合;以及利用第二样本图像集合,训练外观缺陷检测模型。
在本公开实施例中,采用有监督的手动数据扩增方法,增多样本数据,解决了初始样本极少的情况下,无法使用生成对抗网络(DCGAN模型)来增加样本数量的问题。采用DCGAN模型增加了外观缺陷样本的数量,解决了外观缺陷检测模型训练样本不足的问题,能够在初始样本较少的情况下增多样本数量,为外观缺陷检测模型训练提供了充足样本集。本发明在视觉外观检测领域,利用SSD训练模型,实现了对工业产品复杂外观的高速、高精度检测,替代了低效率、低准确率的人工检测。并且,本发明利用穹顶式光源并通过线阵工业相机来拍摄多姿态的样本工业产品,得到易于外观缺陷检测模型训练使用的样本图像,然后利用训练好的外观缺陷检测模型的准确识别,能够高精度的检测工业产品的外观缺陷,提高检测精度。
附图说明
此处所说明的附图用来提供对本公开的进一步理解,构成本申请的一部分,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。在附图中:
图1是用于实现根据本公开实施例1所述的方法的计算设备的硬件结构框图;
图2是根据本公开实施例1的第一个方面所述的工业产品的外观缺陷检测方法的流程示意图;
图3是根据本公开实施例1的第一个方面所述的对所述外观缺陷检测模型进行训练的流程示意图;
图4是根据本公开实施例1的第一个方面所述的SSD深度学习网络的结构示意图;
图5是根据本公开实施例1的第一个方面所述的DCGAN模型的结构示意图;
图6是根据本公开实施例2所述的工业产品的外观缺陷检测装置的示意图;以及
图7是根据本公开实施例3所述的工业产品的外观缺陷检测装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本公开的技术方案,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本公开一部分的实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本公开保护的范围。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本实施例,提供了一种工业产品的外观缺陷检测方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本实施例所提供的方法实施例可以在服务器或者类似的计算设备中执行。图1示出了一种用于实现工业产品的外观缺陷检测方法的计算设备的硬件结构框图。如图1所示,计算设备可以包括一个或多个处理器(处理器可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器、以及用于通信功能的传输装置。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算设备还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
应当注意到的是上述一个或多个处理器和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算设备中的其他元件中的任意一个内。如本公开实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器可用于存储应用软件的软件程序以及模块,如本公开实施例中的工业产品的外观缺陷检测方法对应的程序指令/数据存储装置,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的应用程序的工业产品的外观缺陷检测方法。存储器可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至计算设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算设备的通信供应商提供的无线网络。在一个实例中,传输装置包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算设备的用户界面进行交互。
此处需要说明的是,在一些可选实施例中,上述图1所示的计算设备可以包括硬件元件(包括电路)、软件元件(包括存储在计算机可读介质上的计算机代码)、或硬件元件和软件元件两者的结合。应当指出的是,图1仅为特定具体实例的一个实例,并且旨在示出可存在于上述计算设备中的部件的类型。
在上述运行环境下,根据本实施例的第一个方面,提供了一种工业产品的外观缺陷检测方法。图2示出了该方法的流程示意图,参考图2所示,该方法包括:
S202:获取待检测的工业产品的外观图像;以及
S204:基于外观图像,利用预先训练的外观缺陷检测模型,对工业产品进行外观缺陷检测。
其中,参照图3所示,本实施例所提供的工业产品的外观缺陷检测方法可以通过以下操作对外观缺陷检测模型进行训练:
S302:获取存在外观缺陷的样本工业产品的多个样本图像;
S304:采用预设的数据变换规则,对多个样本图像进行数据增强,生成第一样本图像集合;
S306:基于第一样本图像集合,利用预设的DCGAN模型,生成第二样本图像集合;以及
S308:利用第二样本图像集合,训练外观缺陷检测模型。
正如上述背景技术所述的,现阶段的工业检测过程中,通过人工检测成本高、效率低、检测精度低并且检测结果不稳定。基于深度学习的智能检测模型,在进行模型训练时需要大量样本,但是工业产品的缺陷样本数量往往很少,在样本不足或样本较少的情况下,模型训练无法成功,导致后续的检测成功率极低。
有鉴于此,参照图2所示,本实施例首先获取待检测的工业产品的外观图像。其中,待检测的工业产品例如为石墨双极板,其外观图像可以为石墨双极板的二维平面图像,本实施例可以通过实时从生产线上获得石墨双极板的外观图像。然后基于外观图像,利用预先训练的外观缺陷检测模型,对工业产品(例如石墨双极板)进行外观缺陷检测。其中,外观缺陷检测模型例如为SSD深度学习网络模型,也可以为其他能够进行外观缺陷检测的网络模型。由于所使用的外观缺陷检测模型为预先训练好的,因此可以利用外观缺陷检测模型的准确识别,能够高精度地检测工业产品的外观缺陷,提高检测精度,从而实现了对石墨双极板这类外观复杂的工业产品进行高速、高精度检测外观缺陷,并且检测成本低,替代了高成本、低效率、低检测精度以及检测结果不稳定的人工检测。
进一步地,参照图3所示,考虑到工业产品的缺陷样本数量往往很少,本实施例在对外观缺陷检测模型进行训练的过程中,首先获取存在外观缺陷的样本工业产品的多个样本图像。其中,获取到的多个样本图像的数量稀少,即获取到的初始样本极少,然而用于训练外观缺陷检测模型的样本数量通常为获取到的初始样本数量的几十倍或者上百倍甚至更多,导致获取到的初始外本图像无法为外观缺陷检测模型的训练提供充足样本集。为了解决这一问题,本实施例采用预设的数据变换规则,对多个样本图像进行数据增强,生成第一样本图像集合。其中,预设的数据变换规则例如为有监督的手动数据扩增操作,例如为对样本图像进行伸缩、拉伸、平移和反转等操作。从而有效避免了初始样本极少的情况下,无法使用DCGAN模型(DCGAN生成对抗网络)来增加样本数量的问题。在采用预设的数据变换规则将样本图像扩充到一定数量后,将所生成的第一样本图像集合输入预设的DCGAN模型,通过DCGAN模型来进一步增加样本图像数量,生成样本数量充足的第二样本图像集合,为接下来训练外观缺陷检测模型提供了充足的训练数据。最后利用第二样本图像集合,训练外观缺陷检测模型。
从而,通过上述方式,本实施例在获取待检测的工业产品的外观图像后,利用预先训练好的能够精准识别的外观缺陷检测模型,高精度地检测工业产品的外观缺陷,提高检测精度,从而实现了对石墨双极板这类外观复杂的工业产品进行高速、高精度检测外观缺陷,并且检测成本低的,替代了高成本、低效率、低检测精度以及检测结果不稳定的人工检测。从而解决了现有技术中存在的现阶段的通过人工进行工业产品外观缺陷的检测成本高、效率低、检测精度低并且检测结果不稳定的技术问题。并且,本实施例采用有监督的手动数据扩增方法,增多样本数据,解决了初始样本极少的情况下,无法使用生成对抗网络(DCGAN模型)来增加样本数量的问题。采用DCGAN模型进一步增加了外观缺陷样本的数量,解决了外观缺陷检测模型训练样本不足的问题,能够在初始样本较少的情况下增多样本数量,为外观缺陷检测模型训练提供了充足样本集。从而解决了现有技术中存在的现阶段的基于深度学习的智能检测模型,在进行模型训练时需要大量样本,但是工业产品的缺陷样本数量往往很少,在样本不足或样本较少的情况下,模型训练无法成功,导致后续的检测成功率极低的技术问题。
可选地,获取存在外观缺陷的样本工业产品的多个样本图像的操作,包括:获取存在外观缺陷的样本工业产品的M个样本图像,其中M大于等于50,样本图像利用穹顶式光源并通过线阵工业相机拍摄固定在检测工装上的存在外观缺陷的样本工业产品获得,并且样本图像分别为多个不同角度或位置拍摄的图像,具有至少一个存在同一外观缺陷的样本图像;采用预设的数据变换规则,对多个样本图像进行数据增强,生成第一样本图像集合的操作,包括:对M个样本图像进行几何变换操作和/或颜色变换操作,生成由KM个样本图像组成的第一样本图像集合,其中K为数据增强系数;以及基于第一样本图像集合,利用预设的DCGAN模型,生成第二样本图像集合的操作,包括:将KM个样本图像输入DCGAN模型,输出由满足神经网络使用条件的预定数量的样本图像组成的第二样本图像集合。
由于可用训练的样本图像过于稀少,甚至不足以支撑生成对抗网络的训练。因此,我们需要手动的先对样本图像进行手动的扩充后,选用DCGAN模型(生成对抗网络)来进一步增加样本数量,从而达到数据增强的目的。具体地,在对外观缺陷检测模型进行训练的过程中,首先获取存在外观缺陷的样本工业产品的M个样本图像。其中,M大于等于50。本实施例采用线阵工业相机和穹顶式光源对固定在检测工装上的存在外观缺陷的样本工业产品进行成像,获得多个样本工业产品的包含外观缺陷的样本图像。其中,可以从多个不同角度或位置进行样本图像的拍摄,具有至少一个存在同一外观缺陷的样本图像,即包含同一瑕疵的样本图像可能有多个。对于获得的存在外观缺陷的M个样本图像(例如,50张样本图像),首先几何变换操作和/或颜色变换操作等数据增强操作,生成数据增强后的KM个样本图像(例如,200张样本图像,其中K为数据增强系数),并输入DCGAN模型(生成对抗网络)中进行增强后,输出由满足神经网络使用条件的预定数量的样本图像组成的第二样本图像集合。其中,第二样本图像集合例如包含3000张样本图像。从而,本实施例经过上述二重数据增加的步骤(几何变换操作和/或颜色变换操作、生成对抗网络),获得数量远大于M的样本图像,满足神经网络训练使用条件。
可选地,对M个样本图像进行几何变换操作,包括:对M个样本图像进行以下所述的至少一项数据增强操作:翻转、旋转、裁剪、变形和缩放;以及对M个样本图像进行颜色变换操作,包括:对M个样本图像进行以下所述的至少一项数据增强操作:增加高斯噪声、模糊、颜色变换、擦除和填充。
具体地,数据增强也叫数据扩增,意思是在没有实质性的增加数据的情况下,让有限的数据产生等价于更多数据的价值。数据增强可以分为有监督的数据增强和无监督的数据增强方法。其中有监督的数据增强又可以分为单样本数据增强和多样本数据增强方法。手动扩充属于有监督的数据增强方法,而生成对抗网络属于无监督的数据增强方法。在本实施例中,首先采用有监督数据增强,即采用预设的数据变换规则,在已有数据的基础上进行数据的扩增,包含单样本数据增强和多样本数据增强。其中单样本又包括几何操作类和颜色变换类。手动扩充主要是单样本数据增强,所谓单样本数据增强,即增强一个样本的时候,全部围绕着该样本本身进行操作,包括几何变换类和颜色变换类等。
其中,几何变换类即对样本图像进行几何变换操作,包括翻转、旋转、裁剪、变形和缩放等各类操作。翻转操作和旋转操作,对于那些对方向不敏感的任务十分常见,如这里的瑕疵。瑕疵无论正反、镜像还是任何角度都应该被判定成瑕疵。剪裁操作可以将较大的瑕疵分割成两份样本,以及增加处于图像边缘的样本。另外,通过剪裁与融合的手段可以将两个或多个瑕疵融合到一个图片中,作为新的样本,这样也可以有效地对数据进行扩充。缩放操作可以增加样本不同大小的样子作为新样本。
颜色变换类即对样本图像进行颜色变换操作,常见的包括噪声、模糊、颜色变换、擦除和填充等等。由于几何变换类操作没有改变图像本身的内容,它可能是选择了图像的一部分或者对像素进行了重分布。如果要改变图像本身的内容,就属于颜色变换类的数据增强了。基于噪声的数据增强就是在原来的图片的基础上,随机叠加一些噪声,比如高斯噪声。还有随机像素丢失,在面积大小可选定、位置随机的矩形区域上丢弃像素产生黑色矩形块,从而产生一些彩色噪声。颜色变换的另一个重要变换是颜色扰动,就是在某一个颜色空间通过增加或减少某些颜色分量,或者更改颜色通道的顺序。本申请使用了上述两种变化类对稀有的数据进行了初步的数据增强,采用了旋转多个角度,如45°、90°、180°的旋转变换、镜面翻转、剪裁以及缩放等几何变换类,还使用了增加高斯噪声、模糊、颜色变换、擦除和填充等颜色变换类。通过上述方式对获取到的稀少的原始样本数据进行了一定的数据增强,从而让生成对抗网络可以更好的工作。
可选地,利用第二样本图像集合,训练外观缺陷检测模型的操作,包括:训练步骤(1):采用预设的深度学习训练模型,通过前向传播对第二样本图像集合中的各个样本图像进行计算,确定深度学习训练模型中预设多类别的置信度;训练步骤(2):分别将置信度最高的类别确定为各个样本图像中包含的外观缺陷所属的预测类别;训练步骤(3):根据各个样本图像对应的预测类别、预设的训练参数α和预先确定的各个样本图像的实际类型,使用反向传播方法调整深度学习训练模型参数,累计训练回合数s,其中各个样本图像的实际类型通过对各个样本图像进行人工标注得到;训练步骤(4):重复步骤(1)至步骤(3),直到训练回合数达到预设的a次,减小训练参数;以及训练步骤(5):重复步骤(1)至步骤(4),直到训练回合数达到预设的b次。
具体地,在利用第二样本图像集合训练外观缺陷检测模型的操作之前,需要人工对于生成后的所有样本图像(即,第二样本图像集合中的全部样本图像)进行瑕疵图像标注,确定每一样本图像中瑕疵所属类别。其中,瑕疵对应于外观缺陷。然后,根据第二样本图像集合中的全部样本图像、所确定的各个样本图像中瑕疵的类别,进行深度学习网络训练,得到外观缺陷检测模型。其中,外观缺陷检测模型的训练操作包括以下步骤:
(1)采用预设的深度学习训练模型,通过前向传播对于样本图像进行计算,得到深度学习训练模型中预设多类别的置信度;
(2)分析各类的置信度,选择置信度最高的类别作为样本所包含瑕疵的所属类别Z;
(3)根据步骤(2)样本图像所包含瑕疵所属类别Z及其实际所属类别和预设的训练参数α,采用反向传播方法调整深度学习训练模型参数,累计训练回合数s;
(4)重复步骤(1)~步骤(3),直到训练回合数达到预设的a次,减小预设的训练参数,转入步骤(5);
(5)重复步骤(1)~步骤(3),直到训练回合达到预设的b次,从而得到可以应用于工业产品的外观缺陷检测的外观缺陷检测模型。
此外,参照图4所示,具体的置信度选择过程中,对于每个单元的每个先验框,其都输出一套独立的检测值,对应一个边界框,主要分为两个部分。第一部分是各个类别的置信度或者评分,值得注意的是SSD深度学习网络将背景也当做了一个特殊的类别,如果检测目标共有C个类别,SSD深度学习网络其实需要预测C+1个置信度值,其中第一个置信度指的是不含目标或者属于背景的评分。后续当提及C个类别置信度时,请记住里面包含背景那个特殊的类别,即真实的检测类别只有C-1个。在预测过程中,置信度最高的那个类别就是边界框所属的类别,特别地,当第一个置信度值最高时,表示边界框中并不包含目标。第二部分就是边界框的location,包含4个值(Cx,Cy,w,h),分别表示边界框的中心坐标以及宽高。但是真实预测值其实只是边界框相对于先验框的转换值。先验框位置用d=(dcx+dcy+dw+dh)表示,那么边界框的预测值L其实是b相对于d的转换值:
lcx=(bcx-dcx)/dcx,l=(bcy-dcy)/dh
lw=log(bw/dw),lh=log(bh/dh)
习惯上,我们称上面这个过程为边界框的编码(encode),预测时,需要反向这个过程,即进行解码(decode),从预测值L中得到边界框的真实位置b:
bcx=dwlcx+dcx,bcy=dylcu+dcy
bw=dwexp(lw),bh=dhexp(lh)
在SSD深度学习网络的Caffe源码实现中还有trick,那就是设置variance超参数来调整检测值,通过bool参数variance_encoded_in_target来控制两种模式,当其为True时,表示variance被包含在预测值中,就是上面那种情况。但是如果是False,就需要手动设置超参数variance,用来对L的4个值进行放缩,此时边界框需要这样解码:
bcx=dw(var iance[0]*lcx)+dcx,bcy=dy(var iance[0]*lcy)+dcy
bw=dwexp(var iance[2]*lw),bh=dhexp(var iance[3]*lh)
综上所述,对于一个大小(m*n)的特征图,共有mn个单元,每个单元设置的先验框数目记为k,那么每个单元共需要(c+4)k个预测值,所有的单元共需要(c+4)kmn个预测值,由于SSD深度学习网络采用卷积做检测,所以就需要(c+4)k个卷积核完成这个特征图的检测过程。
可选地,获取待检测的工业产品的外观图像的操作,包括:利用穹顶式光源并通过线阵工业相机从多个不同角度和多个不同位置拍摄待检测的工业产品的多个外观图像;以及基于外观图像,利用预先训练的外观缺陷检测模型,对工业产品进行外观缺陷检测的操作,包括:将多个外观图像输入外观缺陷检测模型进行外观缺陷检测,根据外观缺陷检测模型输出的检测结果判定工业产品是否存在外观缺陷,并且在存在外观缺陷的情况下,确定工业产品的缺陷位置和缺陷类型。
具体地,利用穹顶式光源并通过线阵工业相机从多个不同角度和多个不同位置实时拍摄被测工业产品的外观图像,采用上述训练得到的外观缺陷检测模型,对新的外观图像采用深度学习的方法进行检测,识别出图像中的瑕疵类别。在一个优选实施例中,多个角度和位置的外观图像被外观缺陷检测模型识别后,如果其中一个或几个外观图像被识别出瑕疵,即可认为该工业产品为存在瑕疵的产品。
进一步地,将多个外观图像输入外观缺陷检测模型进行外观缺陷检测的操作具体为:首先对外观图像进行卷积,对卷积结果进行池化,对池化结果进行激活,得到外观图像的第1图像特征层。然后,对第1图像特征层进行卷积,对卷积结果进行池化,对池化结果进行激活,得到外观图像的第2图像特征层。依次类推,最后得到第N图像特征层。之后,根据第N图像特征层通过Softmax函数做前向计算得到外观缺陷检测模型中预设的多个类别的置信度,置信度最高的分类则为网络输出的判别结果。
其中外观缺陷检测模型的各层网络原理如下:
3)激活层:Li,j=max(0,Pi,j),j=1~mi,i=1~N,max(0,X)表示对矩阵X中的元素与0进行比较,取较大的元素,此处的激活函数是ReLu。
此外,每一个priorbox经过Jaccard系数计算和真实框的相似度。阈值只有大于0.5的才可以列为候选名单;假设选择出来的是N个匹配度高于百分之五十的框。我们令i表示第i个默认框,j表示第j个真实框,p表示第p个类。那么表示第i个priorbox匹配到第j个ground truthbox,并且这个ground truth box的类别是p,若不匹配的话,则=0。总的目标损失函数(objective loss function)为localization loss(loc)与confidence loss(conf)的加权求和。
关于Loss functions设计:损失函数的设计分为两个部分,定位损失(loc)和置信度损失(conf)。系统总体损失为两者的加权和其表达式为:
SSD算法的目标函数分为两部分:计算相应的default box与目标类别的confidence loss以及相应的location loss(位置回归)。其中N是匹配到GT(GroundTruth)的priorbox数量,如果N=0,则将损失设为0;α参数用于调整confidence loss和location loss之间的比例,选择α=1。
其中i指代搜索框序号,j指代真实框序号,p指代类别序号,p=0表示背景。其中中取1表示第i个prior box匹配到第j个GT box,而这个GT box的类别为p。并且,表示第i个搜索框对应类别p的预测概率。此处有一点需要关注,公式前半部分是正样本(Pos)的损失,即分类为某个类别的损失(不包括背景),后半部分是负样本(Neg)的损失,也就是类别为背景的损失。
location loss(位置回归)是典型的smooth L1 loss:
在本实施例中,待检测的外观图像经过外观缺陷检测模型处理的过程如下所述:
1)输入一张图片后,被resize到300x300的尺寸;
2)conv1,经过两次[3,3]卷积核,输出的特征层为64,输出为(300,300,64),再2X2最大池化,输出net为(150,150,64);
3)conv2,经过两次[3,3]卷积核,输出的特征层为128,输出net为(150,150,128),再2X2最大池化,输出net为(75,75,128);
4)conv3,经过三次[3,3]卷积核,输出的特征层为256,输出net为(75,75,256),再2X2最大池化,输出net为(38,38,256);
5)conv4,经过三次[3,3]卷积核,输出的特征层为512,输出net为(38,38,512),再2X2最大池化,输出net为(19,19,512);
6)conv5,经过三次[3,3]卷积核,输出的特征层为512,输出net为(19,19,512),再2X2最大池化,输出net为(19,19,512);
7)利用卷积代替全连接层,进行了两次[3,3]卷积核,输出的特征层为1024,因此输出的net为(19,19,1024);
8)conv6,经过一次[1,1]卷积核,调整通道数,一次步长为2的[3,3]卷积网络,输出的特征层为512,因此输出的net为(10,10,512);
9)conv7,经过一次[1,1]卷积核,调整通道数,一次步长为2的[3,3]卷积网络,输出的特征层为256,因此输出的net为(5,5,256);
10)conv8,经过一次[1,1]卷积核,调整通道数,一次padding为valid的[3,3]卷积网络,输出的特征层为256,因此输出的net为(3,3,256);
11)conv9,经过一次[1,1]卷积核,调整通道数,一次padding为valid的[3,3]卷积网络,输出的特征层为256,因此输出的net为(1,1,256)。
可选地,DCGAN模型由判别器和生成器构成,并且方法还包括通过以下操作步骤对DCGAN模型进行训练:以训练k次判别器,训练一次生成器的方式,进行DCGAN模型的一次迭代训练;以及基于上述的一次迭代训练,进行多次迭代训练,直至判别器的判别率接近0.5。
DCGAN模型是一种无监督学习模型,它巧妙地利用“对抗”的思想来学习生成式模型,一旦训练完成后可以生成全新的数据样本。DCGAN将GAN的概念扩展到卷积神经网络中,可以生成质量较高的图片样本。DCGAN模型的网络由两个部分构成:G(Generator),即生成器,以及D(Discriminator),判别器,G负责生成图片,它接收一个随机的噪声z,通过该噪声生成图片,将生成的图片记为G(z)。D负责判别一张图片是不是“真实的”。它的输入时x,x代表一张图片,输出D(x)表示x为真实图片的概率,如果为1代表真实图片的概率为100%,而输出为0代表不可能是真实的图片。
参照图5所示,DCGAN模型的原理如下,设用于训练的真实图片数据为x,图片数据的分布为pdata(x)。白噪声为z,其分布为pz(z)。pz(z)是已知的,而pdata(x)是未知的。在理想情况下,G(z)表示生成器产生的图片,其分布应该尽可能接近pdata(x),G将已知分布的z变量映射到了未知分布x变量上。
根据交叉熵损失,可以构造下面的损失函数:
由此可知其目标函数为:
最终的目标是求外面的minG,G的目标是使V最小,达到以假乱真的目的;D(x)表示判别器判断真实图片是否真实的概率,内部嵌套的maxD,则代表D是在G给定的情况下,最大化V,即给定生成器,得到识别能力最好的分辨器。有数学推导可知在G固定的情况下,最佳的判别器
C(G)=-log4+2JS(pdata(x)||pg(x))
基于JS散度的性质,当且仅当pdata(x)=pg(x)时,C(G)取到最小值-log4。由此可知此优化目标有解,在理想状态下当优化分类器的解为0.5时达成目标。GAN的一次迭代训练过程分为两个部分,训练k次判别器(k≥1),训练一次生成器。
进一步地,训练判别器的步骤为:
1)从已知的噪声分布pg(x)中选出部分样本{z(1),z(2),……,z(m)};
2)从分布为pdata(x)中选出部分真实图片样本{x(1),x(2),……,x(m)};
3)设判别器D的参数为θD,求出损失关于参数的梯度:
训练生成器的步骤为:
1)从已知的噪声分布pg(x)中选出部分样本{z(1),z(2),……,z(m)};
2)设生成器G的参数为θG,求出损失关于参数的梯度:
经过多次迭代后,判别器的判别率接近0.5时说明判别器无法区分生成器所生成的图片与目标图片的真假,此时生成图片接近目标图片。
在一个具体实施方式中,以某工石墨双极板的外观检测设备采用本发明的工业外观检测方法为例。首先通过垂直拍摄,采集了50张被检测工件的瑕疵样本,然后通过手动数据增强将样本数量增加至200,再通过生成对抗网络将有效样本数量增加至3000,将样本标注完成后放入外观缺陷检测模型中训练,通过100000回合的深度学习训练,得到了石墨双极板外观检测的外观缺陷检测模型;将外观检测设备放入生产线中,对生成的产品外观图像进行实时处理,最终得出每一块石墨双极板的检测结果。由于该石墨双极板外观复杂,颜色深,人工检测速度和效率极低,使用该方法的外观检测准确率已达到了91.5%,超过了人工检测的精度,并该外观检测设备在检测速度上已达到秒级,远超人工检测速度,实现了首台初始样本很少情况下的高速、高效率的工业外观检测设备。
综上所述,本申请所提出的工业产品的外观缺陷检测方法,针对工业应用中,实际检测样本缺少的问题,我们提出以下解决方案作为考量。首先我们获得多角度、多光照条件下的工业产品(例如,石墨烯板)的样本图像,然后基于深度学习的极小样本外观检测技术,首先使用有监督数据增强,即采用预设的数据变换规则,在已有数据的基础上进行数据的扩增。再利用DCGAN模型增加样本数量,标注样本并进行外观缺陷检测模型训练,最终对工业产品外观进行高速、高精度检测。通过对获得的样本图像进行手动扩充,达到数据增强的目的,然后使用生成对抗网络生成更多的相似样本,将原本具有的样本以及生成后的样本放在一起,进行相同的数据标注操作。将标注后的数据放入神经网络结构,获得针对工业产品外观缺陷检测的外观缺陷检测模型。在具体的应用场景下,实时从生产线上获得工业产品拍摄图像,放入外观缺陷检测模型,进行缺陷检测,外观缺陷检测模型可识别不同种类的缺陷,上述检测操作标准统一,识别精准率高,是优于传统方法的可靠技术。
此外,参考图1所示,根据本实施例的第二个方面,提供了一种存储介质。所述存储介质包括存储的程序,其中,在所述程序运行时由处理器执行以上任意一项所述的方法。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
图6示出了根据本实施例所述的工业产品的外观缺陷检测装置600,该装置600与根据实施例1的第一个方面所述的方法相对应。参考图6所示,该装置600包括:外观图像获取模块610,用于获取待检测的工业产品的外观图像;外观缺陷检测模块620,用于基于外观图像,利用预先训练的外观缺陷检测模型,对工业产品进行外观缺陷检测,其中外观缺陷检测装置还包括训练模块630,用于通过以下子模块对外观缺陷检测模型进行训练:样本图像获取子模块,用于获取存在外观缺陷的样本工业产品的多个样本图像;第一生成子模块,用于采用预设的数据变换规则,对多个样本图像进行数据增强,生成第一样本图像集合;第二生成子模块,用于基于第一样本图像集合,利用预设的DCGAN模型,生成第二样本图像集合;以及训练子模块,用于利用第二样本图像集合,训练外观缺陷检测模型。
可选地,样本图像获取子模块,包括:获取单元,用于获取存在外观缺陷的样本工业产品的M个样本图像,其中M大于等于50,样本图像利用穹顶式光源并通过线阵工业相机拍摄固定在检测工装上的存在外观缺陷的样本工业产品获得,并且样本图像分别为多个不同角度或位置拍摄的图像,具有至少一个存在同一外观缺陷的样本图像;第一生成子模块,包括:第一生成单元,用于对M个样本图像进行几何变换操作和/或颜色变换操作,生成由KM个样本图像组成的第一样本图像集合,其中K为数据增强系数;以及第二生成子模块,包括:第二生成单元,用于将KM个样本图像输入DCGAN模型,输出由满足神经网络使用条件的预定数量的样本图像组成的第二样本图像集合。
可选地,第一生成单元包括:第一数据增强子单元,用于对M个样本图像进行以下所述的至少一项数据增强操作:翻转、旋转、裁剪、变形和缩放;以及第二数据增强子单元,用于对M个样本图像进行以下所述的至少一项数据增强操作:增加高斯噪声、模糊、颜色变换、擦除和填充。
可选地,训练子模块包括:置信度确定单元,用于采用预设的深度学习训练模型,通过前向传播对第二样本图像集合中的各个样本图像进行计算,确定深度学习训练模型中预设多类别的置信度;预测类别确定单元,用于分别将置信度最高的类别确定为各个样本图像中包含的外观缺陷所属的预测类别;第一训练单元,用于根据各个样本图像对应的预测类别、预设的训练参数α和预先确定的各个样本图像的实际类型,使用反向传播方法调整深度学习训练模型参数,累计训练回合数s,其中各个样本图像的实际类型通过对各个样本图像进行人工标注得到;第二训练单元,重复上述步骤,直到训练回合数达到预设的a次,减小训练参数;以及第三训练单元,用于重复上述步骤,直到训练回合数达到预设的b次。
可选地,外观图像获取模块610包括:外观图像获取子模块,用于利用穹顶式光源并通过线阵工业相机从多个不同角度和多个不同位置拍摄待检测的工业产品的多个外观图像;以及外观缺陷检测模块620包括:外观缺陷检测子模块,用于将多个外观图像输入外观缺陷检测模型进行外观缺陷检测,根据外观缺陷检测模型输出的检测结果判定工业产品是否存在外观缺陷,并且在存在外观缺陷的情况下,确定工业产品的缺陷位置和缺陷类型。
可选地,外观缺陷检测子模块,包括:判定单元,用于在检测结果为多个外观图像中的至少一个外观图像包含外观缺陷的情况下,判定工业产品存在外观缺陷。
可选地,DCGAN模型由判别器和生成器构成,并且装置还包括DCGAN模型训练模块,用于通过以下操作步骤对DCGAN模型进行训练:以训练k次判别器,训练一次生成器的方式,进行DCGAN模型的一次迭代训练;以及基于上述的一次迭代训练,进行多次迭代训练,直至判别器的判别率接近0.5。
从而根据本实施例,采用有监督的手动数据扩增方法,增多样本数据,解决了初始样本极少的情况下,无法使用生成对抗网络(DCGAN模型)来增加样本数量的问题。采用DCGAN模型增加了外观缺陷样本的数量,解决了外观缺陷检测模型训练样本不足的问题,能够在初始样本较少的情况下增多样本数量,为外观缺陷检测模型训练提供了充足样本集。本发明在视觉外观检测领域,利用SSD训练模型,实现了对工业产品复杂外观的高速、高精度检测,替代了低效率、低准确率的人工检测。并且,本发明利用穹顶式光源并通过线阵工业相机来拍摄多姿态的样本工业产品,得到易于外观缺陷检测模型训练使用的样本图像,然后利用训练好的外观缺陷检测模型的准确识别,能够高精度的检测工业产品的外观缺陷,提高检测精度。
实施例3
图7示出了根据本实施例所述的工业产品的外观缺陷检测装置700,该装置700与根据实施例1的第一个方面所述的方法相对应。参考图7所示,该装置700包括:处理器710;以及存储器720,与处理器710连接,用于为所处理器710提供处理以下处理步骤的指令:获取待检测的工业产品的外观图像;基于外观图像,利用预先训练的外观缺陷检测模型,对工业产品进行外观缺陷检测,其中通过以下操作对外观缺陷检测模型进行训练:获取存在外观缺陷的样本工业产品的多个样本图像;采用预设的数据变换规则,对多个样本图像进行数据增强,生成第一样本图像集合;基于第一样本图像集合,利用预设的DCGAN模型,生成第二样本图像集合;以及利用第二样本图像集合,训练外观缺陷检测模型。
可选地,获取存在外观缺陷的样本工业产品的多个样本图像的操作,包括:获取存在外观缺陷的样本工业产品的M个样本图像,其中M大于等于50,样本图像利用穹顶式光源并通过线阵工业相机拍摄固定在检测工装上的存在外观缺陷的样本工业产品获得,并且样本图像分别为多个不同角度或位置拍摄的图像,具有至少一个存在同一外观缺陷的样本图像;采用预设的数据变换规则,对多个样本图像进行数据增强,生成第一样本图像集合的操作,包括:对M个样本图像进行几何变换操作和/或颜色变换操作,生成由KM个样本图像组成的第一样本图像集合,其中K为数据增强系数;以及基于第一样本图像集合,利用预设的DCGAN模型,生成第二样本图像集合的操作,包括:将KM个样本图像输入DCGAN模型,输出由满足神经网络使用条件的预定数量的样本图像组成的第二样本图像集合。
可选地,对M个样本图像进行几何变换操作,包括:对M个样本图像进行以下所述的至少一项数据增强操作:翻转、旋转、裁剪、变形和缩放;以及对M个样本图像进行颜色变换操作,包括:对M个样本图像进行以下所述的至少一项数据增强操作:增加高斯噪声、模糊、颜色变换、擦除和填充。
可选地,利用第二样本图像集合,训练外观缺陷检测模型的操作,包括:训练步骤(1):采用预设的深度学习训练模型,通过前向传播对第二样本图像集合中的各个样本图像进行计算,确定深度学习训练模型中预设多类别的置信度;训练步骤(2):分别将置信度最高的类别确定为各个样本图像中包含的外观缺陷所属的预测类别;训练步骤(3):根据各个样本图像对应的预测类别、预设的训练参数α和预先确定的各个样本图像的实际类型,使用反向传播方法调整深度学习训练模型参数,累计训练回合数s,其中各个样本图像的实际类型通过对各个样本图像进行人工标注得到;训练步骤(4):重复步骤(1)至步骤(3),直到训练回合数达到预设的a次,减小训练参数;以及训练步骤(5):重复步骤(1)至步骤(4),直到训练回合数达到预设的b次。
可选地,获取待检测的工业产品的外观图像的操作,包括:利用穹顶式光源并通过线阵工业相机从多个不同角度和多个不同位置拍摄待检测的工业产品的多个外观图像;以及基于外观图像,利用预先训练的外观缺陷检测模型,对工业产品进行外观缺陷检测的操作,包括:将多个外观图像输入外观缺陷检测模型进行外观缺陷检测,根据外观缺陷检测模型输出的检测结果判定工业产品是否存在外观缺陷,并且在存在外观缺陷的情况下,确定工业产品的缺陷位置和缺陷类型。
可选地,根据外观缺陷检测模型输出的检测结果判定工业产品是否存在外观缺陷的操作,包括:在检测结果为多个外观图像中的至少一个外观图像包含外观缺陷的情况下,判定工业产品存在外观缺陷。
可选地,DCGAN模型由判别器和生成器构成,并且方法还包括通过以下操作步骤对DCGAN模型进行训练:以训练k次判别器,训练一次生成器的方式,进行DCGAN模型的一次迭代训练;以及基于上述的一次迭代训练,进行多次迭代训练,直至判别器的判别率接近0.5。
从而根据本实施例,采用有监督的手动数据扩增方法,增多样本数据,解决了初始样本极少的情况下,无法使用生成对抗网络(DCGAN模型)来增加样本数量的问题。采用DCGAN模型增加了外观缺陷样本的数量,解决了外观缺陷检测模型训练样本不足的问题,能够在初始样本较少的情况下增多样本数量,为外观缺陷检测模型训练提供了充足样本集。本发明在视觉外观检测领域,利用SSD训练模型,实现了对工业产品复杂外观的高速、高精度检测,替代了低效率、低准确率的人工检测。并且,本发明利用穹顶式光源并通过线阵工业相机来拍摄多姿态的样本工业产品,得到易于外观缺陷检测模型训练使用的样本图像,然后利用训练好的外观缺陷检测模型的准确识别,能够高精度的检测工业产品的外观缺陷,提高检测精度。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种工业产品的外观缺陷检测方法,其特征在于,包括:
获取待检测的工业产品的外观图像;
基于所述外观图像,利用预先训练的外观缺陷检测模型,对所述工业产品进行外观缺陷检测,其中通过以下操作对所述外观缺陷检测模型进行训练:
获取存在外观缺陷的样本工业产品的多个样本图像;
采用预设的数据变换规则,对所述多个样本图像进行数据增强,生成第一样本图像集合;
基于所述第一样本图像集合,利用预设的DCGAN模型,生成第二样本图像集合;以及
利用所述第二样本图像集合,训练所述外观缺陷检测模型。
2.根据权利要求1所述的方法,其特征在于,
获取存在外观缺陷的样本工业产品的多个样本图像的操作,包括:获取存在外观缺陷的样本工业产品的M个样本图像,其中所述M大于等于50,所述样本图像利用穹顶式光源并通过线阵工业相机拍摄固定在检测工装上的存在外观缺陷的样本工业产品获得,并且所述样本图像分别为多个不同角度或位置拍摄的图像,具有至少一个存在同一外观缺陷的样本图像;
采用预设的数据变换规则,对所述多个样本图像进行数据增强,生成第一样本图像集合的操作,包括:对所述M个样本图像进行几何变换操作和/或颜色变换操作,生成由KM个样本图像组成的第一样本图像集合,其中所述K为数据增强系数;以及
基于所述第一样本图像集合,利用预设的DCGAN模型,生成第二样本图像集合的操作,包括:将所述KM个样本图像输入所述DCGAN模型,输出由满足神经网络使用条件的预定数量的样本图像组成的第二样本图像集合。
3.根据权利要求2所述的方法,其特征在于,
对所述M个样本图像进行几何变换操作,包括:对所述M个样本图像进行以下所述的至少一项数据增强操作:翻转、旋转、裁剪、变形和缩放;以及
对所述M个样本图像进行颜色变换操作,包括:对所述M个样本图像进行以下所述的至少一项数据增强操作:增加高斯噪声、模糊、颜色变换、擦除和填充。
4.根据权利要求2所述的方法,其特征在于,利用所述第二样本图像集合,训练所述外观缺陷检测模型的操作,包括:
训练步骤(1):采用预设的深度学习训练模型,通过前向传播对所述第二样本图像集合中的各个样本图像进行计算,确定所述深度学习训练模型中预设多类别的置信度;
训练步骤(2):分别将置信度最高的类别确定为所述各个样本图像中包含的外观缺陷所属的预测类别;
训练步骤(3):根据所述各个样本图像对应的所述预测类别、预设的训练参数α和预先确定的所述各个样本图像的实际类型,使用反向传播方法调整深度学习训练模型参数,累计训练回合数s,其中所述各个样本图像的实际类型通过对所述各个样本图像进行人工标注得到;
训练步骤(4):重复所述步骤(1)至所述步骤(3),直到训练回合数达到预设的a次,减小所述训练参数;以及
训练步骤(5):重复所述步骤(1)至所述步骤(4),直到训练回合数达到预设的b次。
5.根据权利要求1所述的方法,其特征在于,
获取待检测的工业产品的外观图像的操作,包括:利用穹顶式光源并通过线阵工业相机从多个不同角度和多个不同位置拍摄待检测的工业产品的多个外观图像;以及
基于所述外观图像,利用预先训练的外观缺陷检测模型,对所述工业产品进行外观缺陷检测的操作,包括:将所述多个外观图像输入所述外观缺陷检测模型进行外观缺陷检测,根据所述外观缺陷检测模型输出的检测结果判定所述工业产品是否存在外观缺陷,并且在存在外观缺陷的情况下,确定所述工业产品的缺陷位置和缺陷类型。
6.根据权利要求5所述的方法,其特征在于,根据所述外观缺陷检测模型输出的检测结果判定所述工业产品是否存在外观缺陷的操作,包括:在所述检测结果为所述多个外观图像中的至少一个外观图像包含外观缺陷的情况下,判定所述工业产品存在外观缺陷。
7.根据权利要求1所述的方法,其特征在于,所述DCGAN模型由判别器和生成器构成,并且方法还包括通过以下操作步骤对所述DCGAN模型进行训练:
以训练k次所述判别器,训练一次所述生成器的方式,进行所述DCGAN模型的一次迭代训练;以及
基于上述的一次迭代训练,进行多次迭代训练,直至所述判别器的判别率接近0.5。
8.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时由处理器执行权利要求1至7中任意一项所述的方法。
9.一种工业产品的外观缺陷检测装置,其特征在于,包括:
外观图像获取模块,用于获取待检测的工业产品的外观图像;
外观缺陷检测模块,用于基于所述外观图像,利用预先训练的外观缺陷检测模型,对所述工业产品进行外观缺陷检测,其中外观缺陷检测装置还包括训练模块,用于通过以下子模块对所述外观缺陷检测模型进行训练:
样本图像获取子模块,用于获取存在外观缺陷的样本工业产品的多个样本图像;
第一生成子模块,用于采用预设的数据变换规则,对所述多个样本图像进行数据增强,生成第一样本图像集合;
第二生成子模块,用于基于所述第一样本图像集合,利用预设的DCGAN模型,生成第二样本图像集合;以及
训练子模块,用于利用所述第二样本图像集合,训练所述外观缺陷检测模型。
10.一种工业产品的外观缺陷检测装置,其特征在于,包括:
处理器;以及
存储器,与所述处理器连接,用于为所处理器提供处理以下处理步骤的指令:
获取待检测的工业产品的外观图像;
基于所述外观图像,利用预先训练的外观缺陷检测模型,对所述工业产品进行外观缺陷检测,其中通过以下操作对所述外观缺陷检测模型进行训练:
获取存在外观缺陷的样本工业产品的多个样本图像;
采用预设的数据变换规则,对所述多个样本图像进行数据增强,生成第一样本图像集合;
基于所述第一样本图像集合,利用预设的DCGAN模型,生成第二样本图像集合;以及
利用所述第二样本图像集合,训练所述外观缺陷检测模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011560774.1A CN112581462A (zh) | 2020-12-25 | 2020-12-25 | 工业产品的外观缺陷检测方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011560774.1A CN112581462A (zh) | 2020-12-25 | 2020-12-25 | 工业产品的外观缺陷检测方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112581462A true CN112581462A (zh) | 2021-03-30 |
Family
ID=75140137
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011560774.1A Pending CN112581462A (zh) | 2020-12-25 | 2020-12-25 | 工业产品的外观缺陷检测方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112581462A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113095400A (zh) * | 2021-04-09 | 2021-07-09 | 安徽芯纪元科技有限公司 | 一种用于机器视觉缺陷检测的深度学习模型训练方法 |
CN113298078A (zh) * | 2021-06-22 | 2021-08-24 | 广州绿怡信息科技有限公司 | 设备屏幕碎裂检测模型训练方法及设备屏幕碎裂检测方法 |
CN113408631A (zh) * | 2021-06-23 | 2021-09-17 | 佛山缔乐视觉科技有限公司 | 一种陶瓷洁具的款式识别方法、装置及存储介质 |
CN113553954A (zh) * | 2021-07-23 | 2021-10-26 | 上海商汤智能科技有限公司 | 行为识别模型的训练方法及装置、设备、介质和程序产品 |
CN113935995A (zh) * | 2021-12-16 | 2022-01-14 | 成都数之联科技有限公司 | 一种图像处理方法、装置、电子设备及计算机可读存储介质 |
CN116883416A (zh) * | 2023-09-08 | 2023-10-13 | 腾讯科技(深圳)有限公司 | 工业产品缺陷的检测方法、装置、设备及介质 |
CN117456292A (zh) * | 2023-12-26 | 2024-01-26 | 浙江晶盛机电股份有限公司 | 蓝宝石缺陷检测方法、装置、电子装置和存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120129020A (ko) * | 2011-05-18 | 2012-11-28 | 동우 화인켐 주식회사 | 필름 결함 모니터링 장치 및 방법 |
CN107657603A (zh) * | 2017-08-21 | 2018-02-02 | 北京精密机电控制设备研究所 | 一种基于智能视觉的工业外观检测方法 |
CN207215727U (zh) * | 2017-09-21 | 2018-04-10 | 征图新视(江苏)科技有限公司 | 一种曲面高精度成像系统 |
CN111144513A (zh) * | 2020-01-02 | 2020-05-12 | 大连理工大学 | 一种结合生成对抗网络与传统图像处理技术的工业产品喷涂缺陷数据增强方法 |
CN111768363A (zh) * | 2020-05-13 | 2020-10-13 | 华南农业大学 | 基于深度学习的电路板表面缺陷检测方法及检测系统 |
CN111986142A (zh) * | 2020-05-23 | 2020-11-24 | 冶金自动化研究设计院 | 一种热轧板卷表面缺陷图像数据无监督增强的方法 |
CN112082999A (zh) * | 2020-07-27 | 2020-12-15 | 深检数据科技(江苏)有限公司 | 一种工业产品缺陷检测方法和工业智能相机 |
-
2020
- 2020-12-25 CN CN202011560774.1A patent/CN112581462A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120129020A (ko) * | 2011-05-18 | 2012-11-28 | 동우 화인켐 주식회사 | 필름 결함 모니터링 장치 및 방법 |
CN107657603A (zh) * | 2017-08-21 | 2018-02-02 | 北京精密机电控制设备研究所 | 一种基于智能视觉的工业外观检测方法 |
CN207215727U (zh) * | 2017-09-21 | 2018-04-10 | 征图新视(江苏)科技有限公司 | 一种曲面高精度成像系统 |
CN111144513A (zh) * | 2020-01-02 | 2020-05-12 | 大连理工大学 | 一种结合生成对抗网络与传统图像处理技术的工业产品喷涂缺陷数据增强方法 |
CN111768363A (zh) * | 2020-05-13 | 2020-10-13 | 华南农业大学 | 基于深度学习的电路板表面缺陷检测方法及检测系统 |
CN111986142A (zh) * | 2020-05-23 | 2020-11-24 | 冶金自动化研究设计院 | 一种热轧板卷表面缺陷图像数据无监督增强的方法 |
CN112082999A (zh) * | 2020-07-27 | 2020-12-15 | 深检数据科技(江苏)有限公司 | 一种工业产品缺陷检测方法和工业智能相机 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113095400A (zh) * | 2021-04-09 | 2021-07-09 | 安徽芯纪元科技有限公司 | 一种用于机器视觉缺陷检测的深度学习模型训练方法 |
CN113298078A (zh) * | 2021-06-22 | 2021-08-24 | 广州绿怡信息科技有限公司 | 设备屏幕碎裂检测模型训练方法及设备屏幕碎裂检测方法 |
CN113408631A (zh) * | 2021-06-23 | 2021-09-17 | 佛山缔乐视觉科技有限公司 | 一种陶瓷洁具的款式识别方法、装置及存储介质 |
CN113553954A (zh) * | 2021-07-23 | 2021-10-26 | 上海商汤智能科技有限公司 | 行为识别模型的训练方法及装置、设备、介质和程序产品 |
CN113935995A (zh) * | 2021-12-16 | 2022-01-14 | 成都数之联科技有限公司 | 一种图像处理方法、装置、电子设备及计算机可读存储介质 |
CN113935995B (zh) * | 2021-12-16 | 2022-07-19 | 成都数之联科技股份有限公司 | 一种图像处理方法、装置、电子设备及计算机可读存储介质 |
CN116883416A (zh) * | 2023-09-08 | 2023-10-13 | 腾讯科技(深圳)有限公司 | 工业产品缺陷的检测方法、装置、设备及介质 |
CN116883416B (zh) * | 2023-09-08 | 2023-11-24 | 腾讯科技(深圳)有限公司 | 工业产品缺陷的检测方法、装置、设备及介质 |
CN117456292A (zh) * | 2023-12-26 | 2024-01-26 | 浙江晶盛机电股份有限公司 | 蓝宝石缺陷检测方法、装置、电子装置和存储介质 |
CN117456292B (zh) * | 2023-12-26 | 2024-04-19 | 浙江晶盛机电股份有限公司 | 蓝宝石缺陷检测方法、装置、电子装置和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112581462A (zh) | 工业产品的外观缺陷检测方法、装置及存储介质 | |
JP7236545B2 (ja) | ビデオターゲット追跡方法と装置、コンピュータ装置、プログラム | |
CN109584248B (zh) | 基于特征融合和稠密连接网络的红外面目标实例分割方法 | |
CN109840531B (zh) | 训练多标签分类模型的方法和装置 | |
US11475681B2 (en) | Image processing method, apparatus, electronic device and computer readable storage medium | |
CN108885699A (zh) | 字符识别方法、装置、存储介质及电子设备 | |
CN111583097A (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN110032925B (zh) | 一种基于改进胶囊网络与算法的手势图像分割与识别方法 | |
CN109118473B (zh) | 基于神经网络的角点检测方法、存储介质与图像处理系统 | |
CN112614136B (zh) | 一种红外小目标实时实例分割方法及装置 | |
CN108230233A (zh) | 数据增强、处理方法和装置、电子设备和计算机存储介质 | |
CN114708437B (zh) | 目标检测模型的训练方法、目标检测方法、装置和介质 | |
CN112365511B (zh) | 基于重叠区域检索与对齐的点云分割方法 | |
CN111260655B (zh) | 基于深度神经网络模型的图像生成方法与装置 | |
CN110532959B (zh) | 基于双通道三维卷积神经网络的实时暴力行为检测系统 | |
CN113674288A (zh) | 一种非小细胞肺癌数字病理图像组织自动分割方法 | |
CN112149526A (zh) | 一种基于长距离信息融合的车道线检测方法及系统 | |
CN116091823A (zh) | 一种基于快速分组残差模块的单特征无锚框目标检测方法 | |
CN115761888A (zh) | 基于nl-c3d模型的塔吊操作人员异常行为检测方法 | |
CN112926595B (zh) | 深度学习神经网络模型的训练装置、目标检测系统及方法 | |
CN107886093B (zh) | 一种字符检测方法、系统、设备及计算机存储介质 | |
CN113516697A (zh) | 图像配准的方法、装置、电子设备及计算机可读存储介质 | |
CN115205793B (zh) | 基于深度学习二次确认的电力机房烟雾检测方法及装置 | |
CN115861595A (zh) | 一种基于深度学习的多尺度域自适应异源图像匹配方法 | |
CN114842506A (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 |