首页 / 基于自注意力机制的航空林火图像识别方法

基于自注意力机制的航空林火图像识别方法实质审查 发明

技术领域

[0001] 本申请涉及机器学习技术领域,尤其涉及基于自注意力机制的航空林火图像识别方法。

相关背景技术

[0002] 森林遭受火灾后,会破坏生态环境,导致空气污染,威胁林下植物资源蕴藏,危害野生动物生存,严重时会破坏森林结构,致使森林生态系统失去平衡,甚至会威胁人类生命财产安全。据中国统计年鉴显示,2019年全年共发生森林火灾2345起,受灾森林面积达1.352 2
万hm;2020年全年共发生森林火灾1153起,受灾森林面积达0.85万hm。了解森林火灾发生、燃烧规律,采用科学方法提高森林火灾预警能力,可最大限度减少森林火灾带来的生态、环境和经济损失。
[0003] 随着深度学习在计算机视觉领域的发展,近年来提出了大量基于卷积神经网络(CNN)的图像分类识别方法。根据识别粒度不同,基于CNN的分类方法主要分为2种:1)粗粒度分类,即对不同物种层次类别对象进行识别,该方法具有较大类间方差、较小类内方差的特征,主流模型包括VGG16、GoogleNet、Resnet50等,常用于图像分类、图像分割和目标识别等领域;2)细粒度分类,即对大类中的子类对象进行精确识别,如根据细节特征区分不同种类的鸟、依据判别性区域剔除背景信息以识别不同车型等。基于细粒度的分类方法具有类间差异小、类内差异大的特征,经典神经网络识别细粒度图像存在困难,为此,Lin等提出Bilinear‑CNN网络,实现了对鸟类、飞机、汽车的细粒度识别,但该模型中的双线性pooling高维特征会引起模型过拟合。Woo提出CBAM细粒度分类网络,将注意力机制融入网络模型,在ImageNet‑1K数据集上取得了较好识别效果。
[0004] 以Transformer为主导的网络模型框架ViT在细粒度图像识别中表现理想。ViT绕过pooling层并融入自注意力机制实现图像特征提取,通过减少对外部信息依赖捕捉数据或特征的内部相关性,由于自注意力机制关注的是全局特征,简单的查询和赋值即可获得特征图和全局空间信息,避免了CNN卷积核中特征图的多层堆叠。Wang等提出一种基于自注意破坏和构造学习(SADCL)的细粒度分类方法,并用于零售产品识别。赵国川等将自注意力机制应用与水电枢纽缺陷识别,获得98.87%的缺陷识别精度。Horváth等提出使用ViT检测卫星图像中的拼接区域。
[0005] 航空林火图像中蕴藏着丰富的细粒度信息,具有火点目标多样、季节和生态环境背景复杂等特点,传统CNN不适用于细粒度特征提取。鉴于此,本申请提出一种基于自注意力机制的深度CNN模型,分析不同场景下林火图像细粒度特征,挖掘图像间局部差异,并结合ViT自注意力机制和弱监督学习方法,以提高航空林火图像识别的准确率和鲁棒性。

具体实施方式

[0068] 下面将详细地对实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下实施例中描述的实施方式并不代表与本申请相一致的所有实施方式。仅是与权利要求书中所详述的、本申请的一些方面相一致的系统和方法的示例。
[0069] 本实施例以张家口市崇礼区冬、春、夏3季无人机采集的林火视频为数据源,首先,通过抽帧、数据清洗等预处理方法筛选出19992张图像,构建林火图像数据集,同时运用数据增强技术,丰富数据多样性,提高模型泛化能力;然后,在特征提取阶段选用10层VisionTransformer(ViT)作为主干网络,采用交叠滑动窗格方式图像序列化,嵌入位置信息后作为第1层ViT的输入,将前9层ViT提取的区域选择模块通过多头自注意力和多层感知器机制批量嵌入第10层ViT,有效放大子图间的微差异以获取小目标特征;最后,采用对比特征学习策略,构建目标损失函数进行模型预测,有效提高模型的特征学习能力和识别准确率。为验证本模型的有效性,设定训练集、测试集样本比例为8:2、7:3、6:4和4:6,并与VGG16、GoogleNet、Resnet50、Bilinear‑CNN和CBAM模型进行识别性能对比。具体实施过程如下:
[0070] 1.1研究区概况
[0071] 研究区地处河北省张家口市崇礼区(40°47'—41°17'E,114°17'—115°34'N),为内蒙古高原与华北平原过渡地带,阴山山脉东段到大马山群山支系和燕山余脉交接地带,海拔813~2174m。属东亚大陆性季风气候。该区80%为山地,森林覆盖率52.38%,因森林覆盖面积广,地形地貌特殊,季节差异性大,尤其是秋、冬季节气候干燥,极易发生森林火灾,且由于野外环境变化大,植被背景复杂,森林火灾火势变化不规律,燃烧区域火点呈立体多层次特点,很难及时发现和干预。
[0072] 1.2数据获取与预处理
[0073] 1.2.1数据获取数据来源于2020年11月‑2021年7月张家口市崇礼区无人机采集的林火视频数据。无人机型号为经纬M300RTK,飞行高度300~500m,搭载机载H20T云台相机,视频分辨率1920×1080@30fps。通过CAN/4G/WIFI等通信形式将数据传输至后台服务器,视频数据经抽帧和清洗后得到航空林火图像数据集,数据采集与预处理过程如图1所示。
[0074] 崇礼区地形地貌特殊,不同季节植被状态差异大,航拍图像背景复杂。数据采集工作自2020年冬季开始至2021年夏季结束,期间分时段采集森林、灌木林和城区的烟、火和背景数据,为了使样本数据集更加完善,分别采集薄烟和浓烟、小火点和大火点的图像数据以及不同季节环境下多种森林植被覆盖状态和城区环境图像作为背景数据集,共获得有效航空林火图像19992张,其中烟、火和背景图像分别为14070、2738和3184张,分辨率为512×512像素。该样本数据集包括期间石家庄市发生的3起真实森林火灾样本以及在保证消防安全前提下实施的多次模拟森林起火火点样本。部分样本数据集如图2所示。
[0075] 1.2.2数据增强处理数据增强处理可丰富数据多样性,提高训练模型鲁棒性,防止过拟合,使模型获得较完整的样本特征信息。本申请采用的数据增强方法如下:1)随机裁剪,在原图像上随机裁剪448×448分辨率的子区域,突出子区域中局部特征比例;2)随机水平翻转,将图像以概率P=0.5,即随机选择50%图像进行水平翻转,以模拟无人机不同拍摄角度;3)标准化,对图像进行均值(0.485,0.465,0.406)和标准差(0.229,0.224,0.225)的标准化处理。数据增强处理如图3所示。
[0076] 1.3研究方法
[0077] 受Transformer在NLP中通过自注意力机制克服LSTM上下文限制的启发,Dosovitskiy等(2020)提出ViT机制,并将Transformer应用于计算机视觉中。Horváth等(2021)将ViT机制应用于细粒度图像分类,在识别卫星图像中获得较高准确率。为更准确提取航空林火图像中的细微特征差异,更好标记特征位置信息,本申请模型首先将图像分割为多个子图,子图序列化的同时嵌入位置信息,叠加9层ViT后,将区域选择模块信息结合自注意力机制注入第10层ViT,获得图像细粒度特征,最后使用构建的目标损失函数进行模型训练,获得图像类别标签。本申请模型结构如图4所示。
[0078] 1.3.1参数设置3个粗粒度深度学习网络(VGG16、GoogleNet、Resnet50)和2个细粒度深度学习网络(Bilinear‑CNN、CBAM)以及本申请模型在训练过程中使用的关键超参数包括批量大小、随机种子、激活函数、优化器、学习率和迭代次数。批量大小表示每次输入到网络中的图像数量,该参数与硬件设备处理数据的能力有关,本申请环境为32G单内存Tesla,批量大小设置为16。随机种子设置为42,可方便结果复现。RELU作为激活函数不仅可以加速网络非线性,还能够有效防止梯度消失。为了自动逃离鞍点并远离较差局部最优解,选择SGD作为优化器。学习率选取常见值0.01。由于6个模型在48次迭代内均收敛,故将迭代次数设置为48。本申请中全部模型均使用相同训练参数,参数设置如表1所示。
[0079] 表1参数设置
[0080]
[0081] 1.3.2图像图像序列化序列化是将图像分割成不重叠子图以提高图像处理效率,但该操作会丢失子图间局部临近结构信息。为最大化保留子图间局部临近结构信息,本申请采用交叠滑动窗口分割方法。假设图像分辨率为H×W,分割后子图大小为P,滑动窗口步长为S,图像被分成N块,则N为:
[0082]
[0083] 式中:H表示图像高度;W表示图像宽度;NH和NW分别表示图像在高度和宽度上的分割次数。
[0084] 图像分割后,位置相邻的2个子图间将共享一个尺寸为(P‑S)×P大小的重叠区域,此区域包含图像局部信息。该分割方法中,步长S越小,局部临近结构特征信息保留越完整,但随着S减小也将导致算法复杂度高的问题。本申请中滑动窗口步长S设为0.3P。
[0085] 1.3.3批量嵌入使用线性投影将每个矢量化的子图XP映射到三维嵌入空间中,嵌入可学习的坐标记录位置信息,嵌入位置信息Z0为:
[0086]N×D
[0087] 式中:N为图像批量的数量; 为批量嵌入的投影;EPOS∈R 为位置嵌入。
[0088] Transformer的编码器包含L层多头自注意(MSA)和多层感知器(MLP),以Z0为输入的第L层的输出为:
[0089] Z′L=MSA(LN(ZL‑1))+ZL‑1L∈1,2,…,N;        (3
[0090] ZL=MLP(LN(Z′L))+Z′LL∈1,2,…,N;       (4
[0091]
[0092] 式中: 表示归一化处理;ZL表示编码图像; 表示图像某个通道的某个像素值;min(ZL)和max(ZL)分别表示图像该通道中像素灰度最小值和最大值。
[0093] ViT融入自注意力机制,在每层嵌入一个FPOS的子图位置信息,上层输入为下层模块计算结果。将最后一个编码器中第1个模块 为全局特征作为分类器输入,则不需考虑存储在其他模块中的潜在位置信息。
[0094] 1.3.4自注意力机制在航空林火图像识别中,关键要精确定位相似图像中的细微差异区域,ViT的多头注意力机制将带差异的输入信息传输到最后的Transformer层,即可定位图像细微差异区域。
[0095] 假设模型有N个注意力头,经过9层ViT到达第10层ViT时,输入到第10层的隐层特征Z9为:
[0096]
[0097] 注意力头的权重 为:
[0098]
[0099] 则输入到第l层ViT的隐层特征为:
[0100]
[0101] 第l层的注意力头权重为:
[0102]
[0103] 式中:al表示第l层的N个自注意力权重,l表示第l层ViT。
[0104] Abnar研究发现,模块缺乏可识别性会使原始注意力权值与输入标记不完全对应。由此,本申请采用递归方式对每层原始注意力权重应用矩阵乘:
[0105]
[0106] 式中:afinal表示将前l层注意力头权重矩阵相乘后的最后注意力头权重。
[0107] 在afinal的N个不同注意头中,选择权重最大的注意力头(A1,A2,…,AK)作为索引,提取索引后Z9中对应模块作为输入选择模块与分类模块相结合作为联合输入序列,则联合输入序列Zlocal可表示为:
[0108]
[0109] 式中: 表示选择模块与分类模块的联合输入序列。
[0110] 输入选择模块表示分割后的子图,用信息区域模块替换原始输入序列可获得分类模块,如图4中红框标注区域。将联合输入序列作为最后一层ViT的输入,不仅可保留图像全局信息,也便于模型精确提取类间细微差别,弱化如天空、雪地、植被等背景区域。
[0111] 1.3.5对比特征学习交叉熵作为损失函数是衡量神经网络中预测值与实际值的一种方式,常用于分类问题中,但交叉熵损失函数Lcross对微小差异敏感度不高,也不能实现完全监督学习。对比损失函数Lcon可使不同标签样本间相似性最小、相同标签样本间相似性最大。为防止对比损失函数受极小负数扰动,引入调和阈值ɑ,当且仅当样本间相似度大于ɑ时才会获得有效Lcon。若有N个样本,则对比损失函数Lcon为:
[0112]
[0113] 式中:zi和zj为经过归一化的特征;Sim(zi,zj)为zi和zj的余弦相似度。
[0114] 可构建目标损失函数L,使用L对模型进行训练。
[0115] L=Lcross(y,y′)+Lcon(z)。         (13)
[0116] 式中:Lcross(y,y')标识预测标签y'和真实标签y之间的交叉熵损失;Lcon(z)表示模块z的对比损失。
[0117] 当Lcross表现为较大loss时,说明模型效果差但学习速度快,当表现为较小loss时,说明模型效果较好但学习速度慢。对比损失函数Lcon可使注意力头关注不同区域,此时不同标签样本间具有最小相似度,相同标签样本间具有最大相似度。SGD优化器和L反馈值在模型训练中表现为连续梯度下降迭代并回归,此时L趋于0,模型不断迭代优化。
[0118] 1.3.6准确率评价本申请模型的识别准确率(ACC)用预测成功个数和总数之比表示:
[0119]
[0120] 式中:TP表示将正类预测为正类的样本个数;TN表示将负类预测为负类的样本个数;FP表示将正类预测为负类的样本个数;FN表示将负类预测为正类的样本个数。
[0121] 2结果与分析
[0122] 2.1林火图像识别结果
[0123] 本申请使用的图像数据集包括19992张林火图像,其中火、烟和背景图像分别为2738、14070和3184张。为对比本申请模型对不同类别图像的识别能力,在测试结果中挑选
60张具有代表性的图像,其中火、烟和背景图像均为20张,图像涵盖火灾发生的预热阶段、气体燃烧阶段和木炭燃烧阶段特征。20张图像识别结果如5所示。
[0124] 本申请模型共识别出21张火、18张烟和21张背景,其中2张烟的图像误判为火、1张火的图像误判为烟、1张烟的图像误判为背景,使用绿色边框标记误判图像。分析识别结果发现,误判集中在烟和火之间及烟和背景之间,火和背景之间不存在误判情况。
[0125] 分析图5第1组中将烟误判为火和第2组中将火误判为烟时发现,林火蔓延过程中,烟的产生往往贯穿火情发展的各阶段并与火焰存在具有高度相关性。手工标记图像时,将具有明亮高区分度火焰的图像标记为火,而标记为烟的图像多带零星火点,本申请模型在训练过程中提取某些图像烟和火关键区域细粒度特征时存在部分共性特征,可能引起测试集的误判。分析将烟误判为背景的图像发现,该图像采集于夏季雨后,水雾作为一种湍流运动现象,外观存在较大差异并具有一定透明度,虽然图像中间存在小目标的烟,但本申请模型将该目标误判为雾气。
[0126] 2.2样本分配比例对识别准确率的影响
[0127] 数据集中3种子类别样本数量不同,可使用混淆矩阵对预测结果进行直观描绘,如图6所示。在混淆矩阵中,横轴表示图像真实标签,纵轴表示图像预测标签,每列数据之和表示该测试集下该类别样本数,每行数据之和表示该测试集下预测为该种类别的样本总数,矩阵的主对角线表示在3种类别下预测正确的样本数量。
[0128] 由图6可知,4种分配比例下,均存在将火预测为烟和将背景预测为烟的情况,说明图像识别中,在某些特殊情况下,烟与火和背景特征高度相似,如天空的云朵、夏季的水雾与烟在形态上存在某种相似之处。在对火的图像预测中,除了4:6分配比例下近1/4图像被预测为烟外,其余分配比例下均有近50张图像存在误判情况,说明本申请模型对火的图像预测在高训练集比例下性能较为稳定。而对烟的预测,最多情况下有314张被预测为火,最少情况下有129张被预测为火,说明部分烟的图像与火的图像存在高度相似特征情况,这是因为在森林发生火灾时,往往火点伴随不同浓度的烟雾,烟和火在图像上存在某些共生特征。对背景的识别,仅有少数背景被误判为烟,分析发现这些误判图像中,部分是秋冬季节雨后,山间存在薄雾,崇礼山区海拔较高而云层较低,本申请模型将云误预测为烟。
[0129] 统计测试集、训练集在不同分配比例下的预测准确率发现,7:3分配比例下,模型准确率最高为95.02%,8:2分配比例下,模型准确率相对较低为94.78%。4种分配比例下本申请模型预测准确率相对稳定,均高于94.5%,说明本申请模型仅需较少训练样本即可学习关键特征并对测试样本进行准确识别。
[0130] 2.3收敛速度分析
[0131] 算法收敛速度指算法达到最优解所需的迭代次数,算法快速收敛代表该算法使用较少的迭代次数便可得到相对精确的值,即在允许的时间内获得满意结果,收敛速度过慢的算法,很难投入实际应用。为验证本申请模型在航空林火图像识别中的有效性和可用性,将其与VGG16、GoogleNet、Resnet50和Bilinear‑CNN、CBAM进行收敛性对比分析,其中VGG16、GoogleNet、Resnet50为粗粒度深度学习网络,Bilinear‑CNN、CBAM为细粒度深度学习网络。
[0132] 数据集的每次迭代均在前次训练结果权重和参数的基础上开始新的训练,迭代训练可为图像提取更多有效特征,随着迭代次数增加,模型逐渐收敛并获得稳定识别准确率。试验表明,6种模型在48次迭代内均能达到收敛。对林火图像在4种训练集、测试集样本分配比例(8:2、7:3、6:4和4:6)下进行48次迭代试验并绘制识别分类平均准确率,如图7所示。
[0133] 由图7可知,本申请模型在第1次迭代后即获得较高识别准确率并收敛。本申请模型、Bilinear‑CNN和CBAM3个细粒度算法相较于其余粗粒度算法迭代过程更加稳定,其中,Resnet50在4种分配比例下测试集准确率一直处于抖动状态,GoogleNet除8:2分配比例外均产生过拟合现象,VGG16、Bilinear‑CNN和CBAM性能相对稳定,但VGG16在8:2的第42~48次迭代和6:4的第33~46次迭代之间存在较大波动。CBAM相较于其他5模型准确率最高,这是因为CBAM融合了注意力机制提取细粒度特征。本申请模型用ViT代替CNN,每次迭代可提取更多特征信息,模型特征提取能力增强提升了模型收敛速度。作为注意力机制变体的自注意力机制的融入,将捕获数据或特征的内部相关性,减少对外部信息的依赖性,这使得网络识别准确率有较明显提升。
[0134] 2.4识别准确率分析
[0135] 对19992张林火图像,在训练集、测试集分别为8:2、7:3、6:4和4:6的分配比例下统计6种模型的识别准确率,如表2所示。在4种分配比例下,本申请模型的平均识别准确率分别为94.77%、95.02%、94.87%和94.81%,均高于其他5种模型。其中GoogleNet在4种分配比例下识别效果均不理想,这是因为GoogleNet提取特征能力有限,不适用细粒度图像特征的提取。CBAM识别准确率与本申请模型相差不大,均高于93%,在6:4比例下识别精度为94.28%,而CBAM融入注意力机制是其核心算法之一,说明使用注意力机制能提高模型提取细粒度特征。
[0136] 表2平均识别准确率%
[0137]
[0138] 3讨论
[0139] 森林火灾是一种突发性强、破坏性高、处置困难的自然灾害(曹毅超等,2020)。针对传统粗粒度图像识别方法无法满足航空林火图像中小目标区域特征提取问题,本申请采用自注意力机制和弱监督学习相结合的方法,挖掘图像局部特征差异,实现林火图像细粒度识别,能够提高林区火情、火险应预测预判能力和效率,有效预防森林火灾发生。
[0140] Wang等提出一种基于卷积神经网络的森林火灾图像识别方法,并对火焰区域进行分割,结合颜色形状区域进行火焰特征学习,准确率达90.7%;但该方法仅可识别火焰区域,未考虑林火预热阶段和木炭燃烧阶段时存在浓烟和无火险时安全环境情景。在基于转移学习的森林火灾图像识别研究中,采用Inception‑v3技术利用局部二值模式对卫星图像进行识别,达到96.54%的识别准确率;但该方法主要考虑火灾与非火灾2种情况。相对来说,多类别识别相较于二分类识别问题更为复杂,本申请模型对火、烟和背景的平均识别准确率为94.87%,说明本申请模型可解决复杂场景下多类图像识别。
[0141] 本申请模型使用ViT中的自注意力机制代替CNN进行细粒度特征提取,采用叠加滑动窗口方式将图像序列化为子图,多层ViT叠加提取子图区域模块特征,采用自注意力机制放大图像细粒度特征。对比本申请模型与VGG16、GoogleNet、Resnet50和Bilinear‑CNN、CBAM方法的识别准确率发现,本申请模型在4种训练集、测试集分配比例下均获得最好识别准确率,准确率方差为0.009,说明训练集、测试集分配比例对本申请模型识别准确度影响较小,模型识别性能稳定。
[0142] 6种模型的收敛性对比分析表明,本申请模型可快速收敛且受训练集样本量影响较小,即利用较少的图像便可捕获关键细粒度特征,即便存在学习规律以外的噪音图像,本申请模型仍能给出正确预测,说明具有较好鲁棒性。对于本申请模型存在的小概率烟火误判情况,是由于人工标记时对烟火共存图像存在交叉标记导致细粒度特征提取时存在信息重叠。
[0143] 本申请模型具有收敛速度快、性能稳定和较强的泛化能力,可为基于多头注意力机制深度学习的图像识别技术在森林火灾监控预警中应用提供了一种新的思路。
[0144] 4结论
[0145] 本申请提出一种基于自注意力机制的航空林火图像识别模型,以河北省张家口市崇礼区无人机采集的航空林火图像为数据集,采用交叠滑动窗口分割方法,利用ViT自注意力机制提取林火图像细粒度特征,基于交叉熵损失和对比损失函数构建目标损失函数并进行模型训练,对比不同模型在不同训练集、测试集分配比例下的识别准确度和收敛性。结果表明:1)样本分配比例对本申请模型识别准确度影响较小,尤其在7:3比例下,本申请模型获得95.04%的识别准确率;2)本申请模型相对于其余5种经典模型具有较快的收敛速度,具有较强泛化能力;3)本申请模型对烟、火和背景图像的平均识别准确率为94.87%,均高于其他5种经典模型,说明本申请模型有较好的鲁棒性,可为基于航空图像的林火预警和林火实时监测研究提供一定参考。
[0146] 本申请模型实现了对烟、火和背景图像的准确识别,但火灾的产生及发展具有一定动态特性,基于航空林火视频数据,在时序维度上分析相关帧图像数据,挖掘林火动态特征,对火点区域精确定位和实际火场的预报以及林火行为预测是下一步研究的重点。
[0147] 本申请提供的实施例之间的相似部分相互参见即可,以上提供的具体实施方式只是本申请总的构思下的几个示例,并不构成本申请保护范围的限定。对于本领域的技术人员而言,在不付出创造性劳动的前提下依据本申请方案所扩展出的任何其他实施方式都属于本申请的保护范围。

当前第1页 第1页 第2页 第3页
相关技术
机制航空相关技术
林火图像相关技术
符利勇发明人的其他相关专利技术