劉 輝,王亞楠,陳棕鑫
(昆明理工大學(xué)信息工程與自動化學(xué)院,云南昆明 650500;昆明理工大學(xué)云南省人工智能重點實驗室,云南昆明 650500)
工業(yè)排放煙塵是大氣污染的主要來源之一,工業(yè)排放煙塵對人體的上呼吸道損害很大,此外工業(yè)排放煙塵還能與空氣中的二氧化硫發(fā)生協(xié)同作用,加重其對身體的危害.根據(jù)《2015年環(huán)境統(tǒng)計年報》顯示,工業(yè)煙塵排放是大氣污染的最主要來源,2015 年煙塵排放量為49387 t,其中,工業(yè)煙塵排放量為12987 t,占總量的26.30%[1].冶金工業(yè)生產(chǎn)過程中所排放出大量的煙塵是大氣污染的主要污染源,這些污染物排放到大氣當中給人類的健康帶來潛在的危害.
煙氣黑度是污染監(jiān)測中的一項重要指標,對工業(yè)煙塵排放進行煙氣黑度檢測,可以有效的降低大氣污染程度,進而極大的提高大氣環(huán)境質(zhì)量[2].煙氣黑度的檢測已經(jīng)成為了一種檢測工業(yè)排放煙塵污染的趨勢.因此,對工業(yè)煙氣黑度進行在線自動檢測可以提高黑度檢測的效率和準確度.在煙氣黑度自動檢測的過程中,如何將排放煙塵區(qū)域從圖像視頻中準確的分割出來,是監(jiān)測的關(guān)鍵和難點所在.
在基于計算機圖像識別的工業(yè)排放煙氣黑度檢測中,主要分為煙塵采集、煙塵分割、煙塵特征提取及分析、結(jié)果輸出幾個部分,其中煙塵分割在整個過程中占有非常重要的地位,所以對煙塵進行準確的分割對煙氣黑度檢測具有非常重要的作用.卡內(nèi)基梅隆大學(xué)的HSU YC等人[3]采用一種工業(yè)煙塵可視化檢測方法,通過結(jié)合顏色建模、變化檢測和紋理分析來識別煙塵排放的區(qū)域.賈方慶等人[4]對基于機器視覺的在線環(huán)境監(jiān)測系統(tǒng)進行研究.張曉春等人[5]對計算機圖像識別的煙氣自動監(jiān)測進行研究.包信宗等人[6]對煙氣林格曼黑度遠程視頻監(jiān)測系統(tǒng)進行研究.魏旭賓等人[7]采用一種基于累積差分圖像和高斯背景統(tǒng)計模型的煙塵目標檢測方法,此算法能得到了煙塵的主體輪廓,但抗干擾性有待提高.
桂柏林[8]采用一種基于林格曼黑度的煙囪排放自動監(jiān)測分析系統(tǒng),對煙囪排放的林格曼黑度進行分析和自動確定林格曼黑度等級,但是該方法是在切割后的煙塵的基礎(chǔ)上進行煙塵分割,切割的煙塵區(qū)域?qū)儆跓焿m區(qū)域的一部分,得出的結(jié)果難以涵蓋整個煙塵區(qū)域.Filonenko A等人[9]采用一種基于顏色、運動和形狀的煙霧檢測方法,通過運動分析,確定煙氣的動態(tài)特性.
袁杰等人[10]設(shè)計一種煙氣黑度多媒體聯(lián)網(wǎng)檢測系統(tǒng),文中選取的參考區(qū)域是固定區(qū)域,由于背景的變化使得判斷結(jié)果存在一定誤差.張虹等人[11]利用高斯混合模型進行煙氣黑度智能檢測,在確定黑度等級時,需要提前選取一段煙氣區(qū)域進行測定,選取的煙氣區(qū)域具有片面性,因此不能對完整煙塵區(qū)域進行分析.王文哲、劉輝等人[12]提出了一種基于背景建模與特征匹配的工業(yè)煙塵圖像分割方法,但是該方法在累積出的煙塵動態(tài)區(qū)域中,非煙塵干擾區(qū)域比較多,使得檢測結(jié)果準確率不高.Yuan F等人[13]通過對煙塵運動方向的快速估計,采用一種基于積分圖像的視頻煙塵檢測快速累積運動方向模型.
Shrivastava M等人[14]采用一種基于靜態(tài)攝像機獲取幀序列的有效煙霧檢測算法.王文哲[15]采用基于全卷積網(wǎng)絡(luò)的工業(yè)煙塵圖像分割方法,該方法對煙塵分割有一定效果,但該算法耗費時間長,對硬件要求高,在新的場景下需要遷移再學(xué)習(xí).
煙塵是不斷運動的物體,已有的檢測方法中,基于運動目標的檢測方法更加符合視頻中煙塵區(qū)域分割.一般可以利用煙塵目標在煙塵視頻中的運動信息,從而將煙塵目標從背景中分離出來.最具代表性的運動目標檢測的方法有背景減除法、幀間差分法和光流法.幀間差分法只檢測到煙塵邊緣運動區(qū)域,光流法對光照變化較敏感且計算量很大,其中背景減除法是目前最常用的方法.
背景減除法的關(guān)鍵是建立合適的背景模型.混合高斯模型(Gaussian mixture mode,GMM)是一種針對較復(fù)雜背景情況下的自適應(yīng)背景模型更新方法,它不但保存背景序列的平均值,而且保存背景序列方差,形成一個高斯模型,從而可得某個像素屬于該背景模型的概率[16].混合高斯模型通過多個模型組對背景不同狀況的描述,加強了抗干擾能力和穩(wěn)定性,但由于模型的參數(shù)會在一定時間后達到穩(wěn)態(tài),對于光照或者運動狀態(tài)的突變會有較差的檢測效果.
針對以上問題,本文針對煙塵變化速度不一致的特點,改進高斯混合模型,使得在背景建模時,以熵值差變化率為依據(jù),令采樣幀間隔自適應(yīng)變化.通過自適應(yīng)改變步長高效地去除與煙塵區(qū)域無關(guān)的環(huán)境噪聲,并分割出更加完整的煙塵區(qū)域.
圖像序列中每個像素點的概率分布通過高斯分布來擬合,背景模型抗干擾能力受高斯分布個數(shù)影響較大,高斯分布個數(shù)越少背景模型抗干擾能力越差,高斯分布個數(shù)越多背景模型越穩(wěn)定,但背景模型的增多會使計算量變大.傳統(tǒng)的高斯混合模型在建模過程中,每獲得新一幀圖像,高斯混合模型會跟隨新的圖像進行模型參數(shù)更新,然后進行背景估計,最后判斷新一幀圖像中的像素點是屬于背景點還是屬于前景點.在進行背景估計時,背景高斯混合模型的參數(shù)是在先前幀值的基礎(chǔ)上進行參數(shù)更新.圖1為高斯混合模型原理圖,圖片大小為2×2,有3個高斯模型,以(1,1)處像素點為例,圖1顯示判斷(1,1)為前景還是背景的流程.在傳統(tǒng)高斯混合模型進行背景建模時,第N幀的參數(shù)值計算依賴于前N ?1幀.
圖1所示的傳統(tǒng)高斯混合模型參數(shù)更新是以先前幀為依據(jù),而實際煙塵變化的速率存在多變和不確定性,因此采用固定連續(xù)幀間更新策略會導(dǎo)致模型參數(shù)難以適應(yīng)煙塵實時多變的特點,因此需要在高斯混合模型中引入能夠反映煙塵實時變化特點的指標,從而自適應(yīng)更新模型參數(shù)以滿足煙塵不同時刻的變化速率等特點,進而得到更佳的背景模型以提高煙塵區(qū)域的分割精度.
圖1 高斯混合模型算法圖Fig.1 Gaussian mixture model algorithm diagram
圖2為像素點分布圖.
圖2 像素點分布圖Fig.2 Pixel distribution graph
圖2(a)為工業(yè)排放煙塵視頻序列坐標為(1,1)的像素點示意圖,圖2(b)為工業(yè)排放煙塵視頻序列坐標為(1,1)的像素點灰度值分布圖,圖2(c)為工業(yè)排放視頻序列坐標為(1080,1)的像素點示意圖,圖2(d)為工業(yè)排放視頻序列坐標為(1080,1)的像素點灰度值分布圖.由圖2(b)和2(d)可知圖像序列中各個像素點的顏色值變化服從高斯分布.
由于煙塵變化速度不定,若第N幀的參數(shù)值計算依賴于前N ?1幀,檢測到的煙塵區(qū)域不準確.
由于煙塵變化速率不夠穩(wěn)定,在傳統(tǒng)高斯模型的基礎(chǔ)上加入變步長因子以適應(yīng)煙塵速率變化時對模型的影響.
在進行高斯混合模型進行背景建模時,結(jié)合煙塵變化速度令步長發(fā)生變化,使得采樣幀間隔發(fā)生變化,也就是說第N幀的參數(shù)值計算依賴于前N ?t幀,t為步長,也稱t為采樣間隔.
3.1.1 熵值差變化率
煙塵變化速率需要圖像信息來表達,從而實現(xiàn)對變化的跟蹤.采用圖像熵描述變化信息,圖像熵是對圖像灰度信息豐富程度的一種度量[17].圖像的一維熵表示圖像中灰度分布包含的信息量,熵值能反映灰度圖像分布混亂程度.熵值的變化程度能反映煙塵變化速度.圖像一維熵的計算式如式(1)所示:
式中pi表示灰度值為i的像素點在整張圖像中所占比例.
3.1.2 熵值差變化率的計算
煙塵變化速度不定,煙塵圖片熵值差變化率能反映煙塵變化速度,采用高斯混合模型進行背景建模時,步長的選取隨著煙塵變化速度而改變,煙塵變化速度由圖片熵值差變化率反映.
定義:第t幀煙塵圖片熵值與第t ?1幀圖片熵值的差值絕對值為C1,第t ?1幀圖片熵值與第t ?2幀圖片熵值的差值絕對值為C2,熵值差變化率為C,C1,C2和C的計算過程如式(2)–(4)所示:
式中:St表示第t幀的熵值,St?1表示第t ?1幀的熵值,St?2表示第t ?2幀的熵值.通過上式,得到當前幀為第t幀,連續(xù)幀之間熵值差變化率C.由于熵值差變化率較小,本文中的熵值變化率取值為實際熵值差變化率的100倍.
如圖3所示,IA為實際煙塵區(qū)域與檢測出煙塵區(qū)域相交部分像素點個數(shù),MD為屬于煙塵部分但是沒有被分割出來的煙塵區(qū)域像素點個數(shù),MP為屬于背景部分但是被檢測成為煙塵區(qū)域像素點個數(shù),實際煙塵區(qū)域為手動標注的煙塵區(qū)域,檢測出的煙塵區(qū)域為算法分割出的煙塵區(qū)域.
圖3 檢出率與正檢率示意圖Fig.3 Schematic diagram of detection rate and accuracy rate
檢出率為實際煙塵區(qū)域與檢測出煙塵區(qū)域相交部分像素點個數(shù)比上實際煙塵區(qū)域像素點個數(shù),正檢率為實際煙塵區(qū)域與檢測出煙塵區(qū)域相交部分像素點個數(shù)比上分割出煙塵區(qū)域像素點個數(shù).檢出率的計算如式(5)所示,正檢率的計算如式(6)所示,檢出率和正檢率之和的計算公式如式(7)所示:
以熵值差變化率為10為例,在圖4中,橫坐標為步長,縱坐標值為檢出率值和正檢率值.可以看出步長與正檢率的關(guān)系,步長值越大,檢測出的煙塵區(qū)域越多,檢出率越大.步長值越大,檢測出的干擾區(qū)域越多,正檢率隨著步長的增大而減小.
在圖5中,橫坐標為步長,縱坐標值為檢出率和正檢率之和的值.隨著步長的增加,步長與檢出率和正檢率之和先增大后減小,檢出率越大說明分割出的煙塵區(qū)域越多,正檢率越大,說明分割出的背景區(qū)域越少.由此得出,檢出率和正檢率的值越大分割效果越好,取檢出率和正檢率和的最大值對應(yīng)的步長為最佳步長.
圖4 檢出率與正檢率和步長關(guān)系的示意圖Fig.4 Schematic diagram of the relationship between detection rate,accuracy rate and step size
圖5 檢出率與正檢率之和與步長關(guān)系的示意圖Fig.5 Schematic diagram of the relationship between the sum of detection rate and accuracy rate and step size
在計算當前熵值差變化率下,步長從1到15變化時,檢測出煙塵與實際煙塵的檢出率值逐漸變大,檢測出煙塵與實際煙塵的正檢率值逐漸變小.不同的熵值差變化率,依次對應(yīng)連續(xù)變化的步長.由實驗結(jié)果得出熵值差變化率對應(yīng)的最佳步長.最佳步長的選取依據(jù)原理示意圖如圖6所示.
煙塵顏色分布較均勻,煙塵運動引起圖像中熵值差變化,熵值差變化反應(yīng)煙塵運動速度的變化,通過檢出率和正檢率之和為依據(jù),可以得出不同熵值差,對應(yīng)最佳步長.
廣義回歸神經(jīng)網(wǎng)絡(luò)(generalized regression neural network,GRNN)是徑向基神經(jīng)網(wǎng)絡(luò)的一種,GRNN具有很強的非線性映射能力和學(xué)習(xí)速度.當樣本數(shù)據(jù)較少時,預(yù)測效果很好,網(wǎng)絡(luò)還可以處理不穩(wěn)定數(shù)據(jù).并且在網(wǎng)絡(luò)訓(xùn)練過程中,GRNN的訓(xùn)練過程比較穩(wěn)定,預(yù)測結(jié)果可靠程度高[18].
在廣義回歸神經(jīng)網(wǎng)絡(luò)中輸入為熵值差變化率,輸出為最佳步長.構(gòu)建的最佳步長預(yù)測模型為4層的回歸網(wǎng)絡(luò),分別為輸入層、模式層、求和層以及輸出層.
1)輸入層為代表熵值差變化率c的單輸入神經(jīng)元,用于接收輸入特征值.
2)模式層神經(jīng)元個數(shù)等于訓(xùn)練樣本的個數(shù),該層神經(jīng)元以高斯函數(shù)作為激活函數(shù):
其中:X為網(wǎng)絡(luò)的熵值變化率輸入變量,Xi為模式層第i個神經(jīng)元對應(yīng)的學(xué)習(xí)樣本.
3)求和層有兩個不同求和方式的神經(jīng)元,其輸出分別表示為
其中:SD表示該神經(jīng)元與上層模式層各神經(jīng)元的連接權(quán)值為1的求和結(jié)果;SN表示該神經(jīng)元與上層模式層各神經(jīng)元的連接權(quán)值為對應(yīng)輸出樣本中的各個元素yi,并以此為權(quán)值的加權(quán)求和結(jié)果.
4)輸出層為模型預(yù)估的最佳步長結(jié)果,因此該層具有單個神經(jīng)元,其輸出結(jié)果為求和層兩次計算的結(jié)果比值,得出的估計結(jié)果為
對該網(wǎng)絡(luò)模型的訓(xùn)練過程是用于調(diào)節(jié)激活函中的光滑因子,從而改變網(wǎng)絡(luò)中各神經(jīng)元的輸出結(jié)果,從而獲得最佳的回歸估計結(jié)果.從熵值差變化率對應(yīng)最佳步長的模型中,選出30對做訓(xùn)練集,選出10對做測試集,預(yù)測準確率為90%.
在分割得煙塵運動區(qū)域后,由于有小面積干擾區(qū)域,采用形態(tài)學(xué)處理,保留面積大的煙塵區(qū)域,去除干擾.在去除干擾的過程中,小面積煙塵區(qū)域也被去除,采用形態(tài)學(xué)中的膨脹算法獲取更多煙塵區(qū)域.
本文構(gòu)建自適應(yīng)最佳步長高斯混合模型的過程以及在線運行中的流程如圖7所示,在離線狀態(tài)下構(gòu)造出最佳步長預(yù)測模型,在線運行過程中,首先從當前視頻序列中計算得到熵值變化率,再通過最佳步長預(yù)測模型得到步長輸出,自適應(yīng)變步長高斯混合模型根據(jù)最佳步長計算得到背景模型,從而檢測出序列中的煙塵區(qū)域,進而可以計算得到該區(qū)域的黑度系數(shù)和污染程度.
圖6 熵值差變化率對應(yīng)步長計算原理圖Fig.6 Schematic diagram of step calculation principle corresponding to the change rate of entropy difference
圖7 本文算法及實際煙塵監(jiān)測過程流程圖Fig.7 Method in this paper and the flow chart of actual smoke monitoring process
在分割得煙塵運動區(qū)域后,由于有小面積干擾區(qū)域,采用形態(tài)學(xué)處理,保留面積大的煙塵區(qū)域,去除干擾.在去除干擾的過程中,小面積煙塵區(qū)域也被去除,采用形態(tài)學(xué)中的膨脹算法獲取更多煙塵區(qū)域.
在測試過程中,使用文獻[19]中的方法評價結(jié)果.手動分割出煙塵參考區(qū)域(reference area,RA)與本文方法分割出檢測區(qū)域(detection area,DA)的重合率,稱為交并比(intersection over union,IOU),如圖8所示,相當于兩個區(qū)域重疊的部分除以兩個區(qū)域的集合部分得出的結(jié)果.實際煙塵區(qū)域為手動分割的煙塵區(qū)域,檢測出的煙塵區(qū)域為通過算法分割的煙塵區(qū)域.其計算式為
計算參考區(qū)域和檢測區(qū)域的IOU值,依此判斷結(jié)果中的真正例(true positives,TP)、假正例(false positives,FP)和假反例(false negatives,FN).當IOU0.5,為真正例(TP);當0.5>IOU>0,為假正例(FP);當IOU=0,為假反例(FN).
圖8 交并比示意圖Fig.8 Intersection-over-union(IOU)diagram
通過式(13)–(14),可以得出實驗結(jié)果的查準率(precision)和查全率(recall)
式中TP,FP和FN分別為真正例、假正例和假反例數(shù)量.
實驗數(shù)據(jù)為從現(xiàn)場取獲的某廠的排煙煙塵圖像數(shù)據(jù).實驗計算機型號為HP ProDesk 600 SFF,配置為CPU 3.30 GHz、內(nèi)存8 GB,實驗環(huán)境為MATLAB R2016a.實驗煙塵視頻均為白天拍攝的煙塵視頻.煙塵視頻的格式為.avi文件.實驗場景包括1個冒煙點場景2個冒煙點場景和3個冒煙點的場景.
步長和熵值差變化率的關(guān)系如表1所示,隨著熵值差由大到小變化,最佳步長由小到大.步長和熵值差變化率的關(guān)系曲線圖如圖9所示.
表1 熵值差變化率對應(yīng)最佳步長的關(guān)系表Table 1 Relationship between the change rate of entropy difference and the best step length
圖9 熵值差變化率對應(yīng)最佳步長的關(guān)系曲線圖Fig.9 Relation curve of the change rate of entropy difference to the best step length
改進前和改進后的初步分割結(jié)果如圖10所示,圖10(b)是算法改進前實驗結(jié)果,圖10(c)是算法改進后實驗結(jié)果.
圖10 算法改進前與算法改進后初步分割結(jié)果對比圖Fig.10 Comparison diagram of preliminary segmentation results before and after algorithm improvement
由實驗結(jié)果可知,改進后的算法能分割更多煙塵區(qū)域.
圖11中,圖11(a)為原圖,圖11(b)初次分割結(jié)果,圖11(c)為去干擾后的結(jié)果,圖11(d)為對圖11(c)進行膨脹處理后的結(jié)果.
圖11 形態(tài)學(xué)處理后結(jié)果Fig.11 Results of morphological treatment
改進算法初次分割后結(jié)果雖然比改進前分割效果好,但是仍然存在小面積干擾區(qū)域,由于該煙塵場景中有2個冒煙點,因此保留2個面積最大的連通區(qū)域,去除連通面積較小的區(qū)域,在去除干擾區(qū)域的同時,煙塵內(nèi)部的小區(qū)域也被去除,形態(tài)學(xué)中的膨脹處理是將與目標區(qū)域的背景點合并到該目標物中,使目標物邊界向外部擴張的處理.因此,對去干擾后的結(jié)果進行膨脹處理,能擴大煙塵區(qū)域.
經(jīng)過形態(tài)學(xué)處理后的最終分割結(jié)果如圖12所示.圖12(a)為原圖,圖12(b)為算法改進前的分割結(jié)果圖,圖12(c)為算法改進后的分割結(jié)果圖.
圖12 改進前和改進后最終結(jié)果對比Fig.12 Comparison of final results before and after improvement
對有不同冒煙點的煙塵場景做實驗,分別選取有1個冒煙點、2個冒煙點和3個冒煙點的煙塵場景.
煙塵排放場景中有一個冒煙點的結(jié)果,分割結(jié)果如圖13所示,圖13(a)、13(c)和13(e)圖為原圖,圖13(b)、13(d)和13(f)圖為分割結(jié)果圖.
圖13 不同冒煙點場景下分割結(jié)果Fig.13 Segmentation results under different smoke point scenes
分別在不同冒煙點的煙塵排放視頻中進行試驗,其中1個冒煙點的煙塵視頻幀數(shù)超過1500幀,2個冒煙點幀數(shù)超過8000幀,3個冒煙點幀數(shù)超過4000幀,得出查準率、查全率,如表2所示.
表2 不同場景下的分割結(jié)果評價Table 2 Evaluation of segmentation results in different scenes
為了驗證本文方法的有效性,在實際工業(yè)排放煙塵視頻中進行實驗,并與均值背景建模法、文獻[13–14]中方法進行對比實驗.實驗所用視頻場景為有1個、2個以及3個冒煙點的不同場景,視頻時長與表2中場景所用煙塵視頻幀數(shù)一致.不同方法的對比實驗結(jié)果如表3所示.
表3 不同方法的分割結(jié)果評價Table 3 Evaluation of segmentation results by different methods
1)由圖10可看出算法改進前煙塵區(qū)域分割結(jié)果遠遠不如算法改進后煙塵圖像分割結(jié)果,算法改進后的結(jié)果中,分割到的煙塵區(qū)域比較多,但是檢測出來的背景干擾部分并沒有比改進前多.說明熵值差變化率與最佳步長的對應(yīng)關(guān)系,比較準確,說明結(jié)合煙塵速度變化特點的算法能較好檢測運動區(qū)域.
2)圖13中,當有兩個冒煙點時,有一部分煙塵稀薄區(qū)域沒被檢測出來,是因為在進行去干擾的操作時,只保留兩個連通面積較大的區(qū)域,二煙塵稀薄區(qū)域為小面積連通區(qū)域,所以煙塵稀薄區(qū)域被去除.
3)從表3中的試驗結(jié)果可以得出,本文方法查準率和查全率均高于另外3種方法的查準率和查全率,實驗結(jié)果表明本文方法分割結(jié)果最優(yōu),說明該算法分割工業(yè)排放煙塵的有效性.
本文主要介紹了自適應(yīng)變步長高斯混合模型的工業(yè)煙塵圖像分割方法,首先詳細介紹了煙塵變化速度與熵值差變化率的關(guān)系,然后詳細介紹采用高斯混合模型進行背景建模時最佳步長的確定過程,得出一個熵值差變化率與對應(yīng)的最佳步長的模型,采用此算法在不同場景視頻中工業(yè)煙塵圖像進行分割,結(jié)果表明本文算法在查準率和查全率上均較高,且在場景適應(yīng)能力上有很大提升,能適應(yīng)于視頻場景中有多個冒煙點的情況,適應(yīng)于更多的煙塵場景環(huán)境.