一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于YOLOv4网络的无人机火焰检测方法及系统与流程

2022-02-20 13:42:10 来源:中国专利 TAG:

基于yolov4网络的无人机火焰检测方法及系统
技术领域
1.本发明属于深度学习的火焰识别检测技术领域,尤其是涉及一种基于yolov4网络的无人机火焰检测方法及系统。


背景技术:

2.在各种灾害中,火灾是最容易发生的、最普遍威胁公众安全和社会发展的主要灾害之一。大规模的火灾不仅会让人类的物质财产遭到损失,破坏公共设施和危害自然环境,还直接或间接的危害生命。当现场火灾发生时,特别是侦查小队无法开展侦查任务的情况下,为了避免火灾带来的巨大损失,无人机能够迅速对火灾发生区域进行定位,提高侦查效率,以便指挥员做正确的决策。
3.目前关于无人机火焰检测方法有基于颜色空间,基于纹理特征和火焰的几何特征,基于视频帧差法的相似性进行火焰识别。当前的火焰检测方法在一定程度上能够完成对火焰的检测,但对于复杂的火焰环境会存在火焰漏检率高的问题。随着基于深度学习的目标检测算法的迅速发展,越来越多的目标检测模型被提出,其中深度学习下的目标检测算法可以通过卷积神经网络对输入的图像进行特征提取,并通过深层神经网络模型的学习直接回归输出结果,实现了端到端的目标检测。
4.公告号为cn111062293a的发明专利公开了一种基于深度学习的无人机森林火焰识别方法,包括:获取无人机视觉范围内的视频;对图像进行增强对比度效果的预处理;利用改进的中值滤波算法进一步处理经过所述预处理的图片,来相对地减少冲激噪声空间密度;对疑似火焰的图片像素进行识别;所述识别是综合rgb和hsv两个模型提取火焰区域,判断是否为运动像素,同时满足颜色特征和运动特征的像素被识别为疑似火焰像素图像;对图像进行形态学处理,消除图像中小于领域内点的孤立异常值;结合深度学习神经网络算法-yolo,对检测到的火焰目标进行实时跟踪识别。该识别方法利用改进的中值滤波去除视频图像的噪声,同时还采用了条纹中心分析方法,通过扩大窗口来相对地减少冲激噪声空间密度使得图像的细节更好,但是yolo算法,运算量大,并且在复杂环境中的识别精度还有待提高。
5.yolov4网络模型由alexeybochkovskiy等在2020年提出,由于提出时间较晚,目前还没有将yolov4网络模型用于识别火焰的研究。在火焰识别的检测率方面没有任何预见。


技术实现要素:

6.1、本发明的目的
7.针对上述存在的技术问题,提出了一种基于yolov4网络的无人机火焰检测方法及系统,可用于不同的环境、光照强度以及天气情况,对于复杂环境中无人机对火焰的识别,可以保证较高的检测准确性和快速性,实现了速度和精度的平衡。
8.2、本发明所采用的技术方案
9.一种基于yolov4网络的无人机火焰检测方法,包括以下步骤:
10.s01:对不同的火焰图像标注图像中火焰的位置和类别信息,得到火焰数据集,对标注后的每幅图像进行预处理,得到火焰的训练集;
11.s02:将训练集输入yolov4网络进行权重训练,得到火焰训练集的yolov4权重模型;
12.s03:获取无人机的视频流;
13.s04:利用训练好的yolov4权重模型对无人机视频流中的图像进行检测,判断图像中是否存在火焰。
14.优选的技术方案中,所述步骤s01具体包括:
15.s11:选取开源的火焰图像数据集并利用labelimg工具标注每幅图片中火焰的位置和类别信息;
16.s12:对标注后的火焰图像数据集进行裁剪为预设大小的图像,并将数据集整理为voc数据集格式;
17.s13:对裁剪后的数据集进行包含归一化、旋转、以及高斯滤波操作,生成火焰图像训练集及对应的标注文件。
18.优选的技术方案中,所述步骤s02中yolov4的网络结构包括cspdarknet53主干特征提取网络、spp、panet加强特征提取网络和yolohead检测头;
19.所述cspdarknet53主干特征提取网络包括cspnet结构、普通卷积层、批正则化及mish激活函数,其中cspnet结构将原来的残差块的堆叠进行一次拆分,主干部分保持原来的残差块堆叠,另一部分作为残差边跟主干部分的通道数进行整合;
20.所述spp加强特征提取网络参杂在对cspdarknet53最后一个特征层进行三次darknetconv2d_bn_leaky卷积后,利用四个不同尺度的最大池化进行处理,并将其堆叠,分离出图像的上下文特征;
21.所述panet加强特征提取网络参杂在三个有效特征层,对特征进行反复提取,对底层特征上采样,与上一层同维度特征层进行堆叠,对高层特征下采样,与下一层同维度特征层进行堆叠,实现特征融合,最终输出三个特征层供yolo head检测头进行预测。
22.优选的技术方案中,所述步骤s02还包括,在权重训练过程中使用label smoothing平滑,其计算公式如下:
23.q'(k|x)=(1-∈)δ
k,y
∈u(k)
24.其中,q'k|x表示经过labelsmoothing平滑处理后的第k类标签值,δ
k,y
表示原本的标签值,∈表示一个小常数,u(k)表示k为类别总数的倒数。
25.优选的技术方案中,所述步骤s03中获取无人机的视频流的方法,包括:
26.s31:建立无人机和终端之间的wifiudp通信,利用udp通讯发送相关指令开启无人机的sdk模式;
27.s32:在终端上设置udp服务器,通过服务器udp端口11111从ip0.0.0.0收听无人机消息,向无人机udp端口发送“streamon”命令以接受无人机的视频流。
28.优选的技术方案中,所述步骤s04还包括:
29.根据标注的真实信息进行误差计算即计算yolov4网络模型中的损失函数;将损失函数中常用的bbox坐标框损失用回归框ciou损失替代,以单个网格的边界框为例,ciou和ciou损失的计算公式如下:
[0030][0031][0032]
其中,l
ciou
表示回归框ciou损失,iou为真实框b
gt
与预测框b的交并比,即(b,b
gt
)分别表示预测框和真实框的中心点,ρ表示欧氏距离,c表示同时包含预测框和真实框的最小闭包区域的对角线距离;α为正权衡参数,v是衡量长宽比一致性的参数,(w
gt
,h
gt
)表示真实框的宽度和高度,(w,h)表示预测框的宽度和高度。
[0033]
本发明还公开了一种基于yolov4网络的无人机火焰检测系统,包括:
[0034]
火焰训练集获取模块,对不同的火焰图像标注图像中火焰的位置和类别信息,得到火焰数据集,对标注后的每幅图像进行预处理,得到火焰的训练集;
[0035]
权重训练模块,将训练集输入yolov4网络进行权重训练,得到火焰训练集的yolov4权重模型;
[0036]
无人机视频获取模块,获取无人机的视频流;
[0037]
检测模块,利用训练好的yolov4权重模型对无人机视频流中的图像进行检测,判断图像中是否存在火焰。
[0038]
优选的技术方案中,所述权重训练模块中的yolov4的网络结构包括cspdarknet53主干特征提取网络、spp、panet加强特征提取网络和yolohead检测头;
[0039]
所述cspdarknet53主干特征提取网络包括cspnet结构、普通卷积层、批正则化及mish激活函数,其中cspnet结构将原来的残差块的堆叠进行一次拆分,主干部分保持原来的残差块堆叠,另一部分作为残差边跟主干部分的通道数进行整合;
[0040]
所述spp加强特征提取网络参杂在对cspdarknet53最后一个特征层进行三次darknetconv2d_bn_leaky卷积后,利用四个不同尺度的最大池化进行处理,并将其堆叠,分离出图像的上下文特征;
[0041]
所述panet加强特征提取网络参杂在三个有效特征层,对特征进行反复提取,对底层特征上采样,与上一层同维度特征层进行堆叠,对高层特征下采样,与下一层同维度特征层进行堆叠,实现特征融合,最终输出三个特征层供yolo head检测头进行预测。
[0042]
优选的技术方案中,所述权重训练模块中,在权重训练过程中使用label smoothing平滑,其计算公式如下:
[0043]
q'(k|x)=(1-∈)δ
k,y
∈u(k)
[0044]
其中,q'k|x表示经过labelsmoothing平滑处理后的第k类标签值,δ
k,y
表示原本的标签值,∈表示一个小常数,u(k)表示k为类别总数的倒数。
[0045]
优选的技术方案中,所述检测模块还包括:
[0046]
根据标注的真实信息进行误差计算即计算yolov4网络模型中的损失函数;将损失函数中常用的bbox坐标框损失用回归框ciou损失替代,以单个网格的边界框为例,ciou和ciou损失的计算公式如下:
[0047][0048][0049]
其中,l
ciou
表示回归框ciou损失,iou为真实框b
gt
与预测框b的交并比,即(b,b
gt
)分别表示预测框和真实框的中心点,ρ表示欧氏距离,c表示同时包含预测框和真实框的最小闭包区域的对角线距离;α为正权衡参数,v是衡量长宽比一致性的参数,(w
gt
,h
gt
)表示真实框的宽度和高度,(w,h)表示预测框的宽度和高度。
[0050]
3、本发明所采用的有益效果
[0051]
1、本发明可用于不同的环境、光照强度以及天气情况,对于复杂环境中无人机对火焰的识别,可以保证较高的检测准确性和快速性,实现了速度和精度的平衡。
[0052]
2、本发明使用labelsmoothing平滑,可以防止在权重训练过程中火焰训练集有限造成分类过拟合的现象。为了避免对yolov4目标检测算法评估时造成消极影响,将损失函数中常用的bbox坐标框损失用回归框ciou损失替代,将检测目标与anchor之间的距离,重叠率以及尺度等等考虑在内,从而让目标框的回归变得更加稳定。
附图说明
[0053]
图1为本发明基于yolov4网络的无人机火焰检测方法的流程图;
[0054]
图2为本发明yolov4网络模型框架图;
[0055]
图3为本发明基于yolov4网络的无人机火焰检测系统的原理框图;
[0056]
图4为本实施例yolov4模型训练loss曲线图;
[0057]
图5为本实施例yolov4模型测试结果图;
[0058]
图6为本实施例tello无人机模型测试结果图;
[0059]
图7为本实施例yolov4模型实验评估的准确率图;
[0060]
图8为本实施例yolov4模型实验评估的召回率图;
[0061]
图9为本实施例yolov4模型实验评估的ap图;
[0062]
图10为本实施例yolov4模型实验评估的f1图;
[0063]
图11为本实施例yolov4模型实验评估的map图。
具体实施方式
[0064]
下面结合本发明实例中的附图,对本发明实例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域技术人员在没有做创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
[0065]
下面将结合附图对本发明实例作进一步地详细描述。
[0066]
实施例1
[0067]
如图1所示,一种基于yolov4网络的无人机火焰检测方法,包括以下步骤:
[0068]
s01:对不同的火焰图像标注图像中火焰的位置和类别信息,得到火焰数据集,对标注后的每幅图像进行预处理,得到火焰的训练集;
[0069]
s02:将训练集输入yolov4网络进行权重训练,得到火焰训练集的yolov4权重模型;
[0070]
s03:获取无人机的视频流;
[0071]
s04:利用训练好的yolov4权重模型对无人机视频流中的图像进行检测,判断图像中是否存在火焰。
[0072]
步骤s01中,一具体的实施例,包括:
[0073]
s11:选取开源的火焰图像数据集并利用labelimg工具标注每幅图片中火焰的位置和类别信息;这里的数据集包括多种场景,多种时间和光照环境下的多张图片,使用各种火焰、浓烟的图片作为数据集。
[0074]
s12:对标注后的火焰图像数据集进行裁剪为预设大小的图像,并将数据集整理为voc数据集格式;
[0075]
s13:对裁剪后的数据集进行包含归一化、旋转、以及高斯滤波操作,生成火焰图像训练集及对应的标注文件。
[0076]
如图2所示,yolov4的网络结构包括cspdarknet53主干特征提取网络、spp、panet加强特征提取网络和yolohead检测头;
[0077]
所述cspdarknet53主干特征提取网络包括cspnet结构、普通卷积层、批正则化及mish激活函数,其中cspnet结构将原来的残差块的堆叠进行一次拆分,主干部分保持原来的残差块堆叠,另一部分作为残差边跟主干部分的通道数进行整合;
[0078]
所述spp加强特征提取网络参杂在对cspdarknet53最后一个特征层进行三次darknetconv2d_bn_leaky卷积后,利用四个不同尺度的最大池化进行处理,并将其堆叠,分离出图像的上下文特征;
[0079]
所述panet加强特征提取网络参杂在三个有效特征层,对特征进行反复提取,对底层特征上采样,与上一层同维度特征层进行堆叠,对高层特征下采样,与下一层同维度特征层进行堆叠,实现特征融合,最终输出三个特征层供yolo head检测头进行预测。
[0080]
一较佳的实施例中,在权重训练过程中为了防止火焰训练集有限造成分类过拟合的现象,在权重训练过程中使用labelsmoothing平滑,其计算公式如下:
[0081]
q'(k|x)=(1-∈)δ
k,y
∈u(k)
[0082]
其中,q'k|x表示经过labelsmoothing平滑处理后的第k类标签值,δ
k,y
表示原本的标签值,∈表示一个小常数,u(k)表示k为类别总数的倒数。
[0083]
步骤s03中,获取无人机的视频流的方法的一具体的实现中,包括:
[0084]
s31:建立无人机和终端之间的wifiudp通信,利用udp通讯发送相关指令开启无人机的sdk模式;这里的终端可以为pc、手机等,本实施例以pc为例进行说明,pc端连接无人机的wifi,并设置udp客户端,向无人机udp端口8889发送“command”命令以启动无人机的sdk模式。
[0085]
s32:在终端上设置udp服务器,通过服务器udp端口11111从ip0.0.0.0收听无人机消息,向无人机udp端口发送“streamon”命令以接受无人机的视频流。
[0086]
一较佳的实施例中,为了避免对yolov4目标检测算法评估时造成消极影响,将检测目标与anchor之间的距离,重叠率以及尺度等等考虑在内,从而让目标框的回归变得更加稳定。步骤s04还包括:
[0087]
根据标注的真实信息进行误差计算即计算yolov4网络模型中的损失函数;将损失函数中常用的bbox坐标框损失用回归框ciou损失替代,以单个网格的边界框为例,ciou和ciou损失的计算公式如下:
[0088][0089][0090]
其中,l
ciou
表示回归框ciou损失,iou为真实框b
gt
与预测框b的交并比,即(b,b
gt
)分别表示预测框和真实框的中心点,ρ表示欧氏距离,c表示同时包含预测框和真实框的最小闭包区域的对角线距离;α为正权衡参数,v是衡量长宽比一致性的参数,(w
gt
,h
gt
)表示真实框的宽度和高度,(w,h)表示预测框的宽度和高度。
[0091]
另一实施例中,如图3所示,本发明还公开了一种基于yolov4网络的无人机火焰检测系统,包括:
[0092]
火焰训练集获取模块10,对不同的火焰图像标注图像中火焰的位置和类别信息,得到火焰数据集,对标注后的每幅图像进行预处理,得到火焰的训练集;
[0093]
权重训练模块20,将训练集输入yolov4网络进行权重训练,得到火焰训练集的yolov4权重模型;
[0094]
无人机视频获取模块30,获取无人机的视频流;
[0095]
检测模块40,利用训练好的yolov4权重模型对无人机视频流中的图像进行检测,判断图像中是否存在火焰。
[0096]
本发明使用的原数据集为公开的火焰数据集,例如https://github.com/cair/fire-detection-image-dataset。本发明所用的无人机平台为tello无人机,tello是大疆创新科技公司旗下的一款以运动控制和视觉定位算法为技术支撑的无人机,其主要由飞控、通讯模块、视觉定位模块、动力系统、以及飞行电池组成,其中tellosdk通过wifiudp协议与飞行器连接,方便用户通过文本指令控制飞行器,其部分相关指令如下表1所示,借助sdk模式,可实现在pc、mac或移动设备上读取无人机的视频流数据,运用机器视觉和深度学习相关科技可实现无人机的物体识别,目标跟踪,三维重建等ai应用。
[0097]
表1 tello部分控制命令
[0098][0099]
这里的终端以pc端为例进行说明。
[0100]
下面详细介绍该无人机火焰检测系统的完整的工作流程:
[0101]
步骤s1:采集火焰图像并利用labelimg工具标注每幅图片中火焰的位置和类别信息,将图像整合为火焰数据集并对标注后的每幅图像进行预处理,得到火焰的训练集;
[0102]
具体的实现中:步骤s1中,用labelimg工具对采集到的火焰图像进行信息标注,包括火焰的位置和类别信息,其示例如下所示:
[0103][0104]
对标注后的火焰图像数据集进行裁剪为预设大小的图像,以便适应yolov4网络训练的图像大小(例如416
×
416);建立voc数据集格式,其结构包括:annotations,imagesets和jpegimages三个文件夹,其中imagesets文件夹中存放包含test.txt、train.txt、trainval.txt、val.txt的main文件夹,annotations文件夹中存放用labelimg工具标注好的xml文件,jpegimages文件夹中存放采集的火焰图像数据;对裁剪后的数据集进行包含归一化、旋转、以及高斯滤波操作,生成增强后的火焰图像训练集以及对应的标注文件。
[0105]
具体的:步骤s1中,将火焰训练集的voc格式转化为yolo格式,以减少模型训练时的计算量,并在main文件夹中生成用于评估的test.txt文件夹,转化后的格式如下表2所示:
[0106]
表2 yolo格式
[0107][0108]
步骤s2:将训练集输入yolov4网络进行权重训练,得到火焰训练集的yolov4权重模型;
[0109]
具体的,yolov4的网络结构包括cspdarknet53主干特征提取网络、spp、panet加强特征提取网络和yolohead检测头;主干特征提取网络cspdarknet53由cspnet结构,普通卷积层,批正则化以及mish激活函数等组成,其中cspnet结构将原来的残差块的堆叠进行一次拆分,主干部分保持原来的残差块堆叠,另一部分作为残差边跟主干部分的通道数进行整合;spp加强特征提取网络参杂在对cspdarknet53最后一个特征层进行三次darknetconv2d_bn_leaky卷积后,利用四个不同尺度的最大池化进行处理,并将其堆叠,池化核大小分别为13
×
13、9
×
9、5
×
5、1
×
1,其作用是极大地增加感受野,分离出图片最显著的上下文特征;panet加强特征提取网络参杂在三个有效特征层,其主要特点是对特征的反复提取,对底层特征上采样,与上一层同维度特征层进行堆叠,对高层特征下采样,与下一层同维度特征层进行堆叠,从而实现特征融合,最终输出三个特征层供yolohead检测头进行预测,其shape分别为(52,52,75)、(26,26,75)、(13,13,75);yolov4网络整体结构如图2所示。
[0110]
具体的:所述步骤s2中,本实例的yolov4网络采用tensorflow框架实现,在准备好配置文件和数据后进行yolov4权重模型的训练配置,batch_size设为2,learning_rate_base设为0.0001,训练时使用labelsmoothing平滑,label smoothing设为0.001.本实例加载预训练权重yolov4.weights,并将其转换为tensorflow模型的格式——yolov4_weights.h5,使用单个gpu训练,设置epoch为90轮,训练时间约为20h;在训练过程中模型的损失对比如图4所示。
[0111]
步骤s3:建立无人机和pc之间的wifiudp通信,利用udp通讯发送相关指令开启无人机的sdk模式并读取无人机的视频流;
[0112]
具体的:所述步骤s3中,pc与tello的通信主要分为命令发送和接收响应、接收tello状态、接收tello视频流三部分。其中命令发送和接收响应是通信的基础,首先pc端连接tello内部的wifi,由于tello在udp的使用上做了很好的封装,即可在pc端建立相对应的客户端或服务端进行通信。如下表3所示。pc端通过配置udp客户端,对tello发送“command”命令可让tello启动sdk模式,之后通过配置udp服务器,发送“streamon”命令即可实现tello向pc端传输视频流,反馈“ok”信息则表示信号接受成功,若反馈“error”信息则表示通信出现异常状态。
[0113]
表3 tello命令发送和接收响应步骤
[0114][0115]
步骤s4:利用训练的yolov4权重模型对无人机视频流中的火焰图像进行检测,对火焰数据集进行评估;若图像中存在火焰,将输出火焰检测框及火焰类别信息,若图像中不存在火焰,则输出与输入一样的检测结果图像。
[0116]
一较佳的实施例中,根据标注的真实信息进行误差计算即计算yolov4网络模型中的损失函数;将损失函数中常用的bbox坐标框损失用回归框ciou损失替代,以单个网格的边界框为例,ciou和ciou损失的计算公式如下:
[0117][0118][0119]
其中,l
ciou
表示回归框ciou损失,iou为真实框b
gt
与预测框b的交并比,即(b,b
gt
)分别表示预测框和真实框的中心点,ρ表示欧氏距离,c表示同时包含预测框和真实框的最小闭包区域的对角线距离;α为正权衡参数,v是衡量长宽比一致性的参数,(w
gt
,h
gt
)表示真实框的宽度和高度,(w,h)表示预测框的宽度和高度。
[0120]
具体的实现中:所述步骤s4中,利用步骤s2训练好的yolov4权重模型对输入的图像进行识别,pc端火焰识别如图5所示,通过步骤s3建立起pc与tello无人机之间的udp通讯,通过命令读取tello的视频流对含火焰的图像进行识别,如图6所示,其中类别后的数值代表yolov4算法判断的置信度,越接近1,代表此算法对预测结果越有信心;
[0121]
具体的实施例中:步骤s4中,选择ap(averageprecision)、precision、recall、f1、map(meanaverageprecision)等衡量指标评估本实例训练的yolov4模型,其中precision、recall和f1的计算公式如下:
[0122][0123]
[0124][0125]
其中,tp为正样本预测为真的个数,fp为负样本预测为真的个数,fn为负样本预测为假的个数;f1分数可看作精确率和召回率的一种加权平均,用来衡量二分类模型准确度的指标,p、r分别表示precision、recall指标。
[0126]
根据map的指标阈值常取0.5,对本实例预划分的火焰测试集进行测试,绘制p-r曲线,ap则表示p-r曲线围成面积的大小,ap值越高,则表示训练的yolov4网络性能越好,map是训练的yolov4网络模型在所有类别中ap的平均值,表示训练模型在所有类别上的整体效果。
[0127]
本实例的模型测试结果如图7-图11,本次实验采用的数据集规模较小,涉及的目标环境复杂,且属于单目标识别,从图中可以看出,在本发明提出的方法中,火焰测试集的map值达到了近83%,单张图像的火焰识别检测时间为5.2ms,满足了无人机在复杂环境中对火焰的识别需求,实现了速度和精度的平衡。
[0128]
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献