?

融合BiFPN 與YOLO v5 網絡的工廠火災檢測

2023-10-31 09:39尚明鵬陳燕軍李鑫炎
智能計算機與應用 2023年10期
關鍵詞:火焰尺度工廠

尚明鵬, 周 敏, 陳燕軍, 李鑫炎

(1 武漢科技大學 冶金裝備及其控制教育部重點實驗室, 武漢 430081;2 武漢科技大學 機械傳動與制造工程湖北省重點實驗室, 武漢 430081)

0 引 言

制造業擁有十分繁雜的生產工藝,而機械加工設備一旦出現電器過載或線路絕緣層老化以及短路等情況,就會發生工廠火災[1],對工業企業帶來巨大的危害。 及時發現火情和控制火勢,能夠盡可能的減少火災所造成的損失,因此工廠火災的早期檢測和預警有著重要意義。

隨著近年來圖像處理技術的發展,由于基于機器視覺的檢測方法其檢測速率快且受環境因素干擾程度小等優點,成為眾學者研究的焦點[2]。 胡勒等[3]依據陰燃和火羽流階段的熱物理現象,提出了一種基于動態紋理的火焰檢測算法;鄧理文等[4]通過選取溫度、煙霧濃度和CO 濃度3 種參數,基于模糊神經網絡對火災進行探測。 但是,火災探測傳感器不僅會受到空氣濕度、溫度以及氣流等環境因素的影響,而且工廠環境復雜不利于傳感器放置,所以傳感器往往無法及時檢測到火災。 此外,一些學者嘗試通過人工選取特征來對火焰進行描述并結合淺層機器學習模型進行訓練和分類。 如:TRUONG T[5]基 于 多 階 段 模 式 提 取 火 焰 特 征;DIMITROPOULOS K[6]基于動態紋理分析來提取特征;KONG S[7]和HAN X[8]通過回歸和混合背景高斯模型來進行機器學習模型的構建等等。 但這些檢測方法的效果取決于人工特征選取,模型識別率較低。 隨后,孟令昀[9]對火焰檢測算法進行了特征優化,但該算法的泛化性還有待改進;富雅捷等[10]采用遷移學習結合卷積神經網絡的方法來訓練火災數據,該算法雖然誤報率低但檢測速度有待提高。

在目標檢測領域中,基于區域的雙階段算法(如Faster R-CNN[11]系列算法),雖然精度較高,但其大量預選框的需求導致了檢測速度極慢。 基于回歸的單階段算法(如SDD[12]算法、YOLO[13]系列算法),推理速度更快,但其高級語義特征較多,且網絡后部分特征圖尺寸較小,所以在小目標檢測上存在不足。 而工廠火災檢測中存在環境復雜、目標密集、火焰初期目標較小、樣本像素較低以及火焰邊界特征不明顯等問題,因此以上算法對于工廠火災的檢測效果并不理想。

針對上述問題,本文基于目前較為優秀的YOLO v5 模型算法,提出了一種融合了BiFPN[14]和YOLO v5 網絡(以下簡稱Bi-YOLO v5)的工廠火災檢測算法。

1 基于YOLO v5 的工廠火災檢測模型構建

YOLO v5 是Ultralytics LLC 公司基于Pytorch 框架提出的輕量級目標檢測算法,在單階段檢測算法中比較成熟,相比其它目標檢測模型,體積更加輕便且兼具準確度和檢測速率,適合嵌入在工廠火災探測設備中。 YOLO v5 將網絡結構分成Input、Backbone、Neck 和Prediction 4 個部分,其網絡結構如圖1 所示。

圖1 YOLO v5 網絡結構Fig.1 The structure of YOLO v5 network

YOLO v5 目標檢測模型的輸入端(Input)主要包含自適應錨框值選取、自適應縮放圖像和馬賽克(Mosaic)數據增強技術3 個模塊。 模型主干網絡(Backbone)是在分層圖像細粒度上聚合生成圖像特征的卷積神經網絡,主要包含了Focus、跨階段局部融合網絡(Cross Stage Partial Networks,CSPNet)和空間金字塔池化(Spatial Pyramid Pooling,SPP)模塊。 其中,第一層Focus 從輸入端圖像中相鄰的4個位置進行堆疊,在C 通道空間中聚焦W、H 維度信息,能夠減少計算量。 CSPNet 利用密集跳層連接來進行局部跨層融合,獲取多層次的特征圖。 最后一層SPP 使用5、9、13 的Maxpool 最大池化層,在低速度差的情況下進行Concat 融合來提高感受野,有助于特征層對齊。 Neck 部分采用特征金字塔結構(Feature Pyramid Networks,FPN)[15]和路徑聚合網絡結構(Path Aggregation Networks,PAN),以加強網絡結構對多種縮放尺度的圖像特征融合。 FPN 通過自上向下、自下向上的高低層特征融合,提高了對小目標的檢測準確度;而PAN 結合不同層的CSPNet 模塊對輸出的深淺層特征進行聚合,減少底層定位信息向頂層傳遞過程中的損耗。 輸出端(Output)使用GIOU_Loss[16]函數作為損失函數,相比于之前YOLO 版本的IOU_Loss 函數,采用非極大值抑制(NMS)對多目標的邊界框進行篩選,增加了相交尺度衡量,提升了遮擋目標和多目標的檢測能力。

2 模型改進與優化

2.1 特征金字塔網絡融合

由于網絡層次連續加深,在特征語義由低維向高維轉換過程中,每經過一層都會丟失部分特征信息。 為了豐富特征語義信息,實現多層級的特征融合,構造特征金字塔是目前主流的融合思想。

FPN 結構如圖2(a)所示,該結構搭建了一條自頂向下的通路,把更抽象的高語義信息特征圖進行上采樣,融合后的語義信息通過在兩層相同尺寸的特征空間中橫向連接傳播。 但是,單向的信息流通在一定程度上限制了底層位置信息的傳遞。 針對于此,PAN 結構(圖2(b))在自頂向下通路的基礎上添加了一條自底向上的通路,使預測層中也可以對底層的位置信息進行定位,這樣預測層就兼具了底層位置信息和頂層語義信息,提升了目標檢測的準確度。

圖2 FPN、PAN 和BiFPN 結構Fig.2 The structure of FPN, PAN and BiFPN

加權雙向特征金字塔網絡結構(Bidirectional Feature Pyramid Network,BiFPN)是由谷歌大腦團隊在PAN 的基礎上提出的雙向融合方式(圖2(c))。BiFPN 基于路徑增強的雙向融合思想,實現了高效的雙向跨尺度連接,搭建了自頂而下和自底向上的特征融合通道。 由于在多尺度特征圖的融合過程中,輸出特征的重要程度受到輸入特征在不同分辨率下的影響,所以在每個節點設置權重來平衡多尺度的特征信息,能夠進一步提高檢測精度。

基于該結構的優點,本文將原YOLO v5 特征金字塔網絡中的PAN 結構改為BiFPN 結構,以增強特征融合,提高檢測精度。 融合了BiFPN 的YOLO v5網絡的特征金字塔(如圖3 所示),從Backbone 的Conv 4、Conv 5 和Conv 6 層中提取3 種不同尺度的特征進行通道壓縮,然后進行跨尺度連接和加權特征融合,并在最后設置特征分辨率為19*19、38*38 和76*76 的預測分支,減少了特征融合時小目標信息的損失。

圖3 Bi-YOLO v5 的特征金字塔結構Fig.3 The structure of feature pyramid in Bi-YOLO v5

2.2 錨框參數優化

原YOLO v5 中的自適應計算錨框值的思想,使用K 均值(K-Means)聚類算法,依照標注好的目標框來自動計算并選取適合的錨定框,該過程在模型訓練數據集時自動完成。

由于公開數據集檢測的目標尺寸與自定義數據集有所不同,YOLO v5 根據MSCOCO(Microsoft Common Objects in Context)數據集重新自動學習并設置了9 種錨定框,從大到小依次為(373,326)、(156,198)、(116,90)、(59,119)、(62,45)、(30,61)、(33,23)、(16,30)和(10,13)。 由于工廠環境復雜且初期火焰目標較小,所以本文添加了用于檢測工廠火災的3 種小尺寸的錨定框,分別為(16,14)、(9,15)和(7,8)。 依據檢測層不同的尺度對錨定框進行歸類,統計出的錨定框分配情況見表1,用于檢測目標較小的初期火焰。

表1 錨定框分配表Tab.1 Anchor box allocation

2.3 邊框損失函數改進

由于火勢的大小受到燃燒環境和燃燒時長的影響,造成了火焰邊界框尺寸在不同尺度圖像中存在差異,所以需要對邊框損失函數進行改進和優化。雖然GIOU 函數對IOU 的梯度問題進行了改進,但仍存在收斂效率慢和回歸不穩定的弊端。 因此,本文采用CIOU 函數來為bounding box 計算邊框回歸損失,如式(1)~式(3)所示:

式中:ρ代表計算預測框與實際框兩個中心點間的歐式距離,b、bgt分別代表預測框和實際框的中心點,C是最小包圍預測框和實際框的對角線距離,α是權重參數,ν是用來計算預測框和實際框之間寬高比的相似性,w、wgt分別是預測框和實際框的寬度,h、hgt分別是預測框和實際框的高度。

CIOU 納入了邊界回歸的中心點距離、重疊面積和縱橫比,多維度的參數更好的反映了預測框和實際框的差異,提高了收斂速度和預測精度。

3 實驗與結果分析

3.1 數據集

本文通過Python 編寫腳本從網絡上獲取火災圖片,并使用縮放、翻轉、剪切、加噪、平移和鏡像等方法對數據集進行數據擴充,經擴充后的樣本數量為8 435 張圖片。 對自建數據集通過增加圖片飽和度、調整色彩空間和Mosaic 數據增強技術,來獲得更好的訓練效果。 圖4 為對火災數據集樣本進行Mosaic 數據增強的實例。 處理后的數據集保證了本文提出的Bi- YOLO v5 模型能在復雜的工廠環境中良好泛化。

圖4 Mosaic 數據增強實例Fig.4 The instance of Mosaic data enhancement

3.2 評價指標

為了驗證Bi- YOLO v5 模型的性能,本文用真陽性(True Positive,TP)、 假陽性(False Positive,FP) 和假陰性(False Negative,FN) 來計算召回率(Recall)、準確率(Precision)、 平均精度(Average Precision,AP) 和 平 均 精 度 均 值(Mean Average Precision,mAP),以此作為評價指標。

Recall表示真陽性和真陽性與假陰性之和的比值,如式(4)所示:

Precision表示真陽性占所有陽性的比值,如式(5)所示:

AP用來衡量模型在每個類別上的學習程度,其數學意義是以Recall為橫軸和以Precision為縱軸圍成的曲線面積,如式(6) 所示:

mAP表示模型里所有類別的AP均值,如式(7)所示:

其中,n代表模型里所有類別的個數。

3.3 模型訓練

本文將火災數據集按照8 ∶2 的比例隨機劃分成訓練集和測試集。 其中訓練集和測試集的數量分別為6 748 和1 687。 采用608×608 作為輸入圖像尺度,并使用隨機梯度下降(Stochastic Gradient Descent,SGD) 函數來為模型的網絡參數進行優化。訓練參數設置見表2,本次實驗共訓練4 個模型,分別是Faster R-CNN、SDD、YOLO v5 和本文提出的Bi-YOLO v5。

表2 參數設置表Tab.2 Parameter settings

3.4 實驗結果分析

根據日志文件繪制出Bi-YOLO v5 和YOLO v5模型在訓練過程中的Loss 值對比曲線,如圖5 所示。

圖5 Loss 值對比曲線圖Fig.5 Comparison curve of Loss

由圖可以看出,Bi-YOLO v5 的Loss 值曲線始終在YOLO v5 下方,且迭代30 輪后Loss 值變化更為平緩,說明Bi-YOLO v5 模型比YOLO v5 模型收斂更快,損失值更小。

此外,通過對比召回率、準確率、平均精度和每幀推理時間,驗證了幾種現有算法和Bi-YOLO v5的性能,結果見表3。

表3 與現有算法的對比Tab.3 Comparison with existing algorithms

由表3 可知,在相同數據集中,Bi-YOLO v5 的平均精度為99.2%,相比于Faster R-CNN、SDD 和YOLO v5 模型,平均精度分別提高了7.1%、12.8%和1.7%。 并且改進后算法的每幀推理時間降低到了27 ms。綜合來看,本文提出的Bi-YOLO v5 更好的滿足了火災檢測對于檢測精度和實時性上的需求。

3.5 實際場景檢測

為了展示Bi-YOLO v5 對工廠火災的檢測效果,在網絡中隨機選取一些背景復雜且像素較低的工廠監控視頻,以及暗黑環境下的火災圖片進行了檢測,檢測結果如圖6 所示。

由檢測效果可見,無論是白天還是夜晚,Bi-YOLO v5 都能在環境復雜的工廠中通過像素不高的監控系統準確的識別火焰,體現了模型優越的性能以及良好的泛化能力。

4 結束語

針對工廠環境復雜、目標密集、火焰初期目標較小、樣本像素較低以及火焰邊界特征不明顯等問題,本文提出了一種Bi-YOLO v5 算法模型。 該算法通過融合BiFPN 和YOLO v5 的特征網絡、錨框參數優化和損失函數改進來提高模型對多尺度火焰的檢測效率,進而提高了火災檢測在工廠環境中的泛化能力。 實驗結果表明,Bi-YOLO v5 模型的準確率和平均精度比YOLO v5 提高了2.2%和1.7%,并且每幀推理時間降低到了27 ms。 與現有算法相比,Bi-YOLO v5 的準確率最高且時間最快。 綜上,本文算法為進一步部署工廠火災監控系統提供了模型支持,對工廠火災檢測系統的推廣有著實際意義。

猜你喜歡
火焰尺度工廠
最亮的火焰
繽紛的火焰
財產的五大尺度和五重應對
漂在水上的火焰
吹不滅的火焰
為什么工廠的煙囪都很高?
宇宙的尺度
9
離散制造MES在照明工廠的實施與應用
植物工廠
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合