APP下载

基于改进的YOLOv4贴片电阻的检测算法

2022-06-16马进德陶青川

现代计算机 2022年7期
关键词:贴片卷积电阻

马进德,陶青川

(四川大学电子信息学院,成都 610065)

0 引言

智能电网是通过利用先进传感与量测技术、通信与信息技术、分布式发电与集成技术、新进储能技术等来提升电网的可靠性、安全性、健壮性和效率(包括经济效率和能源效率),涉及的范围包括大型的发电机组、输电系统、用户和分布式电源等。但是,国家在大力发展智能电网的同时,电力供应过程当中存在居民和商家窃电的问题,某些法律意识淡薄并存有侥幸心理的不法分子会私自改装计量电能表,这使得国家以及电力公司遭受到了巨大的经济损失,所以定期检查智能电表是否存在窃电行为对国家打击窃电犯罪,保障智能电网安全化、智能化、经济化发展至关重要。

目前,国家电网的工作人员对某批次的智能电表进行抽样检查时,还是采用肉眼检查的模式,这种检查方式不但持续时间长,对工作人员的视力要求也极为苛刻。在常见的窃电方式中,最隐蔽的一种就是替换贴片电阻,替换贴片电阻的窃电方式具有极高的隐蔽性,不法分子即使在电表的电路板上替换了电阻,也不会留下明显的改装痕迹。通常情况下,巡检的工作人员导致需要携带放大镜等工具来辅助他们检查,这导致其眼睛的负荷太大,并且检查结果较为主观。所以,本文针对替换贴片电阻的窃电方式展开研究,基于深度学习的目标检测技术来对贴片电阻进行识别,结果更加客观、精准,对反窃电行为具有重要意义。

1 主流目标检测网络及YOLOv4介绍

随着深度卷积神经网络的持续发展,目标检测算法也取得了突破性的进展。其中,单阶段目标检测算法有YOLO(you only look once)系 列 和SSD(single shot multibox detector)等,两 阶段目标检测算法有Faster R-CNN、RFCN(region-based fully convolutional Networks)、Mask R-CNN 等。YOLO 系列作为目标检测发展道路上的又一重要里程碑,已被广泛应用于各个领域,例如视频识别、车辆行人计数、人脸识别、医学影像检测和目标跟踪等。其中,YOLOv3 作为YOLO 系列最经典的算法,使用了Darknet-53 作为主干网,相较于ResNet 系列,不仅保持了分类的精度,还显著提升了检测速度。另外YOLOv3还采用了多尺度预测和更好的分类器,使之成为了后续YOLO 版本发展的基石,但是YOLOv3对识别目标的位置精准性比较差,并且召回率低。YOLOv4 采用了CSPDarknet-53 作为主干网,CSPDarknet-53 是由Darknet-53 和CSPNet 发展演进而来,并且引入了空间金字塔池化(spatial pyramid pooling,SPP)结构来增加网络的感受野并得到显著的上下文特征。使用路径 聚 合 网络(path aggregation NetWork,PANet)来增强特征层对目标的表达能力,YOLOv4还提出了Mosaic数据增强,它是将四张图像按照一定方式拼接,不仅丰富了数据集还减少了GPU;另外,YOLOv4还使用了标签平滑策略来有效抑制过拟合。在YOLO 系列不断演化的进程当中,它们的探测头仍保持着耦合的关系,即分类和回归在1 × 1 的卷积中实现,2021 年旷世科技发表的YOLOX论文认为,这种耦合关系会给网络的识别带来不利影响,所以YOLOX 将分类和回归分别实现,最终预测的时候再整合。

YOLOv4 的网络结构如图1 所示。其算法是以CSPDarknet-53作为主干特征提取网络,例如输入图像的大小为(512,512,3),经过主干网之后,将会输出(64,64)、(32,32)、(16,16)这三种尺度的特征层。SPP 模块将获得的新特征层和送入到网络之前的特征层进行堆叠、卷积后传入到PANet 结构中,增加特征层的感受野。主干特征网络输出的三个特征层会通过PANet进行特征融合,除了进行自上而下的特征融合,还进行自下而上的特征融合,即将(16,16)的特征层进行两次上采样,然后分别与(32,32)、(64,64)的特征层堆叠后进行卷积;再将(64,64)这个特征层进行两次下采样,分别与(32,32)、(16,16)堆叠后卷积,因为其自下而上的路径增强,缩短了信息的传播路径,大大减少了计算量。经过PANet 模块的充分融合之后,得到三个不同尺度的特征层,YOLOv4 Head 负责对这三种尺度的特征层进行预测,YOLOv4 的Head 是将每个特征层划分成×的网格,每个网格点都有3 个不同尺度的先验框,通过调整先验框的中心和宽高来获得最终的预测框,预测的结果由目标的坐标、目标的类别概率、目标的类别信息组成。所以,针对上述网络的优缺点以及应用场景,本文在YOLOv4的基础上对其进行了改进,提出YOLOv4-CBAMDW-X算法。

图1 YOLOv4网络结构

2 基于改进的YOLOv4目标检测网络

2.1 YOLOv4-CBAM-DW-X算法设计

本文算法主要针对YOLOv4网络结构的主干网、Neck、YOLOv4 Head 进行改进:在主干网的残差结构和主干网输出的低层次特征图中加入了注意力机制,以此来提高对目标的特征提取能力;用深度可分离卷积(Depthwise Separable Convolution)替换掉图一Neck 中CBL 模块所使用的3 × 3 传统卷积,这样可在一定程度上减少网络的参数量;把YOLOv4 的Head 换成YOLOX 的Head,可以增加网络的检测精度。经过上述改进后的网络,本文将其命名为YOLOv4-CBAM-DW-X。

2.2 主干网的改进

本文将YOLOv4 的backbone 保留,在CSPDarknet-53 中融入了注意力机制。注意力机制在神经网络中是一个非常重要且有效的组件,可以基于人类的视觉系统进行解释,比如人类的视觉系统会重点关注目标区域,因此会对目标投入更多的注意力来获取更多有用的信息。Hu等提出了SENet(squeeze-and-excitation Net-works),SENet 是通过Squeeze 和Excitation 操作对通道之间的信息建模,让SE(squeeze-andexcitation)学习到每个特征通道的重要性,再根据学习到的重要性来计算输出的特征图。但SENet仅仅是在特征图通道上添加了注意力模型,并没有考虑到在空间上添加注意力模型,而在目标检测中,空间位置对于网络来说是至关重要的。Woo等考虑在空间和通道两个维度都加上注意力模型,提出了CBAM(convolutional block attention module),CBAM结构如图2所示。

图2 CBAM结构

CBAM 可以分为两个模块(见图3和图4),分别是CAM(channel attention module)和SAM(spatial attention module)。如公式(1)所示,CAM 的输入是××的特征图F,分别经过基于宽高的全局最大池化和全局平均池化,分别得到一个1 × 1 ×的通道描述信息,两个特征图再经过一个两层的卷积神经网络,对得到的结果执行基于element-wise 的加和操作,再经过sigmoid 激活函数就得到了最终的通道注意力的权重系数。将输入进来的特征图F 和执行element-wise 乘法操作,如公式(2)所示,其结果就是SAM 的输入特征图。如公式(3)所示,SAM 是将CAM 的输出特征作为本模块的输入特征,之后仍然使用全局最大池化和全局平均池化操作,concat操作会将上一步的结果拼接,再经过卷积层,通过sigmoid 函数将注意力权重进行归一化,然后把权重维度和输入相乘就得到了最终的特征图。加入注意力机制的过程可以简单用公式(2)和公式(4)描述。

图3 CAM

图4 SAM

为了加强网络对贴片电阻特征提取的能力,从而提升贴片电阻的检测精度,在CSPDarknet-53 的残差结构中加入了CBAM来对特征进行细化处理,另外在主干网输出的两个低层次的特征层中也添加了CBAM模块来提高对中小目标的检测能力,本文以512 × 512 尺度的图像作为改进网络的输入,增加了CBAM 之后的网络结构如图5所示。

图5 增加了CBAM的YOLOv4结构

2.3 YOLOv4 Neck的改进

从图1YOLOv4 的网络结构可以发现,Neck中存在很多的CBL 结构,其中3 次卷积块是图1CBL 结构上标×3 的位置;5 次卷积块是图1 中CBL 结构上标×5 的位置。3 次卷积块中包含一个3 × 3 的传统卷积,5 次卷积块包含两个3 × 3的传统卷积,所以可用深度可分离卷积替换掉3次卷积块和5次卷积块中的传统卷积,这样可以减少参数量,提高运行效率。

在传统卷积中,上一层的输出通常有多个通道(假设通道数为),假设下一层的输出通道数为,则需要个Filter,所以在卷积时,每一个Filter 必须要求有个卷积核,即Filter 的卷积核个数要与上一层输出的通道数对应,一个Filter 完成一次卷积过程就是个卷积核与上层对应通道的特征图卷积后相加,进而输出到下一层的通道特征层中,传统卷积过程如图6所示。

图6 传统卷积

MobileNetV1 使用的深度可分离卷积块是由一个3 × 3 的深度可分离卷积加上一个1 × 1 的传统卷积来代替传统的3 × 3 卷积,这个深度可分离卷积块可以大幅减少网络的参数数量,节省了运算成本,换句话说,在参数量一致的前提下,深度可分离卷积可以得到更深层次的特征。它由逐通道卷积(depthwise convolution)和逐点卷积(pointwise convolution)组成,分别如图7、图8所示。逐通道卷积就是一个卷积核仅负责一个通道,而逐点卷积和传统卷积的计算非常类似。

图7 逐通道卷积

图8 逐点卷积

2.4 YOLO Head的改进

在YOLOv3 至YOLOv5 网络中,分类和回归任务是在一个1 × 1 的卷积里实现的,为了增强网络识别效果,YOLOX 将其划分成了两部分来分别实现,最后预测时再整合到一起,这种解耦头方式可以提高网络的收敛速度。另外,YOLOv3 到YOLOv5 都是基于锚框机制的,锚框机制会存在以下问题:为了获得最佳的检测性能,在训练之前需要通过聚类分析的方法来获得一系列比较好的锚框,但是这些锚框没有通用性;锚框机制也增加了检测头的复杂度。所以本文将YOLOv4 的Head 换成了YOLOX Head,网络结构如图9所示。经过PANet之后得到三个不通尺度的特征层,每一个特征层都会经过一个解耦头,每个解耦头会输出三种尺度的信息:(,,)用来判断每个特征点所包含的目标种类;(,,4)用来判断每个特征点的回归参数,回归参数进行调整之后会获得最终的预测框;(,,1)用来判断每个特征点是否包含目标。把这3 个预测结果进行堆叠,就得到了(,,+4+1)尺度的结果。

图9 YOLOX Head结构

3 实验与结果

3.1 实验设备及平台

因为贴片电阻非常小,所以本文所用电能表的电路板数据集是采用USB 3.0 面阵工业相机拍摄的,它使用性能强悍的感光芯片,通过USB3.0 接口与计算机进行数据传输。图10 是本文所使用的高清像机,其技术参数如表1所示。

表1 高分辨率相机技术参数

图10 高分辨率像机

本次实验共拍摄了500 张分辨率为5472 ×3648 的原始图像,将原始图像裁减成分辨率为512 × 512 的图像以便更好地训练。裁剪时设置重叠率为0.1,一张原始图像可以裁剪出96 张512 × 512 的图像,在经过去除背景操作以及部分没有目标的图像之后得到了7714 张低分辨率图像。裁剪之后的贴片电阻样例如图11 所示。训练平台软硬件参数如表2所示。

表2 训练平台软硬件参数

图11 贴片电阻样例

3.2 实验结果

为了加快训练效率防止权值破坏,本文实验选择前50 个epoch 冻结主干网训练,后50 个epoch 解冻训练,表3 展示了各网络针对本次数据集的各项性能指标的对比。YOLOv4-CBAMDW-X 代表本次对YOLOv4 使用了CBAM、深度可分离卷积、YOLOX Head 之后的网络,YOLOv4-DW-X 代表使用了深度可分离卷积、YOLOX Head。改进后的算法对贴片电阻的检测效果如图12 所示,实验结果表明该网络能够有效检测出贴片电阻。

表3 各网络针对本次数据集的各项性能指标

图12 贴片电阻的检测效果

4 结语

本文针对电路板贴片电阻检测任务,提出了基于YOLOv4 网络改进的检测算法YOLOv4-CBAM-DW-X,该算法相比于YOLOv4,和提高了2.96%,召回率提高了11.26%,参数量减少了31.03%。该算法能够准确地检测出电路板上的贴片电阻,为后续进一步检测窃电行为提供了良好的基础。相比于人工寻找贴片电阻,该方式更加精准、安全,并在很大程度上节省了人力成本。本文的算法还可以推广到针对电路板上的其他检测需求,例如PCB 电路板的缺陷检测、电路板元器件的检测以及各种中小目标的检测等。

猜你喜欢

贴片卷积电阻
基于全卷积神经网络的猪背膘厚快速准确测定
基于图像处理与卷积神经网络的零件识别
基于深度卷积网络与空洞卷积融合的人群计数
心脏细胞微针贴片,可治疗心肌梗死
遮阳帽
微型的皮肤贴片 让你不运动就能减肥
卷积神经网络概述
实现自动控制电阻类型分析之气敏电阻
电阻测量集结号
高考中常见的测量电阻方法