雨天变电站设备智能视觉检测算法与实时实现技术

2022-12-07 12:57喻长峰李丽华高维露
测控技术 2022年11期
关键词:变电站图像优化

杨 宁,高 飞,杨 洋,喻长峰,李丽华,高维露,黎 瑞

(1.中国电力科学研究院有限公司,北京 100192; 2.华中科技大学 多谱信息处理技术国家级重点实验室,湖北 武汉 430074)

变电站是电力系统中的关键一环,承担着变电与配电的重要作用,而变电站设备长期处于室外运行,各种设备缺陷都会导致电力系统的非正常运行,给人民造成重大经济损失和安全隐患。

基于视频的变电站户外设备监控是保障电力系统安全运维的重要手段,传统的目视监控效率低、人力成本高,近几年无人化视觉检测得到广泛关注。随着计算机视觉技术的不断发展,与图像处理技术相结合的视频监控检测[1-3]技术逐渐成为变电站设备监控的主流。早期变电站视频智能检测主要基于红外图像,如杨政勃等[4]通过红外分析方法,对输电线路缺陷的红外图像完成缺陷定性,基于角点、梯度等图像特征或基于目标检测方法进行绝缘子缺陷的定位。由于红外图像无法直观呈现设备的外观形貌,因此基于可见光的变电站设备智能检测存在较大的应用需求。随着深度学习的蓬勃发展,大量工作人员[5-8]以可见光图像作为研究对象,提出了一系列基于卷积神经网络的电力设备检测算法,该系列算法基于数据驱动,通过大样本学习取得了不错的效果。然而,在实际应用中,依旧存在以下两个问题。

① 现有的深度学习检测算法大多都是基于晴好图像数据进行训练学习,而户外变电站设备监控系统采集图像时,不可避免会遭受到雨天等导致的图像退化问题,使得现有的变电站设备检测算法性能严重下降。退化前后目标检测结果对比如图1所示。

图1 退化前后目标检测结果对比

② 现有的深度学习检测算法通常参数量大,计算复杂度高,大多采用远程视频监控[9-10]方式,即终端采集图像后传输到数据中心或云端进行处理,该方式存在传输数据量大、处理速度慢、突发响应不够及时等问题,因此如何将深度学习算法在嵌入式边缘端进行部署加速也是当前智能视觉监控应用落地的重要瓶颈。

针对上述问题,首先对雨天的退化过程进行物理建模,从时域和空域两方面进行分析,针对其时空特性,提出了基于细节残差增强的去雨网络(Detail Enhancement Residual Network,DERN),随后将其与目标检测算法YOLOv4[11]进行联合优化,构建了一种雨天稳健的变电站设备目标检测算法;其次,针对变电站设备智能视觉监控实时部署需求,以华为昇腾310 AI处理器为计算核心,构建了变电站设备视觉监控嵌入式边缘端系统,基于处理器的架构特性,从算子优化、访存读写、多线程并行全方面提升系统性能;最后,通过实验验证了本文算法和系统的有效性。

1 雨天变电站设备智能检测算法

变电站由于长期处在户外,图像采集系统不可避免遭受雨天等恶劣天气的干扰,导致图像产生严重退化,图像去雨问题通常被建模为

O=B+R

(1)

式中:O为观察到的退化图像;B为需要求解的清晰图像;R为需要求解的雨条层。图像去雨任务本质是一种病态问题求解,实质是寻找一种判别性特征将图像中雨条与背景进行有效剥离。现有的深度学习图像去雨方法大多是通过仿真退化/清晰的图像对,基于大数据驱动,设计特定网络的结构自适应学习拟合清晰图像或者雨条层的分布,在各自的仿真数据集上均取得了较好的效果,但大多数方法缺乏对雨条在成像过程中的建模,因此泛化性较差。同时,为了保证网络的拟合能力,大多数方法网络参数量巨大,推理时间长,无法面向实际应用场景。针对上述问题,笔者对雨条分别进行时域和空域上的分析,提出参数量小、泛化性好的单幅图像去雨网络。

进一步,雨天图像在采集过程中,由于重力影响,椭球形状的雨滴在曝光过程中会产生运动模糊现象,在图像中表现为明亮雨线,其像素强度变化剧烈,严重影响后续变电站设备目标检测等高层视觉算法对图像内容特征的提取,导致算法性能下降。基于去雨网络DERN,将底层的图像去雨任务和高层识别任务联合起来,提出对雨天稳健的变电站设备目标检测算法。

1.1 基于细节残差增强的图像去雨网络(DERN)

在空域上,自然光照下,雨天视频中连续图像同一位置并非一直存在雨条,Zhang等[12]比较同一位置有雨和无雨时像素强度变化,其 R、G、B三种颜色成分强度变化相同 ,因此认为,在同一像素位置,有雨和无雨时存在以下公式为

(2)

时域上,雨条形态特征在图像中表现为明亮线条状,像素强度变化强烈,因此Fu等[13]认为,雨条在图像频域中主要存在于高频成分,其方法通过引导滤波获取图像的高频成分,再直接将图像的高频作为网络输入,从而让网络直接从图像的细节成分中学习到雨条的分布。然而,使用高频滤波对图像进行分解时,需要人为设置参数来调节滤波器窗口的大小,图像的滤波效果受该参数影响较大,图2为相同图像不同参数滤波后高频结果。同时图像的高频成分信息量有限,单独以此作为输入,网络缺乏将高频中雨条与图像边缘进行有效区分的判别性特征。

基于上述分析,构建了一种基于细节残差增强的有监督图像去雨网络,在数据上,以成对的清晰/退化仿真数据作为训练样本,以仿真雨条作为监督约束网络的训练;在网络结构上,为减少网络的参数量,算法在空域上将原图像从RGB空间域转移到YCbCr空间域,并以Y通道作为网络的输入,保留其Cb和Cr空间颜色信息,使得三通道的图像去雨任务变成单通道图像去雨任务。进一步,为增强网络的泛化性,在频域上通过引导滤波得到图像的细节信息,针对引导滤波效果不佳的问题,高频成分信息不全的问题,通过将图像细节信息与原单通道输入进行级联,让网络既能从图像的细节部分学习到雨条分布,又能从单通道输入图像中学习到图像的背景结构信息,使得二者相互促进。最后,为了减小网络的学习难度,算法避开直接估计清晰图像的高难度任务,引入残差学习,让学习器直接学习出雨条的数据分布,从而准确估计出图像中的雨条层,与Y通道的退化图像相减即可得到去雨后的干净图像,进一步将Y通道中去雨后图像与退化图像的CbCr相结合,色域转换后即可得到RGB空间的去雨后图像,基于细节残差增强的图像去雨网络结构如图3所示。

图2 滤波器不同大小窗口下的高频结果

图3 基于细节残差增强的图像去雨网络

其中学习器为15个Residual block,为了减小网络的学习任务,采取让网络先学习雨条分布,再通过将网络输出与仿真得到的雨条进行均值误差损失,通过监督信息来约束网络的学习,具体损失函数为

(3)

式中:N为单个批次训练集的数量;f(·)为整个网络的函数的映射;W为网络的权重变量;X_concat为输入图像Y通道和引导滤波得到的高频图像之间进行级联后的结果;Rain_mask为仿真雨条(可从仿真数据集直接获取),作为监督标签,约束网络进行训练。

1.2 雨天稳健的变电站设备检测联合优化算法

变电站电力设备视觉检测任务本质上是一个目标检测任务,常见的电力目标检测任务主要包含设备状态识别、设备缺陷检测、人员安全场景三大类,如表1所示。由于变电站设备检测任务繁杂,实际场景下干扰杂,对算法实时推理要求高,在本研究中,变电站电力设备视觉检测任务精度要求为:准确度80%;实时性要求为:针对1080像素×1080像素的图像,算法处理帧率20 f/s。YOLOv4目标检测算法采用Mosaic数据增强,特征金字塔+下采样等一系列手段,在检测精度和速度之间达到了最佳平衡。综合考虑,选择YOLOv4算法实现变电站设备检测任务。

实验表明,YOLOv4算法在晴好图像输入情况下,能够满足变电站设备目标检测任务的精度要求。然而,雨天图像严重影响检测算法对图像关键特征的提取,从而导致检测性能下降甚至失效。针对该问题,现有的处理方式主要有两种。

表1 典型变电站设备检测任务

① 不增强,直接识别。即将现有的检测识别算法直接在退化图像上进行训练,通过有监督的方式令网络学习对雨天退化稳健的识别模型。然而,雨条退化的表征形态多样,角度、方向、长度、宽度都具有不确定性,图像结构容易遭到破坏,现有的识别算法无法在退化图像上直接学习到完整的背景特征,因此只是在数据层面对图像进行退化增广无法解决问题,算法识别性能无法得到较大的提升。

② 先增强,再识别。即先通过图像复原算法对退化图像复原,再使用在晴朗的清晰数据训练的检测模型对复原后的图像进行识别,这样能在一定程度上提升识别性能,然而现有的算法大多都是将图像复原任务和图像识别任务割裂开来,由于复原后的图像依然可能存在残留的雨条或者引入新的退化(如边缘模糊、伪影、虚假结构等),这种新的退化依然会限制在干净图像上训练的模型检测性能。针对上述问题,基于去雨网络DERN以及YOLOv4检测算法,提出底层图像去雨算法和高层目标检测算法联合优化,具体流程如图4所示。

图4 雨天稳健的变电站目标检测联合优化框架

最后的总损失函数为

Lossall=λ×Lossderain+Lossdetect

(4)

(5)

式中:λ为超参;Lossdetect为YOLOv4检测算法中的损失函数,分别为目标置信度损失、分类回归损失和坐标位置回归损失;derainimage为仿真的雨天退化图像,GTimage为对应的清晰图像,二者之间进行MSE(Mean Square Error)约束,实现去雨功能。将去雨和检测二者联合优化,可以让检测算法获得更高精度。

相比传统的先增强再识别,联合优化方法主要存在两点优势。

① 针对去雨任务,在训练过程中,去雨网络的参数不再只受单个去雨损失函数影响,检测算法的损失函数在训练过程中同样会回传到去雨网络,从而使得去雨网络不再只是单纯的恢复视觉效果,还能直接促进检测任务指标的提升。

② 针对检测任务,即使去完雨后图像仍存在部分残留或者引入新的退化,但在联合优化的训练过程中,目标检测网络等价于在复原后的图像中进行训练,由于损失函数约束,检测网络会在优化中会有针对复原后的残留或者新的退化稳健的学习过程。

2 基于嵌入式AI的边缘计算硬件

2.1 硬件系统

硬件系统采用终端式部署方案,将网络摄像头与处理核心进行集成设计。硬件系统组成如图5所示,整个系统分为前端智能处理和运维中心两部分。前端智能处理单元负责完成对监控场景的视觉信息采集工作以及视觉信息智能处理任务,运维中心负责完成对检测结果的进一步处理任务(存盘、显示、调度等)。智能系统中的数据传输通过网口进行,协议采用RTSP(Real Time Streaming Protocol)与RTMP(Real-Time Messaging Protocol),尽可能保证数据传输的实时性。当前以图像数据为例的海量大数据对远程视频监控系统提出了巨大的挑战,数据的传输、安全、集中分析都是智能视觉系统所要考虑的问题。假设变电站视觉采集系统图像分辨率均为1080P,单个摄像头每小时将产生8.69 GB的图像数据,而一个变电站至少会采用50个摄像头,在这种情况下单个变电站每小时将产生434.5 GB的图像数据,因此远程视频监控[9-10]采取服务器云端部署方式对数据传输带宽有较高要求,处理实时性低。与服务器云端部署相比,利用AI处理器在嵌入式平台下进行边缘端部署极大地减少了处理核心的能耗,同时数据的传输更加快速,处理更加及时和安全,更适合变电站大规模部署应用。

图5 硬件系统组成

针对雨天变电站设备检测算法,构建了一种嵌入式边缘端智能计算系统,其处理核心采用华为昇腾310 AI处理器,拥有8核ARM Cortex A55@1.6 GHz,支持128位宽的LPDDR4X,配备有专用于非矩阵类复杂计算的AI CPU和提供强大算力的AI Core处理单元,可实现最大16TOPS(INT8)的计算能力。昇腾310内部架构主要包含专用的计算单元、大容量的存储单元和控制单元,通过多层级访存架构降低外存访问频次,通过高效的数据通路提高数据流动效能。昇腾310处理器模组如图6所示,内部集成有昇腾310处理器、图像/音视频接口处理器,以及丰富的外围接口等资源,广泛应用在推理场景,实现图像数据的分析和推理计算。

图6 昇腾310处理器模组

在服务器端完成雨天稳健的变电站设备检测算法的模型训练,通过昇腾310开发工具链ATC将其转换成与嵌入式AI适配的模型文件(OM模型),在板端完成部署并进行实时推理,具体部署流程如图 7所示。

图7 离线模型部署流程

2.2 部署优化

将智能变电站设备监控硬件系统功能分为图像解码、图像预处理、算法推理、结果后处理、编码输出5个部分。各模块之间依次串行处理,统计各部分耗时如图8所示。由于AI芯片的使能,模型的推理时间不再成为深度学习实时实现的主要瓶颈,而图像的预处理和后处理时间占比最多。另外,算法在实际部署过程中,由于嵌入式硬件架构特性不同,模型转换存在量化误差,在推理时模型参数与服务器端存在差异,由于存在数据对齐,嵌入式部署时的输入数据也与服务器端存在差异,两方面使得算法在实际应用中性能下降。针对上述问题,从任务上对其进行细化分解,采用多线程并行处理,提高算法的实时性;同时,针对嵌入式AI硬件架构特性,分别对图像预处理和模型输出后处理算法进行优化,从而减小模型在实际部署过程中由于量化误差所带来的性能下降。

图8 变电站设备监控系统各功能模块耗时占比统计

① 任务并行加速。针对传统串行的系统数据流方式,由于各步骤处理时间长短不一,部分模块存在饥饿或者数据堆积的情况,从而造成数据丢失,极大地增加了处理时间。昇腾310具备8个A55处理核心资源,其中4个作为AI CPU承担非矩阵类运算,另外4个作为控制CPU来进行任务调度,显然串行的数据处理方式无法充分利用其充沛的CPU资源。基于硬件多核计算的特点,采用多线程技术使得模块之间并行化,整个系统的数据流程图如图9所示,利用闲置的CPU资源,将模块之间的处理时间重叠,极大地减少了系统的整体耗时。

② 数据预处理优化。昇腾310架构为提高数据流通效率,图像信息宽高有对齐约束,按照普通的图像预处理方式会对最终的检测精度造成一定的损失,因为对齐采用一定的优化措施来提升算法运行精度。如图10所示,解码之后的图像宽高按照128像素×16像素进行对齐,如果按照图10中③所示进行后续处理,会在最终推理阶段中增加无效补边数据,造成精度损失,因此按图10中①所示操作按照原图进行裁剪的方式对其进行裁剪,剔除无效补边数据;对于裁剪之后的图像要进行缩放,昇腾310的硬件架构约束使得在缩放时会对图像宽高按照16像素×2像素对齐,按图10中④进行等比例缩放,会在贴图的过程中增添无效补边数据,对推理造成影响,因此采用图10中②所示方法进行对齐缩放,避免无效补边数据的影响,提升算法检测精度。

③ 结果后处理优化。昇腾310处理器具有丰富的CPU核心资源,其中一部分被专用于承担非矩阵类计算,称之为AI CPU。YOLOv4算法后处理阶段包含了算法结果解码和非极大值抑制(Non-Maximum Suppression,NMS),在后处理阶段若对每个特征图上的特征点进行解码和NMS极为耗时,因此对每个特征点的得分进行阈值判断,删减部分不满足的特征点,减少处理耗时。其次,昇腾310自身所带的算子库不支持常见网络的后处理算子,因此有两种方式对结果进行后处理,一种是利用通用CPU来完成后处理过程,但是这种方式计算速度慢,耗时较多;另一种是采用AI CPU来完成结果的后处理,将后处理过程打包成为一个专用的后处理算子,并将后处理算子嵌入到算法模型中在AI CPU侧完成计算,其计算的效率远远高于通用CPU侧。在完成后处理逻辑分析(解码+NMS)之后,即可利用工具链完成自定义算子开发,最终测试完成之后注册到昇腾310的算子库当中。

图9 软件处理流程

图10 图像预处理优化措施

3 实验

3.1 实验参数设置

① 数据集设置。背景图像来自于国家电网某变电站实地采集以及网络搜集,包括绝缘子设备、变压器、仪表盘等典型变电站电力设备图像5000张,其中训练集4000张,测试集1000张,雨天图像为机理仿真生成,具体仿真流程如图11所示。

图11 雨条仿真过程

② 去雨网络参数设置。引导滤波器窗口大小为r=8,数据集的训练次数epoch=100,优化算法为Adam,初始学习率设置为0.001,学习率的衰减依然采用半分法进行衰减。

③ 雨天稳健的变电站设备检测算法参数设置。去雨网络保持原参数设置,网络联合优化训练中,patch设定为256像素×256像素,batch_size设置为4。

实验中方法模型均在本地服务器端(RTX 2080Ti)进行训练,在昇腾310上进行部署实现并测试。

3.2 雨条去除的定量化指标及可视化结果

选择了3种经典的图像复原深度学习算法进行对比,如表2所示,包括两篇计算机视觉顶级会议CVPR (IEEE Conference on Computer Vision and Pattern Recognition)的算法,分别为2017年Fu等[13]的DDN (Detail Neural Network)去雨算法,以及2018年Pan等[14]的DualCNN(Dual Convolutional Neural Networks)去雨算法,另外是由Zhang 等[15]在2016年提出的DNCNN(Denoising Convolutional Neural Network)去噪算法。评价指标为PSNR(Peak Signal-to-Noise Ratio)、SSIM(Structural Similarity)和模型参数量。

表2 雨天退化仿真数据集上对比实验结果

从表2中可以看出,相比其他对比方法,在参数量最小的情况下,其PSNR和SSIM均表现最优,其中DDN算法是只将图像高频成分送入网络进行雨条估计,可以看出效果较差,验证了将原始输入与图像高频成分进行级联后,保留了图像原始信息从而获得更好的去雨效果,也验证了去雨网络的优越性。图12为图像去雨可视化结果对比,其中GT(Ground truth)代表清晰图像,作为标签对比复原算法的性能,可以看出,所提算法取得了更优的视觉效果。

图12 图像去雨可视化结果对比

3.3 雨天场景下变电站设备检测算法对比

为了验证本研究联合优化框架的有效性,将DERN分别与YOLOv4和Faster RCNN(Faster-Region Convolutional Neural Networks)进行组合,针对雨天场景下的变电站设备检测问题做了以下对比实验,如表3和表4所示。方法1为检测算法在晴好图像上进行训练,在雨天退化图像上进行测试;方法2为检测算法直接在雨天退化图像上进行训练,在雨天退化图像上进行测试;方法3为检测算法在晴朗图像上进行训练,在雨天退化测试集上先去雨再检测;方法4为方法直接在雨天退化图像上进行训练,在雨天退化图像上进行测试;方法5为检测算法在晴好图像上进行训练,在晴好图像上进行测试。以目标检测结果的准确率作为评价结果,实验数据如表3和表4所示。

表3 雨天场景下DERN+YOLOv4不同训练方式检测结果

表4 雨天场景下DERN+FasterRCNN不同训练方式检测结果

从表3中可以看出,方法5为检测模型在晴好图像上训练,其在晴好图像上测试准确率高达83.5%,然而当遇到雨天等退化图像时,算法精度降至53.4%。进一步,针对雨天退化天气,方法2为检测算法直接在雨天图像上进行训练,相比方法1,其检测结果有较大提升,但是由于雨条形态复杂,网络拟合能力有限,因此检测性能无法达到最优。方法3是将测试集先进行去雨,该方法相对于直接在退化图像上进行测试,指标有了进一步的提升,然而去雨之后图像会损失一定的细节信息,造成图像伪影,然而检测算法是在晴好图像上训练,网络在学习过程中缺乏对这些图像伪影或者受损后的图像进行建模,因此当检测算法直接对去完雨后的图像进行检测时,其检测性能依然会受限。使用方法4将图像去雨和检测算法联合优化,得到的雨天环境稳健的变电站设备检测算法,去雨网络不再单纯以恢复视觉效果为复原目标,同时还以促进高层性能指标作为指导约束网络的训练,而检测网络也会在训练过程中对复原后图像中的伪影或者残留退化进行建模学习,从而其检测性能得到了进一步提升,仅次于方法5中在清晰图像上训练在清晰图像上测试的效果。进一步从表4中可以得到相同的规律,雨天场景下本文联合优化框架的算法性能是最接近晴天场景下方法5的性能。

进一步将表4和表5进行对比可以发现,YOLOv4相比FasterRCNN具备更加优越的检测性能,准度度更高,在相同分辨率1080像素×1080像素的图像上,具备更快的处理速度,因此在后续的部署中,主要针对YOLOv4进行优化改进。

3.4 部署模型优化前后的实时性对比

从推理精度和推理时间两个方面来验证优化前后硬件加速性能,结果如表5所示。

表5 硬件优化前后性能对比

由表5可知,硬件实时加速方法通过对数据进行预处理优化,使得算法在硬件上的精度和PC端上的精度能够大致持平;通过任务并行以及后处理优化,使得算法在昇腾310平台上的处理速度极大地提升,满足变电站设备检测的实时性要求。图13为嵌入式边缘端智能计算系统在雨天退化场景图像下,对变电站设备目标检测的部分结果图,从图中可以看出,本文算法有效抑制了雨天所带来的退化,能够较好完成雨天场景下变电站设备检测,提高了基于视频监控的变电站设备检测系统的全天候工作能力。

图13 雨天场景变电站设备检测结果

4 结束语

针对雨天场景下的变电站设备目标检测问题,构建了一个轻量高效的单幅图像去雨网络,并将该去雨网络与YOLOv4目标检测算法联合优化,实现雨天稳健的变电站设备检测算法。针对变电站设备智能检测系统的实时性要求,基于昇腾310处理器,构建了边缘端变电站设备检测硬件系统,将算法进行实时部署,针对处理器的架构特性,分别从任务并行、算子优化等方面进行优化,提高了算法在实际应用中的精度性能与实时推理性能,提升了基于视频监控的变电站设备检测系统的全天候工作能力。

猜你喜欢
变电站图像优化
超限高层建筑结构设计与优化思考
民用建筑防烟排烟设计优化探讨
关于优化消防安全告知承诺的一些思考
一道优化题的几何解法
巧用图像中的点、线、面解题
有趣的图像诗
变电站巡检机器人控制系统设计
关于变电站五防闭锁装置的探讨
超高压变电站运行管理模式探讨
电解铝降压整流变电站综合自动化的运行