欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 201711361708X
申请人: 浙江工业大学
专利类型:发明专利
专利状态:已下证
专利领域: 计算;推算;计数
更新日期:2023-12-11
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

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 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};

步骤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表示每个样本的不确定性,表达式如下:其中λ为正的权重参数,

(4-2)每个样本的p从小到大排序,挑选前20%的样本作为信息量最大的样本进行人工标注;

步骤5、循环执行步骤4,直到模型准确率达到要求,或者U中没有未使用过的数据集,最终得到训练好的卷积神经网络;

步骤6、对需要检测的瓷砖表面图像进行与步骤1相同的预处理后加入到最终训练好的卷积神经网络,统计输出包含的缺陷类型。