Lightweight Fire Detection Algorithm Based on an Improved YOLOv8
This paper presents a lightweight fire detection algorithm based on improved YOLOv8, aiming to optimize the real-time and accuracy of traditional target detection models in fire scenarios to meet the requirements of efficient monitoring performance in complex environments. In view of the deployment challenges of the YOLOv8 algorithm on resource-constrained devices, the following two innovative works are mainly carried out: (1) the FasterC2f module is designed as an effective alternative to the C2f module in the YOLOv8 algorithm. Through the innovative dimension reduction strategy, this module efficiently processes the input feature graph, which significantly reduces the total amount of parameters and the computational complexity of the model. (2) A lightweight detection head architecture called Lightweight Shared Convolutional Detection (LSCD) is proposed to further improve the detection efficiency and accuracy of the model. By introducing the shared convolution mechanism, LSCD effectively reduces the number of detection heads and enhances the global information fusion ability between feature graphs, ensuring that high detection accuracy can be maintained even in complex and variable fire scenarios. The experimental results show that the proposed algorithm achieves excellent performance in the fire detection task, not only achieving significant lightweight in model volume and computational quantity, but also maintaining even higher detection accuracy comparable to the original YOLOv8.
Fire Detection
YOLO算法,即You Only Look Once,是一种将目标检测任务转化为单次回归问题的算法
由于YOLO系列算法的快速发展,YOLOv8算法在目标检测领域已经展现出强大的性能。论文
YOLOv8算法是目标检测领域中的一种深度学习算法,它在继承YOLO系列优秀性能的基础上,通过改进网络结构和引入新的技术手段,进一步提升了目标检测的精度和速度。该算法的核心思想是通过卷积神经网络进行特征提取和目标检测,它采用了一种独特的双路径预测和紧密连接的卷积网络结构,使得算法能够更好地处理不同大小的目标。此外,YOLOv8还引入了级联和金字塔的思想,通过多尺度的特征图进行物体检测,能够检测不同大小的物体,并具有较好的尺度适应性。
YOLOv8算法网络模型如
FasterNet网络是一种高效的神经网络架构,其设计目标是在不牺牲准确性的前提下提高计算速度,特别是在视觉任务中表现突出
本文利用FasterNet网络的部分卷积机制来对YOLOv8算法进行改进,来降低冗余计算,实现网络轻量化。由于部分卷积机制主要是用在FasterNet网络的FasterNet Block模块实现,因为改进措施是将FasterNet Block模块引入到YOLOv8的C2f模块中,用FasterNet Block模块代替C2f模块中的Bottleneck模块,从而构建成新的轻量化模块,命名为FasterC2f模块,其网络结构如
在深度学习网络中,为了加速模型的收敛速度、提高泛化能力、防止梯度消失或爆炸,一般需要对数据进行归一化处理,常用的归一化处理技术是批归一化BatchNorm。BatchNorm具有以下优点:(1) 通过增大学习率,加快模型收敛至最佳参数,减少训练时间;(2) 减少对初始权重的敏感性,帮助模型在不同初始值下保持相似性能;(3) 减少了对如Dropout等正则化技术的依赖,降低过拟合风险;(4) 调整激活值分布,防止梯度消失或爆炸,使训练更稳定。虽然BatchNorm具有很多优点,但是对batch size的大小比较敏感,由于每次计算均值和方差是在一个batch上进行的,所以如果batch size太小,则计算的均值和方差可能不足以代表整个数据分布,可能导致模型性能下降。本文选择使用GroupNorm代替BatchNorm主要是因为GroupNorm具有更好的适应性、能够保持通道之间的相对关系、提高模型的鲁棒性、在一些场景下性能更佳以及减少对小批量大小的依赖等优点
GroupNorm的操作方法如
共享卷积是卷积神经网络(CNN)中的一个核心概念。在CNN中,卷积层由一系列的卷积核(或称为过滤器、滤波器)组成,这些卷积核与输入图像的不同位置进行卷积运算,生成对应的特征图。而共享卷积的原理在于,对于同一个卷积核,它在不同位置的卷积运算使用的是相同的权重参数。这意味着,无论卷积核在图像的哪个位置进行卷积,其权重参数都是相同的,从而实现了权重的共享。共享卷积的核心优势在于其权重共享的机制,这一机制显著减少了网络需要训练的参数数量,从而提高了计算效率,并降低了过拟合的风险。通过保持卷积核对整个图像的权重一致性,共享卷积能够更有效地提取图像中的局部特征,同时保持空间结构信息。此外,其移不变性使得模型对输入数据的平移变换具有鲁棒性,进一步增强了模型的泛化能力。最后,共享卷积支持多通道输入处理,能够充分利用不同通道间的信息,增强模型的表达能力。这些优点共同使得共享卷积在图像处理等领域展现出卓越的性能。
本文设计了一种基于群归一化GroupNorm和共享卷积的轻量化检测头Lightweight Shared Convolu-tional Detection-LSCD,其网络结构如
在
在本次实验过程中,我们利用AI Studio平台与中国视觉资源网站的协作,精心构建了一个多元化的火灾场景数据集。此数据集广泛涵盖了从森林与草地野火、家庭外部环境中的建筑火灾,到实验室内发生的火灾等多种情景。整个数据集共计收录了2059幅图像,这些图像分别捕捉了森林区域、建筑外部、交通地带以及室内环境下的火灾现场。为了进一步促进数据的有效利用与模型训练,我们将该数据集细致地划分为三个独立但相互关联的子集:训练集、验证集与测试集,且严格遵循8:1:1的比例分配原则。具体而言,训练集占据了数据集的主要部分,包含1647幅图像,用于模型的训练与学习;验证集与测试集则各含206幅图像,分别用于模型训练过程中的效果验证与最终的性能评估。
为评价本文所提算法的有效性,以全类平均精度(mean Average Precision, mAP)、每秒钟检测帧数(Frames Per Second, FPS)、每秒10亿次浮点运算数(Giga Floating-point Operations Per Second, GFLOPs)、模型层数(Layers)和参数量(Parameters/M)作为评估指标。其中,mAP作为评价模型检测精度提升的效果,其值越大代表模型检测精度越高;FPS代表模型每秒钟能够检测图像的张数,数值越大则反映模型实时性越好;GFLOPs、Layers和Parameters反映模型轻量化程度,这些值越小则代表模型轻量化程度越高,对硬件性能要求就越低。
本文采用消融实验对不同模型进行性能对比:以YOLOv8n模型作为基础网络,在YOLOv8n中将C2f模块替换为FasterC2f模块得到的模型为FasterC2f-YOLOv8n,以自研LSCD检测头替换YOLOv8原检测头的模型为LSCD-YOLOv8n,将前面两种策略同时应用得到的模型为 FasterC2f-LSCD-YOLOv8n。本文的实验是在下述条件下进行的:Python-3.8.18,torch-1.13.1+cu116,CUDA:0 (NVIDIA GeForce RTX 3080, 10240MiB)。消融实验结果如
模型 | FasterC2f | LSCD | mAP50 | FPS | GFLOPs | Layers | Parameters/M |
YOLOv8n | 65.1% | 96.7 ★ | 8.7 | 168 | 3.15 | ||
FasterC2f-YOLOv8n | √ | 66.9% | 95.6 | 7.0 | 198 | 2.45 | |
LSCD-YOLOv8n | √ | 68.4% | 94.0 | 6.6 | 157 ★ | 2.37 | |
FasterC2f-LSCD-YOLOv8n | √ | √ | 68.5% ★ | 93.7 | 5.6 ★ | 175 | 2.00 ★ |
首先,比较YOLOv8n和FasterC2f-YOLOv8n模型,使用FasterC2f模块代替C2f模块后得到如下提升:检测精度mAP50提升1.8%,运算量GFLOPs降低19.54%,参数量Parameters/M降低22.22%。从对比结果中可以看出,FasterC2f模块相较于C2f模块能够提升一定的检测精度,最重要的作用的能够大幅降低模型参数和运算量。
其次,比较YOLOv8n和LSCD-YOLOv8n模型,使用LSCD检测头后得到如下提升:检测精度mAP50提升3.3%,运算量GFLOPs降低24.14%,模型层数Layers降低6.55%,参数量Parameters/M降低24.76%。从对比结果中可以看出,LSCD检测头相较于YOLOv8原始的检测头能够有效地提供检测精度,并且能够更大幅度地降低模型参数和运算量。
最后,综合比较四种模型,可以看出同时使用FasterC2f模块和LSCD检测头的FasterC2f-LSCD-YOLOv8n模型在多个方面都占据最优(
在测试集上,验证本文所提算法的火灾检测能力。
本文通过对YOLOv8算法进行针对性优化,提出了LSCD-FasterC2f-YOLOv8轻量化火灾检测算法,有效解决了传统目标检测模型在火灾监测场景中面临的实时性与准确性平衡难题,特别是在资源受限设备上的部署挑战。通过引入FasterC2f模块,实现了对特征图的高效处理,大幅降低了模型参数与计算复杂度;同时,设计的LSCD检测头架构,利用共享卷积机制显著减少了检测头参数,并增强了特征融合能力,确保了复杂火灾场景下的高精度检测。实验结果表明,LSCD-FasterC2f-YOLOv8算法在保持甚至超越原版YOLOv8检测精度的同时,实现了模型体积与计算量的显著轻量化,为火灾预警系统的智能化、实时化升级提供了强有力的技术支持。该算法不仅提升了火灾检测的实时响应速度,还增强了系统的鲁棒性与泛化能力,对于提升城市安防、工业监控等领域的火灾防控水平具有重要意义。未来,随着技术的不断迭代与优化,LSCD-FasterC2f-YOLOv8算法有望进一步拓展其应用场景,为构建更加安全、智能的社会环境贡献力量。
省级科研平台项目资助(黔科合平台人才-CXTD[2021]008)。贵州交通职业大学高层次人才科研启动基金项目:复杂交通环境下的多目标检测研究(KYQD2022004)。贵州交通职业大学2024年度校级科研项目:基于深度学习的交通多目标实时检测算法研究(2024YB02ZK)。