高 麗
(淮南聯合大學機械與電子系,安徽淮南232038)
智能視頻監控技術(IVS)是結合計算機和視頻分析方法,不需要人工干預的情況下,對監測目標進行檢測和跟蹤,最終達到分析和判斷的“智能化”過程.本文以銀行為背景構建了一個智能監控管理平臺,平臺分為硬件和軟件兩個部分,主要包括管理服務器模塊、模擬量采集模塊、IVS模塊、報警模塊、集中存儲模塊等,其中IVS模塊是核心.提出了一種將背景減法和幀間差分法結合的運動目標檢測算法,并通過測試來論證平臺的實用性.
常用的運動目標檢測方法大致包括三種.
幀差法根據相鄰幀的差值圖像獲得運動信息,然后通過分析來確定運動目標所帶來的變化部分.幀差法原理簡單,計算量較小,所以檢測速度較快,更重要的是這種方法能夠在多種動態環境下使用.缺點是對噪聲和光線比較敏感,另外當被檢測目標在運動方向上被線性拉伸時會導致目標區域存在一定重疊,這樣就會有可能在內部產生少數空洞.而如果空洞數較多,就不能夠全面提取出被測目標的所有特征像素點,直接影響下一步對目標的識別.
通常認為,光流是指圖像中模式運動的速度.如果有物體運動時,它在圖像上對應點的亮度模式也在發生改變,光流表達了圖像的變化,利用這一特點就可以進行場景分割從而檢測出運動目標.
雖然光流法在攝像機運動的情況下依然能夠檢測出運動目標,但是由于這種算法的核心是計算目標的光流即速度,這樣就使得算法的過程相當復雜,難以做到實時檢測.
減背景法通過將當前圖像與背景圖像實施差分運算來檢測運動區域.減背景法將輸入的視頻幀中的每個像素與現有背景模型相“比較”,然后將比較結果二值化,再用已經設定的閾值跟它進行比較.如果判斷出兩者的差異大于設定的閾值,那么將其判定為前景,否則判定為背景.
減背景法原理簡單,定位準確,易于實現,能夠較好地提取出目標的特征像素,不足在于對外界環境的變化敏感,需要對背景不斷更新,否則難以達到理想的檢測效果.
通過對常用算法的比對分析,可以看到在同樣的測試條件下幀差法比減背景法檢測速度快,靈敏度也高.當背景受到客觀因素改變時,幀差法較減背景法穩定,但是幀差法的檢測結果沒有減背景的檢測結果精確.所以考慮將二者結合,優勢互補,我們采用了一種基于減背景法和改進的幀差法[3]相結合的目標檢測方法.先構建混合高斯背景模型,然后減背景提取運動目標,再用改進的幀間差分算法提取目標,最后綜合兩個結果,得到較為準確的運動目標.
算法流程圖如圖1所示,包括背景構建、參數更新、背景減除、三幀差分和目標提取等部分.構建背景時采用混合高斯模型,并且不斷進行參數更新.針對混合高斯模型法在建背景過程中對于光照的突然變化適應緩慢導致檢測結果中存在陰影的缺點,采取將背景減除運算融入到混合高斯背景法中獲得運動目標.最后將幀差分算法獲得的運動目標與之前的結果邏輯“或”即可得到較為準確的目標.融入減背景的混合高斯模型的建立與更新背景是本算法的關鍵所在,其中背景更新更是后續背景相減操作的重要基礎.
高斯混合模型[4]是目前普遍采用而且非常有效的背景建模的方法.基于高斯混合背景模型的差分方法,簡單來描述就是通過根據預先設置背景模型來判斷像素點是前景點還是背景點,前景點即為分割出來的運動目標.
設X為視頻圖像中的任意一個像素點,每一個象素點亮度的變化用序列{X1,…,Xt}表示.對X采用K個高斯混和模型來建模:


圖1 算法流程圖

在模型初始化的時候,首先將輸入的第一幀圖像中的所有像素點的灰度值作為混合高斯模型的均值,給定初始化方差和權值.第一次建立的高斯混合背景模型初始方差應較大,例如取δ0=25,權值應較小,首次可以取為0.5,其余模型參數按照取值.隨后將新的視頻幀中的像素值逐一跟現有的高斯模型進行匹配判斷,可以用下式判斷準則:


其中β是高斯分布模型中各主要參數更新快慢的表征量,較大的β可以使背景模型能夠及時快速地對背景的變化做出響應.此外,權值的大小也會影響背景的更新速度.對于新構建的初始化模型,參數需要實時更新,保證對背景幀樣本不斷地進行學習,才可以得到相對穩定的混合高斯模型.
另外對于不匹配的模型,應按照式(5)減小其權值.

高斯背景模型建立之后,輸入新的帶有運動目標的視頻幀與背景做下列差分運算:

式中B(x,y)表示像素點在背景圖像中的灰度值,I(x,y)為

幀間差分法算法簡單,檢測速度較快,但是它獲得的運動目標往往不夠準確.檢測效果的好壞取決于選擇的時間間隔,過大可能會失去目標,造成“漏檢”,過小可能會出現重復的多個目標,導致“誤檢”.針對上述情況,考慮采用改進的幀間差分法即三幀差分克服這些缺點.三幀差分的原理是在兩幀差分基礎上選取連續的三幀圖像,分別計算相鄰兩幀圖像的差分值.然后選取適當的閾值,對差分結果進行閾值分割,就可將運動目標提取出來.
可以按照下面的流程圖提取目標輪廓:含有目標的圖像中該像素點的灰度值,E(x,y)為兩者的差分值.
若差值E(x,y)大于給定的閾值T,則判定為前景,生成的二值圖像函數為DB(x,y),

圖2 三幀差分法流程圖
流程圖中It(x,y)表示第t幀圖像中像素點的坐標位置為 (x,y),連續的三幀視頻圖像分別用 It-1(x,y),It(x,y),It+1(x,y)表示.
由差分定義可得兩兩相鄰兩幀圖像亮度的差分值:

選取適當的閾值T,將上述差分結果二值化:

在這個處理過程中,閾值大小的選擇至關重要,決定著整個算法是否有效.閾值Τ如果取得太大則檢測到的目標像素點過少,不能完整給出目標信息;相反Τ如果太小,就會將整個場景中非目標的像素點提取出來,包括大的噪聲顆粒.
將上述方法獲得的二值圖像取邏輯“與”,得到二值圖像Dt(x,y)

經測試,三幀差分法能夠準確得獲取運動目標的位置,而且算法程序簡單,速度較快,適于實時監控.
基于上述兩種算法,將待測視頻輸入,與已構建的混合高斯模型做差分運算就能得到一組目標區域;然后再用三幀差分法重新檢測,得到另外一組目標區域.為了獲得更加準確、全面的目標,將兩種方法獲得的運動區域取邏輯“或”運算:

其中DB(x,y)為背景差分的目標區域,Dt(x,y)為三幀差分法的目標區域,Ck(x,y)為最終得到的目標圖像.
為了測試算法的有效性,選擇了以銀行為背景的特定區域.在Visual c++6.0的開發環境下使用MATLAB[6]完成核心算法的設計,借助OpenCV軟件平臺完成基本的圖像處理功能,實現算法的測試程序.實驗對大量銀行自助服務區的監控視頻進行測試,測試時采用速度為20幀/秒.將減背景法、幀間差分法以及本文所提出的兩者并用的方法分別在這些視頻上進行測試,獲得如下的測試結果.圖(a)、圖(b)為連續兩幀有運動目標的圖像,(c)為背景圖,(d)為減背景法獲得的目標,(e)為幀間差分獲得的目標,(f)為采用減背景法和三幀差分法檢測結果.

圖3 目標檢測結果
由于監控場景受到光照、震動以及其他因素的影響,通過大量平臺的測試結果可以發現減背景法存在以下問題:背景模型的更新速度如果跟目標的運動速度相差過大時,會導致提取出來的目標產生虛影或者發生漏檢.另外提取出來的運動目標包含較多噪聲,影響圖像的效果;而幀間差分法檢測的結果明顯偏大而且產生“雙影”現象,另外光照變化會影響算法的有效性,嚴重時會使算法失敗.而將兩種算法結合起來的測試結果跟之前的結果對比,證明本文提出的方法檢測結果更加準確完整,表明算法的實用性和有效性.
減背景法和幀間差分法都是運動目標檢測常用的方法,但是這兩種方法都有各自的缺點,所以實際運用時考慮結合幾種方法來解決復雜多變的問題.本文以銀行為背景構建了一個監控管理平臺,提出的基于多個高斯模型的減背景法與幀差法相結合的方法自適應性較強,經測試目標檢測的精確度較兩種方法獨立運用有了明顯的提高,可以用于道路監測、樓宇監控、機器人視覺導航、安防等相關領域.
[1]文灝,陳紅濤.基于減背景與對稱差分的運動目標檢測[J].微計算機信息,2007,(25):99 -101.
[2]Stauffer C,Grimson W E L.Adaptive background mixture models for real- time tracking[J].Computer Vision and Pattern Recognition,1999,(2):246 -252.
[3]Kameda Y,Minoh M.A human motion estimation method using 3-successive video frame[A].Proceedings of International Conference on Virtual System and Multimedia[C].1996:135 -140.
[4]莫林,廖鵬,劉勛.一種基于背景減除與三幀差分的運動目標檢測算法[J].軟件時空,2009,(25):274-276.
[5]周西漢,劉勃,周何琴.一種基于對稱差分和背景消減的運動檢測方法[J].計算機仿真,2005,(4):117 -120.
[6]張志涌,徐彥琴.Matlab教程[M].北京:北京航空航天大學出版社,2001.