劉 愷,劉 湘,常麗萍,陳 濱,吳哲夫?
(1.浙江工業大學信息工程學院,杭州310023;2.浙江工業大學設計藝術學院,杭州310023)
傳統火災探測器通過分析燃燒物產生煙霧的成分、濃度或火焰周圍溫度升高等原理進行工作,這類探測器必須靠近火源才能正常工作,限制了其應用范圍[1]。隨著圖像處理技術的日趨成熟,基于視頻監控的火災檢測技術受到了廣泛關注并進行了相關研究[2]。
火災發生初期煙霧比火焰更明顯,煙氣顆粒團聚效應使煙霧區域產生較大的亮度和色度‘突變’,這可作為火災煙霧檢測的判決[3]。因此基于視頻的火災煙霧檢測算法得到了廣泛關注。Gubbi、Chunyu、Feiniu 等[4-6]分別使用小波變換、灰度共生矩陣、局部二進制模式方法提取煙霧特征,然后支持向量機和神經網絡等分類器進行分類識別,這些方法提取的特征單一,在復雜環境中識別效果不是很理想。因此之后的一些研究者,提出了一些多特征融合煙霧檢測方法;ByoungChuld等[7]將顏色、小波系數、運動方向和方向梯度直方圖等時空特征組成新的融合煙霧特征;Prema等[8]將小波能量衰減、灰度共生對比度等值融合作為煙霧特征提出了種基于圖像濾色和多特征的煙霧檢測算法;趙亮等人[9]則將煙霧的顏色、旋轉不變LBP紋理和HOG特征等特征為新的煙霧特征;這些方法在一定程度上提高了煙霧檢測準確性但其特征易被環境影響,因此在復雜環境中依舊存在高誤報和高漏報。
近年來,深度學習的算法在人臉識別、朝向檢測[10]等領域已經取得了顯著成果,同樣也被引入到火災煙霧識別領域。Sebastien等人[11]提出了一種基于卷積神經網(CNN)的火災識別方法,通過卷積神經網絡提取特征并進行分類;ZHIJIAN等人[12]也提出了基于深度歸一化和卷積神經網絡的圖像煙霧檢測算法,該方法中傳統的卷積層被歸一化和卷積層多替代,實現自動特征提取和分類;陳俊周等人[13]在卷積神經網絡基礎上提出了基于級聯的卷積神經網絡用于視頻動態煙霧檢測,可以提取煙霧靜態和動態紋理特征,從而最終實現動態煙霧檢測。卷積神經網絡等深度學習方法進行煙霧檢測無需人工選擇煙霧特征和分類器,但其需要進行大量卷積和池化計算,大量商場、車站、倉庫等場景中已有設備的處理能力較低,這導致基于深度學習的煙霧檢測方法應用于這些場景依舊困難。
本文提出一種基于YUV顏色空間和多特征融合的視頻煙霧檢測算法,相比已有煙霧檢測算法,其主要有以下優勢:①將高斯混合模型應用于運動物體檢測時同時與提出的YUV顏色過濾規則結合確定疑似煙霧區域,減少后續處理數據量同時保證提取的紋理特征僅用來區分疑似煙霧物體;②均勻局部二進制模式提取圖像空域的靜態紋理,并將其與離散小波變換的頻域整體紋理特征融合,使融合后的特征更穩定;③將AdaBoost的改進分類器Real AdaBoost應用于煙霧融合特征分類,有效的提高了分類的準確性,算法流程如圖1所示。

圖1 視頻煙霧檢測算法流程
高斯混合模型GMM(Gaussian Mixture Model)是一種基于像素級別的背景建模方法,通過將圖像的每一個像素建立若干個高斯分布模式,并對高斯模型進行動態更新,從而可以通過均值和標準差來判定運動像素[14],該方法適合檢測緩慢移動物體。設在t時刻,圖像幀I的像素點(x,y)處的概率分布估計為P[It(x,y)],可表示為:

式中:K為組成混合高斯的單高斯分布的個數,其取值通常取3~5,該值越大代表模型處理復雜場景的能力就越強,同時運算量也會隨之增加;ωi,t、μi,t分別代表了在時刻高斯混合模型中第i個單高斯分布的權重和均值;∑i,t則代表了第i個高斯分布的協方差矩陣;η為高斯分布的概率密度函數,由下式給出:

在RGB顏色空間中,可以認為三個顏色通道像素是獨立的,因此有相同的方差,其協方差矩陣可表示為:

高斯混合模型通過更新參數來幫助學習背景圖像,背景隨著時間的推移而變,符合任何高斯分布的像素被認為是前景像素,所有的前景像素組成該幀圖像運動區域。高斯混合模型檢測運動物體效果如圖2所示。

圖2 高斯混合模型檢測的運動區域
運動區域檢測雖然確定了火災煙霧的區域,但這些區域通常還會包含由于運動而產生的非煙霧區域,直接將所有運動區域進行特征提取、識別將會耗費大量資源,還可能影響煙霧檢測及時性,因此去除這些非煙霧區域是必要的。顏色是識別煙霧的重要屬性[15],在低溫環境下煙霧的顏色大多為藍白色與黑色,當溫度升高它的顏色從灰黑色到黑色。在火災發生初期由于溫度較低煙霧顏色大多為白色到灰白色,本文針對早期煙霧檢測因此僅對白色到灰白色煙霧進行分析檢測。在YUV顏色空間中,顏色信息不受照明亮度變化,因此可以對YUV顏色空間執行濾色,RGB轉換為YUV顏色空間的標準矩陣為:

YUV顏色空間中,Y是亮度分量,U,V是色度分量。在煙霧區域中,U和V分量之間的差異比其他非煙色區域大得多,非煙霧區域像素值范圍被壓縮。為此本文提出了YUV顏色空間像素濾色規則:

式中: U(x,y)和 V(x,y)是(x,y)處像素點的 U 分量和V分量值;Irgb(x,y)為(x,y)處像素點在 RGB顏色空間中的像素值;Tmax、Tmin為閾值,在本文中Tmin可取63,Tmax可取178。圖 3顯示運動區域經YUV顏色空間濾色后確定疑似煙霧區域。

圖3 疑似煙霧區域
通過疑似煙霧區域階段檢測,可以消除大部分運動極慢、顏色與煙霧有明顯差異等物體的干擾,然而依舊存在例如白色汽車、穿白色衣服的行人等物體的干擾,這類物體理論上可以通過運動速度、方向、形狀、面積等特征區分,但這些特征會隨風或者拍攝角度影響。紋理體現了物體表面共有的內在特征,被定義為一個區域內的屬性,不同物體具有不同的紋理結構[16],因此在復雜環境中通過紋理特征來鑒別煙霧與非煙霧物體具有很大的優勢。
疑似煙霧區域一般為不規則的,直接提取紋理特征難度較大,常用的方法是將圖像進行分割后再進行紋理特征提取。文獻[4]將疑似煙霧區域進行32×32像素大小分割,文獻[6]將疑似煙霧區域進行100×100像素大小分割,分割后的圖像為處理塊。火災早期疑似煙霧區域面積很小,過大的分割尺寸將可能導致處理塊包含大量背景區域,而較小的分割尺寸則將導致紋理信息缺失,本文將疑似煙霧區域分割48?48像素大小分割。
離散小波變換可以對圖像進行多分辨率分析和時頻分解,從而獲得頻域特征;均勻局部二值模式則描述了圖像像素的空間紋理特征。因此,將兩者融合為增強特征可以更有效表達煙霧特征,從而更好的鑒別煙霧和非煙霧物體。
處理塊經過一層離散小波變換DWT(Discrete Wavelet Transform)后分解成四個部分,即處理塊圖像水平方向細節子圖HL1、對角線方向細節子圖HH1、垂直方向細節子圖LH1和一個低頻部分處理塊圖像的近似子圖LL1,隨著分解級數增加,將獲得更多圖像信息,這為特征提取提供有力的條件[17]。離散小波變換分解獲得子帶系數直接作為煙霧特征會耗費大量時間,通過計算子帶系數的派生特征是一個可行的方法,既能保留子帶系數的大量信息也能減少特征數量。從樣本集中隨機選取了同等數量的非煙霧圖片和煙霧圖片,選取均值、幾何均值、峰值、標準差和熵等派生特征進行測試。HH2頻帶部分測試結果如圖4所示,圖中顯示煙霧圖片HH2子帶系數的均值、幾何平均值、標準偏差和熵均在較小范圍波動,而非煙霧圖片則較為分散,這說明利用子帶系數計算出的派生特征理論上是可以對煙霧圖片進行識別。同理,我們分析了煙霧塊和非煙霧塊的其他高頻子帶和低頻子帶,最終選擇計算各子帶系數的均值、幾何平均值、標準差和熵等作為派生特征,將高頻部分派生特征組成的小波特征向量:

低頻部分派生特征組成的小波特征向量:

式(6)中i取H、V、D分別表示水平、垂直、對角線方向;j=1,2,分別表示一級和二級離散小波分解。

圖4 煙霧圖片和非煙霧圖片小波子帶系數的派生特征對比
Ojala等[18]提出的局部二進制模式LBP(Local Binary Pattern)是一種灰度紋理算子,通過比較一個像素與其領域像素灰度值計算該像素的模式值,然后統計每個像素模式值的直方圖達到對紋理特征的描述。設圖像像素點(x,y)灰度值為ic,其鄰域的第p個像素的灰度值為ip,比較ic與ip的值,則有

式中:s()為符號函數。通過逆序計算中心像素點與鄰域所有像素的比較結果賦值的2p權值來進行加權求和,其和值則為中心像素點的LBP值:

式中:P表示鄰域像素點個數,即中心像素到鄰域點的歐氏距離,R為鄰域半徑。LBP特征維數過高,Ojala等又提出了均勻局部二值模式(ULBP),該模式將LBP的二值模式看作一個首尾相連的環形,當其相鄰兩位從0/或1/0的跳變次數U不超過2次時稱該模式為均勻模式,其余歸為非均勻模式。ULBP的U值表示LBP模式中在圓周上相鄰兩個二元值0/1或1/0轉移次數,因此U值能反應局部結構的一種均勻性度量,U值越大表示結構趨向于不均勻且變化頻率較高[19]。ULBP直方圖比LBP直方圖擁有更少的維數,這意味著特征量更少,因此在提取煙霧紋理特征時使用均勻局部二進制模式提取煙霧空間域特征可以提高后續分類效率。ULBP直方圖U值可由下式計算:

當P=8,R=1時,ULBP有58種均勻模式和1種非均勻模式,共59種模式,通過統計圖像中ULBP的相同U值數量并將其作為對應模式或非均勻模式的特征值,因此ULBP將獲取59個煙霧紋理特征。圖5(b)和5(d)為煙霧圖像和非煙霧圖像的ULBP中各模式的概率分布。

圖5 均勻局部二值模式值對比結果
AdaBoost算法由Freund等人[20]提出,主要思想是利用一個分量分類器,從而可根據分類器訓練后的輸出結果自適應改變樣本權重,把較大的權值賦給被錯分樣本。經過反復迭代,最后根據分類器結果加權投票給出最終的判決結果。Hidenori等人[21]將AdaBoost用于煙霧特征分類,由于AdaBoost的輸出值為{+1,-1}存在局限性,將 Schapire等人[22]提出的改進的Real AdaBoost算法用于我們的融合煙霧特征分類,該算法將AdaBoost算法從處理二值判定推廣到具有連續的置信度[-1,1]輸出,使得更精確地刻畫分類邊界,因此可針對訓練樣本調整分類閾值,使分類器分類效果最優。將28個二維小波派生特征和59個均勻局部二值模式特征線性融合并輸入Real Adaboost訓練獲取分類模型,分類器訓練迭代次數為300次,選用決策樹作為弱分類器,該弱分類器最大分支數量為3。
本文實驗數據的處理分析基于MATLAB R2016a環境,計算機處理器配置為Intel Core i5-3210M@2.5 GHz,內存為8.00 GB。
首先,實驗選取了三種人工提取煙霧特征的檢測算法作為參考比較,其描述如表1所示。測試數據集描述如表2。

表1 人工提取煙霧特征的煙霧檢測算法描述

表2 測試數據集描述
每個數據集訓練圖像集和測試圖像構建如下(以計算真陽性比值(TPR)為例):
①選定數據集編號m,統計其煙霧圖像數量X和非煙霧圖像數量Y。
②第n次隨機選擇煙霧圖像X中的70%煙霧圖像和非煙霧圖像Y中70%非煙霧圖像組成數據集m的訓練圖像集TR,對應數據集剩余的都作為測試圖像集TE,將該次訓練集用作訓練得到分類器模型,之后根據該模型得到測試圖像集分類真陽性比值(TPR)TPRn 等值;n∈{1,…,5}。
③重復②步驟,得到 TPR1,…,TPR5等值,之后求其均值記為TPR。

圖6 ROC曲線對比結果
根據平均真陽性比值(TPR)和假陽性比值(FPR)制作ROC曲線圖。數據集1、2測試結果ROC曲線圖如圖6(a)和圖6(b)所示。ROC曲線越靠近左上角,分類識別準確性就越高,由圖6(a)、圖6(a)中,很明顯觀察到本文方法曲線相比文獻[8]和文獻[5]明顯更靠近左上角,這說明我們的煙霧檢測算法分類性能比兩者更好,從圖中局部放大子圖中可觀察到本文方法相比文獻[6]算法分能性能也略靠左上,因此我們的算法比上述三者分類更準確。單一數據集測試可能的偶然性,由圖6(b)中可以明顯觀察到提出的算法識別準確性更高,且對比圖6(a)和6(b)可觀察到各算法曲線軌跡發生了變化,最靠近左上的位置也發生了變化,但本文方法其曲線包圍的面積相比三者依舊大且曲線趨勢變化最小,這說明本文方法在數據集改變的情況下,分類效果依舊最好且具有很好的穩定性,從因此本文方法相比已有人工提取煙霧特征的煙霧檢測算法更優秀。
另外,選取一些基于深度學習的煙霧檢測算法與本文方法進行分類對比,這些算法如表3所示,這些算法均在caffe框架下實現對數據進行特征提取和分類,結果如圖7所示。如圖7所示,本文提出算法在數據集1和2上都具有比文獻[11]和文獻[13]準確率更高,與文獻[11]準確率略低,但文獻[12]的算法提取的特征相當于2 048個,而本文算法提取特征僅僅只有87個,因此計算量更少,設備性能要求更低。

表3 基于深度學習的煙霧檢測算法描述

圖7 與基于深度學習的算法實驗對比結果
更進一步,我們進行了多場景視頻的煙霧檢測實驗,將本文算法與文獻[9]煙霧檢測算法了對比,視頻信息及結果如表4所示。

表4 煙霧視頻實驗結果
圖8為視頻序列對應的煙霧物體和非煙霧物體幀,其中視頻編號6、11、12來源于江西財經大學袁非牛個人主頁 http://staff.ustc.edu.cn/~yfn/vsd.html,其余視頻則是實驗拍攝所得。實驗選擇了7個煙霧視頻測試首次報警情況,另外選擇5個非煙霧視頻測試誤檢情況。從表4可以看出,文獻[9]和本文算法都能在風的干擾下檢測到視頻中的煙霧,煙霧擴散快慢對兩種算法干擾較小。由視頻編號1、3、4實驗結果可以得到文獻[9]比本文算法能更快檢測到煙霧存在,而視頻編號2、6、7實驗結果中本文算法比文獻[9]能更快檢測到煙霧。出現這種情況是因為視頻1、3、4中煙霧濃度及其稀薄,而視頻 2、6、7 煙霧濃度高,這說明文獻[9]能在煙霧較少時進行快速識別,而本文算法則比較適合初始煙霧較濃時的快速檢測。另一方面,表5非煙霧視頻實驗結果顯示,文獻[9]的算法會把大量的非煙霧物體識別為煙霧,因此導致大量的誤檢幀,而本文算法幾乎不會發生誤檢。

圖8 測試視頻編號序列

表5 非煙霧視頻實驗結果
綜上所述,本文算法和文獻[9]的算法都能快速檢測到煙霧視頻中的煙霧,兩者都不會把煙霧視頻識別為非煙霧視頻,發生漏報情況都較低。但是,文獻[9]算法的缺點是會將非煙霧物體識別為煙霧,從而導致大量誤報;而本文算法擁有極低的誤報率,在多種復雜環境中既能快速進行煙霧檢測又能防止非煙霧物體的干擾,因此本文算法文獻[9]更適合應用于復雜環境。
本文提出了基于YUV顏色空間和多特征融合的視頻煙霧檢測算法,利用高斯混合模型運動區域檢測
與YUV顏色濾色規則確定疑似煙霧區域提高檢測效率和抗干擾能力;使用離散小波變化和均勻局部二進制模式上提取煙霧靜態紋理特征,保證了煙霧特征有效;使用Real AdaBoost進行特征分類提高特征分類準確性。靜態樣本分類實驗結果表明,本文方法比已有煙霧檢測算法具有更低的漏報率和誤報率;多場景視頻實驗結果表明,本文方法可以在火災場景下準確快速檢測出煙霧區域,在非火災復雜場景中幾乎不會產生誤報,具有較強的抗干擾能力。