李文輝, 肖林廠, 王 瑩, 傅 博, 劉培勛
(吉林大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院, 長(zhǎng)春 130012)
火災(zāi)嚴(yán)重威脅人類的生命和財(cái)產(chǎn)安全, 因此及時(shí)檢測(cè)和預(yù)防火災(zāi)具有重要意義[1]. 目前, 較成熟的火災(zāi)探測(cè)方法有感煙、 感溫、 感光等探測(cè)技術(shù). 這些基于傳感器的探測(cè)技術(shù)要求探測(cè)器必須安裝在起火點(diǎn)附近, 且檢測(cè)依據(jù)單一, 易受監(jiān)控環(huán)境的面積、 濕度和氣流等因素影響. 因此, 傳統(tǒng)火災(zāi)探測(cè)器的應(yīng)用范圍受到較大限制.
為了克服傳統(tǒng)火災(zāi)探測(cè)器的缺點(diǎn), 人們開始致力于基于視頻圖像的火災(zāi)探測(cè)研究[2-5]. 通過分析火焰的顏色、 運(yùn)動(dòng)信息及狀態(tài)等, 進(jìn)行綜合判斷以確定是否有火災(zāi)發(fā)生. 在火災(zāi)監(jiān)控中, 煙霧檢測(cè)對(duì)于實(shí)現(xiàn)早期火災(zāi)預(yù)警具有重要意義. 相比于火焰, 煙霧的顏色、 梯度等信息表現(xiàn)更不明顯, 因此, 良好的特征是實(shí)現(xiàn)煙霧檢測(cè)的關(guān)鍵. 文獻(xiàn)[6]通過減背景法及顏色信息確定潛在煙霧區(qū)域, 并采用Lucas Kanade光流法對(duì)潛在區(qū)域提取運(yùn)動(dòng)信息; 文獻(xiàn)[7]利用2層小波變換的LH,HL,HH高頻子帶研究對(duì)背景高頻信息產(chǎn)生的衰減, 并使用一維小波分解分析煙霧邊界像素的閃爍變化, 同時(shí)檢驗(yàn)YUV顏色空間中U和V通道值的變化; 文獻(xiàn)[8]將煙霧運(yùn)動(dòng)匯集成一條分形曲線, 并提出一種森林火災(zāi)初期的自動(dòng)探測(cè)方法; 文獻(xiàn)[9]通過建立煙霧顏色模型并結(jié)合動(dòng)態(tài)擴(kuò)散特征給出了早期火災(zāi)預(yù)警; 文獻(xiàn)[10]提出一種隧道煙火檢測(cè)算法, 該算法先對(duì)連續(xù)若干幀建立運(yùn)動(dòng)歷史圖像, 再依據(jù)各運(yùn)動(dòng)區(qū)域的不變矩變化情況判斷是否有煙霧發(fā)生; 文獻(xiàn)[11]提出一種采用小波變換算法進(jìn)行分析且支持向量機(jī)的煙霧檢測(cè)方法.
上述方法通常是以像素點(diǎn)為單位, 對(duì)整個(gè)運(yùn)動(dòng)區(qū)域進(jìn)行煙霧特征檢測(cè), 而當(dāng)煙霧與其他運(yùn)動(dòng)物體并存時(shí), 檢測(cè)效果并不理想. 為克服上述缺點(diǎn), 本文在分析煙霧特征的基礎(chǔ)上, 提出一種基于運(yùn)動(dòng)塊及連通域的煙霧檢測(cè)算法. 該算法通過分析各個(gè)由運(yùn)動(dòng)塊組成的連通域的運(yùn)動(dòng)方向及能量變化情況等, 可有效排除煙霧視頻中的非煙霧運(yùn)動(dòng)物體, 且能夠快速、 準(zhǔn)確地檢測(cè)到煙霧的出現(xiàn).
良好的運(yùn)動(dòng)檢測(cè)能有效縮小檢測(cè)范圍, 提高檢測(cè)效率. 運(yùn)動(dòng)區(qū)域提取算法目前主要有背景減除法[12]、 光流法[13]和幀差法[14]. 背景減除法常用于固定攝像機(jī)監(jiān)控視頻運(yùn)動(dòng)目標(biāo)的檢測(cè)系統(tǒng)中, 但當(dāng)場(chǎng)景不穩(wěn)定時(shí), 背景更新速度通常滯后于場(chǎng)景的變化; 光流法對(duì)噪聲較敏感, 且對(duì)硬件要求很高, 實(shí)時(shí)性和實(shí)用性較差; 幀差法適用于提取運(yùn)動(dòng)明顯的物體運(yùn)動(dòng)區(qū)域, 提取前景輪廓清晰. 火災(zāi)發(fā)生初期, 由于受熱氣的影響, 煙霧不停地向外飄散, 運(yùn)動(dòng)方向和速度變化較大, 運(yùn)動(dòng)性明顯, 使用幀差法較合適. 幀差法的基本思想是計(jì)算相鄰幀間對(duì)應(yīng)像素點(diǎn)灰度值之差的絕對(duì)值, 即
(1)
其中:Td表示設(shè)定閾值;Fn(x,y)表示輸入的第n幀圖像;Dn(x,y)表示運(yùn)動(dòng)提取結(jié)果, 運(yùn)動(dòng)的像素點(diǎn)標(biāo)記為1.
設(shè)Video1~Vidoe12為本文測(cè)試視頻. 圖1(A)為Video6的第375幀采用以像素點(diǎn)為單位的幀差法提取的運(yùn)動(dòng)區(qū)域. 由圖1(A)可見, 運(yùn)動(dòng)區(qū)域中存在較多噪聲點(diǎn), 且分割出的運(yùn)動(dòng)目標(biāo)不完整. 為了改善運(yùn)動(dòng)提取效果, 本文以塊為單位進(jìn)行幀差. 基于塊的幀差法: 先將圖像分割成每個(gè)大小為N×N的塊bij(N的取值通常由視頻分辨率決定,i和j分別為行和列的編號(hào)), 再根據(jù)塊之間差值的絕對(duì)值確定運(yùn)動(dòng)區(qū)域, 即
(2)
其中:Tb表示設(shè)定閾值, 與塊的大小有關(guān);Bn(i,j)表示塊運(yùn)動(dòng)提取結(jié)果, 運(yùn)動(dòng)的塊標(biāo)記為1.
圖1 運(yùn)動(dòng)塊提取結(jié)果Fig.1 Results of moving blocks extraction
取N=8,Tb=200. 圖1(B)為采用塊幀差法提取的運(yùn)動(dòng)塊. 由圖1(B)可見, 其中仍存在一定的噪聲塊, 部分由噪聲塊構(gòu)成的連通域面積較小. 通過分析煙霧的顏色信息知, 煙霧區(qū)域內(nèi)像素點(diǎn)R,G,B三者平均值E(x,y)滿足100≤E(x,y)≤230. 為進(jìn)一步減少噪聲, 先計(jì)算每個(gè)運(yùn)動(dòng)塊內(nèi)的E(x,y), 并統(tǒng)計(jì)每個(gè)運(yùn)動(dòng)塊內(nèi)E(x,y)滿足閾值的像素點(diǎn)個(gè)數(shù)Nl, 對(duì)運(yùn)動(dòng)塊提取結(jié)果做如下更新:
(3)
然后采用八連通方式對(duì)保留的運(yùn)動(dòng)塊提取連通域, 設(shè)R1,R2,…,Rn表示提取到的連通域, 若Ri(1≤i≤n)內(nèi)運(yùn)動(dòng)塊個(gè)數(shù)小于10, 則將Ri作為噪聲處理. 圖1(C)為經(jīng)過上述處理后保留的由運(yùn)動(dòng)塊組成的連通域. 由圖1(C)可見, 噪聲被有效地抑制.
由于圖1(C)中仍存在部分由非煙霧運(yùn)動(dòng)構(gòu)成的連通域, 因此為進(jìn)一步減少非煙霧區(qū)域的干擾, 本文通過計(jì)算各連通域Ri的主運(yùn)動(dòng)方向和運(yùn)動(dòng)偏差確定是否保留Ri, 最后保留的所有連通域構(gòu)成疑似煙霧區(qū)域.
煙霧在熱量驅(qū)動(dòng)下, 通常是從下向上運(yùn)動(dòng). 因此, 文獻(xiàn)[15]通過建立主運(yùn)動(dòng)方向累計(jì)模型進(jìn)行煙霧檢測(cè). 但在風(fēng)的影響下, 煙霧有時(shí)會(huì)左右飄動(dòng), 所以不應(yīng)只考慮向上運(yùn)動(dòng)的煙霧. 本文在考慮多級(jí)主運(yùn)動(dòng)方向的基礎(chǔ)上, 結(jié)合運(yùn)動(dòng)偏差對(duì)每個(gè)連通域進(jìn)行運(yùn)動(dòng)估計(jì).
1.2.1 主運(yùn)動(dòng)方向估計(jì) 圖2為離散運(yùn)動(dòng)方向, 每塊周圍的8個(gè)方向分別編碼為1~8. 先對(duì)連通域中各運(yùn)動(dòng)塊進(jìn)行運(yùn)動(dòng)方向估計(jì).
圖2 離散運(yùn)動(dòng)方向Fig.2 Discrete direction of motion
估計(jì)方法: 對(duì)Ri中各運(yùn)動(dòng)塊分別計(jì)算其與周圍8個(gè)離散方向塊的絕對(duì)灰度差:
Sn(i,j,θ)=In(x,y)-In-l(x+i×N,y+j×N),
(4)
其中:i和j分別表示水平和垂直單位偏移量, 根據(jù)方向位置的不同而變化, 如在45°方向,i,j分別為1,1;θ為與(i,j)相對(duì)應(yīng)的方向編碼;I(x,y)表示塊累計(jì)灰度值, 絕對(duì)灰度差越小, 表明兩塊運(yùn)動(dòng)關(guān)聯(lián)越大. 如果θ(x,y)為絕對(duì)灰度差最小塊所對(duì)應(yīng)的方向編碼, 則將θ(x,y)作為塊的運(yùn)動(dòng)方向估計(jì)值. 通過分析易知, 塊的運(yùn)動(dòng)方向與θ(x,y)相反, 因此對(duì)θ(x,y)進(jìn)行如下修正, 其中mod為取余數(shù)運(yùn)算:
(5)
連通域內(nèi)出現(xiàn)次數(shù)最多的運(yùn)動(dòng)方向?yàn)槠渲鬟\(yùn)動(dòng)方向. 由于煙霧的運(yùn)動(dòng)特性, 其主運(yùn)動(dòng)方向編碼通常為1~5. 對(duì)Ri內(nèi)各方向的出現(xiàn)次數(shù)進(jìn)行統(tǒng)計(jì)后, 記θR為其主運(yùn)動(dòng)方向.
1.2.2 運(yùn)動(dòng)偏差 定義運(yùn)動(dòng)偏差為當(dāng)前塊與周圍8個(gè)方向塊絕對(duì)灰度差的最小值, 運(yùn)動(dòng)偏差d(x,y)的大小決定了塊的運(yùn)動(dòng)方向估計(jì)值及兩個(gè)塊的接近程度.
圖3為煙霧與行人連通域內(nèi)各運(yùn)動(dòng)塊的運(yùn)動(dòng)偏差對(duì)比曲線. 由圖3可見, 煙霧的運(yùn)動(dòng)偏差整體較低, 通常小于100; 而行人運(yùn)動(dòng)塊中, 運(yùn)動(dòng)偏差值整體偏大. 某塊d(x,y)過大, 說明該塊運(yùn)動(dòng)方向不明顯或?yàn)榉菬熿F運(yùn)動(dòng)塊, 則將該塊標(biāo)記為運(yùn)動(dòng)異常塊. 由于煙霧的平滑特性, 各塊累計(jì)灰度值較接近, 煙霧連通域內(nèi)運(yùn)動(dòng)異常塊個(gè)數(shù)所占比例小. 若Ri內(nèi)運(yùn)動(dòng)異常塊個(gè)數(shù)較多, 則將該連通域作為噪聲處理. 因此, 可以通過檢測(cè)連通域Ri的運(yùn)動(dòng)偏差平均值及運(yùn)動(dòng)異常塊所占比例的大小, 確定其是否為疑似煙霧區(qū)域. 通過下式計(jì)算Ri的運(yùn)動(dòng)異常塊所占比例值λR和平均運(yùn)動(dòng)偏差值DR:
(6)
其中Ml和M分別表示Ri中運(yùn)動(dòng)異常塊和運(yùn)動(dòng)塊個(gè)數(shù). 若1≤θR≤5且λR和DR滿足閾值, 則保留Ri.
圖3 運(yùn)動(dòng)偏差對(duì)比曲線Fig.3 Curves of motion deviation comparison
由于監(jiān)控圖像中煙霧使其覆蓋區(qū)域變得模糊, 即區(qū)域的邊緣和細(xì)節(jié)信息減少, 而邊緣和細(xì)節(jié)對(duì)應(yīng)圖像中的高頻信息, 從而導(dǎo)致該區(qū)域的高頻能量被削減, 低頻能量增加. 因此, 文獻(xiàn)[7]利用2層小波變換研究煙霧對(duì)背景高頻信息產(chǎn)生的衰減. 但在實(shí)際應(yīng)用中, 受環(huán)境等因素的影響通常無法建立準(zhǔn)確的背景模型. 通過研究不同條件下的背景表明, 對(duì)于單一背景, 非疑似煙霧區(qū)域通常為背景的一部分, 其高低頻能量均值與背景接近; 對(duì)于復(fù)雜背景, 其高、 頻能量值較大, 當(dāng)煙霧未完全遮擋背景時(shí), 非煙霧區(qū)域的高頻能量均值與煙霧區(qū)域?qū)Ρ让黠@. 因此, 本文通過比較疑似煙霧區(qū)域相對(duì)非疑似區(qū)域的高、 低頻能量均值變化情況實(shí)現(xiàn)煙霧檢測(cè). 對(duì)于較平滑的背景, 高頻能量變化一般不明顯, 因此在計(jì)算時(shí)應(yīng)排除非疑似區(qū)域中的平滑部分, 以提高變化率.
空域小波變換系數(shù)的空間分布與原始圖像的空間分布具有很好的對(duì)應(yīng)關(guān)系, 因此本文使用二維離散小波, 并選用db4小波函數(shù)作為基波函數(shù)對(duì)圖像進(jìn)行分解, 以方便在不同尺度上觀察圖像信息, 分解結(jié)果如圖4所示.
圖4 小波分解結(jié)果Fig.4 Results of wavelet transform
由圖4可見, 在分解后得到的4個(gè)子圖像中, LL區(qū)表現(xiàn)圖像的低頻部分, 稱為信息子圖; HL,LH和HH區(qū)域分別包含水平方向(HL)、 垂直方向(LH)和對(duì)角方向(HH)的邊緣信息, 表現(xiàn)圖像的高頻部分. 小波分解后各子圖像中塊的寬和高為原塊大小的1/2. 計(jì)算高、 低頻能量值和判斷煙霧特征步驟如下.
1) 計(jì)算每個(gè)像素的低頻能量值Lwn(x,y)和高頻能量值Hwn(x,y):
(7)
2) 計(jì)算每個(gè)子塊的低、 高頻能量值ELB,EHB, 其中bij為分割后的子塊:
(8)
4) 計(jì)算疑似煙霧區(qū)域與非疑似區(qū)域低頻和高頻能量平均值的比值:
(9)
5) 煙霧特征判斷. 圖5為疑似煙霧區(qū)域相對(duì)非疑似區(qū)域的高頻能量變化對(duì)比曲線. 由圖5可見, 煙霧高頻能量的衰減程度明顯大于風(fēng)扇, 其衰減系數(shù)小于0.3. 由于煙霧的出現(xiàn)導(dǎo)致高頻能量削減、 低頻能量增加, 因此將γL和γH作為煙霧判斷特征值, 定義當(dāng)γL>1.0,γH<0.3時(shí), 疑似區(qū)域滿足該特征.
圖5 高頻能量變化曲線Fig.5 Curves of high-frequency energy fluctuation
圖6 主運(yùn)動(dòng)方向Fig.6 Main motion orientation
煙霧區(qū)域多是向上或左右運(yùn)動(dòng), 因此在煙霧區(qū)域滿足該運(yùn)動(dòng)趨勢(shì)的運(yùn)動(dòng)塊所占比例較大, 且主運(yùn)動(dòng)方向編碼θ滿足1≤θ≤5. 該運(yùn)動(dòng)特性具有保持性, 即連續(xù)若干幀的煙霧運(yùn)動(dòng)區(qū)域維持滿足該特性. 圖6為Video1和Video7中部分幀的主運(yùn)動(dòng)方向示意圖, 箭頭所指方向?yàn)橹鬟\(yùn)動(dòng)方向. 由圖6(A)~圖6(D)可見, 煙霧運(yùn)動(dòng)區(qū)域在連續(xù)幀間保持上述特性; 而圖6(E)~圖6(H)中的車輛燈光運(yùn)動(dòng)區(qū)域并不滿足該特征.
針對(duì)當(dāng)前圖像的每個(gè)運(yùn)動(dòng)塊, 統(tǒng)計(jì)各個(gè)運(yùn)動(dòng)方向出現(xiàn)的次數(shù)Hθ(1≤θ≤8), 并進(jìn)行如下計(jì)算:
(10)