带钢作为航空、机械、汽车、电器等行业一种重要的原材料,其表面质量的好坏直接影响最终产品的性能和质量。而在带钢生产过程中,受生产环境和工艺等因素的影响,导致带钢表面出现不同严重程度的缺陷,因此针对带钢表面缺陷的自动化检测变得愈发重要。随着机器视觉行业的发展,机器视觉技术逐渐成为带钢表面缺陷自动化检测的重要方法,而深度学习作为机器视觉领域的重要技术之一,在缺陷检测领域展现出优秀的检测性能。
目前基于深度学习的带钢表面缺陷检测方法存在以下问题:一是大部分目标检测算法广泛存在数据不均衡的问题,特别是在缺乏高质量训练标签数据资源的情况下,而通过数据增强算法生成的缺陷图像存在细节缺失、模糊、类别单一等问题,无法给目标检测算法进行训练和优化使用;二是大部分目标检测算法在带钢表面缺陷检测过程中,对小目标、条状、重叠区域较大的缺陷检测的效果不理想,并且在保证精度高的同时难以做到实时检测。
在此背景下,本文分别对带钢表面缺陷数据增强和目标检测两类任务进行了深入研究,并在此基础设计了带钢表面缺陷检测系统,主要工作及成果如下:
(1) 在小样本条件下,针对生成对抗网络(Generative Adversarial Network,G-AN)应用于带钢表面缺陷数据增强过程中存在的图像细节缺失和模式崩溃问题,提出一种改进GAN的数据增强方法。首先将自注意力机制引入到生成器和鉴别器中,使模型学习全局特征的关联关系,从而增强细节特征;加入谱归一化限制每一层网络权重矩阵的谱范数,增强生成图像的质量;将带有梯度惩罚项的Wasserstein距离替换原有损失函数来稳定网络的训练。在NEU-CLS实验数据集进行实验,在弗雷歇距离平均值为22.2,优于同类其他方法,生成的图像相比于DCGAN和WGAN-GP细节特征更加清晰。实验结果表明,基于改进GAN的带钢表面缺陷数据增强方法有效缓解了模式崩溃问题,生成图像质量良好、多样性丰富,能有效实现小样本条件下的数据增强,为进一步对带钢表面缺陷其他任务奠定了良好的基础。
(2) 针对目前在基于深度学习的带钢表面缺陷检测过程中,存在对小目标、条状、重叠面积较大的缺陷检测精度低和检测速度慢的问题,在扩增数据集的基础上,提出一种改进Faster R-CNN的缺陷检测方法。将原有的特征提取网络替换为ResNet50,提高目标检测的精度;结合带钢表面缺陷对比度低、小目标的特点,将特征金字塔网络融合到ResNet50中,实现浅层特征图的空间信息和高层特征图的语义信息的融合;针对夹杂、划痕缺陷为条状的特点,利用可变形卷积网络实现不同位置卷积核采样点根据目标检测物体自适应变换;结合氧化皮、点蚀、开裂缺陷重叠面积较大的特点,使用Soft-NMS替换传统的非极大值抑制算法,降低目标漏检率。在扩增的NEU-CLS数据集进行实验,改进的Faster R-CNN算法在氧化皮,斑块、开裂、点蚀、夹杂、划痕检测的平均精确率分别为83.8%,91.0%,85.8%,84.5%,85.3%,90.8%,平均精确率均值为86.9%,检测速度达到21.5fps,相比于原始的Faster R-CNN分别提升了8.7%和1.7fps,与其他目标检测算法相比,改进的Faster R-CNN算法在保持两阶段检测算法的精度优势的同时,降低了与单阶段检测算法在检测速度指标的差距。实验结果表明,改进的Faster R-CNN算法能有效检测各类带钢表面缺陷,对小目标和条状缺陷同样适用,检测精度和速度均满足带钢表面检测需求。
(3) 在检测模型取得良好检测效果的基础上,提出基于云边协同的带钢表面缺陷检测解决方案,使用ModelArts和OBS作为云端模型数据中心,边端的缺陷检测系统采用CMOS相机阵列捕捉带钢表面图像,并辅助漫反射LED光源阵列进行补光,基于工业相机SDK来获取相机图像,将图像上传至OBS进行存储,通过在ModelArts部署的检测模型快速准确识别缺陷,使用基于C#和WPF工具开发的人机交互系统展示和调整检测信息。在工厂中拍摄带钢表面缺陷图像来测试检测系统,系统对6类缺陷的平均检测率为93.6%,检测速度为21fps。实验结果表明,系统可用性良好,可以帮助企业提高生产效率,降低生产成本。