官洪運(yùn),楊益?zhèn)ィ瑓?煒,歐陽(yáng)江坤
(1.東華大學(xué) 信息科學(xué)與技術(shù)學(xué)院,上海 201620;2.數(shù)字化紡織服裝技術(shù)教育部工程研究中心,上海 201620)
火災(zāi)給人們的生產(chǎn)生活帶來(lái)了巨大的損失,目前比較成熟的火災(zāi)探測(cè)方法主要運(yùn)用感溫式、感煙式、感光式傳感器,但其在大空間場(chǎng)所的探測(cè)效果欠佳。隨著機(jī)器視覺(jué)技術(shù)的發(fā)展,基于視頻監(jiān)控的圖像型火災(zāi)識(shí)別技術(shù)越來(lái)越引起人們的重視。
在已有研究中,YAMAGISHI H和YAMAGUCHI J[1]在HSV顏色空間分割出火焰區(qū)域,分析火焰區(qū)域的邊緣抖動(dòng)信息,運(yùn)用神經(jīng)網(wǎng)絡(luò)進(jìn)行火焰探測(cè)。KO B C等[2]利用圖像的亮度信息移除非火焰素,在最終的識(shí)別過(guò)程中引入兩層支持向量機(jī)(SVM)進(jìn)行火焰識(shí)別。TRUONG T X等[3]通過(guò)高斯混合模型(GMM)提取運(yùn)動(dòng)目標(biāo),然后根據(jù)火焰顏色模型利用模糊C均值(FCM)聚類算法分割出火焰疑似區(qū)域,最后提取面積變化率、表面粗糙度等特征通過(guò)支持向量機(jī)分類進(jìn)行火焰識(shí)別。Li Tao等[4]利用顏色特征分割火焰疑似區(qū)域,再通過(guò)光流法計(jì)算火焰疑似區(qū)域每個(gè)像素點(diǎn)的運(yùn)動(dòng)方向,提取方向特征訓(xùn)練SVM進(jìn)行火焰識(shí)別。KANG M等[5]通過(guò)模糊C均值聚類算法從運(yùn)動(dòng)區(qū)域中提取火焰疑似區(qū)域,利用灰度共生矩陣提取紋理特征,訓(xùn)練BP神經(jīng)網(wǎng)絡(luò)用于火焰識(shí)別。以上算法都主要提取火焰的動(dòng)、靜態(tài)特征,再利用人工神經(jīng)網(wǎng)絡(luò)和SVM完成火焰識(shí)別,獲得了較好的實(shí)驗(yàn)效果。
然而人工神經(jīng)網(wǎng)絡(luò)通過(guò)調(diào)整內(nèi)部大量節(jié)點(diǎn)之間的關(guān)系完成分類過(guò)程,SVM需要將樣本數(shù)據(jù)通過(guò)核函數(shù)映射到高維空間完成分類過(guò)程。這兩種算法均具有較高復(fù)雜度,帶來(lái)了較大的運(yùn)算量。在保證識(shí)別率的前提下,為了降低算法復(fù)雜度,在對(duì)火焰顏色、動(dòng)態(tài)特征的研究基礎(chǔ)上,本文設(shè)計(jì)了一種基于邏輯回歸(LR)模型的火焰識(shí)別算法用于火焰檢測(cè)。對(duì)于輸入的視頻圖像,首先根據(jù)運(yùn)動(dòng)和顏色檢測(cè)提取火焰疑似區(qū)域;若存在火焰疑似區(qū)域,則提取火焰疑似區(qū)域的顏色及動(dòng)態(tài)特征;最后將提取到的特征值輸入LR模型中完成火焰識(shí)別過(guò)程。
火焰具有運(yùn)動(dòng)特性和顏色特性,可疑目標(biāo)提取過(guò)程主要是通過(guò)運(yùn)動(dòng)檢測(cè)和顏色檢測(cè)提取出畫(huà)面中的疑似火焰區(qū)域。
火焰具有運(yùn)動(dòng)特性,運(yùn)動(dòng)目標(biāo)檢測(cè)是火焰區(qū)域提取的第一步。使用高斯混合背景建模提取運(yùn)動(dòng)目標(biāo),該算法的特點(diǎn)是將圖像中每個(gè)像素點(diǎn)的值看作多個(gè)高斯分布的疊加。對(duì)于t時(shí)刻,當(dāng)前幀圖像中點(diǎn)Xt的像素值的概率分布如下[6-7]:
(1)
對(duì)新來(lái)的一幀圖像像素值Xt,將其與當(dāng)前K個(gè)高斯分布的均值進(jìn)行比較,按照式(2)所示的規(guī)則尋找匹配的高斯分布:
|Xt-μi,t-1|≤E×σi,t-1
(2)
其中,E為置信系數(shù),一般取2.5。若尋找到滿足要求的高斯分布,則該像素點(diǎn)屬于背景點(diǎn),否則認(rèn)為其屬于前景點(diǎn)。若未找到滿足要求的高斯分布,則生成一個(gè)新的高斯分布,均值取當(dāng)前像素值,初始化一個(gè)較大的標(biāo)準(zhǔn)差和較小的權(quán)值,使用該分布替換掉當(dāng)前權(quán)值最小的高斯分布。對(duì)于匹配到的高斯分布對(duì)其參數(shù)按式(3)進(jìn)行更新:
同時(shí),對(duì)各個(gè)高斯分布的權(quán)值按照式(4)進(jìn)行更新:
ωk,t=(1-α)×?k,t-1+α×Mk,t
(4)
其中,α為學(xué)習(xí)速率,對(duì)于匹配的高斯分布Mk,t取值為1,否則取值為0。所有的參數(shù)更新完畢后,將各高斯分布按ωi,t/σi,t進(jìn)行降序排列,取前N個(gè)高斯分布作為背景模型,N滿足式(5)的條件:
(5)
通過(guò)高斯混合背景分離算法,可以有效地提取到畫(huà)面中的運(yùn)動(dòng)目標(biāo)。
火焰具有明顯的顏色特征,其顏色分布呈現(xiàn)一定規(guī)律,通過(guò)合理的顏色分割可進(jìn)一步確定火焰疑似區(qū)域,排除不具備火焰顏色特征的運(yùn)動(dòng)目標(biāo)的干擾。通過(guò)大量實(shí)驗(yàn),在HSV顏色空間內(nèi)建立火焰顏色模型,如式(6)所示:
(6)
圖1顯示了兩張火焰圖片及運(yùn)用火焰顏色模型對(duì)其分割獲得的二值圖片。
圖1 顏色模型檢測(cè)火焰區(qū)域
圖2中顯示了火焰疑似區(qū)域提取的全過(guò)程,首先通過(guò)運(yùn)動(dòng)檢測(cè)提取運(yùn)動(dòng)前景二值圖像;然后對(duì)運(yùn)動(dòng)區(qū)域進(jìn)行顏色檢測(cè)分割出滿足火焰顏色特征的二值區(qū)域;最后對(duì)該區(qū)域進(jìn)行閉操作,連接鄰近區(qū)域,平滑邊界,獲得火焰疑似區(qū)域的二值圖像。其中,圖2(b)為經(jīng)運(yùn)動(dòng)檢測(cè)得到的前景二值圖,圖2(c)為再經(jīng)顏色模型檢測(cè)得到的二值區(qū)域,圖2(d)為再經(jīng)閉操作獲得的火焰疑似區(qū)域二值圖像。
圖2 火焰疑似區(qū)域提取
通過(guò)運(yùn)動(dòng)及顏色檢測(cè)提取出的火焰疑似區(qū)域仍然可能存在非火焰目標(biāo)的干擾,如行駛中汽車的車燈、閃爍的路燈等。在火焰具有的特征中,其顏色和動(dòng)態(tài)特征最為明顯。為了更好地區(qū)別火焰與疑似火焰的干擾物,提取疑似區(qū)域的顏色特征及動(dòng)態(tài)特征量作為火焰識(shí)別的依據(jù)。
火焰的顏色特征是火焰最明顯的特征之一,資料顯示火災(zāi)早期的火焰顏色都分布在紅到黃的范圍內(nèi)[8],且具有較高的飽和度。考慮到RGB顏色模型無(wú)法直觀地表現(xiàn)出火焰的亮度及色度信息,因此在HSV顏色空間內(nèi)提取火焰的顏色特征。在對(duì)火焰進(jìn)行檢測(cè)時(shí)易受到燈光、光線變化帶來(lái)的影響,而火焰區(qū)域相對(duì)于強(qiáng)光照射區(qū)域一般具有更高的飽和度及明度。因此統(tǒng)計(jì)疑似火焰區(qū)域以H、S、V三個(gè)通道內(nèi)的一階矩μH、μS、μV作為特征值。它們的計(jì)算公式如式(7)所示:
(7)
其中,A為火焰疑似區(qū)域,N為火焰疑似區(qū)域像素點(diǎn)的個(gè)數(shù)。通過(guò)計(jì)算,可以獲得火焰疑似區(qū)域在HSV顏色空間中H、S、V顏色分量的均值,得到關(guān)于火焰顏色的特征量μH、μS、μV。
2.2.1面積變化率
火焰在燃燒過(guò)程中,其形狀變化不規(guī)則,面積呈現(xiàn)不斷變化的特點(diǎn)。在燃燒初期,火焰面積會(huì)呈現(xiàn)增長(zhǎng)的趨勢(shì),另外受空氣擾動(dòng)等其他因素的影響,火焰面積也會(huì)明顯變化。利用火焰的面積動(dòng)態(tài)變化特征可以區(qū)分出具有火焰顏色特征但面積不變的干擾物,如環(huán)形燈等。面積變化率的計(jì)算如式(8)所示[9]:
(8)
式中Sk和Sk+1分別為第k幀和k+1幀的火焰疑似區(qū)域面積;eps為極小值,用來(lái)防止出現(xiàn)相鄰兩幀中沒(méi)有火焰疑似區(qū)域時(shí),式(8)中分母為0的情況。
2.2.2幀間相似度
火焰燃燒時(shí)其燃燒面積、空間位置在短時(shí)間內(nèi)的變化呈現(xiàn)一定相關(guān)性,火焰區(qū)域在圖像前后兩幀之間會(huì)存在一定的重疊區(qū)域。因此考慮利用相鄰幀間圖像的相似度來(lái)區(qū)別真實(shí)火焰與干擾,幀間相似度可根據(jù)式(9)確定[10]:
(9)
式中αn(x,y)、αn+1(x,y)分別表示第n幀和第n+1幀的火焰疑似區(qū)域二值圖?;鹧嫒紵龝r(shí)相鄰幀間相似度β∈[TL,TH],相似度低于閾值TL時(shí)可以看作是快速移動(dòng)疑似目標(biāo)的干擾,相似度高于閾值TH可以看作為靜止干擾源的干擾。
2.2.3質(zhì)心偏移率
火焰燃燒時(shí)受風(fēng)力或熱浪的影響會(huì)呈現(xiàn)循環(huán)往復(fù)不規(guī)則跳動(dòng)的運(yùn)動(dòng)形式,火焰的質(zhì)心運(yùn)動(dòng)也會(huì)呈現(xiàn)閃爍特性。在很短的時(shí)間內(nèi),火焰質(zhì)心位置的變化在一定的范圍內(nèi)。而其他干擾物如行駛中的汽車車燈,其運(yùn)動(dòng)在短期內(nèi)呈現(xiàn)整體移動(dòng)的特點(diǎn),質(zhì)心移動(dòng)的幅度大。通過(guò)計(jì)算質(zhì)心偏移率來(lái)表明火焰疑似區(qū)域的質(zhì)心偏移幅度,用以區(qū)別火焰與其疑似干擾物。若出現(xiàn)疑似火焰區(qū)域S,其質(zhì)心坐標(biāo)(xc,yc)由式(10)計(jì)算得到:
(10)
相鄰兩幀前后的質(zhì)心坐標(biāo)為(xck-1,yck-1),(xck,yck),則相鄰兩幀間的質(zhì)心位移如式(11)所示:
(11)
選用質(zhì)心偏移率來(lái)表現(xiàn)火焰的質(zhì)心移動(dòng)程度,相鄰兩幀質(zhì)心偏移率由式(12)計(jì)算得到:
(12)
2.2.4閃頻特征
火焰具有明顯的閃爍特性,閃爍頻率為火焰最為重要的動(dòng)態(tài)特性之一,火焰的主要閃爍頻率范圍為7~12 Hz[11]?;鹧娴拈W爍頻率不隨環(huán)境的變化而改變,利用火焰的閃爍特征可以排除車燈、行人等干擾物。根據(jù)視頻中第i幀相對(duì)前一幀疑似火焰區(qū)域中像素點(diǎn)分布變化率,利用過(guò)零檢測(cè)法可以求得火焰閃爍次數(shù),從而獲得閃爍頻率[12]:
(13)
使用單一特征對(duì)火焰進(jìn)行識(shí)別,由于現(xiàn)場(chǎng)環(huán)境的多變性,容易出現(xiàn)誤判現(xiàn)象。為了提升識(shí)別率,采用LR算法對(duì)火焰顏色及動(dòng)態(tài)特征量進(jìn)行分析,獲得模型的偏斜率及每項(xiàng)特征量的權(quán)重參數(shù),得到關(guān)于火焰顏色和動(dòng)態(tài)特征的火焰概率模型,應(yīng)用于火焰識(shí)別。
LR是機(jī)器學(xué)習(xí)領(lǐng)域一種常用的有監(jiān)督學(xué)習(xí)分類算法,常用于二分類問(wèn)題。根據(jù)LR模型可以預(yù)測(cè)在不同的自變量情況下,發(fā)生某種情況的概率,再利用概率完成二分類過(guò)程。在模型的訓(xùn)練和識(shí)別時(shí)間上,LR相較于SVM和人工神經(jīng)網(wǎng)絡(luò)均占有很大優(yōu)勢(shì)。
LR與線性回歸同屬于廣義線性模型,在線性回歸中y=ωTx=ω0+ω1x1+,…,+ωtxt,y的值域范圍為[-∞,+∞],其中x=(x1,x2,…,xt)為輸入向量,樣本x中包含了t個(gè)相互獨(dú)立的自變量,ω為回歸系數(shù)。LR在線性回歸的基礎(chǔ)上嵌套了邏輯函數(shù),LR模型表示為:
(14)
hω(x)的值表示的是對(duì)于樣本x,分類結(jié)果y=1的概率。當(dāng)hω(x)≥0.5 時(shí),分類結(jié)果y=1,樣本屬于類別1;當(dāng)hω(x)<0.5 時(shí),分類結(jié)果y=0,樣本屬于類別0。
對(duì)于訓(xùn)練數(shù)據(jù)集,樣本數(shù)據(jù)x={x1,x2,…,xN},相應(yīng)的分類標(biāo)簽y={y1,y2,…,yN}。其極大似然函數(shù)對(duì)數(shù)形式為:
(15)
得到損失函數(shù)為:
(16)
利用梯度下降法對(duì)損失函數(shù)J(ω)求解獲得使誤差函數(shù)最小的ω,梯度函數(shù)為:
(17)
在機(jī)器學(xué)習(xí)中,常見(jiàn)的梯度下降算法有批量梯度下降法(BGD)、隨機(jī)梯度下降法(SGD)和小批量梯度下降法(MBGD)。綜合考慮準(zhǔn)確率和訓(xùn)練速度,本文使用MBGD算法用于求解模型參數(shù)。對(duì)應(yīng)的更新公式為:
(18)
其中α為學(xué)習(xí)速率,x為每次迭代取的樣本數(shù)量,文中取10。通過(guò)MBGD算法尋找合適的ω使得梯度函數(shù)收斂,得到最佳的回歸系數(shù)。
利用上文中的區(qū)域分割及特征提取方法獲得火焰疑似區(qū)域的顏色及動(dòng)態(tài)特征量,將其作為一組特征向量,按以下步驟完成LR的分類過(guò)程:
(1)根據(jù)訓(xùn)練樣本集,獲得訓(xùn)練數(shù)據(jù)集{(X1,y1),(X2,y2),…,(Xn,yn)};
(2)對(duì)訓(xùn)練數(shù)據(jù)集里樣本的每項(xiàng)特征值進(jìn)行標(biāo)準(zhǔn)化,使得每項(xiàng)特征值的方差為1,均值為0,使得預(yù)測(cè)結(jié)果不會(huì)受到數(shù)值較大的特征項(xiàng)的影響;
(3)將訓(xùn)練數(shù)據(jù)集輸入到LR分類器完成訓(xùn)練過(guò)程,通過(guò)梯度下降法求解得到最佳回歸系數(shù)ω,獲得關(guān)于每項(xiàng)特征值的權(quán)值;
(4)將測(cè)試數(shù)據(jù)輸入訓(xùn)練好的LR分類器中,獲得火焰存在的概率,判定是否存在火焰。
本文的火焰識(shí)別算法是在VS2017環(huán)境下,結(jié)合OpenCV庫(kù),利用C++語(yǔ)言編寫實(shí)現(xiàn)的。實(shí)驗(yàn)使用的視頻部分為從http://www.ultimatechase.com/Fire_Video.htm以及http://signal.ee.bilkent.edu.tr/VisiFire/Demo/下載的火焰視頻、疑似火焰干擾視頻。通過(guò)視頻捕獲的方法選取了767幀有火圖像作為正樣本、702幀疑似火焰圖像作為負(fù)樣本進(jìn)行參數(shù)學(xué)習(xí),選取8段視頻共2 870幀進(jìn)行算法識(shí)別檢驗(yàn)。測(cè)試庫(kù)視頻及檢測(cè)結(jié)果如表1所示,其中視頻1~6為火焰視頻,視頻7~8為火焰疑似物視頻。
從表1中可以看出,由于本文算法提取了顏色分量作為特征量進(jìn)行了參數(shù)學(xué)習(xí),對(duì)視頻3、視頻4這樣顏色特征明顯的森林大火檢測(cè)效果好;對(duì)視頻1、視頻2也有著較理想的檢測(cè)率,沒(méi)有受到環(huán)境中行人和車輛等運(yùn)動(dòng)目標(biāo)的的干擾;對(duì)視頻5室內(nèi)裝飾樹(shù)燃燒也有著較高的檢測(cè)率;對(duì)于視頻6由于室內(nèi)光照較強(qiáng),且受地板反光的干擾,導(dǎo)致算法的檢測(cè)率偏低;視頻7中運(yùn)動(dòng)場(chǎng)景較為復(fù)雜,存在迎面而來(lái)汽車車燈的干擾,造成了一定的誤報(bào)率;視頻8中行駛在隧道中的汽車車燈并未造成任何干擾。
通過(guò)對(duì)文中8段視頻的檢測(cè)準(zhǔn)確率取平均,得到本文算法平均準(zhǔn)確率為93.2%,優(yōu)于文獻(xiàn)[13]和文獻(xiàn)[14]算法。不同算法的對(duì)比結(jié)果如表2所示。
表1 視頻火焰識(shí)別結(jié)果
表2 不同算法的平均準(zhǔn)確率
實(shí)驗(yàn)結(jié)果表明,本文算法選用的火焰特征具有代表性,對(duì)森林、室內(nèi)室外場(chǎng)景的火焰均有著較好的檢測(cè)效果,平均每幀處理用時(shí)51.9 ms,識(shí)別速度可達(dá)20 f/s。
為了提高圖像型火焰檢測(cè)的識(shí)別準(zhǔn)確率,提高算法運(yùn)行效率,提出了一種基于LR的圖像型火焰識(shí)別算法。通過(guò)運(yùn)動(dòng)和顏色檢測(cè)提取火焰疑似區(qū)域,再提取火焰疑似區(qū)域的顏色特征、動(dòng)態(tài)特征量輸入到LR分類器中進(jìn)行二分類,輸出識(shí)別結(jié)果。實(shí)驗(yàn)表明該算法識(shí)別平均準(zhǔn)確率達(dá)93.2%,識(shí)別速度可達(dá)20 f/s,對(duì)于森林、室內(nèi)外火焰均有著良好的檢測(cè)效果,在視頻火焰檢測(cè)上具有一定的使用價(jià)值。