文章編號(hào): 1006-9798(2024)03-0007-06; DOI: 10.13306/j.1006-9798.2024.03.002
摘要: 為了提高火災(zāi)檢測效率,基于模型壓縮思想提出了一種火情早期實(shí)時(shí)檢測模型FRDnet (Fire rapid detection network),利用低值濾波器修剪策略優(yōu)化ShuffleNetV2網(wǎng)絡(luò),優(yōu)化后的網(wǎng)絡(luò)參數(shù)量比原網(wǎng)絡(luò)減少了50%,提高了運(yùn)算效率。針對檢測結(jié)果假性的問題,提出了基于閾值判定的預(yù)警邏輯,提高了預(yù)警的魯棒性。在公開數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,模型的檢測精度達(dá)到了95%,檢測效率達(dá)到了44 fps;預(yù)警邏輯使模型能夠在火情發(fā)生45 s內(nèi)發(fā)出報(bào)警信號(hào),表明模型在火災(zāi)發(fā)生早期能夠快速準(zhǔn)確預(yù)警。
關(guān)鍵詞: ShuffleNetV2; 濾波器修剪; 檢測效率; 火情早期預(yù)警
中圖分類號(hào): TP391文獻(xiàn)標(biāo)識(shí)碼: A
盡早發(fā)現(xiàn)火情并迅速發(fā)出警報(bào),對保障個(gè)人生命和財(cái)產(chǎn)安全至關(guān)重要。傳統(tǒng)的視頻火災(zāi)檢測技術(shù)依賴人工提取火焰的靜態(tài)特征[1]或動(dòng)態(tài)特征[2],通過支持向量機(jī)(Support Vector Machines, SVM)等經(jīng)典機(jī)器學(xué)習(xí)方法分類識(shí)別技術(shù)在提取特征時(shí)難度大、耗時(shí)長,難以保證火災(zāi)預(yù)警的實(shí)時(shí)性。隨著深度學(xué)習(xí)的發(fā)展,火災(zāi)檢測的關(guān)注點(diǎn)從火焰淺層的、局部的特征轉(zhuǎn)移到全局的深層特征中。部分研究人員將卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)架構(gòu)(VGG16和ResNet50)應(yīng)用于火災(zāi)檢測,提高了特征分類精度,但大量的參數(shù)輸入導(dǎo)致計(jì)算處理時(shí)間過長,無法保證檢測的實(shí)時(shí)性[3-5]。隨后VGG16網(wǎng)絡(luò)三個(gè)全連接層合并為一個(gè)全連接,最后兩個(gè)最大池化層優(yōu)化為平均池化層,在保持準(zhǔn)確度的基礎(chǔ)上盡可能地降低網(wǎng)絡(luò)復(fù)雜度[6]。CNN架構(gòu)[7]引入深度可分離卷積,傳統(tǒng)的H×W濾波器被拆分為H×1深度濾波器和1×W點(diǎn)濾波器,減少了浮點(diǎn)運(yùn)算的數(shù)量和網(wǎng)絡(luò)中總體參數(shù)量。許帥等[8]采用深度可分離卷積和倒置殘差結(jié)構(gòu)構(gòu)件主干網(wǎng)絡(luò),達(dá)到降低網(wǎng)絡(luò)參數(shù)量的目的。使用一種不降維的ECANet替換MBConv模塊中的SENet能降低模型復(fù)雜度[9]。在保持模型原始精度的前提下,提出一次性修剪再訓(xùn)練策略,通過修剪對輸出精度影響很小的卷積濾波器達(dá)到降低CNN架構(gòu)復(fù)雜度的目的[10]。已有研究大多通過替換或修改網(wǎng)絡(luò)中的模塊來降低模型復(fù)雜度,并未考慮假性檢測結(jié)果對預(yù)警結(jié)果的影響。為進(jìn)一步降低模型復(fù)雜度,提高檢測效率,本文提出以ShuffleNetV2網(wǎng)絡(luò)[11]為骨干的火情預(yù)警方法FRDnet (Fire l3DHNVoMPuGLRu05fUYNVQ==rapid detection network),使用視頻幀全幀作為輸入進(jìn)行二元火焰檢測 {Fire, NonFire},采用濾波器修剪策略[11]降低FRDnet復(fù)雜度;為消除假性檢測結(jié)果(假陽性、假陰性)對預(yù)警結(jié)果的影響,提出了基于閾值判定的預(yù)警邏輯,避免火情誤警、漏警。
1火災(zāi)預(yù)警方法
1.1FRDnet模型
與VGG16和ResNet50網(wǎng)絡(luò)相比,ShuffleNetV2網(wǎng)絡(luò)的卷積為深度可分離卷積,網(wǎng)絡(luò)結(jié)構(gòu)更緊湊,且在ImageNet[12]分類任務(wù)上性能優(yōu)于前兩者,因此以ShuffleNetV2作為骨干網(wǎng)絡(luò)繼續(xù)優(yōu)化更有優(yōu)勢。三種網(wǎng)絡(luò)結(jié)構(gòu)的計(jì)算量及ImageNet分類任務(wù)的性能見表1。
ShuffleNetV2的結(jié)構(gòu)包括常規(guī)單元和還原單元(圖1),常規(guī)單元將數(shù)據(jù)按通道拆分后送入兩個(gè)分支,其中一個(gè)分支中l3DHNVoMPuGLRu05fUYNVQ==數(shù)據(jù)保持不變,另一個(gè)分支中數(shù)據(jù)經(jīng)過2個(gè)1×1卷積和1個(gè)3×3深度可分離卷積,輸出維度與輸入維度相等,對兩個(gè)分支的數(shù)據(jù)按通道進(jìn)行拼接和洗牌,達(dá)到分支混合的目的。還原單元不進(jìn)行通道拆分,兩個(gè)分支接收輸入數(shù)據(jù)的整體,其中3×3深度可分離卷積的步長為2。點(diǎn)向卷積和深度像卷積的使用使網(wǎng)絡(luò)可在不增加參數(shù)量的情況下進(jìn)行深度運(yùn)算。
FRDnet的初始化模塊由一個(gè)3×3的卷積層和一個(gè)3×3最大池化層組成;特征提取模塊有三組常規(guī)單元與還原單元,每組中僅有一個(gè)還原單元,常規(guī)單元的個(gè)數(shù)分別為 3,7,3;預(yù)測與輸出模塊有一個(gè)逐點(diǎn)卷積層、一個(gè)全局池化層和一個(gè)全連接層,網(wǎng)絡(luò)結(jié)構(gòu)見圖2。為保證FRDnet的檢測精度,使用ShuffleNetV2網(wǎng)絡(luò)在ImageNet數(shù)據(jù)集上的預(yù)訓(xùn)練模型進(jìn)行遷移學(xué)習(xí):將預(yù)訓(xùn)練模型的全連接層替換為映射二元分類{Fire, NonFire}的線性層(圖2,F(xiàn)C),先訓(xùn)練新的線性層,凍結(jié)其余模塊;后解凍并訓(xùn)練預(yù)訓(xùn)練模型的的最后一個(gè)卷積層[11]。降低了權(quán)重變更對檢測性能的影響,同時(shí)避免了訓(xùn)練過程中過度擬合,并且可以增加模型訓(xùn)練時(shí)長得到更好的泛化能力。為降低FRDnet的復(fù)雜度,提高檢測效率,采用濾波器修剪策略[10]對一維卷積層(如圖2,1×1Conv)進(jìn)行修剪優(yōu)化,因?yàn)镾huffleNetV2網(wǎng)絡(luò)的參數(shù)有2/3集中在最后一個(gè)卷積層[11]。
濾波器修剪技術(shù)用于優(yōu)化深度神經(jīng)網(wǎng)絡(luò),減少模型的計(jì)算復(fù)雜度和存儲(chǔ)需求,從而提高模型的效率;其原理是用權(quán)重值的大小評判濾波器的重要性。對于一個(gè)濾波器,將所有權(quán)重值的L1范數(shù)作為該濾波器的評價(jià)指標(biāo),排序并裁剪所得值小的濾波器。對一維卷積層裁剪m個(gè)濾波器的過程:
1)對每個(gè)濾波器Fi,計(jì)算其L1范數(shù)si=∑nl=1Kl,其中n為濾波器的輸入通道個(gè)數(shù);
2)對si由小到大排序,選取前m個(gè)進(jìn)行裁剪。
為了獲得最優(yōu)的修剪數(shù)量,實(shí)驗(yàn)設(shè)定先從128個(gè)(最終卷積層中濾波器數(shù)量的1/8)濾波器開始修剪,只要精度不大幅度減小,每次迭代增加128個(gè);當(dāng)精度明顯減小后,從當(dāng)前迭代次數(shù)開始每次增加64個(gè)濾波器,以此類推,其中對照組模型選擇InceptionV1OnFire,因其網(wǎng)絡(luò)架構(gòu)最后一個(gè)卷積層是同樣的1×1卷積。最終得出ShuffleNetV2網(wǎng)絡(luò)最優(yōu)的修剪個(gè)數(shù)為960個(gè)。實(shí)驗(yàn)過程中修剪個(gè)數(shù)對參數(shù)量的影響見表2,可知InceptionV1OnFire網(wǎng)絡(luò)的1×1卷積層減少640個(gè)濾波器時(shí)就出現(xiàn)了精度明顯下降的現(xiàn)象,繼續(xù)修剪只會(huì)增加再訓(xùn)練的成本,且模型壓縮的結(jié)果不如ShuffleNetV2,表明修剪策略對ShuffleNetV2網(wǎng)絡(luò)更有優(yōu)勢。圖3展示了因修剪個(gè)數(shù)的不同,參數(shù)量與精度的關(guān)系。
1.2預(yù)警邏輯
根據(jù)FRDnet網(wǎng)絡(luò)的輸出,當(dāng)某一幀被檢測為Fire時(shí),該幀與之后的99幀(共100幀)定義為P0,P1,…,P99。根據(jù)局部均值(式1),設(shè)定自適應(yīng)閾值β(式2),其中ω是局部均值的窗口大小,Ni是窗口內(nèi)實(shí)際存在的有效數(shù)據(jù)點(diǎn)數(shù)量,xi+j是數(shù)據(jù)序列中的元素,如果i+j>99,則該元素不計(jì)入求和。根據(jù)100幀中為Fire的幀個(gè)數(shù)的占比T與閾值比較的結(jié)果判定是否有火災(zāi)發(fā)生,如式(3)。針對FRDnet進(jìn)行檢測時(shí)假性結(jié)果會(huì)導(dǎo)致誤判的問題,規(guī)定當(dāng)前100幀內(nèi)如果有連續(xù)的ω幀(即窗口大?。z測結(jié)果為NonFire,則判定無火災(zāi)發(fā)生;重新檢測出為Fire的幀定義為新的P0,重新進(jìn)行預(yù)警判斷。預(yù)警邏輯見式(3),其中W為預(yù)警結(jié)果,V是一個(gè)長度為ω的一維向量,V=Pvi,Pvi+1,…,Pi+ω,表示連續(xù)ω幀的檢測結(jié)果。窗口的大小對自適應(yīng)閾值有重要影響,但其超參數(shù)的性質(zhì)需要進(jìn)一步實(shí)驗(yàn)選取。
mi=1Ni∑kj=-kxi+j,(k=ω-12)(1)
β=110∑99i=0(mi-1100∑99i=0mi)2(2)
W=1,T>β
W=0, T≤β
W=0,V=0(3)
2實(shí)驗(yàn)及評估
2.1實(shí)驗(yàn)過程
實(shí)驗(yàn)選擇FireNet[13]和KMU Fire and Smoke[14]數(shù)據(jù)集,其中FireNet中有46個(gè)火災(zāi)場景的視頻和16和非火災(zāi)場景的視頻,KMU Fire and Smoke數(shù)據(jù)集由4類視頻片段組成:室內(nèi)和室外場景的近距離火焰、室內(nèi)和室外場景的近距離煙霧、森林山火、煙霧或火焰狀移動(dòng)的物體,共有308 MB的視頻序列。對數(shù)據(jù)集視頻序列整合并按照二元分類標(biāo)注后,將數(shù)據(jù)集切分,訓(xùn)練集和測試集的數(shù)量分別為70、30個(gè)視頻段,比例為7:3。實(shí)驗(yàn)硬件: PC機(jī)CPU為Intel Core i512400F,16GB RAM,GPU為NVIDIA GTX1070Ti 8GB,樹莓派4B(Raspberry Pi,RPi)CPU為BroadcomBCM2711,15 GHz,4GB RAM。
網(wǎng)絡(luò)由PyTorch[15]實(shí)現(xiàn),訓(xùn)練配置使用隨機(jī)梯度下降(SGD)進(jìn)行反向傳播優(yōu)化,二元交叉熵?fù)p失函數(shù),學(xué)習(xí)率lr=00005,迭代次數(shù)epoch=50。
預(yù)警邏輯驗(yàn)證實(shí)驗(yàn)流程見圖4,選擇FireNet數(shù)據(jù)集共62個(gè)視頻片段做測試視頻,分別計(jì)算不同ω下46個(gè)火災(zāi)場景視頻的平均預(yù)警時(shí)間ti|ω和相同ω下所有火災(zāi)視頻的平均預(yù)警時(shí)間Tω(式4);最后對不同ω測試所有的非火災(zāi)場景視頻,根據(jù)平均預(yù)警時(shí)間和誤警結(jié)果確定最優(yōu)的ω。
2.2評價(jià)指標(biāo)及結(jié)果
模型采用真陽率(TPR)、假陽率(FPR)、Fscore(F)、精度(P)、準(zhǔn)確率(Acc)、復(fù)雜度(C,單位:百萬)和每秒能夠檢測的幀數(shù)(fps)為評價(jià)指標(biāo)評價(jià)算法的檢測性能,以ShuffleNetV2、FireNet和Inception V1OnFire網(wǎng)絡(luò)為對照組[16]。統(tǒng)計(jì)性能和計(jì)算效率見表3,模型進(jìn)行火災(zāi)檢測判斷結(jié)果見圖5,不同ω下預(yù)警時(shí)間t見圖6。
可知,預(yù)警時(shí)間t與fps有關(guān),3個(gè)平臺(tái)中GPU的預(yù)警時(shí)間t最短;不同平臺(tái)的預(yù)警時(shí)間隨ω值的變化趨勢相似,說明模型的檢測能力不受硬件的影響;在對非火災(zāi)場景視頻進(jìn)行測試中,ω≤9時(shí)均出現(xiàn)了誤警情況,表明窗口過小,無法對假性結(jié)果有效過濾,因此,確定ω=11時(shí)效果最優(yōu),預(yù)警時(shí)間在GPU上為164 s,CPU上達(dá)到了252 s,樹莓派上達(dá)到了414 s,滿足實(shí)時(shí)性要求。
由表3可知,F(xiàn)ireNet網(wǎng)絡(luò)無法部署在樹莓派平臺(tái)上;FRDNet假陽率最優(yōu),精度和準(zhǔn)確率較修剪前的模型(ShuffleNetV2)有所下降,但優(yōu)于其他對照組,真陽率為094,低于InceptionV1OnFire和ShuffleNetV2網(wǎng)絡(luò)的096,但網(wǎng)絡(luò)架構(gòu)更加緊湊、復(fù)雜度最低。在CPU上運(yùn)行時(shí)fps為44幀,在樹莓派上運(yùn)行時(shí)為26幀,在GPU上運(yùn)行時(shí)為69幀,計(jì)算效率最高。
3結(jié)論
本文提出了一種基于ShuffleNetV2網(wǎng)絡(luò)的火情預(yù)警模型FRDnet,通過削減網(wǎng)絡(luò)中一維卷積層的濾波器數(shù)量優(yōu)化了網(wǎng)絡(luò)架構(gòu),網(wǎng)絡(luò)復(fù)雜度減小到0156(C/百萬),優(yōu)于對照組網(wǎng)絡(luò)的復(fù)雜度,同時(shí)優(yōu)化過程中未修剪網(wǎng)絡(luò)的特征提取模塊,保證了模型的特征提取性能。在測試集上進(jìn)行實(shí)驗(yàn)驗(yàn)證,驗(yàn)證結(jié)果表明檢測精度達(dá)到了95%,對視頻幀的檢測速度達(dá)到了每秒44幀(GPU每秒69幀,Pri每秒26幀),優(yōu)于對照組,提高了檢測效率;平均預(yù)警時(shí)間在低成本硬件上達(dá)到了4 s,預(yù)警邏輯消除了假性檢測結(jié)果產(chǎn)生的誤警、漏警。相對于傳統(tǒng)的預(yù)警方法實(shí)時(shí)性提高,滿足了火警預(yù)警的實(shí)時(shí)性。為進(jìn)一步提高小窗口火情預(yù)警的準(zhǔn)確性,需要精確定位火焰在視頻幀中的定位和火災(zāi)前期煙霧的檢測。
參考文獻(xiàn)
[1]ZHU L P, LI H Q, WANG F H, et al. A flame detection method based on novel gradient features [J]. Journal of Intelligent System, 2020, 29(1): 773-786.
[2]ZHAO X, JI H, ZHANG D Y, et al. Fire smoke detection based on contextual object detection [C]∥3rd International Conference on Image, Vision and Computing, Chongqing, 2018: 473-476.
[3]SHARMA J, GRANMO O, GOODWIN M, et al. Deep convolutional neural networks for fire detection in images [C]∥International Conference on Engineering Applications of Neural Networks, Athens, 2017: 183-193.
[4]SIMONYAN K, ZISSERMAN A. Very deep convolutional networks forlargescale image recognition [EB/OL]. [2024-04-10]. https: ∥arxiv. org/abs/1409. 1556.
[5]HE K M, ZHANG X Y, REN S Q, et al. Deep residual learning for image recognition [C]∥IEEE Conference on Computer Vision and Pattern Recognition, Las Vegas, 2016: 770-778.
[6]董艷花, 張樹美, 趙俊莉. 基于深度神經(jīng)網(wǎng)絡(luò)的有遮擋身份驗(yàn)證[J]. 青島大學(xué)學(xué)報(bào)(自然科學(xué)版), 2021, 34(2): 45-52.
[7]HOWARD A G, ZHU M L, CHEN B, et al. Mobilenets: Efficient convolutional neural networks for mobile vision applications [EB/OL]. [2024-04-17]. https: ∥arxiv. org/abs/1704. 04861.
[8]許帥, 姜俊厚, 高偉, 等. 適用于移動(dòng)設(shè)備的輕量化手勢識(shí)別算法[J]. 青島大學(xué)學(xué)報(bào)(自然科學(xué)版), 2022, 35(2): 51-56.
[9]馬粵盼, 趙希梅, 張寧. 基于有效通道注意力EfficientNet的肝硬化識(shí)別[J]. 青島大學(xué)學(xué)報(bào)(自然科學(xué)版), 2023, 36(1): 15-21.
[10]LI H, KADAV A, DURDANOVIC I, et al. Pruning filters for efficient convnets[EB/OL]. [2024-03-10]. https: ∥arxiv. org/abs/1608. 08710.
[11]MA N N, ZHANG X Y, ZHENG H T, et al. Shufflenet v2: Practical guidelines for efficient CNN architecture design [C]∥European Conference on Computer Vision, Munich, 2018: 122-138.
[12]DENG WaoCtLlK7UMtIwwTsHTt5w==J, DONG W, SOCHER R, et al. Imagenet: A largescale hierarchical image database [C]∥IEEE Conference on Computer Vision and Pattern Recognition, Miami, 2009: 248-255.
[13]JADON A, OMAMA M, VARSHNEY A, et al. Firenet: a specialized lightweight fire & smoke detection model for realtime iot applications[EB/OL]. [2024-03-04]. https: ∥arxiv. org/abs/1905. 11922.
[14]CHUL KO B, KWAK J Y, NAM J Y. Wildfire smoke detection usingtemporospatial features and random forest classifiers [J]. Optical Engineering, 2012, 51(1): 017208.
[15]PASZKE A, GROSS S, MASSA F, et al. Pytorch: An imperative style, highperformance deep learning library[C]∥Advances in Neural Information Processing Systems, Vancouver, 2019, 32: 8026-8037.
[16]DUNNINGS A J, BRECKON T P. Experimentally defined convolutional neural network architecture variants fornotemporal realtime fire detection [C]∥25th IEEE International Conference on Image Processing, Athens,2018: 1558-1562.
Fire Fast Warning Method Based on Lightweight Neural Network
SONG Shimiao1, GU Feifan1, GE Jiashang1, YANG Jie1, SONG Shuxin2
(1.College of Mechanical and Electrical Engineering, Qingdao University, Qingdao 266071, China;
2. Jinan Zhangqiu District Agricultural Development Service Center, Jinan 250200, China)
Abstract:
In order to improve the efficiency of fire detection, a fire rapid detection network (FRDnet) was proposed based on the model compression idea. The lowvalue filter pruning strategy was used to optimize the ShuffleNetV2 network. The optimized network parameters were reduced by 50% compared with the original network, improving computing efficiency. Aiming at the problem of false positive detection results, a warning logic based on threshold judgment was proposed to improve the robustness of early warning. Experimental results on public data sets show that the detection accuracy reaches 95% and the detection efficiency reaches 44 fps. The early warning logic enables the model to issue an alarm signal within 4.5 seconds once a fire occurs, indicating that the model can provide rapid and accurate warning in the early stage of fire.
Keywords: ShuffleNetV2; filter pruning strategy; detection efficiency; early warning of fire
收稿日期: 2024-04-18; 修回日期: 2024-06-20
基金項(xiàng)目: 山東省自然科學(xué)基金資助項(xiàng)目(ZR2021MF025)
第一作者: 宋世淼(1998-),男,碩士研究生,主要研究方向?yàn)橛?jì)算機(jī)視覺與機(jī)器人控制。
通信作者: 楊杰(1969-),男,碩士,副教授,主要研究方向?yàn)閳D像識(shí)別。Email: yangjie@qdu.edu.cn