CN108038853A - 一种基于卷积神经网络和主动学习的瓷砖表面缺陷识别方法 - Google Patents
一种基于卷积神经网络和主动学习的瓷砖表面缺陷识别方法 Download PDFInfo
- Publication number
- CN108038853A CN108038853A CN201711361708.XA CN201711361708A CN108038853A CN 108038853 A CN108038853 A CN 108038853A CN 201711361708 A CN201711361708 A CN 201711361708A CN 108038853 A CN108038853 A CN 108038853A
- Authority
- CN
- China
- Prior art keywords
- mtd
- image
- msub
- convolutional neural
- sample
- 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
- 230000007547 defect Effects 0.000 title claims abstract description 46
- 238000000034 method Methods 0.000 title claims abstract description 44
- 239000000919 ceramic Substances 0.000 title claims abstract description 38
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 37
- 238000012549 training Methods 0.000 claims abstract description 33
- 238000007781 pre-processing Methods 0.000 claims abstract description 5
- 230000009466 transformation Effects 0.000 claims description 16
- 238000003708 edge detection Methods 0.000 claims description 15
- 238000006243 chemical reaction Methods 0.000 claims description 8
- 238000005070 sampling Methods 0.000 claims description 7
- 238000007689 inspection Methods 0.000 claims description 5
- 208000037656 Respiratory Sounds Diseases 0.000 claims description 4
- 238000012360 testing method Methods 0.000 claims description 4
- 239000000284 extract Substances 0.000 claims description 3
- 230000001186 cumulative effect Effects 0.000 claims description 2
- 238000006073 displacement reaction Methods 0.000 claims description 2
- 230000009977 dual effect Effects 0.000 claims description 2
- 238000001914 filtration Methods 0.000 claims description 2
- 239000011159 matrix material Substances 0.000 claims description 2
- 238000002203 pretreatment Methods 0.000 claims description 2
- 230000001629 suppression Effects 0.000 claims description 2
- 238000001514 detection method Methods 0.000 abstract description 8
- 238000000605 extraction Methods 0.000 abstract description 2
- 238000002372 labelling Methods 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000009394 selective breeding Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 239000011449 brick Substances 0.000 description 1
- 238000002790 cross-validation Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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
- G06T7/0008—Industrial image inspection checking presence/absence
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
- G06F18/24137—Distances to cluster centroïds
- G06F18/2414—Smoothing the distance, e.g. radial basis function networks [RBFN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/168—Segmentation; Edge detection involving transform domain methods
-
- 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/20048—Transform domain processing
- G06T2207/20061—Hough transform
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
一种基于卷积神经网络和主动学习的瓷砖表面缺陷识别方法,该方法包括如下步骤:(1)获取图像并预处理;(2)训练集的建立;(3)卷积神经网络的建立与训练;(4)主动学习;(5)模型迭代;(6)在线检测。本发明对比现有技术相比:(1)使用卷积神经网络自动提取瓷砖表面缺陷的特征,在缺陷特征提取方面不再需要很好的先验知识,而且可以识别一张待检测图像中的多种缺陷类型;(2)通过在卷积神经网络训练中引入主动学习,有效减少样本的标注成本,加速模型的收敛。
Description
技术领域
本发明属于缺陷检测识别技术领域,更具体地涉及一种基于卷积神经网络和主动学习的瓷砖表面缺陷识别方法。
背景技术
在陶瓷墙地砖生产过程中,由于制造工艺的不当,或者搬运过程中的碰撞,瓷砖表面会出现缺釉,裂纹,刮痕等缺陷,这些缺陷会影响瓷砖作为建筑装饰材料的美观性,目前瓷砖表面缺陷检测仍大量依靠人工完成,这种方法不仅效率低下,且容易受到检测人员的直观感受影响,近年来,利用机器视觉的自动化检测产品表面缺陷方法不断得到重视。
现有技术已存在少量瓷砖表面缺陷检测方法,主要利用人工选择区分度高的特征并提取,然后通过BP神经网络、模板匹配等方法进行分类。上述方法需要很好的特征选择方面的先验知识,且针对不同的缺陷类型需要选择不同的特征,适用性差。近几年,深度学习方法在图像识别问题上有很高的准确率,虽然在瓷砖表面检测领域尚未应用,但在相邻技术领域已经出现。例如,公开号为CN104850858A的专利公开了“一种注塑制品缺陷检测方法”,包括以下步骤:采集正常和存在已知缺陷的注塑制品的图像;构建多层卷积神经网络并训练;将采集到的实测注塑制品图像经过灰度化,图像缩放和图像归一化后输入到已训练的网络模型并判断属于哪种缺陷类型。该方法改进了传统的缺陷检测方法,使用了一种“端到端”的模型,不再需要很好的缺陷特征方面的先验知识。但是该方法总共有4300张注塑制品样本图片需要标记,且需要识别的缺陷类型只有2种。瓷砖表面涉及的缺陷类型更多,为保证分类结果的准确率需要更多已标注的训练样本,给企业带来额外的标注成本。
在机器学习领域,可以采取主动学习的方法降低人工标注的工作量。主动学习的主要思想为;在大量未标记的样本中,采取特定的采样策略,挑选少量最具信息量的样本交给人类专家标注,并使用标记过的样本训练模型,实现对未知样本的分类。目前,主动学习方法根据样本挑选策略和样本数据的形式,可以分为基于“流”和基于“池”的两种方法。基于流的方法是指未标记样本一个一个进入分类器,分类器考虑是否对其标记,还是舍弃,这种方法时间复杂度很高。更为普遍的是基于池的主动学习方法,主要步骤是首先给予少量标注样本训练一个初始分类器,再在未标记样本中挑选一些样本标记,并将其加入到训练集中重新训练分类器,如此循环直到达到某个条件停止。
发明内容
本发明要克服现有技术的不足,提供一种基于卷积神经网络和主动学习的瓷砖表面缺陷识别方法,通过卷积神经网络可以避免人工选择特征,并结合主动学习降低样本的人工标注量。
本发明的基于卷积神经网络和主动学习的瓷砖表面缺陷识别方法,包括如下步骤:
步骤1、获取含缺陷的瓷砖表面图像,数量应不少于1000张,并进行预处理;
步骤2、对预处理后的瓷砖表面图像通过滑动窗口法获得更多的图像块,其集合为U,
对其均分成5份,即U={U1,U2,U3,U4,U5},对U1进行标注作为初始训练集;
步骤3、建立卷积神经网络,并使用U1作为当前训练集Ureal训练;
步骤4、从U中选择一个未使用过的数据集(例如U2),利用主动学习样本挑选策略从其中挑选信息量最大的样本,进行人工标注后加入Ureal,并利用Ureal重新训练卷积神经网络;
步骤5、循环执行步骤4,直到模型准确率达到要求,或者U中没有未使用过的数据集,最终得到训练好的卷积神经网络;
步骤6、对需要检测的瓷砖表面图像进行预处理后加入到训练好的卷积神经网络,输出包含的缺陷类型;
所述步骤1和步骤6的预处理步骤相同,具体包括以下步骤:
(1-1)将需要处理的图像进行灰度变换得到灰度图像;
(1-2)对灰度图像使用canny边缘检测算法得到边缘图像;
(1-3)将边缘图像使用概率霍夫变换得到4条边沿直线的8个端点的坐标,并计算4条边沿直线的交点(即瓷砖表面4个角点)的坐标;
(1-4)利用步骤3)中瓷砖表面4个角点的坐标,再加上给定转换后四对像素点坐标,通过透视变换得到大小一致(64×64),无倾斜的瓷砖表面图像;
所述步骤3中卷积神经网络包括依次级联的卷积层C1,池化层S1,卷积层C2,池化层S2,卷积层C3,池化层S3,卷积层C4全连接层F1,softmax层,具体如下:
C1层:输入为64×64的图像块,采用32个大小为5×5的卷积核,步长为1,通过用全0填充得到32张64×64的特征图;
S2层:采用最大值操作的方法,所用过滤器大小为2×2,步长为2,输出32张大小为32×32的特征图;
C2层:采用64个大小为5×5的卷积核,步长为1,不使用全0填充,得到64张28×28的特征图;
S2层:采用最大值操作的方法,所用过滤器大小为2×2,步长为2,输出64张14×14的特征图;
C3层:采用128个大小为5×5的卷积核,步长为1,不使用全0填充,得到128张10×10的特征图;
S3层:采用最大值操作的方法,所用过滤器大小为2×2,步长为2,输出128张5×5的特征图;
C4层:采用256个大小为5×5的卷积核,256张1×1的特征图;
F1:输入节点个数为256,输出节点个数为4,记为{y0,y1,y3,y4},依次代表{不含任何缺陷,缺釉,裂纹,刮痕};
softmax层:将F1的输出变成概率分布;
所述步骤4中主动学习样本挑选策略为:
(4-1):用步骤3训练好的卷积神经网络测试未标注数据集中每个样本,得到每个样本属于各个类别的概率,用p表示每个样本的不确定性,表达式如下:
其中λ为正的权重参数,
(4-2)每个样本的p从小到大排序,挑选前20%的样本作为信息量最大的样本进行人工标注;
本发明的优点是:使用卷积神经网络自动提取瓷砖表面缺陷的特征,在缺陷特征提取方面不再需要很好的先验知识,而且可以识别一张待检测图像中的多种缺陷类型;通过在卷积神经网络训练中引入主动学习,有效减少样本的标注成本,加速模型的收敛。
附图说明
图1是本发明方法的流程示意图。
图2是本发明方法的瓷砖表面图像预处理的示意图。
图3是本发明方法的主动学习示意图。
具体实施方式
本发明提供一种基于卷积神经网络和主动学习的瓷砖表面缺陷检测方法,为了进一步说明本发明的技术方案,下面结合附图并举实例进行说明。应当理解,此处所举的实例仅仅用于解释本发明,并不用于限定本发明。
如图1所示,一种基于卷积神经网络和主动学习的瓷砖表面缺陷检测方法包括如下步骤:
(1)获取图像并预处理:获取含缺陷的瓷砖表面图像,数量应不少于1000张,并进行预处理。
(2)训练集的建立:预处理后的瓷砖表面图像通过滑动窗口法获得更多的图像块,其集合为U,对其均分成5份,即U={U1,U2,U3,U4,U5},对U1进行标注作为初始训练集。
(3)卷积神经网络的建立与训练:建立卷积神经网络,并使用U1作为当前训练集Ureal训练。
(4)主动学习:从U中选择一个未使用过的数据集(例如U2),利用主动学习样本挑选策略从其中挑选信息量最大的样本,进行人工标注后加入Ureal,并利用Ureal重新训练卷积神经网络。
(5)模型迭代:循环执行步骤(4),直到模型准确率达到要求,或者U中没有未使用过的数据集,最终得到训练好的卷积神经网络。
(6)在线检测:对需要检测的瓷砖表面图像进行预处理后加入到训练好的卷积神经网络,输出包含的缺陷类型。
下面结合实例对上述步骤进行更加详细地解释。
所述的获取图像并预处理如图2所示,具体包括如下步骤:
(101)使用工业相机获取1000张含缺陷的瓷砖表面图像。
(102)灰度转换
本步骤主要是将工业相机采集到的大量彩色图片变成灰度图像,方便之后的边缘检测,所用的公式为:
Gray=R*0.299+G*0.587+B*0.114
(103)边缘检测
本步骤采用Canny边缘检测算法进行边缘检测。Canny边缘检测算法一直是边缘检测的经典算法,其目标是找到一个最优的边缘检测算法,要求尽可能多地标识出图像中的实际边缘,且标识出的边缘要尽可能与实际图像中的实际边缘尽可能接近。
Canny边缘检测算法的原理简单来说包含:对灰度图像高斯滤波;用一阶偏导的有限差分来计算梯度的幅值和方向;对梯度幅值进行非极大值抑制;用双阈值算法检测和连接边缘。
(104)概率霍夫变换
本实例的对象为日用瓷砖,为方形,其边沿为直线,本步骤在步骤(102)得到的边沿图像上通过概率霍夫变换(Probabilistic Hough Transform)得到4条直线的8个端点的坐标。霍夫变换提取直线的步骤如下:
S1:随机抽取图像中的边缘点,如果该点已经被标定为是某一条直线上的点,则继续在剩下的边缘点中随机抽取一个边缘点,直到所有边缘点都抽取完了为止。
S2:对该点进行霍夫变换,并进行累加和计算.
S3:选取在霍夫空间内值最大的点,如果该点大于阈值的,则进行步骤S4,否则回到步骤S1。
S4:根据霍夫变换得到的最大值,从该点出发,沿着直线的方向位移,从而找到直线的两个端点。
S5:计算直线的长度,如果大于某个阈值,则被认为是好的直线输出,回到步骤1。
(105)透视变换
在实际应用中,采集图像的工业相机可能发生意外的位置旋转等问题,使得采集到的瓷砖图像出现倾斜。因此,本步骤针在(103)得到4条边沿直线的基础上采用透视变换得到大小一致,无倾斜的彩色瓷砖表面图像。
透视变换的公式为:
其中(u,v)为原始图像像素坐标,(x=x’/w’,y=y’/w’)为变换之后的图像像素坐标。利用步骤(103)得到4条直线的表达式,可以求得原图像中瓷砖4个角点的坐标,再加上给定透视变换对应的四对像素点坐标,即可求得透视变换矩阵。实现倾斜图像到大小一致,无倾斜的彩色瓷砖表面图像的转换。
所述训练集的建立具体步骤如下:
(201)由于采集到的原始图像大小为600×800,可能存在两种或更多的缺陷类型,因此本步骤通过滑动窗口法,用64×64的滑动窗口,步长为32,将原始图像分成多个图像块(总集合记为U),通过这种方法既能够尽可能地将不同的缺陷类型分隔开来。
(202)本发明选择的是基于池(pool)的主动学习方法,因此需要将全部的图像块样本均分为5份,即U={U1,U2,U3,U4,U5}。
所述卷积神经网络的建立和训练具体步骤如下:
卷积神经网络的结构包括依次级联的卷积层C1,池化层S1,卷积层C2,池化层S2,卷积层C3,池化层S3,卷积层C4全连接层F1,softmax层,具体如下:
C1层:输入为64×64的3通道彩色图像块,采用32个大小为5×5的卷积核,步长为1,通过用全0填充得到32张64×64的特征图。
S2层:采用最大值操作的方法,所用过滤器大小为2×2,步长为2,输出32张大小为32×32的特征图。
C2层:采用64个大小为5×5的卷积核,步长为1,不使用全0填充,得到64张28×28的特征图。
S2层:采用最大值操作的方法,所用过滤器大小为2×2,步长为2,输出64张14×14的特征图。
C3层:采用128个大小为5×5的卷积核,步长为1,不使用全0填充,得到128张10×10的特征图。
S3层:采用最大值操作的方法,所用过滤器大小为2×2,步长为2,输出128张5×5的特征图。
C4层:采用256个大小为5×5的卷积核,256张1×1的特征图。
F1:输入节点个数为256,输出节点个数为4,记为{y0,y1,y3,y4},依次代表{不含任何缺陷,缺釉,裂纹,刮痕}。
softmax层:将F1的输出变成概率分布。
网络的训练:需要先标注U1中的图像,作为当前训练集Ureal。实际训练中,将Ureal按6:2:2分为训练集,验证集,测试集,采用交叉验证法调优。其中网络的权重初始参数满足均方差为0.01,均值为0的高斯分布,初试偏差参数全为零。
所述主动学习如图3所示,具体步骤如下:
本步骤的目的是通过预先设定的挑选策略,挑选含信息量最大的样本进行人工标注,从而降低人工标注的劳动量。主动学习样本的挑选策略主要分为基于不确定性和基于委员会投票的。本发明针对实际情况,使用了一种改进的基于不确定性样本挑选策略,具体步骤如下:
(401)用训练好的卷积神经网络测试U2中每个样本,可以得到每个样本属于各个类别的概率,用p表示每个样本的不确定性,表达式如下:
其中:
其中表示某个样本最大后验概率和次大后验概率的差,其值越大,代表该样本不确定性越大,越值得标注。但在实际问题中,训练集U中不含缺陷的图像块要多于含缺陷的图像块,所以我们更偏向于含缺陷的图像块加入到当前数据集。例如有两个样本的卷积神经网络前向传播结果为{y0,y1,y3,y4}={0.4,0.4,0.1,0.1},{y0,y1,y3,y4}={0.1,0.4,0.4,0.1},两者最大后验概率和次大后验概率相同,但后一个样本更有可能含有缺陷,我们更希望选择后面一个样本,所以引入λ×P(y0|x)一项,其中λ为权重参数,当其值为0,就退化为传统的基于不确定性抽样策略。p越小,样本所含信息量越大。因此对U2中每个样本的p从小到大排序,挑选前20%的样本(其集合记为U2′)加入到当前数据集,此时Ureal={U1,U2′}。
(402)用Ureal重新训练卷积神经网络
所述模型迭代步骤具体如下:
依次从U3,U4,U5发挑选需要标注的样本,加入Ureal,并重新训练卷积神经网络,直到模型准确率达到预先要求,或者没有待标注样本。
所述在线检测步骤具体如下:
本步骤使用最终得到的卷积神经网络识作为分类器别待检测图像,首先需要仍需要将原始图像预处理,具体方法同步骤(1),然后统计分类器的输出结果,可以得到原始图像包含哪些缺陷。
本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围不应当被视为仅限于实施例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。
Claims (1)
1.一种基于卷积神经网络和主动学习的瓷砖表面缺陷识别方法,包括以下步骤:
步骤1、获取含缺陷的瓷砖表面图像,并进行预处理;预处理步骤具体如下:
(1-1)将需要处理的图像进行灰度变换得到灰度图像;
(1-2)对灰度图像使用canny边缘检测算法得到边缘图像;
(1-3)对边缘图像使用概率霍夫变换得到4条边沿直线的8个端点的坐标,并计算瓷砖表面4个角点的坐标;
(1-4)利用步骤(1-3)中瓷砖表面4个角点的坐标,再加上给定转换后四对像素点坐标,通过透视变换得到大小一致(64×64),无倾斜的瓷砖表面图像;
步骤2、对预处理后的瓷砖表面图像通过滑动窗口法获得更多的图像块,其集合为U,对其均分成5份,即U={U1,U2,U3,U4,U5},对U1进行标注作为初始训练集;所述的获取图像并预处理具体包括如下步骤:
(101)使用工业相机获取1000张含缺陷的瓷砖表面图像;
(102)灰度转换,将工业相机采集到的大量彩色图片变成灰度图像,方便之后的边缘检测,所用的公式为:
Gray=R*0.299+G*0.587+B*0.114
(103)边缘检测,采用Canny边缘检测算法进行边缘检测;Canny边缘检测算法一直是边缘检测的经典算法,其目标是找到一个最优的边缘检测算法,要求尽可能多地标识出图像中的实际边缘,且标识出的边缘要尽可能与实际图像中的实际边缘尽可能接近;
Canny边缘检测算法的原理简单来说包含:对灰度图像高斯滤波;用一阶偏导的有限差分来计算梯度的幅值和方向;对梯度幅值进行非极大值抑制;用双阈值算法检测和连接边缘;
(104)概率霍夫变换
在步骤(102)得到的边沿图像上通过概率霍夫变换(Probabilistic HoughTransform)得到4条直线的8个端点的坐标;霍夫变换提取直线的步骤如下:
S1:随机抽取图像中的边缘点,如果该点已经被标定为是某一条直线上的点,则继续在剩下的边缘点中随机抽取一个边缘点,直到所有边缘点都抽取完了为止;
S2:对该点进行霍夫变换,并进行累加和计算.
S3:选取在霍夫空间内值最大的点,如果该点大于阈值的,则进行步骤S4,否则回到步骤S1;
S4:根据霍夫变换得到的最大值,从该点出发,沿着直线的方向位移,从而找到直线的两个端点;
S5:计算直线的长度,如果大于某个阈值,则被认为是好的直线输出,回到步骤1;
(105)透视变换
在实际应用中,采集图像的工业相机可能发生意外的位置旋转等问题,使得采集到的瓷砖图像出现倾斜;因此,本步骤针在(103)得到4条边沿直线的基础上采用透视变换得到大小一致,无倾斜的彩色瓷砖表面图像;
透视变换的公式为:
<mrow>
<mfenced open = "[" close = "]">
<mtable>
<mtr>
<mtd>
<msup>
<mi>x</mi>
<mo>&prime;</mo>
</msup>
</mtd>
<mtd>
<msup>
<mi>y</mi>
<mo>&prime;</mo>
</msup>
</mtd>
<mtd>
<msup>
<mi>w</mi>
<mo>&prime;</mo>
</msup>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>=</mo>
<mfenced open = "[" close = "]">
<mtable>
<mtr>
<mtd>
<mi>u</mi>
</mtd>
<mtd>
<mi>v</mi>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>&times;</mo>
<mfenced open = "[" close = "]">
<mtable>
<mtr>
<mtd>
<msub>
<mi>a</mi>
<mn>11</mn>
</msub>
</mtd>
<mtd>
<msub>
<mi>a</mi>
<mn>12</mn>
</msub>
</mtd>
<mtd>
<msub>
<mi>a</mi>
<mn>13</mn>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>a</mi>
<mn>21</mn>
</msub>
</mtd>
<mtd>
<msub>
<mi>a</mi>
<mn>22</mn>
</msub>
</mtd>
<mtd>
<msub>
<mi>a</mi>
<mn>23</mn>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>a</mi>
<mn>31</mn>
</msub>
</mtd>
<mtd>
<msub>
<mi>a</mi>
<mn>32</mn>
</msub>
</mtd>
<mtd>
<msub>
<mi>a</mi>
<mn>33</mn>
</msub>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
其中(u,v)为原始图像像素坐标,(x=x’/w’,y=y’/w’)为变换之后的图像像素坐标;利用步骤(103)得到4条直线的表达式,可以求得原图像中瓷砖4个角点的坐标,再加上给定透视变换对应的四对像素点坐标,即可求得透视变换矩阵实现倾斜图像到大小一致,无倾斜的彩色瓷砖表面图像的转换;
所述训练集的建立具体步骤如下:
(201)由于采集到的原始图像大小为600×800,可能存在两种或更多的缺陷类型,因此本步骤通过滑动窗口法,用64×64的滑动窗口,步长为32,将原始图像分成多个图像块(总集合记为U),通过这种方法既能够尽可能地将不同的缺陷类型分隔开来;
(202)选择基于池(pool)的主动学习方法,将全部的图像块样本均分为5份,即U={U1,U2,U3,U4,U5};
步骤3、建立卷积神经网络,并使用U1作为当前训练集Ureal训练;步骤3中卷积神经网络包括依次级联的卷积层C1,池化层S1,卷积层C2,池化层S2,卷积层C3,池化层S3,卷积层C4全连接层F1,softmax层,具体如下:
C1层:输入为64×64的图像块,采用32个大小为5×5的卷积核,步长为1,通过用全0填充得到32张64×64的特征图;
S2层:采用最大值操作的方法,所用过滤器大小为2×2,步长为2,输出32张大小为32×32的特征图;
C2层:采用64个大小为5×5的卷积核,步长为1,不使用全0填充,得到64张28×28的特征图;
S2层:采用最大值操作的方法,所用过滤器大小为2×2,步长为2,输出64张14×14的特征图;
C3层:采用128个大小为5×5的卷积核,步长为1,不使用全0填充,得到128张10×10的特征图;
S3层:采用最大值操作的方法,所用过滤器大小为2×2,步长为2,输出128张5×5的特征图;
C4层:采用256个大小为5×5的卷积核,256张1×1的特征图;
F1:输入节点个数为256,输出节点个数为4,记为{y0,y1,y3,y4},依次代表{不含任何缺陷,缺釉,裂纹,刮痕};
softmax层:将F1的输出变成概率分布;
步骤4、从U中选择一个未使用过的数据集,利用主动学习样本挑选策略从其中挑选信息量最大的样本,进行人工标注后加入Ureal,并利用Ureal重新训练卷积神经网络;步骤4中主动学习样本挑选策略为:
(4-1):用步骤3训练好的卷积神经网络测试U中未使用过数据集中的每个样本,得到每个样本属于各个类别的概率,用p表示每个样本的不确定性,表达式如下:
<mrow>
<mi>p</mi>
<mo>=</mo>
<mi>P</mi>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>y</mi>
<mo>^</mo>
</mover>
<mn>1</mn>
</msub>
<mo>|</mo>
<mi>x</mi>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mi>P</mi>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>y</mi>
<mo>^</mo>
</mover>
<mn>2</mn>
</msub>
<mo>|</mo>
<mi>x</mi>
<mo>)</mo>
</mrow>
<mo>+</mo>
<mi>&lambda;</mi>
<mo>&times;</mo>
<mi>P</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>y</mi>
<mn>0</mn>
</msub>
<mo>|</mo>
<mi>x</mi>
<mo>)</mo>
</mrow>
</mrow>
其中λ为正的权重参数,
(4-2)每个样本的p从小到大排序,挑选前20%的样本作为信息量最大的样本进行人工标注;
步骤5、循环执行步骤4,直到模型准确率达到要求,或者U中没有未使用过的数据集,最终得到训练好的卷积神经网络;
步骤6、对需要检测的瓷砖表面图像进行与步骤1相同的预处理后加入到最终训练好的卷积神经网络,统计输出包含的缺陷类型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711361708.XA CN108038853B (zh) | 2017-12-18 | 2017-12-18 | 一种基于卷积神经网络和主动学习的瓷砖表面缺陷识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711361708.XA CN108038853B (zh) | 2017-12-18 | 2017-12-18 | 一种基于卷积神经网络和主动学习的瓷砖表面缺陷识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108038853A true CN108038853A (zh) | 2018-05-15 |
CN108038853B CN108038853B (zh) | 2020-05-26 |
Family
ID=62099608
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711361708.XA Active CN108038853B (zh) | 2017-12-18 | 2017-12-18 | 一种基于卷积神经网络和主动学习的瓷砖表面缺陷识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108038853B (zh) |
Cited By (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108896567A (zh) * | 2018-08-06 | 2018-11-27 | 慧泉智能科技(苏州)有限公司 | 一种对钮扣电池表面压伤缺陷进行检测的方法 |
CN108985334A (zh) * | 2018-06-15 | 2018-12-11 | 广州深域信息科技有限公司 | 基于自监督过程改进主动学习的通用物体检测***及方法 |
CN109068174A (zh) * | 2018-09-12 | 2018-12-21 | 上海交通大学 | 基于循环卷积神经网络的视频帧率上变换方法及*** |
CN109142374A (zh) * | 2018-08-15 | 2019-01-04 | 广州市心鉴智控科技有限公司 | 基于超小样本训练高效质检模型的方法及*** |
CN109242825A (zh) * | 2018-07-26 | 2019-01-18 | 北京首钢自动化信息技术有限公司 | 一种基于深度学习技术的钢铁表面缺陷识别方法和装置 |
CN109406533A (zh) * | 2018-10-25 | 2019-03-01 | 北京阿丘机器人科技有限公司 | 一种产品表面缺陷的检测***及方法 |
CN109444150A (zh) * | 2018-11-06 | 2019-03-08 | 西北工业大学 | 非接触式裂纹测量方法及其装置 |
CN109671058A (zh) * | 2018-12-05 | 2019-04-23 | 武汉精立电子技术有限公司 | 一种大分辨率图像的缺陷检测方法及*** |
CN109760463A (zh) * | 2018-12-29 | 2019-05-17 | 广东博智林机器人有限公司 | 墙纸拼缝对齐装置以及利用其进行墙纸接缝对齐的方法 |
CN110046707A (zh) * | 2019-04-15 | 2019-07-23 | 清华大学深圳研究生院 | 一种神经网络模型的评估优化方法和*** |
CN110070131A (zh) * | 2019-04-24 | 2019-07-30 | 苏州浪潮智能科技有限公司 | 一种面向数据驱动建模的主动学习方法 |
CN110310255A (zh) * | 2019-05-24 | 2019-10-08 | 同济大学 | 基于目标检测和图像处理的转辙机缺口检测方法 |
CN110458231A (zh) * | 2019-08-12 | 2019-11-15 | 广东工业大学 | 一种陶瓷产品检测方法、装置和设备 |
CN110503161A (zh) * | 2019-08-29 | 2019-11-26 | 长沙学院 | 一种基于弱监督yolo模型的矿石泥团目标检测方法和*** |
WO2020001480A1 (zh) * | 2018-06-28 | 2020-01-02 | 广东科达洁能股份有限公司 | 一种瓷砖按等级包装方法及*** |
CN110689038A (zh) * | 2019-06-25 | 2020-01-14 | 深圳市腾讯计算机***有限公司 | 神经网络模型的训练方法、装置和医学图像处理*** |
CN110717880A (zh) * | 2018-07-11 | 2020-01-21 | 杭州海康威视数字技术股份有限公司 | 一种缺陷检测方法、装置及电子设备 |
CN111062908A (zh) * | 2018-10-01 | 2020-04-24 | Skc株式会社 | 检测膜缺陷的方法及*** |
CN111462062A (zh) * | 2020-03-26 | 2020-07-28 | 佛山科学技术学院 | 一种马赛克瓷砖缺陷检测方法及装置 |
CN111489326A (zh) * | 2020-01-13 | 2020-08-04 | 杭州电子科技大学 | 基于半监督深度学习的铜箔基板表面缺陷检测方法 |
CN111524119A (zh) * | 2020-04-22 | 2020-08-11 | 征图新视(江苏)科技股份有限公司 | 基于深度学习的二维码缺陷检测方法 |
CN111833313A (zh) * | 2020-06-22 | 2020-10-27 | 广东工业大学 | 基于深度主动学习的工业产品表面缺陷检测方法及*** |
US10878287B2 (en) | 2018-12-04 | 2020-12-29 | Here Global B.V. | Method and apparatus for culling training data |
CN112633393A (zh) * | 2020-12-29 | 2021-04-09 | 北京理工大学重庆创新中心 | 一种瓷砖纹理自动分类方法及装置 |
CN113658176A (zh) * | 2021-09-07 | 2021-11-16 | 重庆科技学院 | 基于交互注意力与卷积神经网络的瓷砖表面缺陷检测方法 |
CN113850335A (zh) * | 2021-09-28 | 2021-12-28 | 哈尔滨工业大学 | 一种用于卫浴陶瓷缺陷检测的数据增广方法 |
CN114648683A (zh) * | 2022-05-23 | 2022-06-21 | 天津所托瑞安汽车科技有限公司 | 基于不确定性分析的神经网络性能提升方法和设备 |
US11853812B2 (en) | 2018-12-20 | 2023-12-26 | Here Global B.V. | Single component data processing system and method utilizing a trained neural network |
CN117372414A (zh) * | 2023-11-09 | 2024-01-09 | 东莞市兆丰精密仪器有限公司 | 电池极性检测方法、装置、设备及存储介质 |
CN117644625A (zh) * | 2024-01-30 | 2024-03-05 | 陕西美伦包装有限公司 | 一种基于机器视觉的智能注塑方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6622135B1 (en) * | 1998-12-29 | 2003-09-16 | International Business Machines Corporation | Method for detecting and classifying anomalies using artificial neural networks |
CN107144569A (zh) * | 2017-04-27 | 2017-09-08 | 西安交通大学 | 基于选择性搜索分割的风机叶片表面缺陷诊断方法 |
CN107316287A (zh) * | 2017-05-26 | 2017-11-03 | 浙江工业大学 | 一种矩形铁氧体磁片表面的缺陷识别方法 |
CN107316295A (zh) * | 2017-07-02 | 2017-11-03 | 苏州大学 | 一种基于深度神经网络的织物瑕疵检测方法 |
CN107392896A (zh) * | 2017-07-14 | 2017-11-24 | 佛山市南海区广工大数控装备协同创新研究院 | 一种基于深度学习的木材缺陷检测方法和*** |
-
2017
- 2017-12-18 CN CN201711361708.XA patent/CN108038853B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6622135B1 (en) * | 1998-12-29 | 2003-09-16 | International Business Machines Corporation | Method for detecting and classifying anomalies using artificial neural networks |
CN107144569A (zh) * | 2017-04-27 | 2017-09-08 | 西安交通大学 | 基于选择性搜索分割的风机叶片表面缺陷诊断方法 |
CN107316287A (zh) * | 2017-05-26 | 2017-11-03 | 浙江工业大学 | 一种矩形铁氧体磁片表面的缺陷识别方法 |
CN107316295A (zh) * | 2017-07-02 | 2017-11-03 | 苏州大学 | 一种基于深度神经网络的织物瑕疵检测方法 |
CN107392896A (zh) * | 2017-07-14 | 2017-11-24 | 佛山市南海区广工大数控装备协同创新研究院 | 一种基于深度学习的木材缺陷检测方法和*** |
Non-Patent Citations (1)
Title |
---|
R. LIU ETC: "Regionconvolutional neural network for detecting capsule surface defects", 《BOLETIN TECNICO/TECHNICAL BULLETIN》 * |
Cited By (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108985334A (zh) * | 2018-06-15 | 2018-12-11 | 广州深域信息科技有限公司 | 基于自监督过程改进主动学习的通用物体检测***及方法 |
CN108985334B (zh) * | 2018-06-15 | 2022-04-12 | 拓元(广州)智慧科技有限公司 | 基于自监督过程改进主动学习的通用物体检测***及方法 |
WO2020001480A1 (zh) * | 2018-06-28 | 2020-01-02 | 广东科达洁能股份有限公司 | 一种瓷砖按等级包装方法及*** |
CN110717880A (zh) * | 2018-07-11 | 2020-01-21 | 杭州海康威视数字技术股份有限公司 | 一种缺陷检测方法、装置及电子设备 |
CN109242825A (zh) * | 2018-07-26 | 2019-01-18 | 北京首钢自动化信息技术有限公司 | 一种基于深度学习技术的钢铁表面缺陷识别方法和装置 |
CN108896567A (zh) * | 2018-08-06 | 2018-11-27 | 慧泉智能科技(苏州)有限公司 | 一种对钮扣电池表面压伤缺陷进行检测的方法 |
CN108896567B (zh) * | 2018-08-06 | 2024-06-04 | 慧泉智能科技(苏州)有限公司 | 一种对钮扣电池表面压伤缺陷进行检测的方法 |
CN109142374A (zh) * | 2018-08-15 | 2019-01-04 | 广州市心鉴智控科技有限公司 | 基于超小样本训练高效质检模型的方法及*** |
CN109068174A (zh) * | 2018-09-12 | 2018-12-21 | 上海交通大学 | 基于循环卷积神经网络的视频帧率上变换方法及*** |
CN109068174B (zh) * | 2018-09-12 | 2019-12-27 | 上海交通大学 | 基于循环卷积神经网络的视频帧率上变换方法及*** |
CN111062908A (zh) * | 2018-10-01 | 2020-04-24 | Skc株式会社 | 检测膜缺陷的方法及*** |
CN109406533A (zh) * | 2018-10-25 | 2019-03-01 | 北京阿丘机器人科技有限公司 | 一种产品表面缺陷的检测***及方法 |
CN109444150A (zh) * | 2018-11-06 | 2019-03-08 | 西北工业大学 | 非接触式裂纹测量方法及其装置 |
US10878287B2 (en) | 2018-12-04 | 2020-12-29 | Here Global B.V. | Method and apparatus for culling training data |
CN109671058A (zh) * | 2018-12-05 | 2019-04-23 | 武汉精立电子技术有限公司 | 一种大分辨率图像的缺陷检测方法及*** |
US11853812B2 (en) | 2018-12-20 | 2023-12-26 | Here Global B.V. | Single component data processing system and method utilizing a trained neural network |
CN109760463A (zh) * | 2018-12-29 | 2019-05-17 | 广东博智林机器人有限公司 | 墙纸拼缝对齐装置以及利用其进行墙纸接缝对齐的方法 |
CN110046707A (zh) * | 2019-04-15 | 2019-07-23 | 清华大学深圳研究生院 | 一种神经网络模型的评估优化方法和*** |
CN110070131A (zh) * | 2019-04-24 | 2019-07-30 | 苏州浪潮智能科技有限公司 | 一种面向数据驱动建模的主动学习方法 |
CN110310255B (zh) * | 2019-05-24 | 2023-01-10 | 同济大学 | 基于目标检测和图像处理的转辙机缺口检测方法 |
CN110310255A (zh) * | 2019-05-24 | 2019-10-08 | 同济大学 | 基于目标检测和图像处理的转辙机缺口检测方法 |
CN110689038B (zh) * | 2019-06-25 | 2024-02-02 | 深圳市腾讯计算机***有限公司 | 神经网络模型的训练方法、装置和医学图像处理*** |
CN110689038A (zh) * | 2019-06-25 | 2020-01-14 | 深圳市腾讯计算机***有限公司 | 神经网络模型的训练方法、装置和医学图像处理*** |
CN110458231A (zh) * | 2019-08-12 | 2019-11-15 | 广东工业大学 | 一种陶瓷产品检测方法、装置和设备 |
CN110503161A (zh) * | 2019-08-29 | 2019-11-26 | 长沙学院 | 一种基于弱监督yolo模型的矿石泥团目标检测方法和*** |
CN111489326A (zh) * | 2020-01-13 | 2020-08-04 | 杭州电子科技大学 | 基于半监督深度学习的铜箔基板表面缺陷检测方法 |
CN111462062A (zh) * | 2020-03-26 | 2020-07-28 | 佛山科学技术学院 | 一种马赛克瓷砖缺陷检测方法及装置 |
CN111462062B (zh) * | 2020-03-26 | 2023-08-22 | 佛山科学技术学院 | 一种马赛克瓷砖缺陷检测方法及装置 |
CN111524119A (zh) * | 2020-04-22 | 2020-08-11 | 征图新视(江苏)科技股份有限公司 | 基于深度学习的二维码缺陷检测方法 |
CN111833313B (zh) * | 2020-06-22 | 2024-02-02 | 广东工业大学 | 基于深度主动学习的工业产品表面缺陷检测方法及*** |
CN111833313A (zh) * | 2020-06-22 | 2020-10-27 | 广东工业大学 | 基于深度主动学习的工业产品表面缺陷检测方法及*** |
CN112633393B (zh) * | 2020-12-29 | 2022-11-15 | 北京理工大学重庆创新中心 | 一种瓷砖纹理自动分类方法及装置 |
CN112633393A (zh) * | 2020-12-29 | 2021-04-09 | 北京理工大学重庆创新中心 | 一种瓷砖纹理自动分类方法及装置 |
CN113658176B (zh) * | 2021-09-07 | 2023-11-07 | 重庆科技学院 | 基于交互注意力与卷积神经网络的瓷砖表面缺陷检测方法 |
CN113658176A (zh) * | 2021-09-07 | 2021-11-16 | 重庆科技学院 | 基于交互注意力与卷积神经网络的瓷砖表面缺陷检测方法 |
CN113850335A (zh) * | 2021-09-28 | 2021-12-28 | 哈尔滨工业大学 | 一种用于卫浴陶瓷缺陷检测的数据增广方法 |
CN114648683A (zh) * | 2022-05-23 | 2022-06-21 | 天津所托瑞安汽车科技有限公司 | 基于不确定性分析的神经网络性能提升方法和设备 |
CN117372414A (zh) * | 2023-11-09 | 2024-01-09 | 东莞市兆丰精密仪器有限公司 | 电池极性检测方法、装置、设备及存储介质 |
CN117644625A (zh) * | 2024-01-30 | 2024-03-05 | 陕西美伦包装有限公司 | 一种基于机器视觉的智能注塑方法 |
CN117644625B (zh) * | 2024-01-30 | 2024-04-05 | 陕西美伦包装有限公司 | 一种基于机器视觉的智能注塑方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108038853B (zh) | 2020-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108038853A (zh) | 一种基于卷积神经网络和主动学习的瓷砖表面缺陷识别方法 | |
CN109543606B (zh) | 一种加入注意力机制的人脸识别方法 | |
CN107392896B (zh) | 一种基于深度学习的木材缺陷检测方法和*** | |
CN104458755B (zh) | 一种基于机器视觉的多类型材质表面缺陷检测方法 | |
CN105678332B (zh) | 火焰图像cnn识别建模的转炉炼钢终点判断方法及*** | |
CN104063702B (zh) | 一种基于遮挡修复和局部相似性匹配的三维步态识别方法 | |
CN104061907B (zh) | 基于步态三维轮廓匹配合成的视角大幅可变步态识别方法 | |
CN103234976B (zh) | 基于Gabor变换的经编机布匹瑕疵在线视觉检测方法 | |
CN105975931A (zh) | 一种基于多尺度池化的卷积神经网络人脸识别方法 | |
CN108021938A (zh) | 一种冷轧带钢表面缺陷在线检测方法以及检测*** | |
CN107977671A (zh) | 一种基于多任务卷积神经网络的舌象分类方法 | |
CN106780466A (zh) | 一种基于卷积神经网络的宫颈细胞图像识别方法 | |
CN107480649A (zh) | 一种基于全卷积神经网络的指纹汗孔提取方法 | |
CN109118528A (zh) | 基于区域分块的奇异值分解图像匹配算法 | |
CN104008551B (zh) | 一种基于可见光图像的柑橘黄龙病检测方法 | |
CN106934795A (zh) | 一种混凝土桥梁裂缝的自动检测方法和预测方法 | |
CN108764186A (zh) | 基于旋转深度学习的人物遮挡轮廓检测方法 | |
CN108428231A (zh) | 一种基于随机森林的多参数零件表面粗糙度学习方法 | |
CN108416774A (zh) | 一种基于细粒度神经网络的织物种类识别方法 | |
CN106651856A (zh) | 一种泡沫镍表面缺陷的检测方法 | |
CN109815950A (zh) | 一种基于深度卷积神经网络的钢筋端面识别方法 | |
CN107944459A (zh) | 一种rgb‑d物体识别方法 | |
CN109509171A (zh) | 一种基于gmm和图像金字塔的布匹疵点检测方法 | |
CN107392929A (zh) | 一种基于人眼视觉模型的智能化目标检测及尺寸测量方法 | |
CN105303200B (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 |