APP下载

基于双层-分块检测网络的厂站接线图纸图符检测方法

2023-01-05褚雪汝邓旭晖谭林林曹卫国

关键词:厂站接线图分块

程 鑫 褚雪汝 邓旭晖 杨 凯 谭林林 陈 中 曹卫国

(1东南大学软件学院,南京 211189)(2东南大学网络空间安全学院,南京 211102)(3东南大学电气工程学院,南京 210096)

电气厂站接线图纸作为发电厂、变电站施工布局和维护扩建的重要工程依据,是电力企业极具价值的文档资产.传统厂站接线图纸的维护、修改和更新主要依靠工作人员自身经验,这种工作方式不仅消耗大量的人力物力,使图纸资料无法得到科学有效的管理与利用,同时也限制了电网智能化及数字化的进程.大数据分析和计算机图像处理技术在不断改造传统产业的同时,也对传统图纸档案管理模式提出了新的思路,即图纸数字化归档[1-5].本文利用深度学习算法和形态学方法对电气厂站接线图进行图元符号的检测识别,进而得到图元的类别名称及其在图纸上的准确位置.这为后续厂站接线图纸拓扑关系检测并将其转换为电气厂站的数字化模型提供了信息基础.

近年来,国内外已有学者尝试将目标检测技术和图像形态学方法应用于图纸和文档的分析识别.Pacha等[6]使用Faster-RCNN、R-FCN和SSD等目标检测网络对滑动切割后的乐谱符号进行检测识别,但大型乐符的识别精度不高.Rahul等[7]首先使用传统的图像处理技术对管道进出口进行识别,然后利用深度学习方法对管道仪表流程图中的符号和文本进行检测,但个别符号的识别准确率不高,只有64%.李昊等[8]使用Faster R-CNN模型、光学字符识别技术(OCR)进行厂站接线图中的电器元件检测和文字识别,并利用跨平台计算机视觉库(OpenCV)的轮廓跟踪技术实现连接线和拓扑关系的检测,之后使用改进的图匹配算法对厂站一次接线图进行匹配校核.

综上所述,工程图纸的识别分析已有一定研究基础,但小目标检测及样本不均衡等问题尚在探索阶段,已有方法未能较好地解决技术瓶颈.同时,图纸识别的应用场景未涉及高分辨率电气厂站接线图.因此,本文设计一种基于YOLOv5算法的双层-分块检测网络,用以处理和分析大尺寸高分辨率厂站接线图.该网络分为关键区域检测层和具体图元识别层,通过分层检测的方法提高小目标图元符号的召回率和检测的准确率.

1 问题分析和原理介绍

1.1 厂站接线图布局和图元特点介绍

电气厂站接线图主要是指在发电厂、变电所、电力系统中,为满足预定的功率传送和运行等要求而设计的、表明高压电气设备之间相互连接关系的传送电能的电路图.本文研究的数据集是一组JPG图像格式的电气厂站一次接线图纸,共100张,图片分辨率跨度较大,但是大多集中在1 500×1 000~8 000×6 500像素范围内.选取一张典型图纸,像素为4 092×2 019,如图1所示.

为分析数据情况,对数据集中需要识别的11类图元数量、图元宽/高和尺寸大小进行统计,如表1所示.表中,图元宽/高-最大面积和图元宽/高-最小面积分别为每一类图元面积最大和最小时的宽和高;图元宽/高-平均为每一类图元宽和高的平均值.表中图元设备尺寸为大、中、小目标的设定依据如下:①大目标为图元平均宽高乘积大于100×100.②中目标为图元平均宽高乘积小于等于100×100,且大于等于50×50.③小目标为图元平均宽高乘积小于50×50.

由图1和表1可以看出:①图纸电气设备中,小目标图元占比高达54.55%,电容器、箭头等极小图元的尺寸不足原图的2%,该特征会导致识别结果有较高的漏检、误检率.②图片分辨率较大,而图元尺寸相对较小.特征提取时,图元部分特征会因网络模型的图片尺寸重置处理而丢失,同时,多次采样也会造成小目标图元数据残缺.③母线结构类似于长直线,长宽较其他图元更为特殊,传统的正方形结构卷积网络对母线处理不具有普适性.④不同图元类别间样本不均衡,断路器、隔离开关及接地刀闸的数量远大于其他类,发电机和无功补偿装置的数量过少.网络模型的训练会偏向于数量较多的目标,这将会导致发电机、无功补偿装置等图元的精度极低.

不同设计院的图元画法不尽相同,每种图元根据图纸布局也有多种角度位置.以隔离开关为例,图2展示了它的4种典型样式,可以看出每种样式均有较大差异,且与接地刀闸和断路器特征类似,图元像素经过二值化处理后,难以区分.

(a) 样式1

针对上述分析中多种类小目标检测问题和目标特征类似问题,多采用指定尺寸的窗口滑动切割原图,并设有部分区域的重叠,将切割后图片作为模型输入,然后通过非极大值抑制(NMS)将结果过滤合并.此种方法多用于卫星图像这类超高分辨率图片[9],但是本文研究的厂站接线图分辨率低于卫星图像,且每张图纸母线长短不一,图1中母线的长度甚至超过了图片宽度的70%.如果直接采用窗口滑动切割,滑窗的尺寸及重叠部分难以设定.考虑到厂站接线图的特殊性,本文的解决方法如下:①识别母线及其周围图元区域,确保母线图元区中有且仅有一根母线(单母或双母),同时提取相对独立的变压器区.②在检测出的母线图元区和变压器区中,对具体图元进行识别,其中母线根据长度及面积特性可以采用OpenCV形态学的方式单独提取检测.

针对数据分析中不同图元类别间样本不均衡问题,可以增大难样本与少类别的损失权重,从而增大模型对这些样本的惩罚,缓解不均衡情况的发生.YOLOv5算法中有自适应图片采样策略,可实现数目越多的种类权重越小的目的.

1.2 YOLOv5算法

YOLOv5算法[10]是一种单阶段目标检测算法,根据含有的残差组件个数不同分为4个目标检测版本,分别为YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x.其中,YOLOv5s是网络深度和特征图宽度最小的网络,另外3个版本可以认为是在其基础上,进行了加深、加宽.YOLOv5算法网络结构分为输入层、骨干层、瓶颈层、预测层4个部分.

在输入层使用马赛克数据增强、自适应锚框计算等方法对图片进行处理后送入骨干层,使用Focus模块、跨阶段局部融合模块(CSP/C3)和空间金字塔池化模块(SPP)完成特征提取.瓶颈层使用特征金字塔网络(FPN)和路径聚合网络(PAN)结构生成特征金字塔,以实现不同层次特征图的融合.预测层根据瓶颈层网络输出的大、中、小特征图,分别用于预测原图的小、中、大目标.

与Faster R-CNN[11]等两阶段目标检测方法相比,YOLOv5网络具有收敛速度快、泛化能力强、多尺度特征学习等特点.本文研究的厂站接线图数据集样本较少,且图元尺寸大小不一、相似度高、特征少,当使用基于深度学习的方法检测这些组件时,恰好需要一个深度卷积神经网络来融合低分辨率特征图和高分辨率特征图,从而表示不同尺度图元的位置和类别信息.因此,本文基于YOLOv5算法构建双层-分块检测网络对厂站接线图进行分析识别.

2 双层-分块检测方法构建

本文采用分区域逐级检测思想,构建出基于 YOLOv5网络的双层-分块检测模型.图3展示了检测方法的工作流程,主要包括图片预处理、双层分块检测网络和推理去重等部分.

图3 双层-分块检测方法工作流程

2.1 图片预处理

2.1.1 图像增强处理

厂站接线图存在一些小的噪点,且部分图元轮廓周围有一定模糊区域,为改善图像的视觉效果,提高图像的清晰度,对图像进行高斯滤波.本文使用3×3的高斯卷积核进行高斯滤波计算,对不同位置的像素赋予不同的权重.

2.1.2 灰度化和二值化

厂站接线图属于红绿蓝(RGB)三通道图像,包含的像素信息数量较多,但后续识别的图符主要基于纹理和形状信息,颜色信息反而会增加图符检测时间.为减少计算量,提高运算速度,首先将滤波平滑处理后RGB三通道的接线图转换为灰度的单通道图像,再设定阈值将其转化为二值图像.其中灰度化使用的是加权平均法,公式如下:

G(i,j)=0.299r(i,j)+0.578g(i,j)+0.114b(i,j)

(1)

式中,G(i,j)为像素坐标(i,j)处的灰度值;r(i,j)、g(i,j)、b(i,j)分别为原图在(i,j)处红、绿、蓝3个分量的亮度值.

2.1.3 剪裁处理

厂站接线图的分辨率跨度较大,可能会影响后续识别,且图纸周围一般会有边框和大量白色像素,因此对大于8 000×6 000像素的图片进行边框和二值化后白色像素的剪裁.

2.2 区域检测层

考虑到厂站接线图属于较高分辨率图片,且区域检测层中需要检测的目标属于大目标,因此采用YOLOv5-P6网络,相较于上一版本增加了P6/64输出层,且输入图片尺寸也从640×640像素增加到了1 280×1 280像素.考虑到需要检测的关键区域块只有母线图元区和变压器区,所以采用网络深度最小、特征图宽度最小的YOLOv5s-P6网络.由于检测的目标种类少且尺寸较大,因此在原有网络结构4层特征图的基础上,删除小目标层以减少计算量.将删除后的网络结构命名为Area-YOLOv5,如图4所示.

2.3 图元识别层

2.3.1 滑窗切割

对母线图元区和留白区进行滑窗切割,剪裁切割步骤如下:

①滑窗大小设置为YOLOv5网络输入图片尺寸640×640像素.

②分别对横向位移和纵向步长设置dx、dy的偏移量,其中dx、dy为数据集中图元最大尺寸.

③当滑动窗口中不存在任何待检测目标时则直接跳过.

④图片长宽均不足640时则放弃切割,若只有一边大于窗口大小时,则在此方向上进行切割.

⑤根据窗口与步长记录切割图的坐标与长宽信息,方便后续图元坐标还原.

2.3.2 Obj-YOLOv5网络结构

文献[12]已经验证了使用大卷积核可以提升模型性能和检测的精度,因此考虑对原有YOLOv-5m网络进行如下改进:将瓶颈中3×3的小卷积也替换成卷积核为5×5的深度可分离大卷积,并且融合压缩激励(SE)注意力机制模块来衡量通道的重要性,将此改进部分称为LC_Block模块.将改进后的网络结构命名为Obj-YOLOv5,如图5所示,LC_Block模块详细示意图如图6所示.

LC_Block模块使用深度可分离卷积并融合 SE注意力机制,在减少参数和计算量的同时,通过SE注意力机制中的压缩和激励操作得到可以衡量通道重要性的权重矩阵对特征进行重构.相比原始YOLOv5网络中的CBS(Conv+BN+SiLU)卷积模块,LC_Block模块中的深度可分离卷积参数量更少,融合SE注意力模块中用1×1的卷积层代替全连接层后,参数量略微增加.假设输入特征图尺寸为Win×Hin×Cin,输出特征图尺寸为Wout×Hout×Cout,模块改进前后参数量之比为

(2)

式中,MLC为LC_Block模块参数量;MCBS为CBS普通卷积模块参数量;k为卷积核的尺寸;C为特征图通道数,C=Cin=Cout;R为缩放参数,起到减少通道个数从而降低计算量的作用.

图5 Obj-YOLOv5网络结构

图6 LC_Block模块示意图

2.4 坐标还原与合并去重

由于采用双层-分块网络进行模型推理,因此输入的厂站接线图将会经历分块和切割操作.切割图中的图元坐标为相对坐标,需要经历3次坐标还原,具体步骤如下:

①将Obj_YOLOv5网络推理计算出的图元相对坐标(xi,yi)加上图元识别层切割图的左上角坐标(xj,yj),变为(xi+xj,yi+yj).

②将第1次还原后的坐标加上Area_YOLOv5推理计算出的关键区域左上角坐标(xz,yz),即为(xi+xj+xz,yi+yj+yz).

③将第2次还原后的坐标进一步还原到原图中,还原后坐标为(xi+xj+xz+xk,yi+yj+yz+yk).具体坐标还原示意图如图7所示,图中区域A为关键区域,区域B为切割图,区域C为识别出的图元符号,虚线框为坐标还原步骤.

图7 坐标还原示意图

为了避免图元被切割造成漏检,在2.3.1节设置了大于最大图元长宽的重叠区域,所以还原到原始图像后会出现同一图元有多个检测框的情况.针对重复检测问题,本文采用了改进后的NMS算法,算法示意图如图8所示,具体步骤如下:

①设定最低阈值,删除小于最低阈值的所有检测框.

②计算一个检测框与其他检测框的交并比(IoU),公式为

(3)

式中,A、B为检测出的2个边框.

③如果IoU值大于设定的阈值,则进行检测框合并,阈值取高的标签,坐标合并方式为取2个检测框的坐标最值,即图8中点划线框内部分,即

(4)

否则保留检测框,并重复上述步骤.式中,(xl,yl)和(xr,yr)分别为合并后检测框的左上角和右下角坐标.

图8 改进后的NMS算法示意图

与一般NMS算法不同的是,本文对IoU计算公式进行了调整,将2个检测框的交集面积与并集面积的比值改为2个检测框的交集面积与检测框最小面积的比值,如式(4)所示.原因在于对那些被截断的图元,相邻检测框可能会重复误识别,若除以相交面积IoU值较低,会导致本应合并的检测框被认为是2个独立图元的检测框,因此将除以检测框合并面积改为除以检测框最小面积.

3 实验结果与分析

3.1 数据准备与实验平台

本文采用某市变电站接线图数据集,训练集与测试集的比值为9∶1.其中,第1层区域识别层的Area-YOLOv5训练集,由预处理后的电气厂站接线图构成,标签信息为母线区域及变压器区域;第2层具体图元识别层的Obj-YOLOv5训练集,由母线区域切割图、留白区域切割图及变压器区构成,标签信息为11类图元,即表1中不包含母线的10类图元和其他类图元,其他类图元是指图纸中的非关键图元,为后续判断拓扑关系提供便利.

本文实验环境为Windows 10操作系统,32 GB内存,NVIDIA GeForce RTX3090显卡,AMD Ryzen 9 3900X 12-Core Porcessor处理器,在Pytorch 1.7.0、CUDA11.1下完成模型的搭建、训练和结果测试.

3.2 网络训练与检测结果

本文的Area-YOLOv5网络和Obj-YOLOv5网络模型参数如表2所示.

表2 模型参数

此外,本文使用平均精度(AP)、平均精度均值(mAP)、每秒帧数(FPS)、参数量来表征网络改进前后的有效性.其中,AP是P-R(准确率-召回率)曲线与坐标轴围成的面积值,P-R曲线是以召回率和准确率作为横纵坐标的二维曲线.将厂站接线测试图像用上述网络模型和参数进行测试,实验结果如图9、图10和表3、表4所示.表中,mAP@0.5为IoU等于0.5时的平均精度,mAP@0.5∶0.95为在不同IoU阈值(从0.5到0.95,步长为0.05)时的平均精度.

表3 Area-YOLOv5改进前后检测结果对比

表4 Obj-YOLOv5改进前后检测结果对比

(a) 改进前

(a) 改进前

由表3可知,Area-YOLOv5网络删去小目标层后,模型参数量减少5.75%,速度从76.97帧/s增加到83.33帧/s,有8.33%的提升,mAP@0.5和mAP@0.5∶0.95为0.985和0.717,分别增加9.57%和5.29%,在提升速度的同时达到了较高的检测精度和准确度.分析可知,删除小目标层前的模型较复杂,但识别目标简单且数据量较少,出现了过拟合现象.

由表4可知,Obj-YOLOv5网络在瓶颈部分中将普通卷积替换成LC_Block模块后,参数量减少6.48%,推理速度稍有增长,mAP@0.5变化不大,为0.963,但mAP@0.5∶0.95增加2.98%.从图10可以看出,小目标图元的平均精度有一定增长,说明LC_Block模块可以有效提升小目标的检测精度.

为进一步说明本文构建的双层-分块检测网络的有效性,将经过2.1.1节和2.1.2节预处理后的数据集直接送入YOLOv5m网络模型中进行对比实验.标签信息也为11类图元,检测结果如表5所示.

表5 双层分块检测网络使用前后图元检测结果对比

从表5可以看出,直接将大尺寸、高分辨率图片送入YOLOv5m网络模型对图元的检测识别效果较差,无法实现电气厂站接线图图符的精确检测.而本文提出的基于YOLOv5算法的双层-分块检测网络模型充分考虑电气厂站接线图的布局特征,能够有效解决电气厂站接线图图符检测精度不高、小目标图元符号漏检误检等问题.

4 结论

1)本文针对较高分辨率的电气厂站接线图识别检测问题,构建了基于YOLOv5算法的双层-分块检测网络模型,经实验证明能够有效提升多目标和小目标的检测能力.

2)关键区域检测层充分考虑了电气厂站接线图的布局特征,将高分辨率的图片按电气逻辑划分成区域块,方便后续图元识别.在具体图元识别层中,对YOLOv5算法进行改进,在提高精度的同时减少了数据量,提升了运行速度.

3)目前实验数据较少,同时忽略了厂站接线图的部分图元,缺乏普遍性,将对后续图纸拓扑还原造成困扰.未来将对全国各省份设计院的厂站接线图纸进行分析识别,进一步优化网络结构,提高图元检测精度.

4)本文在样本类别不平衡问题上处理较简单,后续可以采用生成对抗神经网络的方式生成相似样本,扩充数据集,提高识别精度.

猜你喜欢

厂站接线图分块
基于供区的输电网接线图厂站网格布局算法
面向量化分块压缩感知的区域层次化预测编码
钢结构工程分块滑移安装施工方法探讨
关于4×4分块矩阵的逆矩阵*
分块矩阵初等变换的妙用
厂站自动化与调度自动化的现状与技术发
元件投影图在电拖接线图中的应用
浅谈厂站自动化及调度自动化的现状与技术发展
维修电工线路板的接线技巧分析
基于PLC的高压密封试验台的电控系统的设计