一种基于机器视觉和深度学习的铜板表面缺陷检测及自动化分类方法

文档序号:25737472发布日期:2021-07-06 18:47阅读:180来源:国知局
一种基于机器视觉和深度学习的铜板表面缺陷检测及自动化分类方法

本发明涉及机器视觉和深度学习领域,尤其是涉及一种基于机器视觉和深度学习的铜板表面缺陷检测及自动化分类方法。



背景技术:

随着工业的迅速发展,中国成为世界上最大的铜消费国,在汽车、航空等高新领域中,高端铜板的质量和稳定性要求较高,一个微小的缺陷可能对产品质量有着巨大的影响。在铜板工件生产和加工过程种,会产生多种类型的缺陷,如气泡、擦伤、划痕、起皮等缺陷,所以缺陷检测是工序上必不可少的一部分。

传统的铜板缺陷检测方法,主要有人工目检和红外检测技术,但人工检测技术效率低,无法辨别表面上细微缺陷;红外检测技术容易受到客观因素影响,只适合小范围的检测。所以,机器视觉检测代替人工检测是必然趋势,但检测技术采用的是传统处理识别技术,效率有限。随着深度学习技术的快速发展,通过卷积神经网络检测模型对输入样本进行训练,自动学习有效特征,实现对铜块的智能识别。在大多数企业中,生产线上识别出的缺陷铜块使用人工剔除,自动化程度低,影响工厂的生产效率且提高企业的人工成本。因此,市场上亟需一种新型铜板缺陷检测及自动化分类系统来解决上述问题。



技术实现要素:

为解决上述问题,本发明的目的提出一种基于机器视觉和深度学习的铜板表面缺陷检测及自动化分类方法,旨在解决现有人工目检效率和准确度低问题,以及人工分拣的自动化程度低问题。

为实现上述目的,本发明提供的具体技术方案如下:

一种基于机器视觉和深度学习的铜板表面缺陷检测及自动化分类方法,其具体步骤为:

s1:铜板通过传送装置,传送到传感器固定位置;

s2:传感器控制传送装置停止运动,并触发工业相机进行图像采集;

s3:对采集图像进行预处理;

s4:将预处理后的缺陷图像输入预先训练好的缺陷检测模型中;

s5:缺陷检测模型判断铜板表面是否有缺陷;

s6:pc机驱动机械臂对有缺陷的铜板进行抓取到相应的次品槽中;

进一步地,所述传感器为光电传感器,通过铜件阻挡光信号来判断铜件是否到达固定位置。

进一步地,所述图像预处理具体步骤为:

s3.1:将图像进行灰度处理;

s3.2:对灰度图进行中值滤波处理,去除图像内部噪声;

s3.3:将中值滤波处理后的图像进行canny边缘检测,提取图像边缘;

s3.4:将边缘检测图进行区域生长法分割处理,消除孔洞和小区域噪声干扰;

s3.5:将区域生长法分割图进行otsu分割,得到二值化图像。

进一步地,所述缺陷图像主要包括气泡缺陷、划痕缺陷、擦伤缺陷、起皮缺陷。预先训练好的缺陷检测模型主要步骤为:将大量的四种人工标记的缺陷铜块图片输入基于se模块的resnet神经网络检测模型中训练,得到缺陷检测模型。

进一步地,所述步骤5)中,将采集后的预处理图像传送到目标检测模型中,判断铜板是否有缺陷;若有缺陷,识别出为何种缺陷。

进一步地,所述步骤6)中,若检测模型识别出铜件为某种缺陷,则pc机驱动机械臂抓取铜板到相应的次品槽中。

本发明的有益成果是:

(1)本发明使用resnet50作为缺陷检测网络,在此基础上添加se模块,使网络特征表达能力更强,提高了检测模型的准确率;

(2)本发明对识别出的缺陷铜件使用机械臂进行自动化抓取分类,提高了工业生产线自动化程度。

附图说明

图1为本发明提出的基于机器视觉和深度学习的铜板表面缺陷检测及自动化分类系统装置示意图;

图2为基于se模块的resnet网络架构图;

图3为基于机器视觉和深度学习的铜板表面缺陷检测流程图;

附图标记:1、传送装置;2、待测铜件;3、工业相机;4、计算机或pc机;5、机械臂;6、第一次品槽;7、第二次品槽8、第三次品槽;9、第四次品槽。

具体实施方式

下面结合附图和实施例对本发明进行详细的描述,但并不以此作为对本申请保护范围的限定。

本发明提供的一种基于机器视觉和深度学习的铜板表面缺陷检测及自动化分类方法,如图3所示,包括:

s1:铜板通过传送装置,传送到传感器固定位置;

s2:传感器控制传送装置停止运动,并触发工业相机进行图像采集;

s3:对采集图像进行预处理;

s4:将预处理后的缺陷图像输入预先训练好的缺陷检测模型中;

s5:缺陷检测模型判断铜板表面是否有缺陷;

s6:pc机驱动机械臂对有缺陷的铜板进行抓取到相应的次品槽中;

包括如下步骤:

1)如图1所示,铜板通过传送装置1,传送到传感器固定位置;

2)传感器控制传送装置停止运动,并触发工业相机3进行图像采集;

本发明实例中,将待测铜件2传送到传感器固定位置时,铜件会阻挡光电信号的接收,控制传送装置运动,并触发工业进行图像采集;

3)对采集图像进行预处理;

具体如下:

工业相机所采集的图像为rgb图像,将其进行灰度处理,可以减少后续图像分析的计算量;接着对灰度图像进行滤波处理,常见的图像滤波处理有:均值滤波、方框滤波、高斯滤波、中值滤波和双边滤波等。基于不同的滤波算法效果,本实例采用中值滤波算法进行处理,它是一种非线性滤波,将图像中某点的邻域内所有像素灰度值进行大小顺序排列,并用中值替代当前像素值,从而消除图像噪声,公式定义如下:

ys=med{xs-n,xs-n+1,...,xs,...,xs+n-1,xs+n}

随后对中值滤波图进行边缘检测处理,本实例中采用canny边缘检测,这是一种多级边缘检测算法,通常分为四个步骤:

(a)用高斯滤波器去噪;

(b)计算图像梯度g的幅度,公式为:

θ=atan2(gy,gx)

(c)对图像进行非极大值抑制使边缘“变瘦”(确定边缘),如果该点是梯度方向上局部最大点,则保留该点;若不是,则对该点进行抑制(使其灰度

值归零);

(d)最后应用高阈值maxt与低阈值mint确定边缘。

接着对边缘检测图像进行区域生长法分割处理,用来去除孔洞和小区域噪声干扰,如果噪声过多,会将噪声误判为划痕和擦花缺陷,造成误判,本实例中采用八邻域方式去除小区域噪声、四邻域方式去除孔洞噪声;

最后对图像进行otsu阈值分割处理,该分割法会自动遍历所有可能的阈值,给出最合适的分割阈值th。

然后将图像中的像素值与阈值th比较,当像素值大于th则作为感兴趣目标,若小于阈值th,则去除该点像素值作为背景区域,最终分割为二值化图像。

4)将预处理后的缺陷图像输入预先训练好的缺陷检测模型中;

缺陷检测模型训练如下:

本发明的缺陷检测模型框架使用了一个50层的卷积神经网络resnet50,该网络架构主要由一层卷积层、四层resblock层以及一个全连接层组成,在此基础上,本发明在每resblock层上添加一个se模块;

如图2所示,图中,x代表:输入缺陷图像数据集,h为输入缺陷图像的行高,w为输入缺陷图像的列宽,c为输入缺陷图像的通道数,r为降维系数,为输出缺陷图像数据集;

se模块是由一个全局池化层、两个全连接层组成。由于卷积只是在一个局部空间内进行的,很难获得足够的信息来提取通道之间的关系。于是采用全局池化来实现,将每个二维通道空间特征编码为一个全局特征;得到全局特征后,通过两个全连接层的结构来获取通道之间的关系,第一个全连接层起降维的作用,降维系数r是一个超参数,然后经过一个relu层,输出的维度不变,最后的全连接层恢复原始的维度。最终得到各个通道的权重系数,然后通过乘法逐通道加权到先前的特征中,完成在通道维度上的原始特征的重新标定,从而使得模型对各个通道的特征更具有辨别能力,提高了模型的检测准确率。

将训练图像集中的图像尺寸设置为224×224×3,将其输入到缺陷检测模型输入层中;

缺陷检测模型输入层输出的训练图像输入到第一层卷积层中;卷积核大小为7×7×3,卷积核个数为64,步长s为2,padding为3,经过卷积后的图像大小为112×112×64,使用relu为激活函数;

将缺陷检测模型第一层卷积层输出的训练图像输入至缺陷检测模型最大池化层,池化层使用的过滤器大小为2×2,步长s为2,经过最大池化后图像尺寸为56×56×64;

将缺陷检测模型最大池化层输出的训练图像输入到缺陷检测模型第一层resblock,第一层resblock包含9个卷积层,3个se模块,经过第一层resblock图像尺寸为56×56×256,使用relu为激活函数;

将缺陷检测模型第一层resblock输出的训练图像输入到缺陷检测模型第二层resblock,第二层resblock包含12个卷积层,4个se模块,经过第二层resblock图像尺寸为28×28×512,使用relu为激活函数;

将缺陷检测模型第二层resblock输出的训练图像输入到缺陷检测模型第三层resblock,第三层resblock包含18个卷积层,6个se模块,经过第三层resblock图像尺寸为14×14×1024,使用relu为激活函数;

将缺陷检测模型第三层resblock输出的训练图像输入到缺陷检测模型第四层resblock,第四层resblock包含9个卷积层,3个se模块,经过第四层resblock图像尺寸为7×7×2048,使用relu为激活函数;

将缺陷检测模型第四层resblock输出的训练图像输入到缺陷检测模型全局平均池化层中,池化层使用的过滤器大小为7×7,经过全局平均池化后图像尺寸大小为1×2048;

将缺陷检测模型全局平均池化后的训练图像输入到第一层全连接层中,全连接层大小为1×1000,使用relu为激活函数;

将缺陷检测模型第一层全连接层输出后的训练图像输入到第二层全连接层中,全连接层大小为1×5,使用softmax为激活函数;

本发明中缺陷检测模型使用softmaxloss为损失函数,adam作为优化器进行训练,通过大量的训练集图像训练缺陷检测模型的网络权重、偏置参数,验证集图像用于不断验证和优化参数,测试集图像用于验证缺陷检测模型分类效果;经过多次优化,获得模型最佳参数,从而得到最优缺陷检测模型。

将铜板图像传输给计算机或pc机4,判断铜板表面是否有缺陷;若有缺陷,识别出为何种缺陷;

对于缺陷检测模型识别出铜件为某种缺陷时,计算机或pc机4会驱动机械臂5对于缺陷铜件进行抓取并分类到第一次品槽6、第二次品槽7、第三次品槽8、第四次品槽9中,具有鲁棒性高、高自动化水平特点。

以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的仅为本发明的优选例,并不用来限制本发明,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1