吳宗勝,韓改寧,李 紅
(咸陽師范學院 計算機學院,陜西 咸陽 712000)
近十年中國公路隧道建設呈跨越式增長,據統計到2019年底,已建的全國公路隧道19 067座,總長達到18 966.6公里,成為隧道工程建設規模最大、數量最多的國家。與此同時公路隧道發生火災事故的頻率也在增加,和普通開放式道路相比,公路隧道發生的事故數量相對較少,但其后果及影響往往較大,尤其是一旦發生火災,后果可能極具破壞性和危險性[1]。引起公路隧道火災的原因主要有:車輛自身故障、交通事故、車輛上易燃物、隧道內電氣線路或電氣設備短路。隧道火災的發生不同于一般火災,通過對多起隧道火災案例分析,其特點主要有:產生的煙霧大、溫度高,隧道內能見度降低;容易引起爆炸,火勢蔓延迅速;成災過程快,持續時間長;洞內空間狹長密閉,人員逃生和疏散較為困難,應急救援難度大;易造成交通堵塞,引發二次火災;具有隨機性和不可預見性。公路隧道火災事故主要造成人員的傷亡、車輛的損毀、隧道設施的損壞以及隧道結構的破壞等方面的危害,此外火災也會造成正常交通的中斷[2]。
隧道作為高速公路的特殊路段,與高速公路其他路段不同,它是道路上一個相對封閉的區段,能見度較低,常為事故多發地段,并可能誘發各種各樣的火災,由于其窄小的管道空間特征,一旦發生火災,可燃物產生的濃煙將從起火部位以一定的速度沿隧道迅速擴散,很快充滿整個空間,并呈現聚集不散的狀態,難以排出隧道外,造成隧道內的溫度、煙霧及有害氣體濃度急劇升高,對司乘人員的生命造成極大威脅,極易造成車輛連續燃燒或爆炸的連鎖反應,使隧道設施遭到致命破壞,甚至導致隧道垮塌,施救工作難度很大。因此,隧道中的火災檢測是保證隧道安全運行的一個重要因素。火災的早期、可靠、低誤報和低漏報是研究火災檢測方案中首先要解決的關鍵問題[2]。一般火災的發展過程主要分為非可見煙、可見煙、燃燒和劇烈燃燒四個階段[3]。現有火災檢測主要集中在第三階段燃燒階段,不能做到在火災發生時進行早檢測、早預防的作用。一般情況下火以煙始,煙霧是火災發生到第二階段的必然產物,如果能及時檢測到火災煙霧,就可盡快預警并采取火災施救措施,降低損失[4-6]。
目前,應用機器學習方法進行火災探測及分類越來越多,在這些研究中首先考慮采用顏色驅動的方法,將時間特征作為淺神經網絡的輸入,將小波系數作為支持向量機(supported vector machine,SVM)分類器的輸入。Chenebert等人[7]考慮使用非時序方法,將顏色紋理特征描述符作為決策樹或淺神經網絡分類的輸入。其他的方法考慮在不同的機器學習方法中使用形狀不變特性[8]或基于補丁的在線異常點學習[9]。但是卷積神經網絡(CNN)是時域上考慮到連續視頻幀之間的動態特征[10]和運動特征[11],只有在這樣的背景下進行火災檢測才能取得較好的效果。Frizzi等人[12]應用CNN在視頻圖像中進行火災檢測,判斷哪些幀有火災發生。Wang等人[13]在tensorflow框架中將CNN和SVM結合實現火災的檢測。陳威等人[14]使用顏色直方圖方法提取火焰特征進行火災探測。回天等人[15]結合Faster R-CNN網絡進行多類型火焰檢測。熊衛華等人[16]為了豐富火災模型提取的特征信息,利用不同尺度下的特征,提出了包含兩路特征提取器的混合卷積神經網絡結構(HybridNet)。但是這些方法只是對火災中的火焰進行檢測,不能有效檢測早期火災。
因此,該文基于深度學習設計了一套智能隧道火災檢測系統,通過監控攝像頭和煙霧傳感器,運用訓練好的基于卷積神經網絡(CNN)的隧道火災圖像識別模型,對隧道現場情況進行同時檢測,能夠及時準確識別火災的發生,并實現即時現場報警與遠程報警,在火災發生時進行早檢測與早預防。
針對公路隧道的特點,在隧道內根據特定的密度鋪設一定數量的視頻攝像頭、煙感探測器和溫濕度傳感器,在隧道入口一端安裝樹莓派終端、火災報警器和4G通信模塊進行火災檢測。為了更加準確地檢測早期火災,該系統同時采取視覺檢測和感覺檢測兩種火災檢測方式。視覺檢測采取視頻攝像頭監控隧道情況,一旦發現較大煙霧或明火,可以很快識別出來。在光線的較暗隧道中,當火災剛發生時產生的煙霧較少,且還未生成明火,視覺傳感器不容易識別出來,這時結合隧道中安裝的敏感煙感探測器可以提前檢測到火災的發生。溫濕度傳感器可以檢測隧道中的溫度和濕度環境,感知火災引起的溫度變化。當系統檢測到火災發生時,部署在隧道入口處的聲光報警器進行報警,阻止車輛進入隧道。同時,利用4G通信模塊向信息中心報警,并傳輸現場監控圖像。系統結構如圖1所示。
系統所用硬件包括:樹莓派Raspberry Pi 4B、Intel Movidius神經計算棒(NCS),樹莓派夜視攝像頭V2,煙霧傳感器MQ-2、聲光報警器、4G通信模塊。樹莓派Raspberry Pi 4B作為智能終端,直接和其他硬件連接,通過攝像頭采集隧道現場圖像,利用神經計算棒對采集的圖像進行分析識別,結合煙霧傳感器檢測隧道煙霧的結果,識別隧道火災的發生,并控制聲光報警器進行報警,同時通過4G無線傳輸模塊向信息中心報警。
(1)智能終端:樹莓派+ Intel Movidius神經計算棒(NCS)。
樹莓派Raspberry Pi 4B配置64位1.5 GHz四核處理器,高達8 GB的內存,4Kp60的硬件視頻解碼,雙頻2.4/5.0 GHz無線局域網,千兆以太網,USB3.0。樹莓派憑借其豐富的外設資源和硬件接口,較高的性價比,廣泛應用于流行的AI研究與應用項目。Movidius神經計算棒(NCS)是Intel公司研發的基于USB模式的深度學習推理工具和獨立的人工智能(AI)加速器,其內部核心是一顆Myriad 2處理器(28 nm工藝),具有80~150 GFLOPS的性能,該處理器也被稱為視覺處理單元(或視覺加速器),功耗僅為1 W左右,因此完全可以通過USB供電,可以廣泛地為邊緣主機設備提供專用深度神經網絡處理功能。NCS利用訓練好的網絡模型計算出圖像分析的結果,并傳輸到主機上,完成推理工作。NCS目前支持Caffe、TensorFlow和Keras深度學習框架。將NCS連接到樹莓派的USB3.0接口上,可以利用訓練好的深度學習網絡模型和NCS強大的計算推理能力,對通過視頻模塊采集到的圖像進行實時推理,及時識別視頻圖像中的火災圖像。
(2)視頻監控模塊。
視頻監控模塊采用Raspberry NoIR Camera V2樹莓派夜視攝像頭。該模塊采用高質量800萬像素的Sony IMX219圖像傳感器,能夠拍攝3 280×2 464像素的靜態圖像,而且還支持1080p30、720p60以及640×480p90視頻錄像。該攝像頭提供了常規攝像頭模塊所擁有的所有功能,并采用了紅外濾光片,使得它能夠在隧道低光昏暗的環境中拍攝清晰照片。該款攝像頭在圖像質量、色彩保真度和低光環境方面有非常好的性能。
(3)煙霧傳感器模塊與溫濕度傳感器模塊。
煙霧傳感器模塊采用基于氣敏元件的MQ2氣體傳感器,用于檢測隧道中的煙霧氣體。該款傳感器可以很靈敏地檢測到空氣中的煙霧、液化氣、丁烷、丙烷、甲烷、酒精、氫氣等氣體;溫度傳感器模塊采用DHT11數字溫濕度傳感器,用于檢測隧道中的溫度和濕度,為信息中心提供隧道的實時環境信息。
(4)聲光報警器模塊。
樹莓派主機通過繼電器與安裝在隧道入口的聲光報警器連接,當檢測到火災發生時啟動聲光報警器進行現場報警。
(1)火災圖像識別網絡訓練模塊。
該文采用深度學習的方法對隧道監控圖像進行識別。為了能夠提高隧道火災檢測的速度和準確性,將VGG-16網絡[17]進行了簡化,并參照文獻[11]和文獻[13]做了參數調優,經多次試驗,構建了一個火災檢測的深度卷積神經網絡結構模型。該網絡分別由1個輸入層+4個卷積層+5個激活層+3個池化層+1個全連接層+Softmax層組成,結構如圖2所示。
在網絡中,每個卷積層使用一個濾波器組執行卷積操作生成一組特征圖,然后使用激活函數Relu對特征圖進行非線性映射,再對其結果進行批正則化(batch normalization)操作,接著使用最大池化(maxpooling)操作進行下采樣(采樣窗口大小為2×2、步長為2),下采樣后得到的每個特征圖的長和寬為原來的一半。在網絡各卷積層后添加的批正則化層,可以防止深度網絡在訓練中容易出現的“梯度消失”問題,提高訓練的收斂速度和模型精度[18],全連接層后面使用Dropout操作可以防止模型出現過擬合現象[19]。
為了詳細展示該網絡架構,將網絡配置在表1中列出。為了簡化顯示內容,在表中沒有列出網絡中的激活層、批正則化層和Dropout層。在第一層卷積層中7×7大小的濾波核用來提取特征,其他卷積層使用大小為3×3濾波核。卷積濾波的步長固定為1,對使用7×7和3×3感知域的卷積層填充1個0值的像素, 使卷積層的輸入經過卷積后仍然保留了原來的空間分辨率。最大池化層使用一個大小為2×2、步長為2像素的滑動窗口進行下采樣。各層的輸入大小和參數如表1所示,池化層全部采用最大池化方法進行下采樣。
筆者收集了500幅隧道火災圖像和600幅非火災圖像,對構建的火災檢測網絡進行訓練。訓練時將圖像進行適當的預處理,并統一規整為128×128像素大小,訓練流程如圖3(左圖)所示。在訓練中使用交叉熵損失(cross-entropy loss)函數作為訓練網絡的目標損失函數,并采用隨機梯度下降法(SGD)對目標損失函數進行優化,并將其學習率設為lr=0.01,動量參數設為momentum=0.9,權值衰減設為weight_decay=0.000 5,然后訓練網絡直至訓練損失函數收斂。每次迭代訓練前,將訓練集圖片打亂,然后按順序每抽取5幅圖像為一個批次(batchsize=5)作為網絡的輸入。迭代訓練100次(epochs=100)后得到的網絡模型作為數據預測模型,用于對火災圖像進行檢測。
(2)火災識別模塊。
在終端檢測主機樹莓派上部署Linux系統,使用Python在TensorFlow和Keras深度學習框架下,利用訓練好的火災檢測網絡模型對攝像頭采集到的隧道圖像進行檢測。火災檢測識別流程如圖3(右圖)所示。首先將從攝像頭捕獲的圖像幀進行直方圖均衡、去噪預處理,然后規整為128×128像素大小的圖像,輸入到火災識別網絡模型中進行預測識別,如果檢測到有火災,則進行報警處理,否則檢測下一幀輸入圖像。其中火災預測識別部分由Intel網絡神經棒NCS進行推理運算,其推理速度是使用CPU(沒有采用NCS)的8倍,大大提高了火災識別速度,每秒可以檢測5幀圖像。在火災中出現明顯煙霧和明火的情況下,該網絡模式識別火災的正確率可以達到96%,加上實時性較好,能夠滿足現實隧道火災的實時檢測要求。
(3)信息中心。
信息中心由Web信息服務器和通信服務器組成。Web信息服務器負責管理各個終端主機,收集和存儲各隧道的現場環境信息,包括溫濕度、火災報警信息、火災現場圖像。通信服務器負責向交警部門和消防部門撥打報警電話和發送火災信息。當有隧道火災發生時,終端系統立即啟動聲光報警器進行現場報警,同時將隧道火災信息推送到信息中心,信息中心將根據隧道的現場情況,通過電話和短信的方式將報警信息及時發送給交警部門和消防部門,使其迅速處理火情。
根據上述的系統設計方案,實現了系統的代碼編寫,并對系統進行了測試。本測試使用的樹莓派Raspberry Pi 4B配置的是1.5 GHz四核處理器,搭配Intel公司的第二代神經計算棒(NCS)。測試中使用的場景來源為網上收集的隧道靜態圖像和隧道監控視頻,其中有火災在起火前煙霧階段的場景和起火后明火階段的場景,并分別采用CPU檢測和NCS檢測,測試結果如表2所示。

表2 隧道火災檢測結果
從測試結果來看,采用CPU進行火災檢測一幀圖像需要約1.7秒,而采用NCS進行火災推理檢測速度達到每秒5幀,每幀約0.2秒,是使用CPU檢測速度的8倍;而火災識別的精度與使用的硬件無關,不管使用CPU還是NCS,因為使用的是相同的推理模型,所以識別率也相同。在起火前的煙霧階段,識別率為94.8%,稍比明火階段識別率低,綜合識別率為96%。從檢測速度上看,基本上能即時識別出火災的發生。系統結合煙霧傳感器檢測,可以進一步提高火災煙霧階段的識別率,降低誤報率。同時,終端系統通過通信模塊能夠迅速將火災檢測結果和現場圖像上傳至信息中心并進行報警,大大縮短了應急響應的時間,為及時火災救援提供時間保障。圖4是測試中使用的部分圖像,測試結果直接在圖像上顯示。
針對公路隧道的火災檢測問題,基于樹莓派和Intel神經計算棒(NCS)的硬件平臺,該文設計了一個隧道火災監測報警系統。該系統采用高清夜視攝像頭采集隧道圖像,使用深度學習方法對采集的圖像進行實時火災識別。同時結合煙霧傳感器對隧道中實際氣體進行檢測,提高火災檢測的準確性。該系統能夠在光線復雜的環境下盡快準確地識別火災的發生,并實現即時現場報警與遠程報警。在公路隧道中應用該系統,能夠在發生隧道火災時盡可能避免人員傷亡,降低財產損失,具有極大的應用價值。
該系統在火災中后期階段的檢測效果雖然很好,但在火災初期沒有明火且煙霧很少的情況下視頻檢測成功率不高,主要借助隧道中離火災較近的煙霧傳感器進行檢測;同時視頻圖像的檢測速度仍有提高的空間。在今后的工作中,將進一步提高火災最初階段的檢測精度,并提高視頻檢測速度,為火災救援爭取更多的時間。