牛 犇,包德堯
(金陵科技學(xué)院 電子信息工程學(xué)院 江蘇 南京 211169)
火災(zāi)一直是人類生產(chǎn)生活中危害最大的災(zāi)害之一,在火災(zāi)發(fā)生的初期對火苗進(jìn)行有效檢測有助于預(yù)防火勢蔓延,防止災(zāi)難性事故發(fā)生,具有重要的實際意義。近些年,隨著計算機視覺技術(shù)的快速發(fā)展,以光學(xué)傳感器為基礎(chǔ)監(jiān)測單元的視頻火苗檢測技術(shù)逐漸成為火災(zāi)防控的重要手段。
基于計算機視覺技術(shù)的火苗檢測方法主要分為兩種,一是通過提取圖像中的火苗特征,使用分類算法對提取的特征進(jìn)行分類,二是基于深度學(xué)習(xí)的火苗檢測算法。Foggia等[1]采用顏色、形態(tài)變化、運動來對各個區(qū)域進(jìn)行判別,根據(jù)權(quán)重的投票策略進(jìn)行綜合決策,該方法主要應(yīng)用于固定的視覺系統(tǒng)。劉小虎等[2]采用改進(jìn)的Soble邊緣檢測算法,選取顏色B分量的邊緣梯度作為判斷火焰和干擾圖像的依據(jù)。李巨虎等[3]在顏色特征的基礎(chǔ)上,提取圖像空域和頻域的紋理特征,該算法能夠提取火焰局部的微紋理信息,表現(xiàn)出更好的魯棒性。Khalil等[4]結(jié)合RGB和CIE Lab顏色模型,通過計算火焰的運動及增長趨勢判斷火災(zāi)危害等級。Torabian等[5]提出一種RGB概率模型來分離每幀圖像中與火災(zāi)區(qū)域顏色相似的運動區(qū)域,從候選區(qū)域中提取相關(guān)系數(shù)、互信息等時空特征,使用SVM分類器對候選區(qū)域進(jìn)行分類。王彥朋等[6]提出了基于熵值加權(quán)支持向量機的火焰檢測方法。李欣健等[7]提出基于YOLO的火焰檢測方法,使用深度可分離卷積改進(jìn)火焰檢測模型的網(wǎng)絡(luò)結(jié)構(gòu),并使用多種數(shù)據(jù)增強技術(shù)與基于邊框的損失函數(shù)以提高精度。張弛等[8]提出一種基于改進(jìn)混合高斯模型(GMM)和多特征融合的視頻火焰檢測算法。嚴(yán)忱等[9]提出了一種融合多級特征的視頻火焰檢測方法,針對下采樣分辨率變小導(dǎo)致丟失目標(biāo)的問題,引入了反卷積模塊,并融合深層具有較強語義信息的特征和淺層具有較強細(xì)節(jié)信息的特征,從而有效提高了火焰的檢測率。與傳統(tǒng)手工提取特征的方法相比,深度學(xué)習(xí)在目標(biāo)檢測領(lǐng)域具有抗干擾能力強、準(zhǔn)確率高的優(yōu)點[10],但對于設(shè)備的要求較高,不便于應(yīng)用在嵌入式系統(tǒng)中。因此,本文采用HSV顏色空間,通過歐式距離與外接矩形中心點判斷火苗區(qū)域,對火苗的動態(tài)特征、靜態(tài)特征、紋理特征等進(jìn)行多特征融合,從而實現(xiàn)有效的火苗檢測。
通過嵌入式硬件設(shè)備控制攝像頭獲取到圖像,將獲取的第一幀圖像作為背景,獲取的后續(xù)幀圖像通過背景差分法,濾除非動態(tài)信息,得到動態(tài)變化的區(qū)域(如飄動的火苗),在HSV顏色模型下進(jìn)行疑似火苗判別,判斷出當(dāng)前幀圖像是否滿足有疑似火苗顏色的兩種顏色區(qū)域,且滿足設(shè)置的歐式距離;如果沒有,則更換背景。如果有,則將兩種顏色的區(qū)域進(jìn)行相加,得到疑似火苗區(qū)域,并計算疑似火苗區(qū)域的紋理參數(shù),將計算出的紋理參數(shù)送入已經(jīng)訓(xùn)練好的支持向量機進(jìn)行判定,若連續(xù)4幀判定為存在火苗,則蜂鳴器報警;否則繼續(xù)進(jìn)行特征提取、特征融合及判定,尋找飄動的火苗。
火苗顏色HSV模型判別算法,如圖1所示。
圖1 火苗顏色HSV模型判別算法
輸入一幅圖像,利用表1所示的黃色與橙色的顏色數(shù)組分布范圍,對顏色區(qū)域去除噪聲點并填補顏色區(qū)域內(nèi)部空隙。若兩種顏色區(qū)域有一個不存在,則繼續(xù)檢測下一幅圖像。若都存在,則用外接矩形標(biāo)記兩個顏色區(qū)域,得到外接矩形的中心點位置。利用歐式距離來衡量兩個外接矩形中心點位置的距離,若計算出的歐式距離滿足在一定范圍內(nèi),則說明兩個顏色區(qū)域分別是火苗的一部分,將兩個顏色區(qū)域進(jìn)行合并,得到疑似火苗顏色區(qū)域。
表1 HSV色彩空間下的顏色數(shù)組范圍
通過HSV顏色檢測,可以看出橙色能夠較好地檢測到火焰的邊緣區(qū)域,黃色可以較好地檢測到火焰的部分區(qū)域。白色雖然能檢測到火焰的中心區(qū)域,但只有在黑暗條件下,火焰才有白色區(qū)域產(chǎn)生。橙色和黃色進(jìn)行顏色檢測區(qū)域位置信息拼接更容易得到火苗的整個樣貌,因此可結(jié)合其兩色的外接矩形中心點的歐式距離,以距離來衡量是否有火苗的產(chǎn)生。
當(dāng)火災(zāi)發(fā)生時,采集到的圖像中火苗區(qū)域在灰度圖像中十分顯著,圖像融合可以有效地降低圖像的對比度,火焰在灰度圖像中呈現(xiàn)出極為突出的亮度區(qū)域,對比度降低后相對中等強度的亮度區(qū)域會被削弱,從而使整個圖像偏暗。降低對比度可以有效減少顏色特征的誤檢率?;鹈鐖D像權(quán)值為0.2,純黑色圖像權(quán)值為0.8,圖像融合如式(1)所示。
其中src1是輸入的第一幅圖像,alpha是第一幅圖像的權(quán)重,src2是輸入的第二幅圖像,beta是第二幅圖像的權(quán)重。
設(shè)兩個像素點p(x,y)、q(s,t),兩點間的歐式距離如式(2)所示:
與(x,y)的距離小于等于某個值r的像素包含在以(x,y)為圓心,以r為半徑的圓平面內(nèi)。通常將歐式距離進(jìn)行標(biāo)準(zhǔn)化,距離越大,表示個體間差異越大。歐式距離如圖2所示。
圖2 歐式距離
歐式距離的選取與實際設(shè)備獲取的圖片分辨率有一定的關(guān)系。高清攝像頭獲取的圖像能用更多的像素來顯示圖像,其外接矩形中心距離更大。由于訓(xùn)練火苗圖像大多數(shù)為25×16,根據(jù)勾股定理,火苗圖像對角線不超過30像素。樹莓派獲取視頻每幀圖像大小為640×480,最后設(shè)定歐式距離在[0,30],此距離為每幀圖像是否存在火苗的歐式距離條件。
基于支持向量機的訓(xùn)練與檢測火苗過程如圖3所示。首先建立火苗的樣本庫,然后計算每一張火苗圖像的聯(lián)合概率矩陣參數(shù),并利用支持向量機對訓(xùn)練數(shù)據(jù)進(jìn)行訓(xùn)練,得到火苗與非火苗的分類模型。
圖3 支持向量機識別火苗流程圖
本文采用嵌入式硬件設(shè)備在室內(nèi)不同時間段拍攝火苗視頻,從所拍攝的視頻中選取火苗圖像,并在網(wǎng)絡(luò)上選取部分火苗圖像,共同構(gòu)成火苗樣本庫,火苗圖像統(tǒng)一歸一化為25×16,負(fù)樣本則是選取一些有顏色的疑似火苗圖像,如圖4所示。
圖4 部分訓(xùn)練樣本圖像
圖4所示是用于訓(xùn)練的部分樣本圖像,其中第一行是正樣本,第二行是負(fù)樣本。訓(xùn)練集包括800張含有各種火苗形態(tài)的圖像作為正樣本,300張具有火苗類似顏色物體的圖像作為負(fù)樣本。核函數(shù)采用RBF,使用Libsvm得到的最優(yōu)參數(shù)gama為0.25。
為了驗證本文所提出的算法在火災(zāi)初期對火苗進(jìn)行實時檢測的效果,將本文的算法在嵌入式硬件設(shè)備上進(jìn)行實驗,軟件使用Python 3和opencv4.5.0。其軟硬件配置如表2所示。
表2 樹莓派軟硬件配置
火苗是燃燒物從起始燃燒期直到燃燒旺盛期的一個過渡過程。本實驗選擇的燃燒物是日常使用的面紙。使用嵌入式硬件設(shè)備進(jìn)行實驗,控制攝像頭獲取測試視頻,室內(nèi)場景下拍攝,其視頻幀大小640×480,視頻幀率是30幀/秒。在實驗過程中,在不同時間段下拍攝了火苗視頻,并對這些視頻進(jìn)行測試。表3所示為測試視頻的屬性描述。
表3 測試視頻屬性
視頻1、視頻2、視頻3在不同光照條件下的火苗檢測效果,如圖5所示。
圖5 不同光照條件下的火苗檢測效果
從圖5可以看出,燃燒初始狀態(tài)的火苗可以被有效檢測出來,并用綠色矩形框進(jìn)行實時標(biāo)記。
從表4可以看出,在視頻1、視頻2、視頻3所示的不同光照條件下,本文所提出的算法對于面紙燃燒產(chǎn)生的火苗可以達(dá)到98%以上的檢測精度,并進(jìn)行實時報警,從而有效防范火災(zāi)的發(fā)生。
表4 火苗檢測準(zhǔn)確率
本文基于HSV顏色模型,提出了一種使用歐式距離與外接矩形中心點相結(jié)合的火苗區(qū)域判定算法。使用火苗的單一特征會造成大量的虛警和誤檢,本文結(jié)合火苗的運動特征、顏色特征和紋理特征進(jìn)行特征融合,提高了火苗的檢測率,從最終在嵌入式硬件設(shè)備上的實驗結(jié)果可以看出,在室內(nèi)環(huán)境下,檢測到受到不同光照影響的火苗:在測試視頻上的平均檢測率達(dá)到了98%以上,并且檢測速度達(dá)到了30幀/秒,滿足實時性要求。但本文算法也存在一定不足,主要表現(xiàn)在場景中出現(xiàn)與火苗顏色相似度極高的目標(biāo)會被誤檢為火苗,本文后續(xù)研究工作將從火苗的頻域特征及火苗燃燒趨勢等時空信息進(jìn)一步提升火苗檢測算法性能。