摘 要:提出一種基于閾值半徑自適應更新及陰影與鬼影檢測的改進型ViBe算法,解決運動場景下ViBe算法的目標提取效果易受背景高頻擾動、攝像機抖動、陰影、鬼影的影響問題。算法設計中,依據(jù)當前幀的像素點梯度與背景圖序列對應像素點的灰度均方差設計閾值自適應更新策略;依據(jù)背景圖在HSV空間中的像素值設計陰影去除規(guī)則;利用前景-鄰域直方圖的相似度匹配規(guī)則設計鬼影清除規(guī)則。實驗結果表明,改進型ViBe算法在保留原有的高效性的同時,能夠較好地消除視頻圖像中隱含的陰影和鬼影,以及抖動對目標提取的影響。
關鍵詞:ViBe算法;鬼影檢測;陰影消除;閾值半徑自適應更新
中圖分類號:TP391
文獻標識碼: A
運動目標檢測與跟蹤是動態(tài)場景下運動目標行為分析的關鍵問題,也是視頻分析的重要環(huán)節(jié),對有效提取運動目標和正確分析目標的運動行為具有重要的現(xiàn)實意義。已有的背景建模法種類繁多,如幀間差分法[1]、基于關鍵點的建模法[2]、光流法[3]、混合高斯算法[4]、ViBe算法[5]等。ViBe算法是一種被較為廣泛采納的背景建模方法,由于其不考慮目標運動速度對目標提取效果的影響,因此相較于幀間差分法和基于關鍵點的建模法,獲得的噪聲模型更能恰當反映實時場景的背景狀況;與此同時,相較于光流法和混合高斯算法,ViBe算法的設計思想簡單、計算量小,能滿足實時目標檢測的要求??墒?,該方法的隨機更新策略也導致目標提取的效果受到鬼影、陰影、背景高頻擾動和攝像機抖動的影響。鬼影是因視頻初始幀存在運動目標而產生,其對后續(xù)目標的檢測會造成較大影響;已有研究成果中[6-8],胡小冉[6]利用視頻幀前n幀構建初始背景,進而此背景進行背景建模。該方法在背景簡單情形下,運動目標提取的效果較為明顯,但在當場景較為復雜時其自適應能力弱。陰影是由運動目標受到光源的照射而產生[9-10],其包含目標的輪廓和位置信息,對目標與背景分離處理會產生較大影響;張榮剛[11]利用視頻幀的色度信息確定候選陰影區(qū)域,并借助區(qū)域梯度閥值消除目標提取時的陰影信息;該方法在一定條件下可獲得較好的目標提取效果,但魯棒性差且計算量大。對于影響背景建模的高頻擾動和攝像機抖動抑制問題,閔衛(wèi)東[12]提出一種自適應動態(tài)閾值方法來提取背景信息,但對光照的靈敏度高且較難抑制抖動的影響;隨后,莫邵文[13]等借助時間子采樣因子的自適應策略,利用閃爍程度矩陣設計自適應匹配閾值方案,進而在傳統(tǒng)ViBe算法基礎上獲得改進型視覺背景提取方法,能解決抖動問題,但魯棒性有待提高。
綜上,盡管對ViBe算法的改進已有一定的成果,但大多以削弱基本ViBe算法的固有特性為代價來換取前景效果的提升,算法的魯棒性和運行效率均有待提高。為此,本文在文獻[13]的算法基礎上,提出一種改進型ViBe方法(Improved ViBe Approach, IViBeA)。實驗表明,該方法能較好地消除鬼影、陰影、高頻擾動、攝像機抖動對背景建模的影響,使目標提取的效果較好。
1 "基本ViBe算法的描述與分析
ViBe算法是由Barnich等[14]于2011年提出的一種基于像素級的背景建模方法。它相較于經典的基于運動特征的前景檢測算法,首次把隨機抽樣思想和鄰域傳播機制引入到背景建模和更新中。 由于它利用視頻序列的第一幀初始化背景模型,所以具有很高的實時性和魯棒性[15]。算法的描述如下:
2 IViBeA的設計與描述
ViBe算法的隨機抽樣和無記憶的背景灰度值更新策略使得它獲得的前景效果較好[16-18],可是鬼影、陰影、背景高頻擾動和攝像機抖動現(xiàn)象制約著其廣泛應用。針對于此,圍繞閾值半徑R的自適應性以及鬼影和陰影的清除問題提出改進策略。具體如下:
(1)閾值半徑的自適應性
在背景高頻擾動及攝像機抖動場景下,如果當前灰度圖中像素點的鄰域半徑R保持不變,則從該圖中提取的前景必包含多個噪聲點,從而影響前景提取的效果。另一方面,背景的復雜程度也影響R的設置;若背景較復雜,則R需取較大的值,反之則需取較小值。因此,R的取值應隨著當前場景的變化而作自適應調整。在此,將當前灰度圖中像素點(x,y)的梯度信息Grad(x,y)和K個背景圖在像素點(x,y)處像素值的均方差σ(x,y)加權來刻畫當前灰度圖在該點處的背景復雜程度,即
(2) 陰影檢測
在動態(tài)場景下的目標檢測中,陰影通常是在光源較強下由目標形成的偽目標區(qū)域,在目標提取時常與目標一起被提取,因此設計陰影去除策略顯得尤為重要?;谏鹊年幱皺z測是目前應用最廣的方法,如文獻[19]利用陰影在HSV空間中具有穩(wěn)定的特征,得到當前幀圖像的陰影在所在區(qū)域內每個像素點處的色度H、飽和度S、亮度V之和小于背景圖像中對應點的色調h、飽和度s、亮度v之和的結論?;诖耍霗z測當前幀的像素點是否為陰影點的規(guī)則,即若當前幀中位置(x,y)處的H、S、V的平方和小于K個背景圖中對應點的平均色度h-、平均飽和度s-和平均亮度v-的平方和,以及當前幀位置(x,y)處的亮度V在[av-,v-]內,則當前幀中像素點(x,y)為陰影點,否則則為前景點。在此,a為陰影調節(jié)因子且0.5≤alt;1。
(3)鬼影檢測
基本的ViBe算法中并未涉及鬼影去除的方法,因而不能及時、有效地去除鬼影。文獻[20]利用當前幀的前景區(qū)域與前第n幀的同一位置的前景區(qū)域的顏色直方圖來檢測鬼影,可以較好地識別鬼影,但需保存額外的n幀信息且沒有采取有效的鬼影消除手段,致使鬼影存在的區(qū)域對后續(xù)目標檢測造成影響。在此,通過前景-鄰域直方圖的相似度匹配方式檢測鬼影是否存在,進而利用鬼影區(qū)域對背景模型進行二次更新。具體而言,假設當前幀中有m個前景區(qū)域, F1, F2,…, Fm; 區(qū)域Fk的最小矩形框設為Bk,在Bk中去除Fk之后獲得的區(qū)域用Gk表示(在此,稱為鄰域)。于是,鬼影檢測規(guī)則是:若Fk和Gk依次對應的直方圖的相似度大于閾值T,則前景區(qū)域Fk為鬼影,否則則為前景。圖1~2給出了前景-鄰域的直方圖分布。
以上算法中,通過步5.1給每個像素點i設定一個自適應閾值半徑,使其能夠適應各種復雜場景,增強算法的魯棒性,同時在算法中加入鬼影和陰影檢測策略,避免了后續(xù)處理中對圖像整體的遍歷,可極大削減計算量。
3 數(shù)值實驗
本實驗在Windows7(CPU/3.70 GHz,RAM/4GB)/python3.6/OpenCV 3.4環(huán)境下進行。為檢測以上算法在視頻幀出現(xiàn)背景高頻擾動及攝像機抖動和含有陰影、鬼影情形下是否能有效提取運動目標,選取參與比較的算法包括三幀差法、GMM和ViBe算法。測試樣本為4組開源視頻(A1:PETS2006; A2: Canoe; A3: Traffic; A4: Weizeman),如下圖3所示。參與比較的算法的參數(shù)設置與相應文獻的參數(shù)設置相同;IViBeA的參數(shù)設置是:背景模型數(shù)N=20, 背景更新概率p=1/16,匹配閾值σ=2,初始半徑閾值R0=35,背景復雜度閾值H=20,陰影檢測因子a=0.65,鬼影檢測閾值T=0.8。
(1)算法比較分析
在圖3的視頻序列中,視頻序列(a)的場景為交通車輛場景,場景中攝像機存在抖動;視頻序列(b)為公園小湖中劃船場景,場景中存在水紋;視頻序列(c)為室內商場場景,運動目標隨帶有陰影;視頻序列(d)為視頻第一幀包含運動目標的場景。依據(jù)本文要處理的問題,分析以上視頻是否存在攝像機抖動現(xiàn)象、背景高頻擾動、陰影和鬼影。將以上四種算法依次作用于視頻序列(a)~(d), 各算法獲得每種視頻的目標提取效果圖(Traffic第715幀、Canoe第868幀、PEST2006第109幀、Winzeman中daria_walk的第18幀)如圖4所示。
借助圖3的視頻序列,圖4表明,以上四種算法獲得的目標提取效果有明顯差異。雖然三幀差法對光照不敏感且處理速度快,但獲取目標的信息量較少,僅能獲取目標的輪廓信息,因此僅適用于背景較為簡單的場景且要求運動目標的運動速度快。相較于此方法,GMM、ViBe、IViBeA具有明顯優(yōu)勢;GMM能較完整地提取目標信息,不會存在鬼影現(xiàn)象,但對光照敏感且較難清除陰影,不適用于存在背景高頻擾動及攝像機抖動的場景;ViBe能較為完整地提取目標信息且有一定的陰影去除能力,但對噪聲干擾較大的信息較難清除,且也不能及時去除鬼影;IViBeA不僅具有GMM、ViBe的優(yōu)點,而且對于干擾較大的噪聲具有強的抑制能力,能夠及時檢測出陰影和鬼影,適用于現(xiàn)實環(huán)境中的多種場景。
4 結論
為了解決ViBe算法應用于運動目標提取易受背景高頻擾動、攝像機抖動、陰影及鬼影影響的問題,本文在分析ViBe算法存在的缺陷基礎上,提出一種改進型ViBe算法。該算法利用自適應閾值增強算法對環(huán)境的適應能力,可有效消除背景高頻擾動和攝像機抖動對目標提取的影響。針對前景中包含陰影或鬼影的問題,在檢測出前景點基礎上,結合陰影點在HSV空間的分布情況,設計一種陰影檢測策略,并在消除陰影后利用前景-鄰域直方圖相識度匹配及背景二次更新策略消除陰影和鬼影對目標提取的影響。實驗結果表明,以上改進型ViBe算法能有效抑制背景高頻擾動、攝像機抖動、陰影與鬼影對目標提取的影響。
參考文獻:
[1]唐佳林, 李熙瑩, 羅東華,等. 一種基于幀差法的夜間車輛檢測方法[J]. 計算機測量與控制, 2008, 16(12): 1811-1813.
[2]魏洪峰,韓志艷.運動目標檢測與跟蹤[J].渤海大學學報(自然科學版),2017,38(4):370-377.
[3]楊葉梅. 基于改進光流法的運動目標檢測[J]. 計算機與數(shù)字工程, 2011, 39(9): 108-110.
[4]焦波, 李國輝, 涂丹,等. 一種用于運動目標檢測的快速收斂混合高斯模型[J]. 中國圖象圖形學報, 2008, 13(11): 2139-2143.
[5]Yu Y, Cao M, Yue F. EVibe:An improved Vibe algorithm for detecting moving objects[J]. Chinese Journal of """"Scientific Instrument, 2014, 35(4):924-931.
[6]胡小冉, 孫涵. 一種新的基于ViBe的運動目標檢測方法[J]. 計算機科學, 2014, 41(2): 149-152.
[7]陳亮, 陳曉竹, 范振濤. 基于Vibe的鬼影抑制算法[J]. 中國計量大學學報, 2013, 24(4): 425-429.
[8]金標, 胡文龍. 基于邊緣相似性的背景差鬼影判別方法[J]. 計算機工程, 2011, 37(11):1-3.
[9]Leone A, Distante C. Shadow detection for moving objects based on texture analysis[J]. Pattern Recognition, 2007, 40(4):1222-1233.
[10]付萍, 方帥, 徐心和,等. 視頻監(jiān)控系統(tǒng)中運動目標檢測的陰影去除方法[J]. 計算機工程, 2007, 33(10):22-24.
[11]張榮剛, 顧強. 基于ViBe的動態(tài)目標檢測算法優(yōu)化[J]. 機械與電子, 2017, 35(4): 21-26.
[12]閔衛(wèi)東, 郭曉光, 韓清. 改進的ViBe算法及其在交通視頻處理中的應用[J]. 光學精密工程, 2017, 25(3): 806-811.
[13]莫邵文, 鄧新蒲, 王帥,等. 基于改進視覺背景提取的運動目標檢測算法[J]. 光學學報, 2016(6): 196-205.
[14]Su Y, Li A. Improved visual background extractor model for moving objects detecting algorithm[J]. Journal of Computer-Aided Design amp; Computer Graphics, 2014, 26(2):232-240.
[15] Zhu Z, Chi C, Zhao Y. Multi-scale based enhanced ViBe for background modeling[J]. Journal of Beijing Jiaotong University, 2015, 39(2):1-6.
[16]吳珍榮, 毛征, 曲勁松,等. 一種改進的快速目標檢測算法[J]. 中國科技論文, 2013, 8(4): 327-329.
[17]Wang H, Song J X. Threshold based adaptive vibe target detection algorithm[J]. Computer Science, 2015, 42(6A):154-157.
[18]Sun S, Qin Y, Xianbing M A. ViBe foreground detection algorithm and its improvement with morphology post-processing for outdoor scene[J]. Computer Engineering amp; Applications, 2013, 49(10):159-162.
[19]徐柱. 運動目標檢測與陰影消除的研究[D]. 蘇州:江蘇大學, 2010.
[20]吳亮, 周東翔, 范才智, 等.基于直方圖匹配的鬼影檢測算法[J]. 計算機工程與科學, 2008(7):57-60.
(責任編輯:曾 晶)