章曙光,唐 銳,邵政瑞,鮑 銳
(1.安徽建筑大學 電子與信息工程學院,安徽 合肥 230601;2.安徽建筑大學 信息網絡中心,安徽 合肥 230601)
火災是一種最常見的多發性災害之一,嚴重威脅自然環境和人類生命財產安全。實際的火災場景由于環境復雜、類煙火物體干擾存在誤報以及對煙火目標定位不準確的問題,因此,及時、準確地對早期火災進行探測并預警具有重要的研究意義。
火災產生的過程中常伴隨火焰和煙霧。在利用數字圖像檢測火災之前,主要通過溫感、煙感和光感等物理傳感器進行火災探測,但這些傳統的物理傳感設備檢測范圍有限且信息單一,檢測存在較大的延遲且易受外界干擾,難以適應復雜多變環境下的火災實時探測要求。因此,提出基于計算機視覺的火災檢測方法,主要包括基于圖像處理的傳統火災檢測算法和基于深度學習的火災檢測算法。
傳統火災檢測方法首先使用滑動窗口遍歷輸入圖像得到候選區域,其次使用HOG、SIFT、LBP等算法人工提取火焰和煙霧的顏色、形狀和簡單紋理等特征,將提取的特征向量傳入SVM、貝葉斯網絡、BP神經網絡等分類器判斷候選煙火區域類別[1]。然而這些方法只能提取圖像的淺層特征,精度較低,且針對一些復雜場景魯棒性較弱。
基于深度學習的火災檢測算法能夠提取圖像更抽象、更高級的特征,在檢測精度、速度和泛化能力方面都有顯著提升。文獻[2]首次將CNN應用到火災場景檢測中,開啟了基于深度學習的煙火圖像特征采集自適應學習算法的先河。自深度學習技術發展以來,經典的目標檢測算法有Faster-RCNN[3]、YOLOv3[4]、RefineDet[5]、SSD[6]等。目標檢測算法的改進通常分為2個方向:提升檢測精度[7]和輕量化模型便于部署到嵌入式設備[8]。文獻[9]通過幾何中值的過濾器剪枝算法對YOLOv5模型進行壓縮,實現了輕量化處理。文獻[10-11]使用輕量化網絡替換YOLOv5原主干網絡,有效減少網絡的參數量,保證了火災檢測的速度,但檢測性能會隨著IOU閾值的增加顯著下降。文獻[12]引入基于水平和垂直方向聯合加權策略的值轉換-注意機制,有針對性地提取煙霧的顏色和紋理,提高了煙霧檢測性能。文獻[13]針對單個網絡模型在復雜場景下特征提取的局限性,將YOLOv5和EfficientNet兩個模型并聯協同檢測火災,提高了檢測精度和召回率,但集成模型嚴重降低了檢測速度。文獻[14]將YOLOv3網絡與通道注意力相結合,提升網絡對火焰和煙霧的特征提取能力,但通道注意力會忽略位置信息且無法建立遠程依賴關系,導致部分信息丟失。
以上基于深度學習的火災檢測算法,網絡模型相對復雜、計算量大、難以同時滿足火災檢測精度和速度的平衡,且在實際應用中,由于特征提取網絡的局限性,可能會因為復雜環境下一些類煙火物體(如紅色衣物、落日和光線反射)的誤檢導致一定的假陽性。針對這些不足,本文提出一種將小波變換的時頻光譜特征與卷積特征相結合的YOLOv5火災檢測改進算法。該算法采用檢測精度較高且速度較快的YOLOv5s算法為基準,使用二維Haar小波變換提取圖像的光譜特征,融合到主干網絡CSPDarknet中不同尺度的卷積層,并通過嵌入Coordinate Attention(CA)[15]注意力機制的CAC3模塊,增強對淺層網絡位置信息的關注度,提升網絡定位能力。實驗證明,小波變換可以描述不同頻率的煙火信息,能夠提高網絡對火焰和煙霧的紋理識別能力,從而實時、準確地檢測火災。
YOLOv5是YOLO系列工作之一,綜合了YOLO系列網絡優點,其中YOLOv5s網絡模型深度和寬度最小,主要分為主干網絡、頸部和預測端三部分。主干網絡主要由殘差卷積構成,其內部的殘差塊使用跳躍連接來緩解網絡深度增加產生的梯度消失問題,引入了Focus通道增廣技術來減少計算量,以及空間金字塔池化(Spatial Pyramid Pooling,SPP)結構提高網絡的感受野;頸部沿用了YOLOv4的FPN+PAN結構,將淺層的語義信息和深層信息堆疊在一起,增強網絡特征融合的能力;預測端使用CIOU作為框回歸損失函數且有3個不同尺度的輸出,使模型能夠處理大、中、小3種不同尺度的目標。
YOLOv5s檢測網絡在目標檢測領域同時具備較高的檢測精度和速度,但在火災檢測領域,因煙火的特殊紋理特征、類煙火物體干擾等因素的影響,檢測精度難以保證。本文針對YOLOv5s網絡的改進主要體現在三方面:添加小波特征融合模塊、使用嵌入CA的CAC3模塊和改進框回歸損失函數。改進后的YOLOv5s網絡結構如圖1所示,在輸入后添加小波特征融合模塊,將2次Haar小波變換的輸出融入到卷積網絡中,并使用CAC3替換原本的C3模塊。

圖1 基于小波變換的改進YOLOv5s網絡結構Fig.1 Improved YOLOv5s network structure based on wavelet transform
小波是一種小區域、長度有限且均值為0的波形,小波變換就是使用適當的基本小波函數,通過平移、伸縮形成一系列小波,這簇小波作為基可以構成一系列嵌套的子空間,然后將待分析的信號投影到各個大小不同的子空間中,以觀察相應的特性。對于能量有限的信號f(t),其小波變換的表達式如下:
(1)
式中:α為尺度,用來控制小波函數的伸縮,τ為平移量,用來描述小波函數的平移尺度,尺度的倒數與頻率成正比,平移量對應時間,φ(t)為基本的小波函數。
圖像的小波變換是基于二維離散小波變換在圖像處理上的應用,可以用分別在水平和垂直方向進行濾波的方法實現二維小波多分辨率分解,將圖像信息一層層剝離開來,以獲取不同頻率的信息。離散小波變換用到了2組函數:尺度函數和小波函數,分別與低通濾波器和高通濾波器相對應。本文使用最簡單的基于Haar小波函數的小波變換,它是小波分析中最早用到的一個具有緊支撐的正交小波函數,是支撐域在范圍內的單個矩形波。其尺度函數和對應的小波函數如下:
(2)
(3)
Haar小波變換示意如圖2所示,每次小波變換后,圖像被分解為2倍下采樣的子區域,分別包含相應頻帶的小波系數。其中圖2(b)是經過一次Haar小波變換的結果,LL1是低頻系數,表征原圖的近似信號,HL1、LH1、HH1分別表示水平高頻系數、垂直高頻系數和對角高頻系數,代表圖像的噪聲和邊緣細節信息。圖2(c)表示繼續進行二次Haar小波變換。

圖2 Haar小波變換Fig.2 Haar wavelet transform
取一張火災圖像,對其進行二維Haar小波變換,實際效果如圖3所示。

圖3 Haar小波變換在火災圖像上的效果展示Fig.3 Effect display of Haar wavelet transform on fire image
YOLOv5網絡結構中的Focus層,采用切片操作把高分辨率的圖像拆分成多個低分辨率的特征圖并拼接,將圖像空間平面上的語義信息轉換到通道維度,再通過后續的卷積層進行特征提取,但深層的卷積操作過程會丟失目標的邊緣細節等信息,尤其對于火焰、煙霧這類淺層特征較為豐富的物體,且煙火目標常因為背景等干擾導致邊緣細節信息不顯著。因此,通過二維Haar小波變換提取圖像的高頻系數,并拼接得到小波高頻通道特征,這些特征代表了圖像變化信息和邊緣細節,將小波高頻通道特征與Focus切片操作后的卷積特征進行通道上的特征融合,進一步增強煙火目標的紋理細節特征,并為后續的特征提取保留了更完整的圖片下采樣信息。小波特征融合示意如圖4所示。

圖4 小波特征融合示意Fig.4 Schematic diagram of wavelet feature fusion
對原始圖像同時進行Focus切片操作和一次Haar小波變換,Focus切片類似于鄰近下采樣,是在RGB圖像中每隔一個像素取一個值并進行拼接,從而將W、H維度的信息集中到通道空間。Haar小波變換得到4個同樣具有三通道的小波特征:LL1、HL1、LH1、HH1,將其中代表圖像邊緣細節等信息的9個小波高頻通道特征與Focus切片操作后的相同大小的特征圖進行通道上的特征融合,后接3×3卷積進行特征提取,得到沒有信息丟失的下采樣特征圖,再將對原圖進行二次小波變換得到的9個高頻通道特征(HL2、LH2、HH2)與上述相同尺度的特征圖進行特征融合,以豐富煙火在淺層網絡的細節特征,提升網絡對煙火目標紋理細節的學習能力。
融合小波特征后的淺層網絡具有豐富的煙火目標紋理輪廓等位置信息,而C3結構中多個串聯的BottleNeck模塊在提取通道語義信息時會減弱對這些位置信息的關注,引入CA來增強關注并減少信息丟失。CA通過將位置信息嵌入到通道注意力中,不僅捕獲跨通道信息,還捕獲方向感知和位置敏感信息,保證了網絡能捕獲更多位置細節,提升網絡特征融合能力。
CA彌補了SENet[16]忽略重要位置信息以及CBAM[17]無法建立對視覺任務至關重要的遠程依賴關系的不足,其結構如圖5所示。為了減輕由2D全局池化引起的位置信息丟失,CA利用2個一維全局池化操作分別沿垂直和水平方向進行特征聚合,得到2個獨立的一維特征編碼,這樣可以在一個空間方向保留精確的位置信息,在另一個空間方向使卷積捕獲遠程依賴關系。然后將生成的特征圖通過通道維度拼接、卷積和歸一化等操作編碼為一對方向感知和位置敏感的注意力特征圖,通過相乘將2個注意力特征圖應用于輸入特征圖以強調關注對象的表示。

圖5 CA結構Fig.5 CA structure
嵌入CA的CAC3模塊如圖6所示,將CA 嵌入到原C3模塊的BottleNeck殘差結構中,能夠保證在帶來較少參數量的前提下,借助CA的遠程依賴關系減輕干擾信息,加強對融合了小波高頻特征的淺層特征信息的提取和定位能力,使得到的信息變得多元,從而提升整個網絡的性能。

圖6 嵌入CA的CAC3模塊Fig.6 CAC3 module embedded in CA
YOLOv5的損失函數由分類損失(Classification_Loss)、邊界框回歸損失(Localization_Loss)和置信度損失(Confidence_Loss)組成。邊界框位置預測通過關注預測框和真實框的交并比對邊界框的位置進行回歸預測。
YOLOv5采用CIOU作為框回歸損失函數,將真實框與錨框之間的距離、重疊率、尺度以及縱橫比都考慮進來,但是縱橫比描述的是相對值,而不是寬高分別與其置信度的真實差異,且由于復雜火災場景下煙火邊界區域判定的差異性,會忽略難易樣本不平衡的問題,阻礙模型有效的優化相似性。因此,本文基于EIOU[18]和α-IOU[19]的優點采用了改進后的α-EIOU作為新的框回歸損失。EIOU將原本CIOU縱橫比的損失項拆分成預測框寬高分別與最小外接矩形寬高的差值,明確地衡量了重疊區域、中心點距和寬高真實差,如式(4)所示。同時借鑒α-IOU自適應地重新加權高低IOU目標的損失和梯度,通過引入權重參數α對這些損失進行冪變換,使回歸過程專注于高質量的錨框,以提高模型定位和檢測的性能,如式(5)所示。
(4)
(5)
式中:CW、CH是真實框和預測框的最小外接矩形的寬度和高度,b、bgt分別表示預測框和真實框的中心點,ρ(b,bgt)計算2個中心點間的歐氏距離,ρ(w,wgt)、ρ(h,hgt)分別表示預測框與最小外接框寬高的差值,α>1用于對錨框設置絕對梯度權值,IOU越大的邊界框損失也越大,從而加速對高質量錨框的學習,提高對梯度自適應加權的邊界框回歸精度。
針對火災檢測任務,目前尚未有公開的權威數據集。本文按照PASAL VOC2007格式標準構建了一個場景豐富的火焰和煙霧目標檢測數據集。該數據集中的圖像主要來源于土耳其比爾肯大學 (http:∥signal.ee.bilkent.edu.tr/VisiFire/)、江西財經大學袁非牛團隊 (http:∥staff.ustc.edu.cn/~yfn/vsd.html)、韓國啟明大學火災視頻庫(https:∥cvpr.kmu.ac.kr)以及網絡上采集的圖片和視頻,包括森林、公路、工地和高樓等多個不同場景。為了減少模型的誤檢率,參考coco數據集1%的負樣本圖片比例,加入了100多張非火災圖像,如夕陽、晚霞、反射的光影和紅色車輛等。使用隨機旋轉、縮放和平移等數據增強方式將數據集擴充到16 000張圖像,部分數據如圖7所示。使用LabelImg工具進行標注,數據集包含fire、smoke兩類,將其按照8∶1∶1比例隨機劃分訓練集、驗證集和測試集。

圖7 數據集部分展示Fig.7 Presentation of partial datasets
實驗在Python3.8、CUDA11.1、PyTorch1.8.0環境下進行,所有模型均在配備32 GB顯存的Tesla V100顯卡上進行訓練和測試。
訓練時,加載在ImageNet數據集上訓練好的YOLOv5s預訓練權重,以提高模型的泛化能力。輸入圖像分辨率為640 pixel×640 pixel,批處理數為16,初始學習率為0.001,訓練總共迭代200次,得到最終的煙火檢測模型權重。加載訓練得到的權重文件,利用測試集進行推理測試。
本文主要采用平均精度(mean Average Precision,mAP)和每秒傳輸幀數(Frame Per Second,FPS)作為模型評價指標。AP表示每個類別的平均檢測精度,通過對每一類別的準確率-召回率曲線求積分得到,本文使用的AP默認為AP50,即預測框與真值框的IOU在大于50%前提下的單個類別的平均精確度,mAP是所有類別AP的平均值,mAP值越大表示該模型的總體識別準確率越高,mAP0.5:0.95是指在不同IOU閾值(0.5~0.95,步長為0.05)上的平均mAP。其中準確率(Precision,P)和召回率(Recall,R)的計算方式如下:
(6)
(7)
(8)
式中:TP為實際正類且預測正類,FP為實際負類但預測正類,FN為實際正類預測負類,N為類別數。
本文設計了一組消融實驗和一組對比試驗,通過消融實驗分析本文不同改進部分對網絡性能的影響,再通過改進YOLOv5模型與主流網絡模型(SSD、YOLOv3、YOLOv4-Tiny)的對比實驗,綜合分析模型性能。
2.4.1 消融實驗
為了分析不同改進部分對網絡性能的影響,使用YOLOv5s作為基準模型,向網絡結構中陸續添加小波特征融合模塊、CAC3模塊和改進的α-EIOU損失函數,并對改進后的網絡模型進行訓練與測試,實驗結果如表1所示。對表1分析可見,改進1向主干網絡添加小波特征融合模塊豐富了煙火目標的細節紋理等信息,mAP和精確率各提升了1.3%,召回率提升1.5%;改進2在此基礎上引入CA注意力機制,嵌入到C3模塊中,提升了通道對空間信息的注意力,增強了網絡對小波變換提取的煙火位置信息的關注,mAP提升了0.8%,召回率依然有較明顯的提升(1.1%);改進3使用α-EIOU(α=2時效果最好)代替原本的CIOU提高邊界框回歸精度,精確率提升1.5%,mAP和召回率也都有略微提升。改進后算法的mAP相較YOLOv5s基準模型提升了2.3%,mAP0.5:0.95提升了2.5%,證明了檢測網絡整體性能的優越性。

表1 消融實驗Tab.1 Ablation experiment
2.4.2 對比實驗
為進一步驗證本文算法的優勢,將其與主流目標檢測算法SSD、YOLOv3、YOLOv4-tiny在相同實驗環境下做對比實驗,增加了FPS以及對測試集中每張圖片的平均檢測時間分析,對比試驗結果如表2所示。由表2分析可知,改進YOLOv5算法的mAP達到了81.4%,mAP0.5:0.95達到了55.1%,相較于SSD和YOLOv3算法以及網絡結構更加輕巧的YOLOv4-tiny,改進后的算法在mAP上高出10%以上,且FPS及檢測時間等各項指標都要優于SSD和YOLOv3算法。相較原YOLOv5算法,改進后算法由于小波特征融合模塊和CAC3模塊的引入,網絡運算過程增加了少量的參數量,使得改進后算法在保證檢測精度有明顯提升的同時,FPS僅存在輕微的下降,模型仍然具有較快的檢測速度,對圖片的檢測時間也符合火災檢測的工業需求。因此,改進后的YOLOv5算法更適用于工程應用。

表2 對比實驗Tab.2 Contrast experiment
2.4.3 檢測結果
為驗證改進算法在實際火災場景中的有效性,選取存在類煙火物體干擾、煙火輪廓模糊、有多處著火點以及著火點較小等幾種特殊情況的圖像進行檢測。為了在避免煙火漏報的同時減少因復雜背景以及類煙火物體干擾產生的誤報,將置信度閾值設為0.65,在改進后算法和原YOLOv5算法上的實際檢測效果對比如圖8所示。由圖8可以看出,原YOLOv5算法會將夕陽這一類煙火物體識別為火焰,改進后算法有效避免了類煙火物體的誤檢,且對輪廓紋理模糊、與背景不易區分的煙霧也能夠較好地檢測出。原YOLOv5算法在有多處著火點以及著火點較遠或較小的火災場景中存在漏檢等情況,而改進后的算法對這些火災場景也有較好的檢測效果,且對檢測框的準確度有明顯提升。經驗證,本文改進后的算法在檢出率和檢測精度上都有良好的性能表現,適用于不同場景下的火災檢測任務。

圖8 檢測效果對比Fig.8 Comparison of detection effect
本文針對現有目標檢測模型在復雜環境下易受類煙火物體干擾檢測困難的問題,提出了一種基于小波變換的YOLOv5火災檢測改進算法。該算法在YOLOv5s基礎上,融合了小波變換提取到的煙火紋理特征等信息,并通過CAC3模塊捕獲更多位置細節,提升網絡的定位能力。實驗結果表明。本文提出的改進算法在保證檢測速度的同時,提升了火災場景下的煙火檢測性能,并有效減少類煙火物體的誤報情況,能夠滿足實際工程應用需求。