[发明专利]一种基于卷积神经网络和主动学习的瓷砖表面缺陷识别方法有效
申请号: | 201711361708.X | 申请日: | 2017-12-18 |
公开(公告)号: | CN108038853B | 公开(公告)日: | 2020-05-26 |
发明(设计)人: | 姚明海;黄展聪 | 申请(专利权)人: | 浙江工业大学 |
主分类号: | G06T7/00 | 分类号: | G06T7/00;G06T7/13;G06T7/168;G06K9/62 |
代理公司: | 杭州天正专利事务所有限公司 33201 | 代理人: | 王兵;黄美娟 |
地址: | 310014 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种基于卷积神经网络和主动学习的瓷砖表面缺陷识别方法,该方法包括如下步骤:(1)获取图像并预处理;(2)训练集的建立;(3)卷积神经网络的建立与训练;(4)主动学习;(5)模型迭代;(6)在线检测。本发明对比现有技术相比:(1)使用卷积神经网络自动提取瓷砖表面缺陷的特征,在缺陷特征提取方面不再需要很好的先验知识,而且可以识别一张待检测图像中的多种缺陷类型;(2)通过在卷积神经网络训练中引入主动学习,有效减少样本的标注成本,加速模型的收敛。 | ||
搜索关键词: | 一种 基于 卷积 神经网络 主动 学习 瓷砖 表面 缺陷 识别 方法 | ||
【主权项】:
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条边沿直线的基础上采用透视变换得到大小一致,无倾斜的彩色瓷砖表面图像;透视变换的公式为: x ′ y ′ w ′ = u v 1 × a 11 a 12 a 13 a 21 a 22 a 23 a 31 a 32 a 33 ]]> 其中(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表示每个样本的不确定性,表达式如下: p = P ( y ^ 1 | x ) - P ( y ^ 2 | x ) + λ × P ( y 0 | x ) ]]> 其中λ为正的权重参数, (4-2)每个样本的p从小到大排序,挑选前20%的样本作为信息量最大的样本进行人工标注;步骤5、循环执行步骤4,直到模型准确率达到要求,或者U中没有未使用过的数据集,最终得到训练好的卷积神经网络;步骤6、对需要检测的瓷砖表面图像进行与步骤1相同的预处理后加入到最终训练好的卷积神经网络,统计输出包含的缺陷类型。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江工业大学,未经浙江工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201711361708.X/,转载请声明来源钻瓜专利网。