CN115937095A - 融合图像处理算法和深度学习的印刷缺陷检测方法及系统 - Google Patents
融合图像处理算法和深度学习的印刷缺陷检测方法及系统 Download PDFInfo
- Publication number
- CN115937095A CN115937095A CN202211376432.3A CN202211376432A CN115937095A CN 115937095 A CN115937095 A CN 115937095A CN 202211376432 A CN202211376432 A CN 202211376432A CN 115937095 A CN115937095 A CN 115937095A
- Authority
- CN
- China
- Prior art keywords
- defect detection
- character
- bar code
- dimensional code
- subgraph
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种融合图像处理算法和深度学习的印刷缺陷检测方法及系统,包括:采用两阶段two‑stage方法对降噪后的印刷图片进行点位子图抠取,从而将印刷整图分为三类子图:常量子图、变量字符子图、条码二维码子图;针对常量子图,采用差分法进行缺陷检测;针对变量字符子图,添加数据构造模块,减少人工标注成本,搭建使用SiLU作为激活函数的Yolo‑V5模型对变量字符进行分割,对于分割后的单个字符,利用差分法对字符进行缺陷检测;针对条码二维码子图,搭建改进嵌入向量生成方式的Padim模型对条码二维码进行缺陷检测;最后综合各子图的缺陷检测结果作为输出,很好地发挥了图像处理算法和深度学习各自的优势,检测效果比直接利用整图做缺陷检测有了较大提升。
Description
技术领域
本发明属于深度学习与人工智能技术领域。涉及一种工业缺陷检测的方法,尤其是涉及一种融合图像处理算法和深度学习的印刷缺陷检测方法及系统。
背景技术
印刷标签是商品生产商极为重视的标识工具,其帮助商家宣传自身产品的信息与优势。对于消费者而言,印刷标签也是他们快速了解商品信息的最好途径之一,可以帮助顾客更好地挑选合适自己的商品。然而,在生产过程中,标签不可避免地会被损坏和印刷不良,这将影响产品信息的获取。目前工业上大部分印刷产品的缺陷检测仍然依靠低效率的人工筛选的方法和传统的图像处理的方法。人工目测通过对标签进行采样来完成部分检测,该方法成本高、效率低,且人眼容易疲劳,容易造成误判,影响检测效果。基于图像处理方式的印刷缺陷检测主要是针对带有模板的常量的缺陷检测,但变量元素是没有模板的,因此该类型方法无法很好地解决处理变量的缺陷检测。
随着深度学习的发展,一些基于深度学习的解决方案也开始被提出。它们主要基于端到端的目标检测(实例分割)为基架做优化,再加上针对特定场景的预处理和后处理。它们一定程度上修补了传统图像处理的误检、漏检等问题,具有更好的应用前景。但是,目标检测在缺陷检测上也存在一定的问题:第一,需要大量的缺陷数据用作训练,而缺陷数据不是举手可得的,并且目前缺陷数据都需要人工标注;第二,目标检测方法通常需要大量的训练时长,模型更新效率低,无法满足一些企业实时更新的要求;第三,最后,深度学习通常会有很常见的标签偏差的影响。如目标检测针对未见过的缺陷类型就经常出现漏检的现象。
发明内容
本发明所要解决的技术问题:克服现有技术的不足,提供一种融合图像处理算法和深度学习的印刷缺陷检测方法,解决传统图像处理和深度学习两类方法各自的缺点。如图9所示本发明相比于整图的缺陷检测,300张异常图的漏检率从21%下降到了8%,300张OK图的误检率从22%下降到了6%,显著提高了印刷缺陷的检测质量。
本发明通过以下技术方案实现:
第一方面,本发明的一个融合图像处理算法和深度学习的印刷缺陷检测方法,包括以下步骤:
步骤1:对印刷图片进行预处理,首先对印刷图片进行降噪,然后基于模板图片与模板点位信息,采用两阶段two-stage方法对印刷图片点位子图抠取,从而将印刷图片分为三类子图,三类子图分别为常量子图、变量字符子图、条码二维码子图;
步骤2:针对预处理后的三类子图的特性,分别进行常量缺陷检测、变量字符缺陷检测、条码二维码缺陷检测,其中:
所述常量缺陷检测步骤如下:
基于图像处理算法对印刷图片中的常量子图进行缺陷检测,得到常量缺陷检测结果;
所述变量字符缺陷检测步骤如下:
(11)利用图像处理算法,生成带标注的字符分割训练数据;
(12)搭建基于神经网络结构的字符分割模型,并基于步骤(11)中的所述训练数据对所述字符分割模型进行训练,得到训练后的字符分割模型;
(13)利用训练后字符分割模型,对变量字符进行分割,得到分割后的单个变量字符,并构建字符模板库;
(14)基于图像处理算法与字符模板库,针对每个分割后的单个变量字符进行缺陷检测,得到变量字符缺陷检测结果;
所述条码二维码缺陷检测步骤如下:
(21)基于图像处理算法,生成带标注的条码二维码缺陷数据以确定条码二维码缺陷检测的分类阈值,收集条码二维码中各点位的正常图用作训练数据;
(22)构建基于神经网络结构的条码二维码缺陷检测模型,并基于步骤(21)中的训练数据对所述条码二维码缺陷检测模型进行训练,得到训练后的条码二维码缺陷检测模型;
(23)利用训练后的条码二维码缺陷检测模型,对条码二维码中各点位进行缺陷检测,得到条码二维码缺陷检测结果;
步骤3:综合常量缺陷检测、变量缺陷检测、条码二维码缺陷检测的检测结果,最终得到整图的缺陷检测结果。
进一步,所述步骤1中,采用两阶段two-stage方法对降噪后的印刷图片进行点位子图抠取的方法为:第一阶段first-stage基于模板图片与模板点位信息对印刷图片各点位子图进行初步定位,得到的感兴趣的区域ROI;第二阶段second-stage基于得到的ROI,利用基于平方差法的模板匹配定位待检测图点位子图,进行点位子图抠取,从而将整图分为三类子图,三类子图分别为常量子图、变量字符子图、条码二维码子图;相比于直接对整图利用模板匹配做抠取,two-stage方法得到更精准的子图。
进一步,所述步骤(11)实现为:添加数据构造模块,数据构造模块随机抽取字号和字体大小来生成带标注的字符数据,同时基于横向打印与竖向打印两种场景,保证训练数据的多样性,并根据生成的字符数据,利用图像腐蚀与膨胀形态学运算构造带缺陷的字符数据,保证字符带有缺陷的情况下也能被精确分割。
进一步,所述步骤(12)中,基于神经网络结构的字符分割模型为Yolo-V5网络框架,采用SiLU作为激活函数。
进一步,所述步骤(14)中,对变量字符缺陷检测化繁为简,对于分割后的单个变量字符,在变量字符点位的字符模板库中找到对应的单个变量字符模板,利用差分法对字符进行缺陷检测。
进一步,所述步骤(22)中,采用改进的Padim方法,对Padim模型里关键的嵌入向量的生成方式做改进,针对Padim中的特征提取网络Resnet18中不同特征层按比例随机裁剪来生成嵌入向量,从而降低嵌入向量的维数;
所述随机裁剪公式如下:
Xij=x′ijw1+x″ijw2
其中,Xij表示像素坐标为(i,j)全部特征层整合的嵌入向量,x'ij为前3个特征层所串联起来的嵌入向量,x″ij为剩余特征层所串联起来的嵌入向量,w1表示前3个特征层随机裁剪所保留的比例,w2表示剩余特征层随机裁剪所保留的比例。本发明中采用w1为0.7,w2为0.3。
第二方面,本发明提供了一个融合图像处理算法和深度学习的印刷缺陷检测系统,包括:预处理模块、三类缺陷检测模块和整图缺陷检测模块;
预处理模块:对印刷图片进行预处理,首先对印刷图片进行降噪,然后基于模板图片与模板点位信息,采用两阶段two-stage方法对印刷图片点位子图抠取,从而将印刷图片分为三类子图,三类子图分别为常量子图、变量字符子图、条码二维码子图;
三类缺陷检测模块:针对预处理模块预处理后的三类子图的特性,分别进行常量缺陷检测、变量字符缺陷检测、条码二维码缺陷检测,其中:
所述常量缺陷检测,基于图像处理算法对印刷图片中的常量子图进行缺陷检测,得到常量缺陷检测结果;
所述变量字符缺陷检测如下:
(11)利用图像处理算法,生成带标注的字符分割训练数据;
(12)搭建基于神经网络结构的字符分割模型,并基于步骤(11)中的所述训练数据对所述字符分割模型进行训练,得到训练后的字符分割模型;
(13)利用训练后字符分割模型,对变量字符进行分割,得到分割后的单个变量字符,并构建字符模板库;
(14)基于图像处理算法与字符模板库,针对每个分割后的单个变量字符进行缺陷检测,得到变量字符缺陷检测结果;
所述条码二维码缺陷检测如下:
(21)基于图像处理算法,生成带标注的条码二维码缺陷数据以确定条码二维码缺陷检测的分类阈值,收集条码二维码中各点位的正常图用作训练数据;
(22)构建基于神经网络结构的条码二维码缺陷检测模型,并基于步骤(21)中的训练数据对所述条码二维码缺陷检测模型进行训练,得到训练后的条码二维码缺陷检测模型;
(23)利用训练后的条码二维码缺陷检测模型,对条码二维码中各点位进行缺陷检测,得到条码二维码缺陷检测结果;
整图缺陷检测模块:综合常量缺陷检测、变量缺陷检测、条码二维码缺陷检测的检测结果,最终得到整图的缺陷检测结果。
第三方面,本发明还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口和存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的计算机程序,执行时实现权利要求1-6中任意之一所述的方法。
第四方面,本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6中任意之一所述的方法。
本发明与现有技术相比的优点在于:
(1)在进行缺陷检测之前先对待检测印刷图片进行子图抠取,将全局检测转化为局部检测,进而可以针对各个子图的特性选取更适合的算法进行缺陷检测,相比于以往的整图检测,大大减少漏检率和误检率;
(2)在变量字符缺陷检测中,添加数据构造模块为字符分割模型提供带标注的训练数据,显著地减少人工标注成本;
(3)在字符分割模型中,使用SiLU作为激活函数,SiLU是Sigmoid和ReLU的改进版。相比于一般使用的ReLU函数,SiLU具备无上界有下界、平滑、非单调的特性。SiLU在深层模型上的效果优于ReLU;
(4)对变量字符先分割成单个字符,再依据对应字符模板做缺陷检测,相比于以往对变量字符整图直接做缺陷检测,尤其是针对长条字符,细小缺陷的漏检率得到了明显的下降;
(5)在条码二维码缺陷检测中,采用改进的异常检测模型。i.相比于现有的目标检测算法,前者只需要正样本作为训练数据,拥有训练时长短、不受标签偏差影响的优势。ii.相比于未改进前的Padim模型,改进后的嵌入向量维数更低,减少冗余信息,可以得到更好的检测效果。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的一种融合图像处理算法和深度学习的印刷缺陷检测方法的流程图;
图2为本发明实施例提供的子图抠取示意图;
图3为本发明实施例提供的常量缺陷检测示意图;
图4为本发明实施例提供的变量字符缺陷检测示意图;
图5为本发明实施例提供的条码二维码缺陷检测示意图;
图6为本发明实施例提供的两种标注数据生成方式耗时对比图;
图7为本发明实施例提供的两种变量字符缺陷检测方法漏检、误检情况对比图;
图8为本发明实施例提供的两种条码二维码检测方法各项指标对比图;
图9为本发明实施例提供的两种印刷图片缺陷检测方法漏检、误检情况对比图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
如图1所示,本发明实施例提供一种融合图像处理算法和深度学习的印刷缺陷检测方法,包括:采用中值滤波进行降噪,对降噪后的图片采用两阶段two-stage方法进行点位抠取,第一阶段first-stage基于模板点位信息进行初步定位得到ROI,第二阶段second-stage基于平方差法的模板匹配得到更精确的子图抠取;针对常量子图,采用差分法进行缺陷检测;针对变量字符子图,基于腐蚀和膨胀等图像处理算法,生成带标注的字符分割训练数据,减少人工标注成本。搭建使用SiLU作为激活函数的Yolo-V5作为字符分割网络框架,对于分割后的单个字符,在该点位的建立好的字符模板库中找到对应的字符模板,利用差分法对字符进行缺陷检测;针对条码二维码子图,搭建改进的Padim网络框架,收集少量OK图作为训练数据并基于图像处理生成条码二维码缺陷图用于阈值确定,利用该模型对条码二维码进行缺陷检测;总之,本发明采取“先局部后整体”的检测流程,预先将印刷整图进行预处理与点位子图抠取,针对各点位的特性,因地制宜,选择更适宜的缺陷检测方法,最后综合各子图的缺陷检测结果作为输出,很好地发挥了图像处理算法和深度学习各自的优势,检测效果比直接利用整图做缺陷检测有了较大提升。
具体包括如下步骤:
步骤1、获取待检测印刷图片进行预处理。
本发明实施例中,采用中值滤波算法进行降噪,选取M*M大小的滑动窗口在图像上不断进行移动,每一次移动都对窗口内的像素值进行排序并选取位于中间位置的像素值即中值作为中心像素点的值。计算过程如下:有一组数据{x1,x2,…,xn-1,xn},则这组数据的中值为:
基于上式,得到每个像素点值的计算公式:
g(x,y)=mid(f(xk,yl)|(k,l)∈M}
其中,g(x,y)表示计算得到的该像素点的新值,f(x,y)表示原始图像中该点的像素值,M表示滑动窗口,该窗口大小一般为3*3或者5*5,其形状可以是线状、十字状或者环状等。中值滤波对高斯噪声进行降噪,具有好的降噪效果,且标签图像细节信息丢失少。
如图2所示,采用两阶段two-stage方法对降噪后的图片进行点位抠取。
第一阶段first-stage基于模板点位信息{xmin,ymin,xmax,ymax},其中xmin表示点位的左上角横坐标,ymin表示点位左上角纵坐标,xmax表示右下角横坐标,ymax表示右下角纵坐标。对待测图片各点位子图进行初步定位,定位后的矩形框四条边向外扩大20个像素值,得到真正的感兴趣区域区域ROI。
第二阶段second-stage基于得到的ROI,利用模板匹配定位待检测图点位子图,得到更精准的子图抠取。模板匹配采用平方差算法,选取ROI区域的局部图像,其大小与对应点位模板子图相等,为W*H,其中W表示子图的宽,H表示子图的高。在ROI区域上从左到右,从上到下滑动,每到达一个像素点,就会以这个像素点左上角顶点从原图像中截取一个与模板大小一样的图像进行平方差运算,平方差最低表示相似度越高。选取相似度最高的位置作为最终的匹配结果,完成更精确的点位子图抠取。
平方差算法公式为:
其中T(x',y')表示模板图上坐标为(x',y')的像素值,I(x+x',y+y')表示ROI上坐标为(x+x',y+x')的像素值。
步骤2、针对预处理后得到的三类子图,分别做常量缺陷检测、变量字符缺陷检测、条码二维码缺陷检测。
常量缺陷检测步骤1、基于图像处理算法对抠取出的常量子图进行缺陷检测。
如图3所示,采用差分法对常量子图进行缺陷检测。其原理为,将常量子图与模板图像进行灰度作差,然后设定阈值,将超过阈值的像素保留下来,后续对缺陷的判定基于这些保留下来的像素。首先对待测子图与模板图分别进行图像二值化和图像取非操作;将二值化后的待测子图和模板图进行差分操作得到缺损掩膜mask;将取非操作后的待测子图和模板图进行差分操作得到脏污掩膜mask;最后应用形态学进行后处理消除mask中的噪声和干扰,得到最终的缺陷检测结果。直接差分法通过设定阈值来完成对异常像素的筛选,假设模板标签图像相应位置的灰度值使用T(x,y)表示,待测标签图像相应位置的灰度值使用S(x,y)表示,则得到差分法计算公式为:
D(x,y)=|S(x,y)-T(x,y)|
其中D(x,y)为两点灰度差的绝对值。
变量字符缺陷检测步骤1、基于图像处理算法,生成带标注的字符分割训练数据。
仅针对26个字母和10个数字(0-9)。首先设定字号与字体范围,每一次随机抽取字号和字体大小来生成字符数据,并且同时考虑横向打印与竖向打印两种场景,保证训练数据的多样性。在生成字符的同时记录下每个字符的bbox位置坐标(xmin,ymin,w,h),其中xmin代表该字符左上角横轴数值,ymin代表该字符左上角纵轴数值,w表示字符的宽,h表示字符的高,大大节约人工标注成本。基于生成的字符数据,利用图像腐蚀与膨胀等形态学运算构造带缺陷的字符数据,保证字符带有缺陷的情况下也能被精确分割。图像的膨胀和腐蚀是两种基本的形态学运算,其中膨胀类似于“领域扩张”,将图像中的白色部分进行扩张,其运行结果图比原图的白色区域更大;腐蚀类似于“领域被蚕食”,将图像中白色部分进行缩减细化,其运行结果图比原图的白色区域更小。腐蚀的运算符是“-”,其定义如下:
把结构元素B平移x后得到Bx,若Bx包含于A,记下这个x点,所有满足上述条件的x点组成的集合称做A被B腐蚀的结果。膨胀是腐蚀的对偶运算,运算符为“+”,其定义如下:
把结构元素B平移x后得到Bx,若Bx击中A,记下这个x点。所有满足上述条件的x点组成的集合称作A被B膨胀的结果。
变量字符缺陷检测步骤2、搭建基于神经网络结构的字符分割模型,使得模型能够学习到字符分割的位置,进行字符的分割。
本发明实施例中,所述字符分割框架为目标检测领域一种主流的Yolo-V5网络框架。整个Yolo-V5可以分为三个部分,分别是特征提取-特征加强-预测特征点对应的物体情况。特征提取网络结构名为CSPDarknet,输入的图片首先会在CSPDarknet里面进行特征提取,提取到的特征可以被称作特征层,是输入图片的特征集合。一共获取了三个特征层进行下一步网络的构建,这三个特征层称为有效特征层。
本发明实施例中,激活函数使用SiLU,SiLU是Sigmoid和ReLU的改进版。相比于一般使用的ReLU函数,SiLU具备无上界有下界、平滑、非单调的特性。SiLU在深层模型上的效果优于ReLU。可以看作是平滑的ReLU激活函数。激活函数SiLU的计算公式为:
f(x)=x·sigmoid(x)
其中x为输入,f(x)为输出,sigmoid(x)=1/(1+e-x)。
特征加强提取网络称为FPN,在特征提取部分获得的三个有效特征层会在这一部分进行特征融合,特征融合的目的是结合不同尺度的特征信息。特征融合使用到了Panet的结构,不仅会对特征进行上采样实现特征融合,还会对特征再次进行下采样实现特征融合。
预测特征点对应的物体情况叫做Yolo Head,它是Yolo-V5的分类器与回归器。通过特征提取网络和特征加强网络,已经可以获得三个加强过的有效特征层。每一个特征层都有宽、高和通道数,此时可以将特征图看作一个又一个特征点的集合,每一个特征点都有通道数个特征,其包含了以下信息:是否包含物体、若存在物体时预测框的回归参数以及包含物体的种类。与以前版本的Yolo一样,Yolo-V5所用的解耦头是一起的,也就是分类和回归在一个1X1卷积里实现。最终的优化目标loss为:
Loss=lossreg+lossobj+losscls
其中,lossreg表示真实框和预测框计算的CIOU损失,lossobj表示根据正负样本和特征点的是否包含物体的预测结果计算交叉熵损失,losscls表示根据真实框的种类和先验框的种类预测结果计算交叉熵损失。
变量字符缺陷检测步骤3、基于上述的字符分割网络进行训练。
本发明实施例中,搭建Yolo-V5网络框架,按照常规方式选定训练参数与策略,并将变量字符缺陷检测步骤1中构造好的字符分割数据集作为训练数据,基于最终的优化目标对其进行训练。
变量字符缺陷检测步骤4、利用分割算法模型,对印刷图片中的变量字符进行分割并构建字符模板库。
对于训练后的字符分割算法模型,对印刷图片中的变量字符点位子图进行测试,获取单个字符。特别地,基于模板图中的变量字符分割结果,建立属于各点位的字符模板库,用于下一步的字符缺陷检测。
变量字符缺陷检测步骤5、对分割获取到的单个字符进行缺陷检测。
如图4所示,对于分割后的单个字符,在该点位的字符模板库中找到对应的字符模板,利用与常量缺陷检测步骤1相同的差分法对字符进行缺陷检测。
条码二维码缺陷检测步骤1、搭建基于神经网络结构的条码二维码缺陷检测模型。
条码二维码缺陷检测模型框架为异常检测中一种主流的基于卷积神经网络+多元高斯分布估计的Padim方法。它依赖于预训练好的Resnet18特征提取器。将图像分解为多个面片,并使用不同的特征提取层从每个面片中提取嵌入。将不同层次的激活向量串联起来,得到包含不同语义层次和分辨率信息的嵌入向量。
本发明实施例中,针对嵌入向量的生成方式做了改进。不采用向量的所有维度,而是针对Resnet18中不同特征层按比例随机裁剪来降低维数。这是因为生成的嵌入向量过长可能会携带冗余信息,不利于下游异常分类。随机裁剪来降低维度将有助于对细粒度和全局上下文进行编码。随机裁剪公式如下:
Xij=x′ijw1+x″ijw2
其中,Xij表示像素坐标为(i,j)全部特征层整合的嵌入向量,x'ij为前3个特征层所串联起来的嵌入向量,x″ij为剩余特征层所串联起来的嵌入向量,w1表示前3个特征层随机裁剪所保留的比例,w2表示剩余特征层随机裁剪所保留的比例。由于靠前的特征层会保留更多的细粒度信息,所以保留的权重会比较大,w1值为0.7,w2值为0.3。在整个训练批次中,为每个面片嵌入生成一个多元高斯分布。因此,对于训练图像集的每个面片,有不同的多元高斯分布。这些高斯分布表示为高斯参数矩阵。在推理过程中,使用马氏距离对测试图像的每个面片位置进行评分。它使用训练期间为面片计算的协方差矩阵的逆矩阵。马氏距离矩阵形成了异常图,分数越高表示异常区域。假设N张正常图像中得到的像素坐标位置为(i,j)的嵌入向量 服从以下多元高斯分布N(μij,Σij),其中μij为Xij的样本平均值,样本协方差Σij的估计如下:
其中,正则项∈I使样本协方差满秩可逆。
基于马氏距离的异常分数计算如下:
其中,M(Xij)为图像位置为(i,j)的异常分数,Xij为嵌入向量。
条码二维码缺陷检测步骤2、条码二维码训练数据与缺陷数据准备。
只需收集数十张条码二维码各点位的正常图用作训练数据。训练无需用到缺陷数据,缺陷数据生成与变量字符缺陷检测步骤1相同,基于图像处理生成条码二维码缺陷数据用于异常分类阈值确定。
条码二维码缺陷检测步骤3、基于上述的缺陷检测网络结构进行训练。
本发明实施例中,搭建上述改进的Padim网络框架,按照常规方式选定训练参数与策略,并将条码二维码缺陷检测步骤2中准备好的数据集作为训练数据与阈值确定数据,进行嵌入向量的生成与多元高斯分布的估计运算。
条码二维码缺陷检测步骤4、利用上述的缺陷检测模型对条码二维码进行缺陷检测。
如图5所示,对于印刷图片中的条码二维码点位子图,使用训练后的缺陷检测模型,获得缺陷检测结果。
步骤3、综合步骤2中的常量缺陷检测步骤1、变量缺陷检测步骤5、条码二维码缺陷检测步骤4的检测结果,得到整图的缺陷检测情况。
为了说明本发明实施例上述方案的效果,下面结合具体示例进行说明。
如图6所示,人工标注100张分割数据或者缺陷数据耗时需要40min以上,而基于图像处理方法的构造数据只需2秒左右即可,充分体现了构造数据模块的优势,大大减少人工标注成本。
如图7所示,针对变量字符,本发明实施例中,对于特别长的变量字符,分割后再对单个字符做缺陷检测的效果要比直接对变量字符整图缺陷检测好,体现在漏检少、误检少这两个方面。
如图8所示,本发明实施例中基于改进的Padim的条码二维码缺陷检测只需150张左右训练数据、71s的训练时长,完全优于需要1000张以上训练数据、8个小时以上的训练时长的Yolo-V5的条码二维码缺陷检测;并且在模型权重大小上,前者仅有2.8M,小于后者的7.2M,凸显出随机裁剪嵌入向量减少冗余信息的优势。在100张测试缺陷数据,前者只有5张漏检,而后者有23张漏检,这也充分说明了现有的目标检测算法对缺陷类型学习的偏差,凸显出改进的Padim的无监督特性的优势。
如图9所示,在300张缺陷图与300张正常样本图缺陷检测中,本发明实施例中的融合图像处理算法和深度学习的印刷缺陷检测方法漏检8张、误检13张,而整图缺陷检测方法漏检63张、误检67张。即300张异常图的漏检率从21%下降到了8%,300张OK图的误检率从22%下降到了6%。本发明“先抠取后检测”的效果完胜整图直接检测,很好地体现本发明对印刷缺陷检测效果的提升。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (9)
1.一种融合图像处理算法和深度学习的印刷缺陷检测方法,其特征在于,包括以下步骤:
步骤1:对印刷图片进行预处理,首先对印刷图片进行降噪,然后基于模板图片与模板点位信息,采用两阶段two-stage方法对印刷图片进行点位子图抠取,从而将印刷图片分为三类子图,三类子图分别为常量子图、变量字符子图、条码二维码子图;
步骤2:针对预处理后的三类子图的特性,分别进行常量缺陷检测、变量字符缺陷检测、条码二维码缺陷检测,其中:
所述常量缺陷检测步骤如下:
基于图像处理算法对印刷图片中的常量子图进行缺陷检测,得到常量缺陷检测结果;
所述变量字符缺陷检测步骤如下:
(11)利用图像处理算法,生成带标注的字符分割训练数据;
(12)搭建基于神经网络结构的字符分割模型,并基于步骤(11)中的所述训练数据对所述字符分割模型进行训练,得到训练后的字符分割模型;
(13)利用训练后字符分割模型,对变量字符进行分割,得到分割后的单个变量字符,并构建字符模板库;
(14)基于图像处理算法与字符模板库,针对每个分割后的单个变量字符进行缺陷检测,得到变量字符缺陷检测结果;
所述条码二维码缺陷检测步骤如下:
(21)基于图像处理算法,生成带标注的条码二维码缺陷数据以确定条码二维码缺陷检测的分类阈值,收集条码二维码中各点位的正常图用作训练数据;
(22)构建基于神经网络结构的条码二维码缺陷检测模型,并基于步骤(21)中的训练数据对所述条码二维码缺陷检测模型进行训练,得到训练后的条码二维码缺陷检测模型;
(23)利用训练后的条码二维码缺陷检测模型,对条码二维码中各点位进行缺陷检测,得到条码二维码缺陷检测结果;
步骤3:综合常量缺陷检测、变量缺陷检测、条码二维码缺陷检测的检测结果,最终得到整图的缺陷检测结果。
2.根据权利要求1所述的融合图像处理算法和深度学习的印刷缺陷检测方法,其特征在于:所述步骤1中,采用两阶段two-stage方法对降噪后的印刷图片进行点位子图抠取的方法为:第一阶段first-stage基于模板图片与模板点位信息对印刷图片各点位子图进行初步定位,得到的感兴趣的区域ROI;第二阶段second-stage基于得到的ROI,利用基于平方差法的模板匹配定位待检测图点位子图,进行点位子图抠取,从而将整图分为三类子图,三类子图分别为常量子图、变量字符子图、条码二维码子图。
3.根据权利要求1所述的融合图像处理算法和深度学习的印刷缺陷检测方法,其特征在于:所述步骤(11)实现为:添加数据构造模块,数据构造模块随机抽取字号和字体大小来生成带标注的字符数据,同时基于横向打印与竖向打印两种场景,保证训练数据的多样性,并根据生成的字符数据,利用图像腐蚀与膨胀形态学运算构造带缺陷的字符数据,保证字符带有缺陷的情况下也能被精确分割。
4.根据权利要求1所述的融合图像处理算法和深度学习的印刷缺陷检测方法,其特征在于:所述步骤(12)中,基于神经网络结构的字符分割模型为Yolo-V5网络框架,采用SiLU作为激活函数。
5.根据权利要求1所述的融合图像处理算法和深度学习的印刷缺陷检测方法,其特征在于:所述步骤(14)中,对变量字符缺陷检测化繁为简,对于分割后的单个变量字符,在变量字符点位的字符模板库中找到对应的单个变量字符模板,利用差分法对字符进行缺陷检测。
6.根据权利要求1所述的融合图像处理算法和深度学习的印刷缺陷检测方法,其特征在于:所述步骤(22)中,采用改进的Padim方法,对Padim模型里关键的嵌入向量的生成方式做改进,针对Padim中的特征提取网络Resnet18中不同特征层按比例随机裁剪来生成嵌入向量,从而降低嵌入向量的维数;
所述随机裁剪公式如下:
Xij=x′ijw1+x″ijw2
其中,Xij表示像素坐标为(i,j)全部特征层整合的嵌入向量,x'ij为前3个特征层所串联起来的嵌入向量,x″ij为剩余特征层所串联起来的嵌入向量,w1表示前3个特征层随机裁剪所保留的比例,w2表示剩余特征层随机裁剪所保留的比例。
7.一个融合图像处理算法和深度学习的印刷缺陷检测系统,其特征在于,包括:预处理模块、三类缺陷检测模块和整图缺陷检测模块;
预处理模块:对印刷图片进行预处理,首先对印刷图片进行降噪,然后基于模板图片与模板点位信息,采用两阶段two-stage方法对印刷图片点位子图抠取,从而将印刷图片分为三类子图,三类子图分别为常量子图、变量字符子图、条码二维码子图;
三类缺陷检测模块:针对预处理模块预处理后的三类子图的特性,分别进行常量缺陷检测、变量字符缺陷检测、条码二维码缺陷检测,其中:
所述常量缺陷检测,基于图像处理算法对印刷图片中的常量子图进行缺陷检测,得到常量缺陷检测结果;
所述变量字符缺陷检测如下:
(11)利用图像处理算法,生成带标注的字符分割训练数据;
(12)搭建基于神经网络结构的字符分割模型,并基于步骤(11)中的所述训练数据对所述字符分割模型进行训练,得到训练后的字符分割模型;
(13)利用训练后字符分割模型,对变量字符进行分割,得到分割后的单个变量字符,并构建字符模板库;
(14)基于图像处理算法与字符模板库,针对每个分割后的单个变量字符进行缺陷检测,得到变量字符缺陷检测结果;
所述条码二维码缺陷检测如下:
(21)基于图像处理算法,生成带标注的条码二维码缺陷数据以确定条码二维码缺陷检测的分类阈值,收集条码二维码中各点位的正常图用作训练数据;
(22)构建基于神经网络结构的条码二维码缺陷检测模型,并基于步骤(21)中的训练数据对所述条码二维码缺陷检测模型进行训练,得到训练后的条码二维码缺陷检测模型;
(23)利用训练后的条码二维码缺陷检测模型,对条码二维码中各点位进行缺陷检测,得到条码二维码缺陷检测结果;
整图缺陷检测模块:综合常量缺陷检测、变量缺陷检测、条码二维码缺陷检测的检测结果,最终得到整图的缺陷检测结果。
8.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口和存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的计算机程序,执行时实现权利要求1-6中任意之一所述的方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-6中任意之一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211376432.3A CN115937095A (zh) | 2022-11-04 | 2022-11-04 | 融合图像处理算法和深度学习的印刷缺陷检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211376432.3A CN115937095A (zh) | 2022-11-04 | 2022-11-04 | 融合图像处理算法和深度学习的印刷缺陷检测方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115937095A true CN115937095A (zh) | 2023-04-07 |
Family
ID=86699854
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211376432.3A Pending CN115937095A (zh) | 2022-11-04 | 2022-11-04 | 融合图像处理算法和深度学习的印刷缺陷检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115937095A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117036267A (zh) * | 2023-08-01 | 2023-11-10 | 广州伊索自动化科技有限公司 | 一种曲面印刷检测方法、系统及存储介质 |
-
2022
- 2022-11-04 CN CN202211376432.3A patent/CN115937095A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117036267A (zh) * | 2023-08-01 | 2023-11-10 | 广州伊索自动化科技有限公司 | 一种曲面印刷检测方法、系统及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Bergmann et al. | The MVTec anomaly detection dataset: a comprehensive real-world dataset for unsupervised anomaly detection | |
CN111080628B (zh) | 图像篡改检测方法、装置、计算机设备和存储介质 | |
CN111080620B (zh) | 一种基于深度学习的道路病害检测方法 | |
CN111369572B (zh) | 一种基于图像修复技术的弱监督语义分割方法和装置 | |
CN108830285B (zh) | 一种基于Faster-RCNN的加强学习的目标检测方法 | |
CN109544555B (zh) | 基于生成式对抗网络的细小裂缝分割方法 | |
CN113160192A (zh) | 复杂背景下基于视觉的压雪车外观缺陷检测方法及装置 | |
CN109840483B (zh) | 一种滑坡裂缝检测与识别的方法及装置 | |
CN112200121B (zh) | 基于evm和深度学习的高光谱未知目标检测方法 | |
US11144799B2 (en) | Image classification method, computer device and medium | |
CN112307919B (zh) | 一种基于改进YOLOv3的单证图像中数字信息区域识别方法 | |
CN111738054A (zh) | 一种基于时空自编码器网络和时空cnn的行为异常检测方法 | |
CN112861917A (zh) | 基于图像属性学习的弱监督目标检测方法 | |
CN113989577B (zh) | 图像分类方法及装置 | |
CN111882000A (zh) | 一种应用于小样本细粒度学习的网络结构及方法 | |
CN111626145A (zh) | 一种简捷有效的残缺表格识别及跨页拼接方法 | |
CN115937095A (zh) | 融合图像处理算法和深度学习的印刷缺陷检测方法及系统 | |
CN115082781A (zh) | 一种舰船图像检测方法、装置以及存储介质 | |
CN114882204A (zh) | 船名自动识别方法 | |
CN112200789B (zh) | 一种图像识别的方法及装置、电子设备和存储介质 | |
CN116844143B (zh) | 基于边缘增强的胚胎发育阶段预测与质量评估系统 | |
CN113313678A (zh) | 一种基于多尺度特征融合的精子形态学自动分析方法 | |
CN116664540A (zh) | 基于高斯线检测的橡胶密封圈表面缺陷检测方法 | |
CN116912184A (zh) | 一种基于篡改区域分离和区域约束损失的弱监督深度修复图像篡改定位方法及系统 | |
CN110598702A (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 |