戴璐平 熊俊俏 劉海英 周洪波
摘 要: 提出一種將背景減除法與滑窗內(nèi)像素對相結(jié)合對運動目標進行陰影抑制的改進方法。由背景減除法得到當前視頻幀序列的運動前景掩模,再設(shè)定一個滑窗對滑窗內(nèi)具有相同紋理值的像素對數(shù)目與一定的閾值進行比較,分割出目標和陰影像素。實驗結(jié)果表明該方法能夠有效地檢測出運動目標和抑制陰影。分析補償算法的實時性,由補償算法增加的計算量與陰影區(qū)域的大小成比例。當陰影區(qū)域面積較小時,計算機對數(shù)據(jù)處理的復雜度增加10%左右;當陰影區(qū)域面積較大時,增加量不超過1倍。實驗結(jié)果表明,雖然改進后的算法增加了一定的運算量,但仍能夠滿足實時處理的需要。
關(guān)鍵詞: 背景減除法; 局部陰影抑制; 滑動窗口; 二值化; 數(shù)據(jù)處理復雜度; 補償算法
中圖分類號: TN911.73?34; TP391 文獻標識碼: A 文章編號: 1004?373X(2018)15?0043?04
Study on partial shadow suppression compensation algorithm for moving target
DAI Luping1, XIONG Junqiao1, LIU Haiying1, 2, ZHOU Hongbo1, 2
(1. School of Electrical and Information Engineering, Wuhan Institute of Technology, Wuhan 430205, China;
2. State Key Laboratory of Information Engineering in Surveying, Mapping and Remote Sensing, Wuhan University, Wuhan 430079, China)
Abstract: An improved shadow suppression method for moving target is proposed, in which the background subtraction method and pixel pair within sliding window are combined. The background subtraction method is used to obtain the moving foreground mask of the current video frame sequence. A sliding window is set, in which the number of the pixel pairs with same texture value and a certain threshold are compared to segment the target and shadow pixels. The experimental results show that the method can effectively detect the moving targets and suppression shadow. The real?time performance of the compensation algorithm is analyzed to obtain that the calculation amount increased by the compensation algorithm is proportional to the size of the shadow area. When the shadow area becomes small, the data processing complexity treated by computer is increased by about 10%. When the size of the shadow area becomes large, the calculation amount is increased by less than 100%. The experimental result indicates that although the improved algorithm adds a certain amount of computation, but still can meet the needs of real?time processing.
Keywords: background subtraction method; partial shadow suppression; sliding window; binarization; data processing complexity; compensation algorithm
運動目標陰影檢測是視頻流物體精確檢測中的關(guān)鍵技術(shù)。視頻流中運動目標的檢測效果直接影響運動跟蹤、運動特征分析、運動目標分類等后續(xù)操作的精度。比較常見的檢測方法有幀間差分法、光流法、背景減除法。幀間差分法的基本工作原理是在圖像序列相鄰兩幀或三幀間采用基于像素的時間差分,通過閉值化提取出圖像中的運動區(qū)域,其優(yōu)點是計算相對簡單,但目標獲取時機的隨機性太強,并且對運動目標的速度有較高要求;光流法的主要任務(wù)就是計算光流場,通過計算相對運動便可以估計出目標的運動狀態(tài),但運算繁瑣、耗時較大,因此實時性不強;背景減除法是現(xiàn)在運動目標陰影檢測的最常用方法[1]。
目前已有很多文獻對用背景減除法分割時背景重建進行研究[2?3]。本文算法基于當環(huán)境變化造成運動陰影的灰度值增加,使得抑制結(jié)果出現(xiàn)誤判的現(xiàn)象提出的一種結(jié)合圖像邊緣信息的陰影抑制補償方法,以進一步提高陰影抑制的性能。其他陰影抑制方法也存在類似問題[4?5],因此,本文所提出的改進思路對于改進其他運動陰影抑制算法也具有借鑒意義。
混合高斯模型的背景減除法的基本思想是利用背景的參數(shù)模型來近似背景圖像的像素值,將當前幀與背景圖像進行差分比較,實現(xiàn)對運動區(qū)域的檢測。其中區(qū)別較大的像素區(qū)域被認為是運動區(qū)域,而區(qū)別較小的像素區(qū)域被認為是背景區(qū)域,經(jīng)過閾值分割處理以及二值化后得到的運動前景掩模給出運動目標的位置、大小、形狀等信息。背景減除法的優(yōu)點是操作簡單、計算量較??;缺點就是環(huán)境的噪聲、相似的運動行為、場景自身的復雜性等易對檢測過程造成干擾。實驗發(fā)現(xiàn),當由于陰影的出現(xiàn)使得背景亮度的改變過大且超過一定閾值時,陰影抑制結(jié)果中包含有明顯的陰影邊框,如圖1所示。
由圖1d)可以看出,陰影抑制結(jié)果中包含有明顯的邊框[6?8]。
采用局部二值模式(Local Binary Patterns,LBP)描述紋理。LBP可以對灰度圖像中局部鄰近區(qū)域的紋理進行度量和提取,并且具有參數(shù)少、運算效率高、占用資源少等特點,這使得它可以對圖像進行實時分析[9?10]。
考慮圖像陰影區(qū)域內(nèi)以某個像素為中心像素[gsc]及其等距離的[N]個鄰域像素[gs0,gs1,gs2,…,gsN-1],如圖2所示。背景區(qū)域中對應(yīng)位置的像素分別記為[gbc,gb0,gb1,…,gbN-1]。像素[gsc]的局部二元圖值為[LBPsN,R=][n=0N-1sM(gsn-gsc)2n],背景區(qū)域中對應(yīng)像素[gbc]的局部二元圖值為[LBPbN,R=][n=0N-1s(gbn-gbc)2n]。考慮背景區(qū)域中的像素[gbc]和某個鄰域像素[gbr,r=0,1,2,…,N-1]及其在陰影區(qū)域中的對應(yīng)像素[gsc]和[gsr],不妨設(shè):
圖2中深色圓角矩形為陰影區(qū)域,[gsc]為位于陰影區(qū)域邊緣上的一個像素,[gs0,gs1,gs2,…,gsN-1]為位于以[gsc]為中心的虛線圓圈上的N個鄰域像素。對于中心像素及其鄰域像素均在陰影區(qū)域范圍內(nèi)的情形,由于像素的灰度級同步發(fā)生變化,陰影覆蓋后兩像素灰度改變量的差值接近于零,式(6)很容易滿足,因而一般不會發(fā)生誤判。當中心像素處于陰影區(qū)域邊緣或者附近時,由于部分鄰域像素在陰影區(qū)域外,其灰度級沒有同步變化,如果陰影較淺,陰影覆蓋后兩像素灰度改變量的差值仍在式(6)控制的范圍內(nèi),仍能檢測出陰影像素,即淺陰影邊緣不會被誤判為目標像素;但是當陰影暗到一定程度,使得陰影邊緣像素與處于陰影區(qū)域外的對應(yīng)鄰域像素灰度改變值的差值超出式(6)控制的范圍時,則對應(yīng)的陰影像素就會被誤判為前景像素,不可避免地導致運動目標檢測結(jié)果中出現(xiàn)如圖1所示的陰影邊框,因此需要對此進行抑制。
補償算法主要體現(xiàn)在對圖像中邊緣像素的判斷上。先設(shè)置一個滑動窗口,由于運動目標的陰影是其遮擋光線投射的結(jié)果,在局部范圍內(nèi)具有連續(xù)分布特征,所以需要先判斷滑窗內(nèi)像素是否在邊緣,若不在邊緣,用原算法進行像素比對,相等則為陰影,不相等則為運動目標。假如滑窗內(nèi)像素判斷為邊緣像素,則統(tǒng)計滑窗內(nèi)前景像素和背景像素相等的像素數(shù)目是否大于設(shè)定閾值,大于則判定滑窗內(nèi)像素為陰影;否則,為目標。
滑窗的大小也必須取一個合適值?;疤?,容易將運動目標的棱角處誤判為陰影;滑窗太小則容易導致陰影邊緣像素被漏判。以5×5滑窗為例,由于滑窗中心是陰影點,因此暗陰影在滑窗內(nèi)占據(jù)最少像素的可能分布就是僅有一個陰影像素位于滑窗中心。此種情況下,一般來說,陰影像素本身及其周邊8個像素的前景像素與背景像素的二元值一般都不相等。因此,當滑窗中心滑動到陰影邊緣時,滑窗內(nèi)二元值不等的像素數(shù)量一般不會少于9。由此可見,滑窗尺寸不宜小于或等于3×3;滑窗尺寸也不宜取得太大,否則容易將目標的尖角部分誤判成陰影,并且滑窗越大,計算量也越大。綜合各方面因素考慮,滑窗的大小一般取5×5或7×7。
實驗數(shù)據(jù)處理在一臺配置為P4 3.0 GHz處理器,內(nèi)存768 MB,Windows XP SP3操作系統(tǒng)的PC機上進行。算法則基于OpenCV計算機視覺庫1.0版,在VC++ 6.0集成開發(fā)環(huán)境下用C語言編程實現(xiàn)。針對攝像機固定的情況,首先采用混合高斯分布進行背景建模,基于背景消除算法分割出運動目標,然后分別利用改進前后的算法對分割結(jié)果中的陰影進行抑制。采用LBP8,1計算局部二元紋理值,通過Sobel算子提取算法中用到的圖像邊緣。消除噪聲影響的閾值[tp=8];滑窗大小為7×7,與像素對數(shù)目比較的閾值設(shè)定為20。對常用的4個用于陰影檢測的視頻序列[1]:highwayI,highwayII,campus,laboratory分別進行運動目標分割和陰影抑制,對改進前后的算法性能進行分析。陰影抑制補償算法的抑制效果見圖3。
將圖3與圖1相比較可以看出,經(jīng)過結(jié)合邊緣信息的補償算法,運動目標陰影邊框得到了有效的抑制。
表1列出了改進前和改進后的算法對4個標準視頻進行陰影抑制的平均每幀處理時間。時間的測量使用OpenCV提供的cvGetTickCount()和cvGetTickFrequency()兩個庫函數(shù)。前一個函數(shù)返回依賴于平臺時間開始的處理器ticks的數(shù)目,后一個函數(shù)則返回每個微秒的ticks數(shù)目。通過在一段代碼執(zhí)行前后各執(zhí)行一次cvGetTickCount()函數(shù),并用后一次的返回值減去前一次的,再除以每微秒的ticks數(shù)目就能得到該段代碼的實際執(zhí)行時間。對于特定的處理器,每微秒的ticks數(shù)目總是固定的,在本實驗中,每微秒的ticks數(shù)目為3 051。雖然精確的幀處理時間除了依賴于算法本身(本實驗中所用的算法并未做專業(yè)優(yōu)化),還依賴于計算機硬件、操作系統(tǒng)軟件等因素,但表1中的數(shù)據(jù)能夠在一定程度上驗證基于局部二元圖的陰影抑制算法的實時性能。文獻[10]中給出的基于Gabor紋理的陰影抑制算法雖然誤判點比較少,但是在特定硬件上處理1幀的平均時間大約是幾百毫秒,是表1中平均幀處理時間的若干倍。由此可見,改進前和改進后的算法相對于其他算法而言,具有較好的實時性能。
為了便于將改進前和改進后的算法平均幀處理時間做對比,表1給出了改進后的算法平均每幀的處理時間相對于改進前增加的百分比。從表1中可以看出,改進后的算法平均幀處理時間比改進前的算法普遍有增加,說明改進后的算法比改進前要費時,這是因為改進后的算法需要對很多滑窗進行統(tǒng)計。一般說來,圖像的紋理越復雜,陰影覆蓋的區(qū)域越大,提取的圖像邊緣信息就越豐富,導致改進后算法增加的計算量就會越多。這種情況正是陰影抑制最困難的情形。從這個意義上看,這種計算量的增加保持了較高的效率,是值得的。同時,Sobel算子運算簡單、規(guī)則,容易通過并行處理進行加速,所以經(jīng)過優(yōu)化實現(xiàn)后,實際增加的計算時間不會很多,不會影響系統(tǒng)的實時性。
本文針對攝像機固定情形,基于混合高斯背景減除法的運動前景分割結(jié)果,給出一個結(jié)合圖像邊緣信息的陰影抑制補償方法。該方法克服了改進前的算法不能有效抑制暗陰影的缺陷,同時改進后算法增加的計算量與陰影范圍的大小成比例,計算效率高,保持了原算法實時性強的優(yōu)點。
參考文獻
[1] CHALIDABHONGSE T H, KIM K, HARWOOD D, et al. A perturbation method for evaluating background subtraction algorithms [C]// 2003 Joint IEEE International Workshop on Visual Surveillance and Performance Evaluation of Tracking and Surveillance. France: IEEE, 2003: 11?12.
[2] ZHAO Mingying, ZHAO Jun. A novel method for moving object detection in intelligence video surveillance system [C]// Proceedings of 2016 IEEE International Conference on Computational Intelligence and Security. Guangzhou, China: IEEE, 2016: 1797?1800.
[3] STAUFFER C, GRIMSON W. Learning patterns of activity using real?time tracking [J]. IEEE transactions on pattern analysis and machine intelligence, 2000, 22(8): 747?757.
[4] 路紅,費樹岷,鄭建勇,等.基于背景重構(gòu)和陰影消除的運動目標分割[J].中國圖象圖形學報,2009,14(10):2023?2028.
LU Hong, FEI Shumin, ZHENG Jianyong, et al. Moving object segmentation based on background reconstruction and shadow elimination [J]. China image and graphics, 2009, 14(10): 2023?2028.
[5] ELGUEBALY T, BOUGUILA N. Background subtraction using finite mixtures of asymmetric Gaussian distributions and shadow detection [J]. Machine vision and applications, 2014, 25(5): 1145?1162
[6] HEIKKILA M P M. A texture?based method for modeling the background and detecting moving objects [J]. IEEE transactions on pattern analysis and machine intelligence, 2006, 28(4): 657?662.
[7] 張玲,程義民,葛仕明.基于紋理的運動陰影檢測方法[J].光電工程,2008,35(1):80?84.
ZHANG Ling, CHENG Yimin, GE Shiming. Shadow detection method based on texture [J]. Optical engineering, 2008, 35(1): 80?84.
[8] OJALA T, PIETIK P, INEN M. Multiresolution gray?scale and rotation invariant texture classification with local binary patterns [J]. IEEE transactions on pattern analysis and machine intelligence, 2002, 24(7): 971?987.
[9] BOYKOV Y, KOLMOGOROV V. An experimental comparison of mim?cut/max?flow algorithms for energy minimization in vision [J]. IEEE transactions on pattern analysis and machine intelligence, 2004, 26(9): 1124?1137.
[10] 孫海鵬,畢篤彥.基于局部二元模式Gabor小波變換的人臉識別[J].計算機應(yīng)用與軟件,2011,28(5):247?248.
SUN Haipeng, BI Duyan. Based on local binary pattern recognition Gabor wavelet transform [J]. Computer applications and software, 2011, 28(5): 247?248.