郝建峰 任國鳳 黃婷 梁小瑞
摘要:傳統(tǒng)的火災(zāi)信號預(yù)警系統(tǒng)容易遭到自然環(huán)境的影響,從而發(fā)生信號誤讀錯報、遲報、漏報或者功能失效等問題。而常規(guī)的圖像火焰檢測方法有時無法全面描述火焰特性, 因此火焰識別的準確率比較低。本文提出一種基于卷積神經(jīng)網(wǎng)絡(luò)AlexNet模型的圖像火焰檢測算法,它可以更加有效地識別出火焰,實現(xiàn)火災(zāi)及時準確的預(yù)警效果。實驗結(jié)果表明該算法可取,同時本研究繼續(xù)對該算法進行了模型優(yōu)化,使得火焰識別的準確率高達91%及以上。本研究具有應(yīng)用于實際火災(zāi)預(yù)警系統(tǒng)的價值。
關(guān)鍵詞:火災(zāi)預(yù)警;圖像檢測;卷積神經(jīng)網(wǎng)絡(luò);AlexNet模型
一、引言
近年來,火災(zāi)事故頻繁發(fā)生直接危害到人們的生命財產(chǎn)安全,因而實現(xiàn)及時準確的火災(zāi)預(yù)警,已經(jīng)成為火災(zāi)預(yù)警追求的重要方向[1]。
現(xiàn)有的火災(zāi)預(yù)警系統(tǒng)設(shè)計主要采用基于傳感器、基于圖像處理和基于深度學(xué)習(xí)的火災(zāi)檢測方法[2-5]。伴隨著深度學(xué)習(xí)算法的廣泛使用和良好性能,很多研究學(xué)者將其應(yīng)用于火災(zāi)預(yù)警研究中,嚴云洋等人于2018年提出一種基于Faster R-CNN模型的火焰檢測算法實現(xiàn)了對火焰特征的自動提取及在火災(zāi)檢測的過程中, 通過相互聯(lián)合的方法實現(xiàn)了對火災(zāi)識別和定位的有機統(tǒng)一,有效提高了在圖像復(fù)雜背景下的火焰識別精度[6]。因此,將深度學(xué)習(xí)中的CNN算法引入圖像處理的火災(zāi)預(yù)警設(shè)計,可以有效提高整個系統(tǒng)的智能性和火災(zāi)監(jiān)測的及時性,同時可以避免圖像特征的人工算法提取,從而實現(xiàn)及時準確的火災(zāi)早期預(yù)警[7]。
二、火災(zāi)預(yù)警理論及圖像處理方法概述
(一)火災(zāi)預(yù)警系統(tǒng)原理
本文所研究的火災(zāi)預(yù)警系統(tǒng)如圖1所示,首先對火災(zāi)圖像數(shù)據(jù)庫進行標注及分塊,然后通過AlexNet模型訓(xùn)練圖片,智能提取到疑似火焰區(qū)域并分析各種火焰特性。最后對測試火災(zāi)圖片中的檢測區(qū)域進行特征提取,從而判斷是否存在發(fā)生火災(zāi)的可能性,實現(xiàn)火災(zāi)預(yù)警。
(二)火災(zāi)圖像數(shù)據(jù)庫介紹
本文所用的火災(zāi)圖像數(shù)據(jù)庫共有147張圖片。其中133張圖片來源于美國火災(zāi)圖片且都存在火焰,還有14張圖片來源于網(wǎng)絡(luò)且都不存在火焰。
(三)卷積神經(jīng)網(wǎng)絡(luò)
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,簡稱CNN),是一種帶有卷積結(jié)構(gòu)的深度神經(jīng)網(wǎng)絡(luò),作為一種常見的深度學(xué)習(xí)方法,廣泛應(yīng)用于圖像識別和圖像分類中。CNN的卷積結(jié)構(gòu)能夠降低深層網(wǎng)絡(luò)占用的內(nèi)存量,其重要的構(gòu)成原因是:一是基于局部層的感知,二是局部權(quán)值的共享,三是池化層緩解模型的過擬合問題。因而,CNN通過構(gòu)建多層神經(jīng)網(wǎng)絡(luò)來對目標進行多層特征表示,實現(xiàn)通過多層的高級特征準確表示各種抽象性和語義上的信息,從而獲得更好的特征魯棒性[8]。
(四) CNN之AlexNet模型
CNN中有許多經(jīng)典算法模型,代表性的有多倫多大學(xué)的 Geoffrey Hinton、Ilya Sutskever 和 Alex Krizhevsky在2012年的ImageNet大會提交的基于AlexNet模型的CNN算法,該新型算法可以使圖像的誤識率降低至16%。因此,AlexNet模型成為圖像分類的中心算法模型。其具體網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
三、火災(zāi)預(yù)警算法分析設(shè)計
(一)火災(zāi)圖片數(shù)據(jù)的預(yù)處理
對火災(zāi)圖像數(shù)據(jù)庫的所有圖片提取圖片特征,并標識其有火無火。進而,創(chuàng)建兩個文件夾并分別命名為訓(xùn)練圖片和測試圖片((“train-images”和“test-images”),然后把它們放到一個文件夾里面。最后,分別在訓(xùn)練圖片和測試圖片里面在創(chuàng)建兩個文件夾并分別命名為有火和無火(‘1’和‘0’)。
然后把訓(xùn)練圖片填滿,按照分類把133張有火圖片塞入訓(xùn)練圖片中的有火文件夾,然后把14張無火圖片塞入訓(xùn)練圖片中無火文件夾。最后把需要識別的圖片放入測試圖片的文件夾,同樣把圖片分為2類分別放入有火文件夾和無火文件夾。這樣做的目的是為了計算該火災(zāi)預(yù)警系統(tǒng)火焰識別的準確率。
(二)AlexNet模型的參數(shù)設(shè)置
AlexNet網(wǎng)絡(luò)結(jié)構(gòu)可以套用已有的AlexNet網(wǎng)絡(luò)結(jié)構(gòu)模型,然后修改訓(xùn)練好的網(wǎng)絡(luò)中的最后三層。最后三層程序代碼主要包含以下幾個參數(shù):MaxEpoch是迭代次數(shù)(也稱為計算輪數(shù)),其值越大就越容易收斂;Initial LearRate是學(xué)習(xí)效率(也稱為學(xué)習(xí)率),其值太大模型不易收斂,值太小模型收斂得太慢;Execution Environment是訓(xùn)練網(wǎng)絡(luò)的環(huán)境,在此可以選擇在中央處理器(Central Processing Unit簡稱CPU),或者在圖形處理器(Graphics Processing Unit,簡稱GPU)。
為了提高系統(tǒng)識別測試圖片的準確性,在圖片讀入的程序下方添加命令“Validation Data”。它是每次測試圖片交叉驗證的數(shù)據(jù),本文設(shè)置每次選擇訓(xùn)練圖片中訓(xùn)練數(shù)據(jù)的80%(即訓(xùn)練圖片總數(shù)的50%)與每一張測試圖片進行交叉驗證,從而對圖像中各種對象進行判別。
四、實驗結(jié)果和分析
(一)AlexNet模型迭代結(jié)果分析
AlexNet網(wǎng)絡(luò)結(jié)構(gòu)模型的最后三層:第一個參數(shù)為類別的數(shù)量,本文取2。學(xué)習(xí)率主要取決于所選擇的優(yōu)化算法的類型。因為本次使用的是SGD優(yōu)化算法,所以學(xué)習(xí)率為0.0001。交叉驗證時每次提取測試圖片特征時與訓(xùn)練圖片總數(shù)的50%進行交叉驗證(此處僅僅是調(diào)用這個函數(shù))。本文受計算機顯卡配置影響,訓(xùn)練網(wǎng)絡(luò)的環(huán)境為CPU。所以不斷修改系統(tǒng)的迭代次數(shù),以達到最佳的識別效果。
當?shù)螖?shù)分別為2、5、8、10,發(fā)現(xiàn)迭代次數(shù)不同時系統(tǒng)所花費時間與火焰識別的準確率也不同。而迭代次數(shù)為8或者10時最合適,火災(zāi)預(yù)警系統(tǒng)的仿真準確率相同且最高為91.5493%。同時,迭代次數(shù)為8次時訓(xùn)練網(wǎng)絡(luò)所需時間少于迭代次數(shù)為10次的,所以迭代次數(shù)為8時最佳。
(二)火災(zāi)數(shù)據(jù)實驗結(jié)果分析
測試圖片的識別準確率為91%左右,經(jīng)過逐一查看對比總共有12張圖片存在識別錯誤。其中有5張圖片存在火焰但是判斷不存在火災(zāi),而有7張圖片不存在火焰但是判斷存在火災(zāi)。
由于本次測試圖片總數(shù)太多無法一一展示,所以選取一些具有代表意義圖片進行仿真結(jié)果說明。從圖3中可以清晰地了解,圖片上無論是森林火災(zāi),室內(nèi)室外火災(zāi)或者其他火災(zāi)(火焰),均可得到識別,并準確及時在圖片上方標注有火(‘1’)。而圖4中的圖片均不存在火焰且程序判斷正確。因此圖3與圖4證明程序可以準確識別火焰。
圖3、圖4為正確識別的圖例,而圖5是預(yù)測失誤的圖例。在圖5中共列出了4張典型的識別失敗圖片。從這4張圖片中可以明顯觀察到程序識別失敗的原因。若圖片中存在火焰,但是圖片的背景色過于明亮或者圖片中火焰太小而且不存在煙霧,程序就會錯誤判斷該圖片不存在火災(zāi)。若圖片中不存在火焰,但是圖片的背景色大面積為紅色或者圖片中存在大量明亮的裝飾燈,這時程序就會錯誤判斷該圖片存在火焰。
五、結(jié)束語
本研究主要是通過CNN算法中的AlexNet網(wǎng)絡(luò)結(jié)構(gòu)模型實現(xiàn)了及時準確的火災(zāi)預(yù)警,使火災(zāi)識別的準確率高達91%及以上。因此本研究成果可以應(yīng)用于實際的火災(zāi)預(yù)警系統(tǒng)設(shè)計。當然本研究仍存在著些許不足、當圖片中不存在火災(zāi)隱患,可是圖片的背景色大面積為紅色或者圖片中裝飾燈過多且明亮?xí)r,程序會錯誤地認為圖片中存在火焰。當圖片中存在火災(zāi)隱患,可是圖片背景過于明亮且火焰較小時,程序也會錯誤地認為圖片中不存在火焰。因此,提高算法的抗干擾能力還需繼續(xù)深入研究。
作者單位:郝建峰? ? 忻州市公安局道路交通安全教育中心
任國鳳? ? 黃婷? ? 忻州師范學(xué)院電子系
梁小瑞? ? 忻州市消防救援支隊
基金項目:山西省虛擬仿真實驗教學(xué)項目(X2020048),山西省教學(xué)改革研究項目(J2021572,J2021588),忻州師范學(xué)院學(xué)術(shù)帶頭人資助項目。
郝建峰(1974.09-),男,忻州市公安局道路交通安全教育中心工程師,研究方向:交通安全設(shè)施設(shè)備及交警應(yīng)急預(yù)警系統(tǒng)機械電子工程技術(shù)研究;
任國鳳(1979.9-),女,忻州師范學(xué)院電子系教授,博士研究生,研究方向:通信信號處理。
參? 考? 文? 獻
[1] Krizhevsky A, Sutskever I, Hinton G E. ImageNet classification with deep convolutional neural networks[C]. International Conference on Neural Information Processing Systems. Curran Associates Inc.2012:1097-1105.
[2] 王思嘉,裴海龍.基于火焰圖像紅外動態(tài)特征的早期火災(zāi)識別算法[J].現(xiàn)代電子技術(shù),2010(08):104-105+110.
[3] 王亞軍,徐大芳,陳向成,等.基于火焰圖像動態(tài)特征的火災(zāi)識別算法[J].測控技術(shù), 2007,26(05):7-9.
[4] 王琳,李愛國,郝春雨.基于火焰圖像跳動特征的火災(zāi)識別算法[D].大連:大連海事大學(xué)信息科學(xué)技術(shù)學(xué)院, 2014.
[5] 許維勝,田長征,方盛明.基于圖像視覺特征的火災(zāi)自動識別[J].計算機工程, 2003,29(18):112-113+191.
[6] 嚴云洋,朱曉妤,劉以安,等.基于Faster R-CNN模型的火焰檢測[J].南京師大學(xué)報(自然科學(xué)版), 2018,41(03):1-5.
[7] 侯曉克.深度學(xué)習(xí)在視頻火焰探測中的算法研究[D].青島:青島科技大學(xué), 2020.
[8] 陳照悅.基于遷移學(xué)習(xí)的火災(zāi)圖像檢測方法研究[D].桂林:桂林電子科技大學(xué), 2020.