基于残差网络的烟火识别技术在林火智慧监控系统中的应用
2024-01-05张朝阳叶伟荣
张朝阳,叶伟荣
(浙江省公众信息产业有限公司,浙江 杭州 310000)
0 引言
森林火灾是世界性林业重要灾害之一,具有次数多、范围广、强度大、突发性强、破坏性大、极难控制等特点。近10年(2012—2021年),全国共发生森林火灾2.63万起,受害森林面积13.31万公顷[1],致使生态环境损失重大,也对人类生命财产安全造成极大威胁。利用人工智能、物联网等先进技术进行林火监测预警是森林消防和应急管理的重要技术手段。
近年来,林火监测图像识别的模式逐步从卫星图像检测,到红外图像检测、地面塔台可见光图像检测,再发展到高空高清视频监控图像识别。图像识别算法从传统的特征提取、分类、建立特征提取器,到目前流行的卷积神经网络(CNN),图像识别效果得到极大提升。叶秋冬[2]等通过对视频烟雾图像提取和基于视频序列的动态特征检测,来增强对烟雾的识别率;陈俊周[3]等提出一种级联卷积神经网络模型,在静态单帧图像特征检测的基础上,进一步分析其时空域上的动态纹理信息以期克服复杂的环境干扰;李巨虎[4]等提出的以分块的LBP直方图特征结合LPQ直方图特征的火焰识别算法,与深度学习算法对比,预测耗时较短;丁毓峰[5]提出一种基于POS-KELM的森林火灾图像识别方法,提取火焰及烟雾的形状特征、纹理特征及动态特征,并整合成特征向量,输入核极限学习机进行寻优仿真计算;袁梅[6]等提出一种基于CNN的烟雾检测方法,自动提取烟雾候选区域的特征,进行烟雾识别,根据分类结果得到报警信号;Filonenko A[7]等提出一种基于烟雾区域形状特征和颜色信息的烟雾视频图像检测方法,并以此区分流体烟雾区域和刚性运动物体;S Saponara[8]提出了一种基于YOLOv2卷积神经网络(CNN)的实时火灾和烟雾探测系统,通过嵌入式设备,利用该模型训练不同场景的室内和室外火灾和烟雾图像集,实现高精度的火灾/烟雾识别。何凯明[9]首次提出利用Resnet残差学习解决深度CNN模型难训练的问题,是图像识别领域算法优化的重大突破。
本文构建了基于残差神经网络的烟火图像识别模型,通过在林火监测场景的应用研究显示,该模型可较好地解决网络训练中性能退化问题,优化了烟火识别率,提高了预警准确率。
1 林火识别预警机制
基于前端智能化双光谱视频监控设备,利用视频图像分析技术,对高清远距视频流数据进行接入和分析,根据图像进行后台算法计算,识别烟、火发生的可能性,一旦发现疑似火情,立即触发报警,支持以短信、微信等多种方式将通知送达至管理人员手机,以便及时采取消防灭火处置流程。
2 烟火识别模型原理
2.1 残差网络算法的优势
神经网络层数越多,网络就能进行更加复杂的特征提取,理论上可以取得更好的结果。但实验却发现当网络深度增加时,准确度出现饱和,甚至是下降。梯度消失和梯度爆炸的解决方法:对输入数据和中间层的数据进行归一化操作,这种方法可以保证网络在反向传播中采用随机梯度下降(SGD)方法,从而让网络达到收敛。但是,这个方法仅对几十层的网络有用,当网络再往深处走的时候,这种方法就无用武之地了。
为了让更深的网络也能训练出好的效果,何凯明[8]提出了一个新的网络结构——ResNet(残差神经网络)。这个网络结构的想法主要源于VLAD(残差的想法来源)和Highway Network(跳跃连接的想法来源)。F(x)+x构成的block称之为残差块,多个相似的残差块串联构成ResNet。
一般情况下,残差路径可以分成两种:一种有bottleneck结构,利用1×1卷积层先降维再升维,主要出于降低计算复杂度的现实考虑,称之为“bottleneck block”;另一种没有bottleneck结构,由2个3×3卷积层构成“basic block”。在残差网络算法中,有两种类型的shortcut路径。第一种是恒等映射,当输入和输出具有相同的维度时,可以将输入直接添加到输出上,实现跳过卷积层的效果。第二种是卷积映射,用于处理输入和输出维度不匹配的情况,通过额外的卷积层来调整维度以适应输出。这两种shortcut路径帮助信息更快地传播,并减轻了梯度消失和梯度爆炸问题,同时还能减轻计算负担。
Residual Block之间通过shortcut路径进行衔接,F(x)代表一个Residual Block的输出特征图,x是该Block的输入特征图,F(x)+x经过ReLU后直接作为下一个block的输入x。采用ResNet模型的基本原理是更新F(x)部分的权重值,解决模型退化问题,使模型更好地学到新的特征。可以用式(1)来描述一个Residual Block的输出:
2.2 SELU激活函数提升拟合能力
激活函数在神经网络中主要解决线性不可分问题,通过对每一层线性变换后叠加一个非线性激活函数,从而获得更强大的学习和拟合能力。ReLU计算简单,只需要一个阈值就可以计算得到激活值,ReLU的非饱和性可以有效解决梯度消失的问题,以提供相对宽的激活边界,ReLU的单侧抑制提供了网络的稀疏表达能力。但是ReLU仍然有其局限性,根据ReLU式(4)可看出,由于其函数在负半轴上直接置0,由此导致负梯度经过ReLU单元时不被激活,导致该神经元死亡。此外,ReLU函数在正半轴导数恒为1,导致梯度在过小的时候,经过该函数时,容易导致梯度消失。
SELU激活函数就是解决上述问题而产生的,如式(5)所示,SELU激活函数的正半轴导数是大于1的,这样可以使方差过小的时候让它让增大,同时防止梯度消失;而在负半轴不再简单置0,从而解决神经元死亡问题,又因为其坡度较为平缓,可尽量保证ReLU中的单侧抑制优势。
2.3 Bottleneck加速模型训练
Bottleneck Layer又称之为“瓶颈层”,使用的是1×1的卷积神经网络,通过灵活设计网络,减少参数量,从而减少计算量,使得深度残差网络的训练速度加快,且在降维之后可以更加有效、直观地进行数据的训练和特征提取。
3 系统建设及应用研究
3.1 系统架构
林火智慧监控平台的系统架构由前端高清摄像机、视频流数据传输网络、监测预警系统、智能识别中心及存储服务器几个部分组成,其中智能识别中心使用基于残差网络的CNN图像识别算法。平台组成部分如下。
(1)前端感知设备:通过部署在高处的高清红外球型瞭望摄像机,利用30~50 m的高空视角进行全天侯不间断监控。摄像机用于采集视野范围的监控图像,同时可按预设点位或角度定时抓拍图像,上传至监测平台后端服务器。
(2)数据传输网络:不同带宽的传输网络会影响视频传输的质量,比如清晰度、码率、视频存储空间等。针对面积较大的野外区域,一般建议选择4G/5G流量卡,靠近生活区的场景可选择运营商专线网络,以带宽租用形式形成专用监控网络,以保证视频传输质量和速率。
(3)监测预警系统:用户可接收所辖区域上报的图像及告警信息,实现视频查看、摄像头操控与管理、告警提醒,同时可对接上级应急监控平台,实现视频流数据调用查看、告警信息共享、应急处突业务流转、业务数据统计功能。
(4)智能识别中心:利用集成了Resnet CNN算法的智能分析引擎对视频图像进行高效分析,若识别为有烟火的图片,会发出告警并以桌面弹窗、短信或邮件发送通知至责任人,人工再次判别确认后,触发应急处置流程。
3.2 模型构建
(1)编程语言选择。本次使用Py thon3.7,使用torch==1.9.1+cpu、torchvision==0.10.1+cpu、numpy、pillow、Scipy、flask、werkzeug、gunicorn等库进行模型训练及识别系统的程序开发。
(2)数据集预处理方法。为了训练机器学习模型,本次收集Fire-Flame-Dataset等数据集,数据集包括火、烟和正常(没有火或烟的图像)的图片数据和标注文件,其中Fire-Flame-Dataset数据集包含大约3 000张图像和3个类,其中包括火、烟雾、中性等三个类别,每个类别有1 000张图像,900张用于训练,100张用于测试。部分图片标注类别示例如表1所示。
表1 机器学习对图片集进行类别标注的结果示例
(3)模型训练。常用的深度ResNet网络包括18、34、50、101、152等不同深度。为了更好地构建森林防火识别模型,本文中结合使用ResNet101网络进行模型建设,首先,对ResNet-101进行网络微调,去掉原ResNet101后面的全局平均池化和全连接层;其次,在模型后加入两个全连接层,节点数分别为1024和3,对自定义数据集进行分类,在模型中采用Adam优化算法、CategoricalCrossentropy交叉熵损失函数以及accuracy模型精确度指标。模型采用交替训练的方式,网络参数更新方法均为随机梯度下降法(SGD),学习率均为0.001。具体的训练过程如下:①构建分布式机器学习系统;②利用随机梯度方法训练;③使用了30个副本,每个副本在一个NVIDIA GeForce GTX 1060上运行;④批处理大小为64、200个epoch;⑤使用0.001的学习率;⑥使用随时间计算的运行参数的平均值来执行模型评估;⑦将模型保存为pth格式,供后台调用。
3.3 模型验证应用
使用公开的森林火灾现场图片进行模型验证应用,测试模型训练成果如下:表2中图片1为森林实地着火或烟雾图片,计算结果得分为100;图片2为森林火灾烟雾现场图片,计算结果得分为99.99,分类较为准确,计算结果显示模型分析结果准确,计算得分较高。结果表明模型具有一定精度,可用于实际系统应用中。
表2 残差神经网络学习模型智能分析结果
3.4 其他应用功能
(1)烟火在线识别功能。在系统后台进行视频切片,提取图像帧,调取烟火识别模型接口对图像逐帧进行识别判断,接口返回图片标注烟或火的状态信息,以计算得分的形式表现烟火图片置信度,并接入预警接口进行实时火警信息预判预警。
(2)火灾预警功能。在检测到火灾信号后,系统将以短信、语音电话的形式发送报警信息通知管理单位,将火情位置、发展形式等信息进行上报,以便及时采取有效措施,扑灭初期火灾,最大限度地减少因火灾造成的生命和财产的损失。
(3)火灾态势预判功能。系统自动跟踪和显示火点的位置,通过动态跟踪和锁定的热点及火点定位参数,并结合森林火场的风速、风向、温度和树木类型等要素,结合地形构建基于元胞自动机的火灾态势预判模型,同时结合烟火识别模型进行实时修正,量化预判火蔓延概率,快速实现区域火蔓延过程的动态模拟,为消防扑救措施提供了有益的理论依据。
(4)救火路径规划功能。结合烟火识别成果和火灾态势预判成果,系统结合三维地形、最短路径优化算法和现有道路情况进行森林救火的行进路线规划,并通知消防队员,同时根据消防队员在火场中位置进行实时路径优化,在达到救火减灾目的的同时保障人员人身安全,指挥员做出辅助消防应急决策提供支持。
4 结束语
本文探讨的视频图像识别方法,是一种优化的神经网络算法,对于烟雾图像检测敏感性强,在火情早期的烟火识别率高。随着我国5G网络的广泛覆盖、GPU算力能力飞速提升,基于神经网络的林火监测预警将为我国森林防火工作提供更智能、更精准的决策支持,同时可在室内室外区域火灾监测、秸秆焚烧监控、危化园区火灾防控等场景中得到广泛应用推广,赋能林火减灾、智慧环保、安全生产等领域。