基于深度学习的钢坯编号识别系统的研究与开发

2024-03-19 08:15邱玥灏王子佳牛丹刘铭皓刘进波丁军军
电子制作 2024年4期
关键词:鉴别器钢坯边缘

邱玥灏,王子佳,牛丹,刘铭皓,刘进波,丁军军

(1.江苏省产业技术研究院,江苏南京,210000;2.东南大学 自动化学院,江苏南京,210096;3.南京科远智慧科技集团股份有限公司,江苏南京,211102;4.东南大学 网络空间安全学院,江苏南京,211189)

0 引言

在全球范围内推动工业4.0 战略的浪潮下,“中国制造2025”提出了以推进智能制造为主攻方向的重要举措,旨在提升中国制造业的信息技术水平[1]。然而,与其他国家相比,中国制造业整体基础相对薄弱,缺乏足够的竞争力。因此,针对中国制造业当前的实际情况,逐步进行智能化改造成为提升制造业水平的首选方案。在钢铁企业从个体装置的自动化到整个系统的自动化,再到整个流程的智能化的逐步升级的过程中,存在许多难点。比如,钢坯生产线的钢坯物料跟踪。通过实现钢坯编号的自动化识别和跟踪,提高生产效率和质量控制水平,为钢铁行业的发展和运营提供了重要支持。在传统方式下,只能依靠人眼获取钢坯的编号信息。钢坯编号在智能化改造研究中具有重要意义,通过对钢坯进行编号,可以实现对每根钢坯的唯一标识和追踪,对于后续生产跟踪和出厂管理至关重要。

虽然人工记录仍然是主要的编号检测方式之一,但它已经无法满足新时代复杂任务的需求。因此,人们期望找到一种既能确保技术人员安全,降低成本,又能高效精确地进行钢坯编号检测的方法。

本文主要对钢坯编号的检测问题进行了研究分析,针对钢坯编号检测图像破损以及检测速度和精度的要求,提出了两点优化。首先,提出了融合边缘预测和生成对抗网络的编号图像修复算法,对钢坯编号图片中破损部位进行修复处理,使得检测目标更加明确。然后,提出了改进的YOLOv5网络,该网络使用MobileNetv3 取代了YOLOv5 特征提取网络Backbone,减少了网络的参数量和计算量,提高钢坯编号检测的速度。同时为了弥补MobileNetv3 带来的小精度降低,使用空间和通道注意机制替换MobileNetv3 的SE注意力模块,并使用SiLU 激活函数替代ReLU 激活函数。这弥补了钢坯编号检测精度的损失,增强了算法的钢坯编号的特征的提取能力。最后,利用改进后的YOLOv5 网络对修复后的钢坯编号图片进行检测。

1 融合边缘预测和生成对抗网络的编号图像修复算法

■1.1 模型结构

本文的图像修复网络如图1 所示。网络采用对抗模型结构,包括边缘生成器和平滑结构重构器。边缘生成器Ge预测图像的边缘结构Epred,并为下一阶段提供指导。平滑结构生成器Gs 根据Ge 生成的边缘结构Epred 预测图像的平滑结构,生成整体结构图像Spred。生成器通过编码器和解码器实现,利用扩张卷积在解码器的残差层进行特征图的上采样,扩大感受野(扩张因子为8)。判别器在本模型中采用了70×70 PatchGAN 结构设计,这一独特架构使其具备精细的局部判别能力。通过这种方式,PatchGAN 能够聚焦于图像的局部纹理和细节,实现对生成图像与真实图像间细微差别的敏锐捕捉。此外,为了增强模型的泛化能力和训练稳定性,判别器还运用了实例归一化技术(Instance Normalization)。

图1 网络结构

■1.2 频谱归一化马尔科夫鉴别器

Jiahui Yu[2]及其团队提出了一种频谱归一化马尔科夫鉴别器(SN-PatchGAN)模型,专用于处理具有复杂形状破损情况的图像修复问题。该模型具体结构细节如图2 所示,通过引入频谱归一化等技术强化了对图像局部特征的学习与重建能力,有效提升了图像修复的质量和真实度。

图2 频谱归一化马尔科夫鉴别器

鉴别器的输入包括图像、掩膜和引导通道,输出一个形状为Rh×w×c的3D 特征图。鉴别器由6 层卷积层组成,每层使用大小为5、步长为2 的卷积核,以捕捉Markovian 块的特征信息。通过对生成的特征图应用对抗损失,得到与特征图中元素数量相等的损失,每个损失对应图像中不同区域和语义表示。使用SN-PatchGAN 提高了图像修复网络的训练速度和稳定性。

■1.3 边缘生成器

(1)图像边缘预测

边缘检测是图像处理与计算机视觉领域中的核心基础问题之一,其主要任务在于精准识别并定位图像中因亮度突变而形成的边界点。这一过程旨在通过敏锐地捕捉到这些显著的强度变化来提取图像的关键结构特征,从而在保留图像本质信息的同时,有效地压缩数据量,剔除冗余及无关细节内容,实现对图像结构的精炼表达和高效理解。目前有多种边缘检测方法,在本文中采用Canny[9]算子计算的边缘图来训练改进模型,这充分考虑了Canny 和HED[10]各自的优缺点。

(2)边缘结构生成器

边缘保留平滑方法旨在去除图像中的高频纹理,同时保留不同对象的尖锐边缘和结构信息,以获取整体结构。设真实图像为Igt,真实图像的边缘保留平滑结构图像为Sgt,其中Sgt的边缘图为Egt,灰度图像为Sgray。在边缘生成器中,输入包括带孔的平滑结构图像的灰度图,边缘图和图像掩膜M(其中1 表示源区域,0表示缺失区域)。这里,⊙表示逐元素乘积操作。边缘生成器预测掩膜区域的边缘图Epred:

在这个阶段,我们使用真实边缘图Egt和预测边缘图Epred作为鉴别器的输入,并通过鉴别器来判断输入边缘图的真实性。该网络采用联合损失函数Le,它是对抗损失和特征匹配损失LFM的相加。该损失函数的计算公式如下:

判别器的特征表示为De。特征匹配损失LFM。虽然感知损失与特征匹配损失类似,都比较了选定层的激活图,但二者有所区别。感知损失是基于VGG 网络的选定层来比较,但由于VGG 网络未经过边缘生成训练,无法准确捕捉早期阶段的边缘信息。因此,感知损失无法满足准确预测边缘信息的需求。为满足这一需求,在本阶段采用特征匹配损失LFM,其计算公式如下所示:

Ni被定义为第i 个激活层中神经元的数量,则特指鉴别器模型的第i 层的激活。

谱归一化(Spectral Normalization,SN)通过计算并调整权重矩阵的谱范数以确保其最大奇异值恒定为1,从而达到稳定整个训练过程的目的,并有效约束网络的Lipschitz 连续性常数,这是控制GAN 等生成对抗网络训练不稳定性的重要手段。

谱归一化起初仅被应用于GAN 的鉴别器部分,用以克服训练中的梯度消失或爆炸问题。然而近期的研究发现SN同样能给生成器带来显著益处。

因此,在该阶段,SN 不仅应用于鉴别器,也应用于生成器。该阶段的边缘结构预测流程如图3 所示。

图3 边缘预测流程图

■1.4 平滑结构重构器

(1)边缘保留平滑方法

图像平滑需要突出低频成分、抑制高频成分,并减少梯度的突变。传统的图像处理方法通常使用图像卷积平滑操作,如高斯滤波和均值滤波,以去除噪声。然而,这些方法会模糊边缘信息。改进方法如双边滤波在边缘保留方面有进展,但仍存在边缘信息丢失的问题。综上所述,本部分旨在保持图像结构并消除纹理,通过不同的方法来进行图像平滑操作。

(2)平滑结构重构器

在图像修复流程中,为确保生成的修补内容具备连贯性、合理性及真实性,本章节引进了结构重构器Gs,该模块旨在有效恢复受损图像的整体构造和细节连续性。该阶段的输入是部分破损的结构图像,通过将其与合成的边缘图进行组合来生成填充了破损区域的结构图像Spred:

该阶段,使用了联合损失,包括 ℓ1损失、对抗损失、感知损失和样式损失。 ℓ1损失衡量了预测结构Spred与真实结构Sgt之间的差异:

为了模拟目标结构Sgt的分布,结构重构器还引入了对抗损失。sG的对抗损失写为:

其中鉴别器sD用于区分真实结构和预测结构。感知损失 Lperc通过衡量预测图像和真实图像在预训练网络中对应激活图之间的差异来惩罚感知上不相似的结果:

感知损失使用了预训练网络的多个层(如relu1_1、relu2_1 等),并通过计算它们的激活图之间的差异来量化感知损失。整体损失函数 Lstyle由 ℓ1损失、对抗损失、感知损失和样式损失组成,各部分的权重可以调整以达到最佳效果。

样式损失用于消除感知损失中的棋盘伪影,它通过计算高阶特征的格拉姆矩阵之间的差异来衡量。该阶段的整体损失函数ℒs 为:

需要注意的是,在结构重构器中没有使用频谱归一化,因为它会增加网络训练的时间并限制网络的表达能力。该阶段的预测图像平滑结构的流程如图4 所示。

图4 平滑结构预测流程图

2 改进的YOLOv5 算法结构

YOLOv5 相比于YOLOv4,在网络的灵活性和检测速度方面有显著改进。它根据网络的宽度和深度分为四个版本:YOLOv5s、YOLOv5m、YOLOv5l 和YOLOv5x。本文选择基于YOLOv5s 进行改进,以在检测速度和精度之间取得平衡。

钢坯编号图像的模糊不清给检测带来了困难,导致准确度下降和漏检情况增多。因此,从实际需求来看,YOLOv5模型无法完全满足要求。为了提高检测速度,本文使用MobileNetv3 替换了YOLOv5 的骨干结构,并引入了空间通道注意力模块(CBAM)来提高对钢坯编号的检测精度。此外,在骨干结构中使用SiLU[11]激活函数替代ReLU[12]可以加快模型收敛速度和训练效果,进一步提高模型的精度。

■2.1 引入MobileNetv3

本文选择了基于神经架构搜索(NAS)的MobileNetv3[6]网络作为替代的主干特征网络。MobileNetV3 网络包含Large 和Small 两种版本,其中Large 版能在精度与速度间取得平衡。该模型的conv2d 模块结合了常规卷积、批量归一化以及h-swish 激活函数以增强特征表达能力;bneck模块则采用深度可分离卷积,有效降低模型参数量并提升运算效率,尤其适合移动端等资源受限环境。MobileNetv3在bneck 模块中具有多个优点和独特特性。(1)引入SE 注意力模块(SENet[13]),通过挤压和激励操作调整特征通道的重要程度。(2)使用深度可分离卷积(DWConv),由深度卷积和逐点卷积组成,降低网络的计算和参数量。(3)使用线性瓶颈的残差倒置结构扩展输入特征,通过1×1 的Conv 卷积进行通道升维,然后使用3×3 的DWConv 卷积,通道数量逐渐减少,与传统的残差结构方式不同,如ResNet[4]。

■2.2 引入通道和空间注意力模块

本文提出使用CBAM[7]模块代替MobileNet 网络中的SE 模块,以提高图像注意力处理的精确度。CBAM 模块在通道注意力机制基础上增加了空间注意力机制,解决了SE模块仅考虑通道权重的限制。通过CBAM 模块,网络的特征提取能力得到增强,重要信息得到突出,无关信息得到抑制,从而提取更关键的特征。CBAM 模块由通道注意力模块(CAM)和空间注意力模块(SAM)组成,分别在通道和空间上进行特征提取。具体结构详见图5。

图5 CBAM 网络结构

■2.3 使用SiLU 替代ReLU 激活函数

改进的YOLOv5 模型将原本MobileNetv3 部分中的ReLU 激活函数替换为SiLU 激活函数。这一改变是因为SiLU 具有更好的稳定性,能够加速模型的收敛速度并提高训练效果。此外,SiLU 中引入的小量参数还能够有效地提升模型的精度。

■2.4 数据增强

在改进版的YOLOv5 算法中,我们采用了Mosaic 数据增强方法。这种方法与CutMix[5]方法原理相似,都是通过组合多张图片来扩充数据集,提高模型泛化能力。区别在于:CutMix 需要两张图片,而Mosaic 需要四张。

具体操作如下:Mosaic 从训练集中随机选择四张图片,按比例缩放裁剪至相同尺寸,然后拼接成一张虚拟图片作为新输入进行训练。

使用Mosaic 方法可以在不增加训练时间的情况下有效扩充数据集,提高模型性能。同时,由于使用了更多图片组合,能更好地捕捉目标信息,提高检测精度。

3 实验

■3.1 消融实验

(1)网络检测准确度

平均而言,加上MobileNet 的YOLOv5 的检测精度有所降低,但使用CBAM 模块替换SE 注意力模块后,改进后的YOLOv5 的检测精度和mAP(平均AP)比YOLOv5 分别平均提高了7.5%和3.47%。

表1 YOLOv5改进过程性能对比

(2)检测速

为了更显著地比较算法之间的效果,我们比较了不同算法的检测能力。实验结果如表2 所示。尽管Resnet50-SSD 的检测速度高达44.48fps,但其平均精度最低。YOLO 系列使用端到端方法直接返回对象的类、置信度和位置,这比两阶段方法更快。改进后的YOLOv5(引入MobileNet)的方法,准确率比YOLOv5 下降了,但是检测速度得到了大幅提升。使用通道和空间注意力模块(CBAM)后,改进后的YOLOv5 的检测速度略有降低,但是检测准确率得到了有效地提升。尽管本文提出的改进后的YOLOv5 的检测速度比Resnet50-SSD 慢约4.13fps,但它的平均精度比Reset50-SSD 高27.97%,仍然可以满足钢坯编号识别的需要。

表2 不同模型的检测能力

■3.2 综合实验

为了进一步提高编号检测的精度,将融合边缘预测和生成对抗网络的图像修复方法作为应用改进后的YOLOv5 检测钢坯编号的前提。

如表3 和表4 所示,显示了系统应用融合边缘预测和生成对抗网络的图像修复技术前后的性能比较。平均而言,该实验中改进后的YOLOv5 的检测精度和mAP(平均AP)分别提高了1.17%和0.51%。

表3 改进的YOLOv5检测效果

表4 结合图像修复的改进后YOLOv5检测效果

表5 检测速度对比

但是我们也发现,系统整体的检测速度从40.35fps 降低到20.42fps,这是由于GAN 的加入导致的。但降低的速度依旧可以满足检测需求,对于系统整体而言利大于弊。

4 钢坯编号智能检测系统的开发

钢坯编号智能检测系统设计流程图如图6 所示,该钢坯编号智能检测系统是为了实时跟踪钢坯在生产线上的位置而开发的。系统通过轨道式平板行车将钢坯从生产线移动到堆放区,并使用三维扫描系统进行位置检测。相机位于轨道一侧,三维扫描系统对轨道式平板行车进行持续跟踪定位,相机固定不动。当满足触发条件时便发出触发信号给相机。系统会将采集到的图片存储在服务器的FTP 文件夹中,并按照时间命名。然后,系统会循环监听FTP 文件夹,检测过去15s 内的图片,并进行识别处理。整个过程持续30s,根据现场相机位置与轨道式平板行车行进速度进行调节,时间约等于一辆轨道式平板行车完整地运行过相机前侧的所需时间。对采集到的钢坯图像进行定位、修复、检测,完成检测任务。最后将检测到的编号与连铸数据库进行二次验证,验证成功则证明本次检测正确,将检测结果存入数据库,失败则引入人工介入,查看和反馈问题。

图6 系统设计流程图

■4.1 二次验证模块

为验证识别结果,钢坯编号识别结果与连铸数据库进行比对,以提高编号识别准确率,对比流程如图7 所示。如果连铸数据库中查不到板坯原PDI 数据,则引入人工干预,人工录入钢坯编号,并将问题记录并反馈,有助于未来一步一步提高钢坯编号识别精度,进一步减少工人介入频率。

图7 编号识别结果与数据库对比流程

系统使用MySQL 数据库对出炉钢坯信息进行数据存储,这样做是基于数据采集频率和存储维护要求的考虑。具体而言,钢坯信息包括钢坯编号、出炉时间、图片存储路径、生产标准、生产规格等关键信息,均会被存储在MySQL 数据库中。

■4.2 系统落地与实际运行

运行步骤如下:首先,对系统进行数据库配置,输入数据库端口号、密码等,如图8 所示。

图8 数据库配置

然后,装载有印着编号的钢坯的轨道式平板行车进入三维扫描系统的扫描范围之内,三维扫描系统跟踪轨道式平板行车的移动,当轨道式平板行车运行到指定位置时,触发识别信号,相机采集钢坯照片,并上传服务器。钢坯编号智能检测系统开始对对应文件夹中的钢坯图像进行识别。如图9所示。

图9 钢坯编号智能检测系统软件

二次验证失败的钢坯编号,说明编号检测失败,则需要人工介入,补录界面如图10 所示。历史补录总结如图11所示。

图10 编号补录

图11 编号历史补录总结

图12 编号识别后数据库钢坯编号相关信息

钢坯编号检测完成后,将在数据库呈现钢坯编号的相关信息,如检测时间、生产标准、跨区、存储位置、库区编号、车号、跨号和是否人工介入等。

本论文研究在江苏某钢铁集团实践证明是可行的,项目已平稳运行半年,累计运行次数超过2800 次,运行效果优良。表6 展示了基于本文的钢坯编号智能检测系统在实际应用中与传统的人工识别方式相比,检测性能得到了一定的提升。

表6 基于本文的钢坯编号检测方式与其他检测方式性能对比

钢坯编号字符的平均检测准确率达到98.60%,检测速度达到15fps,有效提高了库区无人化作业效率。

5 结论

本论文研究在江苏某钢铁集团实践证明是可行的,项目已平稳运行半年,累计运行次数超过2800次,运行效果优良,平均检测准确率达到98%,检测时间达到15fps,有效提高了库区无人化作业效率,获得一致好评。

猜你喜欢
鉴别器钢坯边缘
基于多鉴别器生成对抗网络的时间序列生成模型
钢坯库行车作业的辅助驾驶的技术研发与应用
卫星导航信号无模糊抗多径码相关参考波形设计技术*
一张图看懂边缘计算
阵列天线DOA跟踪环路鉴别器性能分析
基于拉速的钢坯重量SV M回归预测
2012年9月钢坯分国别(地区)进口情况
2012年8月钢坯分国别(地区)进口情况
一种新的BOC调制无模糊跟踪鉴别器设计
在边缘寻找自我