1 引言
運動目標檢測是數字圖像處理技術的一個重要部分,是各種后續高級處理任務如目標識別與跟蹤、目標分類、行為理解和分析等的基礎。運動目標檢測是指從連續的視頻序列中實時地將前景目標(運動對象)所在的區域從背景(自然場景)中分割提取出來,即完成前景和背景的分離。對于這一工作現有的實現方法一般有四種:光流計算法[2]、相鄰幀間運動分析法[3]、運動能量檢測法[4]和背景消減法[5]。光流計算法的優點是能夠檢測獨立運動的對象,不需要預先知道場景的任何信息,并且可用于攝像機運動的情況,但多數光流法的計算復雜耗時,除非有特殊的硬件支持,并且很難符合實時處理的要求;幀間運動分析法對動態環境的適應能力比較強,但不能夠完整地分割運動對象,不利于進一步的對象分析與識別;運動能量檢測法適合于復雜變化的環境,能消除背景中振動的像素,使按某一方向運動的對象更加突出地顯現出來,但難以獲得目標所在區域的精確描述;背景消減法適用于攝像機靜止的情形,它為靜止背景建立背景模型,通過將當前圖像幀和背景模型進行比較,確定出亮度變化較大的區域,即認為是前景區域,這種方法實現簡單,計算速度快,能夠實時地處理連續的圖像序列,并可以獲得關于運動目標區域的完整精確的描述。
背景消減法主要涉及到對于背景如何建模的問題,同時由于環境的變化如場景中光照條件引起的亮度改變、物體的運動引起的背景遮擋等,背景并不是靜止不變的,在實際應用中如果直接用輸入圖像與背景圖像差分進行分割,則會產生不理想甚至是錯誤的分割,需要采用一定的算法進行背景模型的動態更新。目前許多研究人員都致力于好的背景模型研究,以期減少動態場景對于準確分割的影響。本文針對帶有運動目標的復雜背景采用一種簡單的自適應算法, 使背景模型每隔一定的時間間隔自動更新一次, 從而使對象分割達到比較理想的效果。
2 自適應背景建模算法
背景圖像的獲取及自動更新是實現穩定、準確的運動目標檢測的重要步驟。對于一個固定的場景,在沒有運動對象出現、沒有光照變化等的情況下,考慮到視頻采樣過程中噪聲的影響,場景中各像素點的亮度值或灰度值符合一個隨機概率分布,以某一均值為基線,在其附近作不超過某一偏差的隨機振蕩, 這種情況下的場景稱之為背景。而實際的場景環境往往是動態變化的。如室內場景的動態變化,主要體現在燈光的突然熄滅、點亮,運動對象的出現、運動和消失等,此時攝像頭捕獲的場景測量值中,還包含了光照的改變、前景對象等環境的動態變化對背景各像素點亮度值的影響。背景獲取的最終目的是把運動對象從背景中分割出來,主要就是通過連續的視頻幀找出屬于背景的像素點,同時把光照的改變檢測出來并融合到背景中,實現背景的自適應更新。
2.1 傳統的背景建模方法
目前常用的背景抽取方法往往是將背景的構建與背景的更新視為兩個獨立的階段,首先利用統計的方法構建出背景圖像,然后隨著場景的動態變化不斷地對它作適當的更新。這些方法在背景構建階段一般需要一段不含有前景運動目標的監控場景的圖像序列,在實際應用中可能很難得到這樣的圖像序列,例如在高速公路上獲取的視頻圖像序列中,想要獲取無運動目標的背景幀幾乎是不可能的。在背景更新階段大多通過構造復雜的模型來解決場景變化的問題,其計算量大,而且有時可能無法滿足實時處理的要求。
2.2 自適應背景建模方法
本文提出的自適應背景建模方法將背景的構建與更新結合于一體,可以在場景中存在運動對象的情況下提取出最新的背景圖像。在一個固定的場景中,背景像素被遮擋時它的亮度值會出現一個明顯的變化,由于作為背景的每個像素被遮擋的時間與它暴露的時間相比是非常短暫的,可以把運動目標看作是一個對背景圖像的隨機擾動,從而可以利用一段連續的圖像序列來消除運動目標的影響。算法流程如圖1所示。
圖1 算法流程圖
最初可以將攝像機捕獲到的首張視頻圖像作為初始背景,然后采用如下算法實現背景圖像的自適應抽取。其間,輸入視頻圖像序列并不需要將每一幀都用來對背景模型進行更新,因此對視頻序列進行W抽樣,即每W幀間隔抽取一幀對背景模型進行更新,即W為抽樣速率。令V(i,j)為每間隔W幀抽取一幀的連續T幀采樣得到的圖像在位置(i,j)的灰度值向量組,即
V(i,j) ={Vt(i,j)|t =1,...,T} (1)
其中,Vt(i,j)為第t幀圖像在位置(i,j)的灰度值。折衷考慮所需參與計算的視頻序列的長度和背景提取的效率,可以由實驗或經驗確定W的值。
令B為最終得到的背景模型的數學表示,而Y(i,j)為背景模型B在位置(i,j)的灰度值。對于所有的(i,j)采用如下公式所述的算法對V(i,j) 執行中值濾波可以得到Y(i,j),
(2)
從而實現背景的更新,得到當前時刻的背景圖像
B={Y(i,j)|i=1,...,Nandj=1,...,M} (3)
其中,N、M分別是視頻圖像的高和寬。
盡管在背景建模初期所得到的背景圖像可能并不精確,但是隨著場景中對象的運動,后續差異圖像中新的背景信息會使背景圖像變得越來越完整,而且當場景中發生光照改變等動態變化對已恢復的背景圖像產生影響時,這種背景建模方法可同時對背景圖像進行及時地更新,以反映背景在實際中的漸變。
3 實驗結果與分析
為了驗證本文的自適應背景建模算法的有效性,筆者在實驗室中設置了一個單攝像頭的簡單的視頻監控環境,不斷地使人的運動出現在攝像頭視野內,應用該算法。同時,由于在實驗室中采集到的圖像的背景比較簡單,筆者也將該算法應用到了正在開發研究的實際水下監控系統中進行了測試。下面給出的是筆者對以每秒25幀的速率采樣到的(352×288)格式的視頻序列應用該算法的實驗結果。圖2和圖3中的(a)是每0.5秒間隔抽取一幀的十幀連續的視頻圖像,而(b)是計算出的背景圖像。
其中,對抽樣速率W和抽樣視頻序列的長度T的選取是否合適都會影響實驗結果。當T一定時,如果W過小使得抽樣速率遠遠小于目標運動速率時,可能會將運動目標誤判斷為是靜止的場景信息而得不到精確的背景模型;如果W過大可能會使程序執行時間過長,從而難以滿足實時處理的要求。當W一定時,如果T過小即樣本值過少,會影響背景的恢復效果,失去本算法對背景更新的意義;如果T過大可能會影響實時處理的效果。因此在實際中應該針對具體環境通過實驗或者經驗確定W和T的值。我們針對具體環境進行了大量實驗,得出當W為12、T為10,即對每0.5秒間隔抽取一幀的十幀輸入圖像進行處理的效果比較理想。
(a)連續的十幀視頻圖像 (b)背景圖像
圖2 對實驗室中監控系統的測試結果
(a)連續的十幀視頻圖像 (b)背景圖像
圖3 對實際的水下監控系統的測試結果
實驗的結果驗證了本算法實現自適應背景建模的可行性和有效性,無論是在簡單的環境還是比較復雜的場景中,對背景的抽取結果都比較令人滿意。而且該算法實現簡單,只需使用較少的圖像幀數就能獲得完整的背景圖像,并且能夠滿足實時性的要求。
4 結語
本文采用的自適應背景建模算法,能夠自動地將前景中存在運動目標的復雜背景較準確的提取出來,算法結構簡單,可以在短時間內較完整地構建出背景圖像,并且能夠適應光線的變化及時地更新背景。將該算法應用于視頻監控系統中運動目標的檢測簡捷、有效、便于實現,并且符合實時處理的要求。
參考文獻:
[1] How-Lung Eng, Kar-Ann Toh, JunxianWang and Wei-Yun Yau. An automatic drowning detection surveillance system for challenging outdoor pool environments [C]. In: Proceedings of the Ninth IEEE International Conference on Computer Vision (ICCV 2003).
[2] Barron J, Fleet D, Beauchemin S. Performance of optical flow techniques [J]. International Journal of Computer Vision, 1994:12(1): 42~77.
[3] Lipton A, Fujiyoshi H, Patil R. Moving target classification and tracking from real-time video[C]. In: Proc of WACV?8, 1998:8~14.
[4] Richard P Wildes. A measure of motion salience for surveillance applications [C]. In: Proc of Image Processing, 1998:102~121.
[5] Stauffer C and Grimson W. Adaptive background mixture models for real-time tracking [C]. Computer Vision and Pattern Recognition, CV PR?9, Fort Colins, CO,June 1999.
[6] Stefan Huwer. Adaptive Change Detection for real-time Surveillance Applications [J]. 2000 IEEE.