魏 偉 朱棟華
(沈陽(yáng)建筑大學(xué)信息與控制工程學(xué)院 沈陽(yáng) 110168)
基于像素自適應(yīng)分割背景建模的鬼影去除算法
魏 偉 朱棟華
(沈陽(yáng)建筑大學(xué)信息與控制工程學(xué)院 沈陽(yáng) 110168)
針對(duì)基于像素的自適應(yīng)分割檢測(cè)算法在建立背景模型時(shí)容易產(chǎn)生鬼影的問(wèn)題,根據(jù)背影視覺(jué)提取算法中相鄰像素點(diǎn)擁有相近像素值的空間分布特性,將待定的前景像素值與鄰域像素值的差值通過(guò)加權(quán)比較其與自適應(yīng)閾值的大小,來(lái)確定該像素點(diǎn)是前景像素點(diǎn)還是鬼影像素點(diǎn)。若為鬼影像素點(diǎn)則判定為背景像素點(diǎn),并更新其背景模型。通過(guò)對(duì)前景像素點(diǎn)的二次判斷,達(dá)到迅速去除鬼影的目的。實(shí)驗(yàn)結(jié)果表明,改進(jìn)后的算法相比于原算法能更快速地去除鬼影。
鬼影去除;像素自適應(yīng)分割;背景建模;運(yùn)動(dòng)目標(biāo)檢測(cè)
運(yùn)動(dòng)目標(biāo)檢測(cè)算法[1]可以對(duì)視頻中感興趣的目標(biāo)進(jìn)行實(shí)時(shí)的檢測(cè)、識(shí)別,是進(jìn)行視頻后續(xù)智能處理的重要依據(jù)。通過(guò)檢測(cè)可以將運(yùn)動(dòng)目標(biāo)從視頻序列的圖像背景中分離出來(lái),能否準(zhǔn)確地檢測(cè)出監(jiān)控場(chǎng)景中的運(yùn)動(dòng)目標(biāo)直接影響后續(xù)目標(biāo)跟蹤和行為分析等的效果。因此,作為計(jì)算機(jī)視頻處理基礎(chǔ)環(huán)節(jié)的運(yùn)動(dòng)目標(biāo)檢測(cè)具有非常重要的意義。
基于像素的自適應(yīng)分割(Pixel-Based Adaptive Segmenter,PBAS)檢測(cè)算法[2]是Hofmann等在2012年提出的。該算法結(jié)合樣本一致性背景建模(Sample Consensus,SACON)和視覺(jué)背景提取(Visual Background Extractor,VIBE)兩種算法的優(yōu)勢(shì),并進(jìn)行了一些細(xì)微的改進(jìn),在檢測(cè)性能上優(yōu)于SACON和VIBE。但PBAS算法在背景建模初期容易產(chǎn)生鬼影,雖然原算法利用變參數(shù)的更新率進(jìn)行調(diào)節(jié),但效果并不明顯。鬼影持續(xù)時(shí)間長(zhǎng)、對(duì)前期檢測(cè)影響大的問(wèn)題仍需要進(jìn)一步研究解決。
目前已有不少對(duì)鬼影判別方法研究的成果,如 Cucchiara等[3]利用時(shí)空差分方程近似計(jì)算前景像素點(diǎn)的光流,通過(guò)確定每個(gè)前景點(diǎn)集的平均光流來(lái)區(qū)別運(yùn)動(dòng)目標(biāo)和鬼影;Cheung等[4]利用Kalman濾波更新背景進(jìn)而區(qū)分出運(yùn)動(dòng)目標(biāo)和背景,通過(guò)檢查前景點(diǎn)集的幀差是否小于閾值來(lái)判斷鬼影;吳亮等[5]提出基于直方圖匹配的鬼影檢測(cè)算法,利用了鬼影點(diǎn)集邊緣像素與鄰近背景區(qū)域像素分布相似而與運(yùn)動(dòng)目標(biāo)點(diǎn)集相反的基本特性。以上方法大部分都涉及到閾值選取的問(wèn)題,適應(yīng)性較差。本文受Barnich等[6]的研究成果啟發(fā),利用相鄰像素點(diǎn)具有相近像素值的空間分布特性,得出鬼影像素值應(yīng)與背景像素值相近這一理論,并據(jù)此提出了基于加權(quán)閾值判斷的鬼影去除算法,具有較強(qiáng)的自適應(yīng)性。實(shí)驗(yàn)表明,與原算法及其他鬼影檢測(cè)算法相比,該算法能更快速地去除鬼影。
PBAS檢測(cè)算法構(gòu)建了像素的無(wú)參數(shù)模型。與VIBE算法相比,它引入控制論的思想和背景復(fù)雜程度的度量方法,使前景判斷閾值和背景模型更新率可隨背景復(fù)雜程度自適應(yīng)變化。主要步驟如下:
(1)建立背景模型
收集前N幀的像素以及梯度幅值,利用下列公式建立背景模型:
(2)檢測(cè)前景
計(jì)算樣本集合中滿足匹配條件的樣本個(gè)數(shù),若當(dāng)前像素值I(xi)與背景模型中樣本值Bk(xi)的距離小于給定的閾值R(xi),則記為一個(gè)匹配。如果匹配個(gè)數(shù)小于最小值#min,則將前景分割掩模F(xi)記為1表示前景,否則為背景。公式如下:
(3)更新背景模型
對(duì)于被判定為背景點(diǎn)的像素,要對(duì)該像素對(duì)應(yīng)的PBAS模型及其鄰域像素的PBAS模型更新。
設(shè)定更新率為T(xi),即某像素點(diǎn)被判定為背景點(diǎn)后,有1/T(xi)的概率更新其背景模型及鄰域模型。用當(dāng)前像素值I(xi)隨機(jī)替換背景模型Bk(xi)中的一個(gè)值;用當(dāng)前的鄰域像素值V(yi)來(lái)隨機(jī)替換鄰域背景模型Bk(yi)中的一個(gè)值。
(4)選取自適應(yīng)調(diào)整判斷閾值R(xi)及更新率T(xi)
鬼影出現(xiàn)是運(yùn)用背景差分法進(jìn)行運(yùn)動(dòng)目標(biāo)檢測(cè)時(shí)經(jīng)常遇到的問(wèn)題。當(dāng)對(duì)背景初始化建模時(shí),運(yùn)動(dòng)目標(biāo)可能處于背景中,它們運(yùn)動(dòng)后會(huì)產(chǎn)生鬼影;當(dāng)場(chǎng)景中運(yùn)動(dòng)目標(biāo)由運(yùn)動(dòng)變?yōu)殪o止后再開(kāi)始運(yùn)動(dòng),也會(huì)產(chǎn)生鬼影;背景中遺留的物體或者停止運(yùn)動(dòng)的運(yùn)動(dòng)目標(biāo)也會(huì)產(chǎn)生類似鬼影的情況。PBAS算法采用前N幀像素以及梯度幅值作為背景模型,雖然建模較快,但初始化過(guò)程會(huì)導(dǎo)致鬼影的產(chǎn)生。原 PBAS算法試圖利用變參數(shù)的更新率T(xi)進(jìn)行調(diào)節(jié),但效果并不明顯,容易將前景目標(biāo)錯(cuò)誤地當(dāng)成背景點(diǎn)來(lái)建模,導(dǎo)致當(dāng)前景目標(biāo)離開(kāi)后,偽背景點(diǎn)無(wú)法與真正的背景點(diǎn)相匹配,背景點(diǎn)被誤判斷為前景點(diǎn),從而產(chǎn)生鬼影。若不能解決該問(wèn)題,將對(duì)跟蹤和識(shí)別等后續(xù)工作帶來(lái)致命的影響。
3.1 基本思想
根據(jù)Barnic等[6]提出的理論:由相鄰像素點(diǎn)的時(shí)空一致性原則,相鄰的背景模型值也應(yīng)具有相似的時(shí)空分布。鬼影點(diǎn)與其鄰域背景模型的匹配程度高,表明其為真正的背景點(diǎn),即可與前景點(diǎn)區(qū)別開(kāi)來(lái)。本算法計(jì)算鬼影像素值與其8鄰域像素值的RGB空間色差的平均值,若小于自適應(yīng)最小值域#min,則認(rèn)為其是前景;否則當(dāng)作背景來(lái)處理,并及時(shí)更新背景模型。這樣便可以對(duì)鬼影起到很好的抑制作用。
由于鬼影區(qū)域與周圍的背景模型具有相似的顏色像素值,在鬼影區(qū)域與背景模型的臨界像素點(diǎn)中,這些臨界的背景像素值更趨向于匹配真實(shí)的背景圖像,而不是向著鬼影區(qū)域擴(kuò)散。這表明鬼影像素值向背景像素值的轉(zhuǎn)變是單向不可逆的,從而保證了算法的有效性。
首先利用背景模型B(xi)對(duì)輸入像素值I(xi)進(jìn)行目標(biāo)檢測(cè),通過(guò)判斷閾值R(xi)的比較,若判定為背景則以1/T(xi)概率更新其背景模型及鄰域模型;若判定為前景,則進(jìn)行鬼影檢測(cè),再次進(jìn)行判定:若為前景,則直接輸出;若為背景,則更新背景模型,方法與目標(biāo)檢測(cè)部分相同。與PBAS算法相結(jié)合,鬼影檢測(cè)算法流程如圖1。
圖1 基于PBAS算法的鬼影檢測(cè)算法流程圖Fig.1 The flowsheet of ghost detection algorithm based on PBAS algorithm
3.2 檢測(cè)過(guò)程
(1)建立色差模型
由于前景物體邊界所呈現(xiàn)出的顏色通常與其周圍背景模型中儲(chǔ)存的背景樣本差異很大,因此采用碼本模型[8](見(jiàn)圖2):以圓錐模型計(jì)算色差代替原來(lái)的幾何距離計(jì)算方法,效果更加顯著。各計(jì)算公式為:
其中,Xi為輸入像素點(diǎn);Vi為碼字集合。
圖2 碼本模型Fig.2 Codebook model
圖3 Xt的8鄰域色差模型Fig.3 Eight neighborhood color model ofXt
(2)求色差的平均值
由于計(jì)算機(jī)對(duì)每一幀圖片的掃描都是由上至下、由左至右的順序,我們可以認(rèn)為在處理像素點(diǎn)Xt時(shí),S1、S2、S3、S4這四個(gè)色差代表的像素點(diǎn)已經(jīng)過(guò)處理,即便是鬼影像素點(diǎn),此時(shí)也已經(jīng)被處理為背景點(diǎn),并更新其背景模型。因此這四個(gè)鄰域像素點(diǎn)置信度較高;此時(shí)后面四個(gè)點(diǎn)并未判斷,不能簡(jiǎn)單的把這四個(gè)點(diǎn)當(dāng)作背景點(diǎn)處理,否則有可能引起誤判。在這里我們引入加權(quán)求平均值的方法,對(duì)置信度較高的S1、S2、S3、S4這四個(gè)點(diǎn)引入一個(gè)高權(quán)值,其余四個(gè)點(diǎn)引入一個(gè)低權(quán)值。公式如下:
(3)自適應(yīng)閾值判定鬼影像素點(diǎn)
在判定閾值時(shí),采用自適應(yīng)閾值,閾值大小與樣本集的方差成正比,樣本集方差越大,說(shuō)明背景越復(fù)雜,判定閾值應(yīng)該越大。令最小判斷閾值
其中,
(4)更新背景模型
經(jīng)過(guò)本文算法,鬼影像素值被二值化為前景像素值或背景像素值。若為前景像素值,則直接輸出;若為背景像素值,此時(shí)更新其背景模型,以便進(jìn)行后續(xù)鬼影像素點(diǎn)的判斷。通過(guò)對(duì)前景像素值的二次判斷,達(dá)到了快速去除鬼影的目的。
本文的實(shí)驗(yàn)環(huán)境為結(jié)合 OpenCV2.4.8的VS2010C++,運(yùn)行在SONY筆記本電腦上,處理器為i5,2G獨(dú)立顯卡。視頻場(chǎng)景來(lái)自IBM人類視覺(jué)研究中心的視頻序列。視頻的幀率為25幀/秒,視頻圖像大小均為352×288像素。分別將本文改進(jìn)算法與原PBAS算法及其他鬼影算法相比較,以此來(lái)說(shuō)明本算法的性能。
4.1 本文改進(jìn)算法與原 PBAS 算法的比較
在視頻場(chǎng)景1中(如圖4所示),當(dāng)視頻運(yùn)行到105幀的時(shí)候,采用PBAS算法可以明顯地看到鬼影的存在。第476幀的時(shí)候本文的改進(jìn)算法相比原算法對(duì)鬼影的抑制起到了很好的效果。第698幀時(shí)原算法仍有鬼影的存在;本文的改進(jìn)算法已經(jīng)完全去除了鬼影帶來(lái)的影響,而PBAS算法在第1294幀的時(shí)候才基本去除鬼影。
由表1中兩個(gè)算法平均每幀處理時(shí)間可知,本文的改進(jìn)算法在處理時(shí)間上并沒(méi)有顯著的增加,完全滿足實(shí)時(shí)性的要求。
表1 兩種算法處理速度對(duì)比Table 1 Comparison of the processing speed about two algorithms
圖4 本文改進(jìn)算法與原PBAS算法的鬼影處理效果對(duì)比Fig.4 Comparison of the improved algorithm and the original PBAS algorithm on treatment efficiency of ghost
4.2 本文算法與其他鬼影判別算法的比較
在視頻場(chǎng)景2中(如圖5所示),將本文改進(jìn)算法與Cucchiara等[3]采用的光流法及吳亮等[5]采用的直方圖匹配判別鬼影的方法作對(duì)比。提取視頻第480幀和690幀兩幅圖像,可以看出光流法對(duì)鬼影的抑制能力最弱,從第480幀到690幀的間隔時(shí)間里,鬼影并沒(méi)有得到有效改善,而且對(duì)光照的變化也很敏感;與光流法相比,基于直方圖匹配的鬼影檢測(cè)算法有明顯的改善,但是對(duì)緩慢運(yùn)動(dòng)或停止運(yùn)動(dòng)的目標(biāo)比較敏感,可以明顯看出圖像右下方的進(jìn)車欄桿在起降后被劃為背景;而本文提出的改進(jìn)算法則解決了這些問(wèn)題,從第690幀的圖像可以看出,本文算法高效地提取出了前景。
圖5 本文改進(jìn)算法與其他鬼影檢測(cè)算法的比較鬼影處理效果對(duì)比Fig.5 Comparison of this improved algorithm and other ghost detection algorithms on treatment efficiency of ghost
本文引用Elhanian等[9]在圖像處理領(lǐng)域使用最廣泛的測(cè)試二值分類性能的正確分類百分比函數(shù)(PCC),如公式(12):
其中,TP是正確分類為前景像素點(diǎn)的個(gè)數(shù);FP是被錯(cuò)誤分類為前景像素點(diǎn)的背景像素點(diǎn)個(gè)數(shù);TN是正確分類為背景像素點(diǎn)的個(gè)數(shù);FN是被錯(cuò)誤分類為背景像素點(diǎn)的前景像素點(diǎn)個(gè)數(shù)。引用Van Droogennroeck等[7]的經(jīng)驗(yàn)值,當(dāng)本文算法的最小判斷閾值#min為[20,40]時(shí)有良好的匹配效果。經(jīng)過(guò)對(duì)數(shù)據(jù)的反復(fù)比對(duì),在本文中令置信權(quán)值,利用Matlan仿真可以看出此時(shí)判斷鬼影的準(zhǔn)確率在85%以上,如圖6所示。
圖6 本文算法的準(zhǔn)確率曲線Fig.6 The curve of accuracy on this algorithm
針對(duì)以上2段視頻,將本文改進(jìn)算法與其他兩個(gè)鬼影檢測(cè)算法進(jìn)行對(duì)比實(shí)驗(yàn),列出了3種不同檢測(cè)算法的性能,如表2所示。從實(shí)驗(yàn)結(jié)果可以看出,本文改進(jìn)算法的鬼影檢測(cè)率與其他算法相比有明顯的提高。
表2 不同鬼影檢測(cè)算法的檢測(cè)性能比較Table 2 Comparison of different ghost detection algorithm on detection performance
通過(guò)對(duì)PBAS前景檢測(cè)算法進(jìn)行比較系統(tǒng)的研究,發(fā)現(xiàn)其在背景建模后對(duì)鬼影抑制效果不佳,不能很快地去除鬼影。針對(duì)這個(gè)問(wèn)題,本文提出了一種基于加權(quán)閾值判斷的鬼影去除算法。該算法可以更迅速地去除鬼影帶來(lái)的干擾,使下一步對(duì)目標(biāo)的跟蹤更加精確。與原算法及其他鬼影檢測(cè)算法在鬼影去除時(shí)間與效果、算法處理時(shí)間及準(zhǔn)確率等幾個(gè)方面的比較結(jié)果表明,本文算法在保證實(shí)時(shí)性的同時(shí)去除鬼影的效果更加理想,鬼影的檢測(cè)率更高,實(shí)用性更好。未來(lái)本文算法也可以作為計(jì)算機(jī)視覺(jué)公司對(duì)目標(biāo)進(jìn)行提取時(shí)的通用算法,并有望在設(shè)計(jì)智能視頻監(jiān)控系統(tǒng)時(shí)得到廣泛的應(yīng)用。
[1] 萬(wàn)衛(wèi)兵,霍宏,趙宇銘.智能視頻監(jiān)控中目標(biāo)檢測(cè)與識(shí)別[M].上海:上海交通大學(xué)出版社,2010: 44-45.
[2] Hofmann M,Tiefennacher P,Rigoll G.Background segmentation with feednack:the pixel-nased adaptive segmenter[C]//IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops,2012:38-43.
[3] Cucchiara R,Grana C,Messimo P,et al.Detecting moving onject,ghosts,and shadows in video streams [J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2003,25(10):1337-1342.
[4] Cheung SC,Kamath C.Ronust nackground suntraction with foreground validation for urnan traffic video[J].EURASIP Journal on Applied Signal Processing,2005,14(1):1-11.
[5] 吳亮,周東翔,范才智,等.基于直方圖匹配的鬼影檢測(cè)算法 [J].計(jì)算機(jī)工程與科學(xué),2008, 30(7):57-60.
[6] Barnich O,Van Droogennroeck M.ViBe:a universal nackground suntraction algorithm for video sequences[J].IEEE Transactions on Image Processing,2011,20(6):1709-1724.
[7] Van Droogennroeck M,Paquot O.Background suntraction:experiments and improvements for ViBe[C]//IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops,2012:32-37.
[8] Kim K,Chalidanhongse TH,Harwood D.Realtime foreground-nackground segmentation using codenook model[J].Real-Time Imaging,2005, 11(3):172-185.
[9] Elhanian SY,El-Sayed KM,Ahmed SH.Moving onject detection in spatial domain using nackground removal techniques-state-of-art[J].Recent Patents on Computer Science,2008,1(1):32-54.
A Ghost Removal Algorithm Based on Pixel-Based Adaptive Segmenter
WEI WeiZHU Donghua
(College of Information and Control Engineering,Shenyang Jianzhu University,Shenyang110168,China)
It is pronanle that ghost would ne produced when nackground model is estanlished with pixel-nased adaptive segmenter algorithm. According to the theory that adjacent pixel points have similar pixel values in spatial distrinution in VIBE algorithm, the difference of foreground pixels was computed which are judged in the first time and the neighnorhood pixel. Then the difference and adaptive threshold value were compared through weight to determine whether the pixel is foreground pixel point or ghost which will ne judged as nackground pixel. At last the nackground models would ne updated. Through twice judgments of the foreground pixels, the ghost would ne removed quickly. The experiment results show that the improved algorithm removes the ghost faster than the original method.
ghost removal; pixel-nased adaptive segmenter; nackground model; motion detection
TP 391.41
A
2014-04-18
:2014-08-12
魏偉(通訊作者),碩士研究生,研究方向?yàn)榭刂评碚撆c控制工程,視頻運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤,E-mail:secretnlr@163.com;朱棟華,碩士生導(dǎo)師,研究方向?yàn)橹悄芸刂萍夹g(shù),建筑智能化與節(jié)能控制技術(shù)。