基于多特征与DCNN的红外SF6泄漏检测方法研究

2021-06-21 02:29徐守坤符心宇封晓晨王雨生
计算机应用与软件 2021年6期
关键词:高斯红外卷积

徐守坤 符心宇 封晓晨 王雨生 石 林

(常州大学信息科学与工程学院 江苏 常州 213164)

0 引 言

六氟化硫(SF6)是一种被广泛应用于电力、化工行业的绝缘气体,且具有无色无臭的性质,其泄漏会对设备与环境都造成巨大的损害,寻找一种及时、有效的SF6泄漏检测方法尤为重要。传统的SF6泄漏检测方法很多,但大多利用其物理性质,借助设备进行检测,这些方法不仅需要大量人力,且无法自动检测。相关工作者利用SF6能够较好吸收红外光波的原理,提出了基于红外成像技术的SF6泄漏检测方法[1],在红外技术支持下,SF6呈现出黑色烟雾状。过去几年中,很多图像烟雾检测算法被提出。文献[2-3]提出几种烟雾检测方法,如结合聚合Gabor核和局部二值模式(LBP)的烟雾识别方法、结合Gabor网络与纹理特征的烟雾识别方法。Yin等[4]提出一种用于烟雾检测的归一化卷积神经网络,在提取特征的同时对数据进行归一化处理,获得了不错的检测精度。卫鑫等[5]针对采样的每帧烟雾特征具有极大的相似性,提出一种深度卷积长短期记忆网络的火灾烟雾检测模型。

本文针对传统SF6泄漏检测方法准确性不高且耗时耗力等问题,将红外成像技术与机器学习结合,提出一种新的SF6泄漏检测方法,提取红外技术下SF6泄漏的颜色及运动特征,利用加入膨胀卷积[6]的改进卷积神经网络进行分类,在增大感受野的同时,可以避免空间信息的丢失,在实际对SF6的检测中具有比经典CNNs更好的检测效果。实验证明,本文方法不仅能够对SF6气体进行全天候、多角度自动检测,而且具有较高的检测准确率。

1 算法基础

1.1 高斯混合模型

高斯模型的原理就是使用高斯正态分布函数来精确地量化事物,将事物分解为K个高斯分布[7],并且使用K个高斯分布的加权和来描述事物场景。一般来说,K的值越大,高斯混合模型处理场景变化的能力就越强,K的值一般取3~5。使用混合高斯模型能够快速准确地提取疑似泄漏区域。

1.1.1高斯建模函数

在混合高斯模型中,设Xi,t为t时刻图像中某像素点的取值,则模型的概率密度函数如下:

(1)

f(Xi,t,μi,t,Σi,t)=

(2)

式中:n为像素点的维数;β值是控制背景高斯分布个数的阈值。

1.1.2背景的划分及更新

混合高斯模型之所以能够准确划分背景与运动区域,是因为它可以不断地根据像素的变化进行背景的划分与更新。在模型的概率密度函数中,ωi,t表示某单个像素值在第i个高斯分布产生的概率占P(Xi,t)的比例。一般来说,ωi,t的值越大,则第i个高斯分布越接近背景,而标准差σi,t(通常取2.5~3.5)越小,高斯分布越稳定。所以在混合高斯模型中,K个高斯分布按照权值ωi,t与标准差σi,t的比值从大到小进行排列,选取前B个高斯分布作为背景[10],其中b表示B值所能取得的最小值:

(3)

β值的含义是作为背景的高斯分布B在像素的整个概率分布中所占的权重,β过小会导致背景图像分布为单峰,反之则会是多峰,在一般情况下β取值为0.7。将权值较大的高斯分布作为背景,将权值较小的高斯分布用作描述运动目标。

视频中的背景不是一成不变的,混合模型需要一直更新背景。如果像素值Xi,t满足:

|Xi,t-μi,t-1|≤2.5σi,t-1

(4)

则当前像素值与第i个高斯模型匹配,然后更新高斯模型参数,其权值、均值、方差的更新公式为:

(5)

式中:θi,t的值在模型匹配时取1,如果不匹配则取0;ρ=α×f(Xi,t,μi,t,Σi,t)为均值、方差更新率,α为模型的学习率。高斯混合模型就是在不断更新背景的过程中,提取出运动区域。

1.2 卷积神经网络

卷积神经网络(CNN)最早是由Lecun等[8]提出用于手写数字识别领域,并迅速在该领域占据霸主地位。强大的CNN在图像识别、运动分析、人脸识别、自然语言处理及脑电波分析方面都有极大突破。与传统的神经网络相比,其优势体现在局部感受野和权值共享上。图1为卷积神经网络的网络结构,由输入层、卷积层、池化层、全连接层、输出层等部分构成。其卷积层能够特征提取,卷积层中的每个神经元分别连接到上一层的局部感受野提取特征;池化层充当特征过滤器,池化操作一般有最大池化和平均池化两种,池化操作的目的在于减少参数矩阵的尺度,加快运算速度,一定程度上可防止过拟合。

图1 卷积神经网络结构

2 算法设计

2.1 红外SF6泄漏视频检测算法流程

红外成像技术下的泄漏SF6为运动目标,具有丰富的特征,单单提取一种特征对其进行检测,不能满足SF6检测的快速变化要求。本文首先通过混合高斯模型[9](GMM)将其放入HSV颜色空间[10]进行分析,得到其颜色特征;然后在疑似泄漏区域进一步提取其动态特征,即不规则运动特征,通过提取SF6泄漏的颜色特征与运动特征,能够适应不同场景下的烟雾类气体检测;最后使用膨胀卷积代替卷积神经网络(CNN)中的池化层。实验证明,膨胀卷积神经网络(DCNN)与经典的CNNs网络相比,具有更好的分类效果。通过DCNN对提取出来的泄漏区域进行判断,并准确地在视频帧上标记出泄漏位置。SF6检测算法流程如图2所示。

图2 SF6检测算法流程

2.2 基于高斯混合模型的SF6泄漏区域提取

以某红外SF6泄漏视频为例,采用混合高斯模型背景建模方法提取其疑似泄漏区域,通过EM算法来进行参数估计。部分参数初始值设定为K=5、β=0.7、α=0.005、n=3。

混合高斯算法能够较准确地提取运动候选区域。图3所示为混合高斯模型提取到的候选区域,其中:图3(a)为原始SF6泄漏视频;图3(b)中白色区域为利用混合高斯模型提取到的运动区域,但是由于SF6泄漏的位置较为固定,在一段时间的检测之后,模型会将连续运动的区域自动判定为运动区域,造成一定程度上的误检,所以单单使用混合高斯模型来检测SF6泄漏是不够精确的。

图3 混合高斯模型算法效果图

2.3 红外SF6泄漏多特征提取

对于SF6的泄漏检测,高斯混合模型具有较好的优势,但是对于一些运动物体的干扰,还是不能较好地分辨,所以本文将采用合适的特征提取算法,提取SF6的颜色及运动特征,进一步提高识别SF6的泄漏位置的准确率。

2.3.1 基于HSV颜色空间的SF6特征分析

HSV是根据颜色直观特性提取特征的一种颜色空间,其中:H代表色调;S代表饱和度;V代表明度。图4所示为HSV颜色圆锥模型。

图4 HSV颜色圆锥模型

H的范围为0°到360°,0°的位置为红色,沿逆时针方向旋转,绿色在120°的位置,蓝色和品红分别在240°和300°的位置。

S描述的是颜色与光谱色的对比程度,颜色越接近光谱色,饱和度就越大,一般饱和度的取值范围0%到100%。

V表示色彩的明亮程度,这与发光体的亮度有关,与物体本身的透光程度也有关系,其取值范围也为0%(黑)到100%(白)。

通常,图像存储在计算机中时,其存储与显示都是以RGB形式来进行的,但是HSV对于用户来说是一种更加直观的颜色模型,所以本文在HSV颜色空间中处理图像数据。像素从RGB转换到HSV颜色空间的公式如下:

(6)

(7)

V=max(R,G,B)

(8)

本文检测的SF6气体本身无色无味,但是在红外成像仪下,却呈现出黑灰色。将红外SF6泄漏图片所有像素点映射到HSV颜色空间当中,为了方便计算首先将图片的三分量H、S、V映射到0~255之间:

(9)

由于计算机中所有图像的默认值都会按照RGB的值处理,所以将图片转换到HSV空间时,图像会发生较大变化。图5所示为某SF6泄漏图像放入HSV颜色空间中的效果图,其中图5(a)为原始图像,图5(b)为放入HSV颜色空间转换后的图像。

图5 转换到HSV颜色空间的效果对比

图6是一幅从SF6泄漏视频中截取的小图像块,将其从RGB颜色空间转到HSV颜色空间中,分析其特征。

图6 SF6泄漏图像块

HSV像素分布效果如图7所示。图7(a)为将SF6泄漏图像块所有像素映射到HSV空间的三维效果图,x、y、z分别对应了H、S、V三个分量。由于像素分布较多且杂乱无章,看不出规律,所以将三维空间中的像素分布分别映射到三个平面上,将H、S、V两两组合,生成二维图像。图7(b)为HSV三维图像向S-V平面投影得到的二维图像,可以看出,S值较小的区域,像素分布很多,而V值的分布比较广泛,没有明显的特征。图7(c)为HSV三维图像向S-H平面投影得到的二维图像,可以看出,像素都分布在S值较小部分,而H值的分布较广,也没有明显的特征。图7(d)为HSV三维图像向V-H平面投影得到的二维图像,图中V值的分布与H的分布都没有明显的特征。

(a) H-S-V像素分布图3D

(b) S-V平面投影图像

(c) H-S平面投影图像

(d) V-H平面投影图像图7 HSV像素分布效果图

将大量图片放入HSV颜色空间中进行对比,得到如下结论:存在SF6泄漏区域的饱和度S一般较低,经过实验选取S值为70,而SF6泄漏运动时亮度V提升,取视频前50帧的平均亮度作为阈值。所以区域饱和度S低于70且亮度值V大于视频前50帧平均亮度值时,判定该区域为疑似泄漏区域。

图8所示为经过HSV颜色空间处理与原始图像的效果对比图,图8(a)为原始图像,图8(b)中被黑色区域覆盖的为SF6泄漏区域。通过颜色特征分析,可以进一步对候选区域进行筛选。

图8 HSV颜色空间泄漏区域确定

2.3.2SF6泄漏运动特征分析

对比多个SF6泄漏视频,其泄漏呈现出不规则性。一般来说,SF6的密度比空气大得多,其开始的运动方向都为朝下,因受拍摄环境的影响,其泄漏轨迹往往会向四周扩散,整体运动呈现出不规则性。而烟雾的局部运动也是不规则的,这种运动特性是别的物体所不具备的,所以根据SF6泄漏运动的不规则性,可以进一步判断SF6泄漏的运动区域。

同样面积的两个物体,一个是光滑规则的闭环曲线,一个是参差不齐、不规则的闭环曲线,两者相比,不规则的曲线长度一定要比规则的曲线长度长。图9为不规则性原理的示意图,其中图9(a)是边缘规则曲线,而图9(b)是面积与图9(a)相同但形状不规则的曲线,可以看出,不规则曲线长度明显要长。

图9 不规则性原理示意图

SF6在发生泄漏时,受气压、温度、气流等影响,泄漏时呈现出不规则的形状,通过计算每一帧的像素变化来实现SF6泄漏检测是非常困难的,因此引入一个不规则度(Irregularity)[11]的概念,其计算公式如下:

(10)

式中:S1为使用混合高斯模型提取出来的疑似泄漏区域面积;S2为提取出来的疑似泄漏区域的最小外接矩阵的面积。S1、S2的值用其包含的连通区域的像素总数来描述。

给定一个阈值∂,根据式(11)来区分是否为扩散的SF6泄漏区域。

(11)

式中:Area=1代表该区域为扩散的SF6泄漏区域,反之则不是。

通过计算多个SF6泄漏视频的不规则度IRR,最终得到实验需要的阈值∂,如图10所示,图10(a)、(b)分别为两组SF6泄漏视频,图10(c)、(d)分别为它们的IRR分布图。可以看出,IRR的值大多分布在0.1到0.7之间,而且小于0.6的分布占绝大多数,通过多组实验比对,IRR的分布同样满足这一特点,所以设定不规则度的阈值∂为0.6。

(a) SF6泄漏视频1 (b) SF6泄漏视频2

(c) 视频1的IRR分布图

(d) 视频2的IRR分布图图10 SF6泄漏不规则度分析

(a) 膨胀率r=1 (b) 膨胀率r=2 (c) 膨胀率r=4图11 膨胀卷积结构单个神经元感受野

2.4 基于DCNN的红外SF6图像识别

虽然CNN的分类效果已经很不错,但它仍有以下问题。首先是卷积层的问题,卷积层通过一组矩阵与前一层网络神经元的输出矩阵相乘,即卷积计算,来得到某些特征,它具有平移不变性,这意味着,同一目标的轻微位置变化,可能不会激活那些识别目标的神经元;其次是池化层的弊端,池化操作会导致内部数据结构丢失以及空间层级化信息丢失。

基于上述情况,引入一种新颖的卷积方法——膨胀卷积。该算法既可以增大感受野,还可以避免池化操作而导致诸多细节和空间信息的丢失。膨胀卷积诞生于图像分割领域,它在原始卷积的基础上增加了一个r参数,能将卷积核扩张到膨胀系数所约束的尺度中,并将原卷积核中未被占用的区域填充0。图11为膨胀卷积单个神经元感受野的示意图,其中r代表卷积核的膨胀系数,其有效卷积核高计算公式如(12)所示,有效卷积核宽计算公式如式(13)所示。

hconv=fh+(fh-1)×(r-1)

(12)

wconv=fw+(fw-1)×(r-1)

(13)

式中:fh为原卷积核的高;fw为原卷积核的宽。

膨胀卷积的计算方法是通过卷积核沿着像素点逐步移动,移动到了某个像素点之后,特征图对应的位置数值再与卷积核模块做点积运算。膨胀卷积的感受野计算公式为:

k′=r(k-1)+1

(14)

膨胀卷积产生的特征图分辨率计算公式为:

(15)

式中:k′为膨胀卷积核尺寸;k为原始卷积核尺寸;r为膨胀率;d为填充的数据大小;s表示步长。

不难看出,膨胀率r=1的时候,膨胀卷积与卷积是等价的,与卷积神经网络的池化层相比,膨胀卷积具有快速扩大感受野、避免空间信息丢失的功能,在图像数据需要全局空间信息进行分析时,能够得到很好的应用。SF6是一种不规则的气体,对其泄漏进行检测,需要根据其空间信息进行判断,所以使用膨胀卷积神经网络来检测SF6气体泄漏分类效果更佳。图12所示为本文使用的膨胀卷积神经网络(DCNN)的网络结构。

图12 膨胀卷积神经网络模型图

本文中使用的膨胀卷积神经网络共包含一层输入层、三层卷积层、两层膨胀卷积层、一层池化层、两层全连接神经网络层和一层输出层。模型相关超参数如表1所示。

表1 网络模型超参数

续表1

本文使用的膨胀卷积神经网络(DCNN)在卷积神经网络结构上,将前两个池化层替换成膨胀率为2的膨胀卷积,减少了空间信息的丢失,在卷积层与全连接层中使用了修正线性单元(Rectified Linear Unit,ReLU)函数[12]作为激活函数,使用方差为0.1的正态分布来随机生成卷积核的权值,其中偏置的值为1。ReLU函数公式如下:

f(x)=max(0,x)

(16)

全连接层部分采用了DropOut[13]的方法来防止过拟合,其原理是减少神经元之间复杂的共通关系,减少了一些特征相互依存的情况,从而提升整个神经网络的效率,一般设置DropOut为0.3或者0.5,本文选择0.5。如图12所示,本文网络中使用了两个全连接层,最后一个Softmax层用于分类,两个全连接层用于从前一层得到的特征图中提取特征向量,为了研究不同组件的有效性,本文进行了实验对比,实验结果如表2所示,本文具有两个全连接层的改进卷积神经网络性能最佳,但去掉两个全连接层的其中一个时,其性能略差,若将两个全连接层全部去掉,网络失去收敛效果。因为,当没有前两个全连接层时,提供给Softmax分类器的特征维数会非常高,忽略了反向传播,所以全连接层对于网络是不可缺少的一部分。表2所示为不同全连接层对检测效果的影响结果分析,表明两个全连接层的神经网络对于SF6的检测效果更佳。

表2 不同全连接层数量对比实验结果

在输出层使用了Softmax函数作为激活函数,传统的Lenet-5卷积神经网络的输出层有10个神经元,而本文的目的只需要判断SF6是否泄漏,所以将输出神经元的数目修改为2,减少了输出层的运算量。

3 实 验

本文使用Linux搭建实验开发平台,选用Ubuntu16.04作为操作系统,GPU选用NVIDIA GeForce GTX 1080Ti,CUDA8.0,CUDNN6.0,内存为12 GB。实验使用Tensorflow深度学习框架进行模型的训练和测试。为了证明本文方法的优越性,本文使用Tensorflow框架在同样的实验环境下实现了其他深度卷积神经网络,如Lenet-5、Alexnet。在此硬件环境下,训练一个周期的DCNN需要90 s,对红外SF6视频的识别速度大约为15~20帧/s。

3.1 数据集制作

3.1.1数据来源及整理

SF6气体因其肉眼不可见的性质,其图像视频的获取大多来源于红外热成像仪的拍摄,虽然其检测的重要性较高,但是并没有成熟的公共数据集,本文主要通过以下两种方式采集SF6泄漏视频数据:(1) 通过Youtube、Youku等视频网站视频爬取;(2) 以GF306红外气体成像仪现场采集。图13为部分采集到的红外SF6泄漏视频帧。拍摄的场景及测试部位有法兰、阀门、室内外GIS设备、密度继电器等。视频大小都为320×240,每秒25帧,在红外拍摄条件下,整体呈现出黑灰色且亮度较暗,噪声类型主要为高斯噪声。

图13 部分SF6泄漏视频

3.1.2数据集预处理及数据增强

1) 数据集的去噪处理。为了降低图像的噪声,增强图像的固有特性,本文对红外SF6泄漏视频进行图像预处理,由于SF6泄漏视频的采集大多是通过红外成像仪拍摄得到,受拍摄环境、传输过程的影响,会产生一些图片噪声,这决定了图片质量的好坏,对图像的识别准确率会有一定的干扰。所以在检测之前,需要对其进行滤波去噪,本文采用的是高斯滤波法。高斯滤波是一种线性滤波,在处理高斯噪声时效果较佳,可以有效保护图像的边缘信息。本文采用双线性插值算法对视频进行归一化处理,该算法不仅对图像缩放效果好,而且其运算效率也很高,最终将视频归一化为320×240。本文最后输入到膨胀卷积神经网络进行训练的图片是32×24像素的小图片,使用小图片进行训练能够有效地减少运算量,提升检测速度。

2) 数据增强。深度卷积神经网络通常有数百万需要学习的参数,想要通过卷积神经实现高准确率,一方面需要大量的训练图像,另一方面需要图像样本的均衡性。本文通过数据增强技术[6],将SF6图像样本和非SF6图像样本进行水平翻转、垂直翻转,从训练集中产生更多的训练数据。将新生成的样本与原始样本进行混合,在不改变正样本与负样本比例的同时,生成了更大更平衡的训练集,对整个系统的检测性能有了不错的提升。如表3所示,Set1为测试所用数据集,测试集中的正负样本图片都是从红外SF6泄漏视频中裁剪出来的,Set2为没有使用数据增强技术的原始数据集,Set3为使用数据增强技术对数据集进行扩充。扩充后的数据集中的图片统一为32×24的小图片,其中:黑灰色烟雾图片一部分来源于文献[14]的公开数据集,一部分是裁剪自SF6视频中的泄漏图像块;非泄漏烟雾图片一部分来源于公开的烟雾检测负样本数据集[14],另一部分裁剪自泄漏视频中对应的非泄漏区域,如设备、墙壁等。

表3 数据集描述

3.2 检测结果分析

为了检测算法的效果,使用本文的方法对采集到的SF6泄漏视频进行检测,图14所示为本文系统最终输出的结果示意图,系统标记出识别为SF6泄漏的小块图像在原视频帧中的位置。

图14 部分SF6泄漏视频检测结果示意图

通过观察与分析,红外成像仪拍摄的SF6泄漏视频主要有以下特点:红外SF6呈黑灰色烟雾状;泄漏速度较快,泄漏扩散的画面与画面背景类似;视频的每一帧都是泄漏帧。

本文方法会根据检测结果生成整个检测环节中的报警帧数,通过统计准确报警、错误报警、漏检的帧数,计算整个系统的准确率、误检率及漏检率,实现SF6泄漏检测的客观评价。

表4为部分红外SF6泄漏视频的检测分析,其中S表示泄漏帧数,T表示正确检测到泄漏的帧数,N1表示漏报帧数,N2表示误报帧数。可以看出,设备稳定、正常拍摄条件下的SF6视频泄漏检测效果不错,误报数和漏检数比较少,说明本文使用方法检测的报警率较高;但如果设备晃动,泄漏量少或泄漏不明显;有较多干扰因素在的话,就容易出现误报、漏报的情况。

表4 部分红外SF6泄漏视频检测分析

续表4

为了更加客观地评估本文的方法,将多个测试视频的检测数据进行统计,计算平均准确率、漏检率和误检率[15]。记平均准确率为AR,漏检率为LR,误检率为FR,泄漏帧数为S,漏报帧数为N1,误报帧数为N2,测试的视频数为n,i表示测试视频,计算公式如下:

(17)

经过多次实验,本文方法的准确率保持在82%左右,检测的效果比较好,具有一定的抗干扰能力,鲁棒性高,缺点是还有一定程度的漏检。

3.3 对比实验

为了验证本文使用的膨胀卷积神经网络具有较好的效果,本文将其与几个经典的CNN进行了对比实验,如Lenet-5[16]、Alexnet[17]、ZF-net[18]。使用这几种网络分别对进行数据增强以后的Set2进行训练,训练采用随机组合的方法,每次随机抽取100幅图片进行分类训练,一共抽取1 000组数据。随机组合的好处在于对小数据集能够达到大数据集的训练效果。表5所示为几种网络训练的精度对比。

表5 本文网络与经典CNN的精度值比较

可以看出几种CNN网络都能得到不错的训练精度,但是在实际的SF6泄漏检测过程中,膨胀卷积神经网络结合本文提取SF6泄漏特征的几种方法,其检测的效果明显更佳。采用4种网络分别对Set1和Set2进行训练,然后对红外SF6泄漏视频的检测进行评估,结果如表6所示。可以看出,本文使用的DCNN取得了最高的AR值和最低的LR值。在Set1上,Alexnet取得了较低的FR值,但是DCNN在AR值和LR值上明显高于Alexnet;ZF-net在Set2上拥有较好的AR和FR,但是其拥有过多的可学习参数,在速度上明显不及DCNN。总之,本文使用的DCNN在SF6这类烟雾类气体检测当中,拥有比Lenet-5、Alexnet和ZF-net更好的检测性能。

表6 与不同CNN的对比实验

4 结 语

针对传统SF6泄漏大多依靠人力检测的问题,本文提出一种基于多特征融合及膨胀卷积神经网络的红外SF6泄漏检测方法,采用图像处理算法结合深度学习网络对红外技术下SF6泄漏进行检测。实验证明,本文方法具有较好的检测效果,为实现远距离实时检测SF6泄漏提供了理论依据。该方法可以应用在人员不易接触、距离较远的高压电气设备中,不仅对SF6实现了检测,而且节约了人力,保障了相关工作人员的安全。

未来可以将本文方法与SF6泄漏的浓度检测相结合,工作人员可以根据泄漏的程度大小采取不同的处理方法,进一步提高SF6电气设备的监管力度,保障电力生产作业安全运行。

猜你喜欢
高斯红外卷积
基于全卷积神经网络的猪背膘厚快速准确测定
网红外卖
“资源一号”02卫星可见近红外相机、宽幅红外相机在轨顺利开机成像
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
闪亮的中国红外『芯』
汤定元:中国红外事业奠基人
数学王子高斯
从自卑到自信 瑞恩·高斯林