一种显示屏复杂画面的缺陷检测方法

文档序号:30946385发布日期:2022-07-30 05:24阅读:78来源:国知局
一种显示屏复杂画面的缺陷检测方法

1.本发明属于图像处理技术,具体涉及机器视觉领域的显示屏显示缺陷、材料表面缺陷检测。


背景技术:

2.材料表面缺陷是指以脏污、斑点、划痕、断裂等形式存在的材料问题,并广泛存在于纺织品、钢铁、pcb板及lcd(liquid crystal display)显示屏等工业品。材料表面缺陷检测是工业生产中的重要流程,若检测失败,将导致经济损失甚至材料安全问题。其中,lcd缺陷检测常利用精心设计的特定画面来进行缺陷检测,包括rgb纯色画面、黑白画面、灰阶过渡画面、人脸画面等等。人脸画面是一种包含了文字、rgb色块、灰阶过渡、人脸的复合检测画面,利用该类画面可以暴露异常显示屏点、线、不规则等多种缺陷。
3.目前主流的表面缺陷机器视觉检测算法有三大类:一大类属于图片级检测,即只判断图片是否包含异常,但不给出具体的缺陷像素位置,在显示屏缺陷检测的应用场景中显然不适用。第二类则是语义分割算法,该类算法被广泛应用于遥感图像地物分类、自然图像场景理解等诸多像素级分类领域,也可用于缺陷检测,但需要通过大量样本来学习分割目标的形态特征。第三类则是基于流模型样本分布建模的异常检测算法,通过学习大量正常样本的数据分布并映射为已知分布,当输入异常样本时由于与原分布偏差较大而被检出,但该类方法只能给出缺陷的模糊位置。
4.综上,目前主流机器视觉缺陷检测方法在显示屏缺陷检测应用场景中存在四方面问题,包括:1)基于图片级检测与异常检测的算法难以给出精确的缺陷像素级位置;2)异常显示屏样品数量少、涉及商业保密造成的缺陷样本难以获取,使多数基于大量数据驱动的机器视觉模型失效;3)缺陷本身形态不固定、分布不规则导致的缺陷特征难以用语义分割一类的算法进行外观建模;4)复杂的显示屏生产环节导致了缺陷的不可控性,因此已收集的缺陷样本难以应对未知形态缺陷检测的问题。


技术实现要素:

5.为解决现有技术存在的上述问题,本发明提出了一种显示屏复杂画面的缺陷检测方法。
6.本发明的具体技术方案为:一种显示屏复杂画面的缺陷检测方法,包括以下步骤:
7.s1、对多类显示屏复杂画面进行2类缺陷图像及对应标注图的模拟生成,其中,线缺陷采用要素集排列组合及区域随机排布方式,异常点缺陷采用多阈值分割及点集随机聚类方式,得到模拟缺陷训练数据集;
8.s2、每次训练中,并行的将模拟缺陷与对应正常检测图像输入多级孪生卷积网络,得到多尺度孪生特征图,按对应尺度在通道维度进行拼接,得到多尺度孪生特征对;
9.s3、下一级尺度孪生特征对上采样后,与上一级尺度的孪生特征对拼接,经过多级非线性点卷积层对通道特征进行重加权;将重加权后的通道特征经过一组空洞率为0/1/2
的3
×
3空洞卷积以在不同局部空间范围进行特征融合,得到孪生多尺度融合特征;
10.s4、对孪生多尺度融合特征,分别从水平、垂直与通道三个方向生成加权向量,并将加权向量经过多级全连接与relu激活层,得到最终的三维加权向量;此三个加权向量分别与孪生多尺度融合特征的三个维度重加权,然后将重加权特征图经过1
×
1卷积层降维为二通道,经过softmax进行归一化为二通道概率图,得到表示缺陷与正常区域的二值图;
11.s5、计算输出二通道概率图与模拟标注图的交叉熵损失,并利用梯度反向传播最小化该损失,修正孪生卷积网络参数;
12.s6、以步骤s2-s5的方式遍历模拟数据集中所有样本,得到可用于未知形态复杂显示屏的缺陷检测模型。
13.s7、输入待检显示屏缺陷图像及对应正常检测图像,实现孪生对比的未知形态复杂显示屏缺陷检测,输出代表缺陷与正常区域的二值预测图。
14.进一步的,步骤s1具体基于10类复合检测画面模拟生成线和异常点缺陷及相应的模拟标注二值图,二值图上1和0分别代表缺陷及正常区域,包括以下子步骤:
15.s11:线缺陷通过要素集随机组合及区域随机排布方式生成,其要素集包括线的宽度(3-30个像素间隔为3,共10种)、颜色(黑/白/红/黄/蓝,共5种)、透明度(0%-50%间隔10%,共5种)、数量(1-5根线),当生成k条线时将画面划分为k部分,每根线在区域内进行随机位置排布。
16.s12:异常点缺陷采用多阈值分割及点集随机聚类方式生成,以间隔为5设定50-200共30个灰度级分割阈值,然后对正常检测画面以随机选取的某个阈值进行二值化分割,得到二值分割图;取二值分割图的边缘点集,利用k均值随机聚类将边缘点集划分为10个子点集,每个子点集随机赋予某种rgb颜色,得到最终的异常缺陷颜色及位置点集。
17.s13、将生成的线与异常点缺陷,进行高斯模糊后,叠加到被施加偏差干扰的正常检测画面,其中,偏差干扰包括亮度、对比度、饱和度各10%以内,rgb三通道色偏20个灰度级以内,iso颜色噪声0.01-0.03,强度噪声0.1-0.3,所有偏差数值选取满足均匀分布;
18.进一步的,在步骤s2中:所使用的孪生多级网络可为任意的深度卷积神经网络并选取中间3级作为输出(输出层级尺度以0.5倍逐级下降),在使用时并行地接收两张图像输入,进行一次代价函数计算及网络参数更新。
19.每次训练时,将缺陷图像(not good,ng图)与对应的正常检测图像(ok图)并行输入到多级孪生卷积网络,得到多尺度孪生特征图ng1/ng2/ng3以及ok1/ok2/ok3,并将对应尺度的孪生特征图并按通道维度进行拼接,即
[0020][0021]fi
=concat(ngi,oki),i=1,2,3
[0022]
其中,concat表示按通道维度拼接,hi、wi与ci分别为第i层特征图的宽、高和通道数量;hi=2h
i+1
,wi=2w
i+1
,即前一级特征图的尺寸是下一级的两倍,拼接后得到孪生特征对fi(i=1,2,3)。
[0023]
进一步的,步骤s3中下一级尺度特征f
i+1
对上采样后,与上一级尺度的特征fi拼接,得到拼接后的孪生特征对f
i,i+1
,即
[0024]fi,i+1
=concat(fi,up2×
(f
i+1
)),i=1,2
[0025]
其中,up2×
表示2倍上采样,拼接后的孪生特征分别经过k级1
×
1卷积conv1×1与
relu激活函数,得到通道维度的重加权特征midi;
[0026]
将重加权特征经过一组空洞率为0/1/2的3
×
3空洞卷积,以在不同空间范围进行特征融合,然后经过一次1
×
1卷积得到最终的多尺度融合特征li,即
[0027][0028][0029]
其中,dconv3×3(
·
,n)表示以空洞率为n的空洞卷积,表示空洞率为0、1、2的三组空洞卷积操作,并将三组卷积的结果按通道维度进行拼接,li表示第i层的多尺度融合特征;
[0030]
进一步的,步骤s4具体采用三维注意力方法从水平、垂直与通道三个方向生成加权向量。
[0031]
更进一步的,步骤s4对第一级多尺度融合特征l1∈rh×w×c进行三维注意力卷积解码,rh×w×c表示实数域内形状为h
×w×
c的特征张量,w、h、c分别为水平、垂直及通道方向的形状参数,具体操作为:首先使用最大池化、平均池化操作分别对l1的水平、垂直及通道方向生成特征向量描述,即
[0032]
pool(
·
,d)=concat(average(
·
,d),max(
·
,d))
[0033]fw
=pool(l1,horizontal)∈rw×1[0034]fh
=pool(l1,vertical)∈rh×1[0035]
fc=pool(l1,channel)∈rc×1[0036]
其中,rw×1表示实数域内形状为w
×
1的向量,rh×1表示实数域内形状为h
×
1的向量,rc×1表示实数域内形状为c
×
1的向量,average表示取特征图的平均值,max表示取特征图最大值,d表示对三维特征取最大值和平均值的方向;取平均值和最大值的结果进行通道拼接,即混合池化pool(
·
,d)操作;分别对第一层级孪生特征对l1使用pool(l1,horizontal)、pool(l1,vertical)和pool(l1,channel)的水平/垂直/通道方向池化得到三个方向的特征描述向量fw、fh、fc,再分别经过两次全连接及relu激活后,fc直接对输入特征进行通道加权,fw、fh分别复制h和w次到原特征图尺寸后再与原特征图相乘,即
[0037]
θ(
·
)=relu(conv1×1(
·
))2[0038]
wc=θ(fc)∈r1×1×c[0039]
wh=[θ(fh),θ(fh),...,θ(fh)]w×h∈rh×w×1[0040][0041][0042]
其中,θ(
·
)表示两个1
×
1卷积及relu激活层串联,wc、wh、ww分别为通道、垂直、水平三个方向的注意力加权向量,rh×w×1表示实数域中高为h,宽为w,通道数为1的张量,rh×w×2则为相应的2通道张量。表示矩阵按元素相乘,最终输出为一个宽与高为h
×
w的二通道特征图f
out
,将该特征图进一步使用softmax函数将每个点映射到0-1区间内,得到二通道概率图p,即,
[0043][0044]
其中,k的取值为0或1,f
out
(i,j,k)二通道特征图上第k个通道的i行j列,为标量,但可能超出0-1范围。p(i,j,k)表示二通道概率图第k个通道的i行j列,同样为标量,取值范围在0-1之间。在模型训练完毕使用时,需要进一步转化二通道概率图为二值图,当第一通道大于第二通道,表示属于正常区域概率更大,反之表示为缺陷区域概率更大,按此规则比较每个点的概率大小,输出二值图,即
[0045][0046]
进一步的,步骤s5中采用交叉熵损失函数作为代价函数的计算方法为:
[0047]
loss(i,j)=-gt(i,j)logp(i,j,0)-(1-gt(i,j))logp(i,j,1)
[0048][0049]
其中,logp(i,j,0)为二通道概率图的第一个通道,表示第i行j列为缺陷的概率,取值范围在0-1之间的连续数值,logp(i,j,1)为第二通道,表示第i行j列为正常的概率,gt(i,j)为模拟标注图上的第i行j列,取值为1表示有缺陷,否则为正常区域。
[0050]
本发明的有益效果:本发明的缺陷检测方法基于规则进行大量模拟数据生成来驱动孪生深度卷积网络模型,将缺陷建模为与正常检测画面的区别而不对缺陷形态进行直接建模,通过孪生特征的多级融合与三维注意力解码,从而得到了一个能检测与正常画面不同区域的网络模型,可用于未知形态的复杂显示屏缺陷像素级检测。
附图说明
[0051]
图1为本发明实施例的一种显示屏复杂画面的缺陷检测方法流程示意图。
[0052]
图2为本发明实施例的显示屏缺陷图像及标注数据示意图;
[0053]
图3为本发明实施例的算法架构、融合模块、解码模块示意图。
具体实施方式
[0054]
下面结合附图对本发明的实施例做进一步的说明。
[0055]
本发明实施例提供的一种显示屏复杂画面的缺陷检测方法具体实现方式如下:1)基于规则进行显示屏缺陷训练样本模拟生成,分别采用要素集排列组合及区域随机排布方式生成线缺陷,采用多阈值分割及点集随机聚类方式生成异常点缺陷,得到线、点缺陷图像数据以及标注图;2)以并行方式将模拟缺陷图像和对应正常显示图像输入共享网络参数的多级孪生卷积网络处理得到多级孪生特征图;3)利用通道加权及局部空洞卷积进行通道维度的尺度特征图拼接与融合,获得多尺度孪生特征融合图;4)使用三维注意力解码输出二通道概率图,计算二通道概率图与其标注图的交叉熵损失,并利用梯度反向传播进行损失最小化的孪生检测网络训练。5)输入待检显示屏缺陷图像及对应正常检测图像,实现孪生对比的未知形态复杂显示屏缺陷检测。流程图如图1所示,包括以下步骤:
[0056]
s1、对多类显示屏复杂画面进行2类缺陷图像及对应标注图的模拟生成,其中,线
缺陷采用要素集排列组合及区域随机排布方式,异常点缺陷采用多阈值分割及点集随机聚类方式,得到模拟缺陷训练数据集;
[0057]
s2、每次训练中,将模拟缺陷与对应正常检测图像并行输入多级孪生卷积网络,得到多尺度孪生特征图,按对应尺度在通道维度进行拼接,得到多尺度孪生特征对;
[0058]
s3、下一级尺度孪生特征对上采样后,与上一级尺度的孪生特征对拼接,经过多级非线性点卷积层(即1
×
1卷积层与relu激活函数)生成对通道特征进行重加权;接着将重加权后的通道特征经过一组空洞率为0/1/2的3
×
3空洞卷积以在不同局部空间范围进行特征融合,得到孪生多尺度融合特征;
[0059]
s4、对孪生多尺度融合特征,采用三维注意力模块分别从水平、垂直与通道三个方向生成加权向量,并将加权向量经过多级全连接与relu激活层,得到最终的三维加权向量;此三个加权向量分别与孪生多尺度融合特征的三个维度重加权,然后将重加权特征图经过1
×
1卷积层降维为二通道,经过softmax进行归一化为二通道概率图,逐点取概率大者为1,概率小者为0,得到表示缺陷与正常区域的二值图。
[0060]
s5、计算输出二通道概率图与模拟标注图的交叉熵损失,并利用梯度反向传播最小化该损失,修正孪生卷积网络参数。
[0061]
s6、以步骤s2-s5的方式遍历模拟数据集中所有样本,最终得到可用于未知形态复杂显示屏的缺陷检测模型。
[0062]
s7、输入待检显示屏缺陷图像及对应正常检测图像,实现孪生对比的未知形态复杂显示屏缺陷检测,输出代表缺陷与正常区域的二值预测图。
[0063]
需要说明的是,步骤s6可以根据实际情况选择遍历的轮次,一般进行5-10轮遍历。
[0064]
本实施例中,步骤s1具体基于10类复合检测画面模拟生成线和异常点缺陷及相应的模拟标注二值图,二值图上1和0分别代表缺陷及正常区域,包括以下子步骤:
[0065]
s11:线缺陷通过要素集随机组合及区域随机排布方式生成。其要素集包括线的宽度(3-30个像素间隔为3,共10种)、颜色(黑/白/红/黄/蓝,共5种)、透明度(0%-50%间隔10%,共5种)、数量(1-5根线)等属性要素,当生成k条线时将画面划分为k部分,每根线在区域内进行随机位置排布。
[0066]
s12:异常点缺陷采用多阈值分割及点集随机聚类方式生成。以间隔为5设定50-200共30个灰度级分割阈值,然后对正常检测画面以随机选取的某个阈值进行二值化分割,得到二值分割图;取二值分割图的边缘点集(实际生产中异常点缺陷容易在分割边缘出现),利用k均值随机聚类为将边缘点集划分为10个子点集,每个子点集随机赋予某种rgb颜色,得到最终的异常缺陷颜色及位置点集。
[0067]
需要说明的是:这里的10类复合检测画面可以为灰阶过渡区域、色度图、rgb纯色块、文字及人脸区域都发生变化的十类(或十张不同的)复合检测画面(附图2中给出了两个示例)。
[0068]
本实施例中,为了模拟真实的显示屏异常点形态,每个异常点实际上是两个中空圆环的嵌套,在512
×
512的图像中,外环直径取5-10个像素,内环为外环直径的0.5倍,内外环同色。
[0069]
s13、按上述规则生成的线与异常点缺陷,进行高斯模糊后,叠加到被施加偏差干扰的正常检测画面,其中偏差干扰包括亮度、对比度、饱和度各10%以内,rgb三通道色偏20
个灰度级以内,iso颜色噪声0.01-0.03,强度噪声0.1-0.3,所有偏差数值选取满足均匀分布。
[0070]
本实施例中,10张检测画面均生成线、异常点、混合缺陷样本各300张,共计10*300*3=9000张模拟复杂缺陷样本。(见图2样例)
[0071]
在步骤s2中(见图3(a)结构图):所使用的孪生多级网络可为任意的深度卷积神经网络并选取中间3级作为输出,在使用时并行地接收两张图像输入,进行一次代价函数计算及网络参数更新(原网络中每输入一张图像进行一次更新)。
[0072]
本实施例中,选用了resnet-50并选择第3、4、5个stage进行输出,即第22、40及49小层的输出。
[0073]
每次训练时,并行得将缺陷图像(not good,ng图)与对应的正常检测图像(ok图)输入到多级孪生卷积网络,得到多尺度孪生特征图ng1/ng2/ng3以及ok1/ok2/ok3,并将对应尺度的孪生特征图并按通道维度进行拼接,即
[0074][0075]fi
=concat(ngi,oki),i=1,2,3
[0076]
其中,concat表示按通道维度拼接,hi、wi与ci分别为第i层特征图的宽、高和通道数量;hi=2h
i+1
,wi=2w
i+1
,即前一级特征图的尺寸是下一级的两倍,拼接后得到孪生特征对fi(i=1,2,3)。
[0077]
如图3(b)模块结构图,本实施例中,步骤s3中下一级尺度特征对上采样后,与上一级尺度的特征拼接,即
[0078]fi,i+1
=concat(fi,up2×
(f
i+1
))
[0079]
其中,up2×
表示2倍上采样,拼接后的孪生特征经过k级1
×
1卷积conv1×1与relu激活函数,得到通道维度的重加权特征midi,本实施例中,取k=3。
[0080]
将重加权特征经过一组空洞率为0/1/2的3
×
3空洞卷积,以在不同空间范围进行特征融合,然后经过一次1
×
1卷积得到最终的多尺度融合特征li,即
[0081][0082][0083]
其中,dconv3×3(
·
,n)表示以空洞率为n的空洞卷积,表示空洞率为0、1、2的三组空洞卷积操作,并将三组卷积的结果按通道维度进行拼接,li表示第i层的多尺度融合特征;
[0084]
本实施例中,步骤s4对第一级多尺度融合特征l1∈rh×w×c进行三维注意力卷积解码,该解码过程可见图3(c)。具体操作为:首先使用最大池化、平均池化操作分别对l1的水平、垂直及通道方向生成特征向量描述,即
[0085]
pool(
·
,d)=concat(average(
·
,d),max(
·
,d))
[0086]fw
=pool(l1,horizontal)∈rw×1[0087]fh
=pool(l1,vertical)∈rh×1[0088]
fc=pool(l1,channel)∈rc×1[0089]
其中,rw×1表示实数域内形状为w
×
1的向量,rh×1表示实数域内形状为h
×
1的向量,rc×1表示实数域内形状为c
×
1的向量,average表示取特征图的平均值,max表示取特征
图最大值,d表示对三维特征取最大值和平均值的方向;取平均值和最大值的结果进行通道拼接,即混合池化pool(
·
,d)操作;分别对第一层级孪生特征对l1使用pool(l1,horizontal),pool(l1,vertical)和pool(l1,channel)的水平/垂直/通道方向池化得到三个方向的特征描述向量fw、fh、fc,再分别经过两次全连接及relu激活后,fc直接对输入特征进行通道加权,fw、fh分别复制h和w次到原特征图尺寸后再与原特征图相乘,即
[0090]
θ(
·
)=relu(conv1×1(
·
))2[0091]
wc=θ(fc)∈r1×1×c[0092]
wh=[θ(fh),θ(fh),...,θ(fh)]w×h∈rh×w×1[0093][0094][0095]
其中,relu(conv1×1(
·
))2表示两个1
×
1卷积及relu激活层串联,表示矩阵按元素相乘,最终输出为一个宽与高为h
×
w的二通道特征图f
out
,而该特征图进一步使用softmax函数将每个点映射到0-1区间内,表示概率值,即
[0096][0097]
其中,k的取值为0或1,f
out
(i,j,k)二通道特征图上第k个通道的i行j列,为标量,但可能超出0-1范围。p(i,j,k)表示二通道概率图第k个通道的i行j列,同样为标量,取值范围在0-1之间。在模型训练完毕使用时,需要进一步转化二通道概率图为二值图,当第一通道大于第二通道,表示属于正常区域概率更大,反之表示为缺陷区域概率更大,按此规则比较每个点的概率大小,输出二值图,即
[0098][0099]
本实施例中,步骤s5中采用交叉熵损失函数作为代价函数的计算方法为:
[0100]
loss(i,j)=-gt(i,j)logp(i,j,0)-(1-gt(i,j))logp(i,j,1)
[0101][0102]
其中,其中,logp(i,j,0)为二通道概率图的第一个通道,表示第i行j列为缺陷的概率,取值范围在0-1之间的连续数值,logp(i,j,1)为第二通道,表示第i行j列为正常的概率,gt(i,j)为模拟标注图上的第i行j列,取值为1表示有缺陷,否则为正常区域。
[0103]
本发明提供的缺陷检测方法能够克服工业显示屏中缺陷样品难以收集、类型不全、涉及商业保密等难题,并能有效训练深度卷积网络模型;无需对形态、分布不确定的复杂缺陷直接建模,在面对复杂缺陷时,通过缺陷与正常检测画面的比较,可以获取已知缺陷和未知形态缺陷的精确位置;由于在模拟数据生成过程可引入亮度、对比度、饱和度、iso噪声等人为干扰,并使用深度孪生卷积网络对这些干扰进行学习,从而提升了在多种显示条件下缺陷检测的可靠性。本发明的方法解决了显示屏复杂画面的缺陷细粒度检测问题,且不需要实际缺陷样本及标注,具有未知形态缺陷检测的泛化性。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1