目標檢測入門:幀差法,光流法和背景減法

概述

    運動目標檢測是指當監控場景中有活動目標時,採用圖像分割的方法從背景圖像中提取出目標的運動區域。運動目標檢測技術是智能視頻分析的基礎,因爲目標跟蹤、行爲理解等視頻分析算法都是針對目標區域的像素點進行的,目標檢測的結果直接決定着智能視覺監控系統的整體性能。

    運動目標檢測的方法有很多種。根據背景是否複雜、攝像機是否運動等環境的不同,算法之間也有很大的差別。其中最常用的三類方法是:幀間差分法、背景減法、光流場法。下面對這三類方法進行介紹,通過實驗結果,對它們各自的算法性能進行分析,爲進一步的目標檢測算法研究建立良好的基礎。

幀間差分法原理

    攝像機採集的視頻序列具有連續性的特點。如果場景內沒有運動目標,則連續幀的變化很微弱,如果存在運動目標,則連續的幀和幀之間會有明顯地變化。

    幀間差分法(Temporal Difference)就是借鑑了上述思想。由於場景中的目標在運動,目標的影像在不同圖像幀中的位置不同。該類算法對時間上連續的兩幀或三幀圖像進行差分運算,不同幀對應的像素點相減,判斷灰度差的絕對值,當絕對值超過一定閾值時,即可判斷爲運動目標,從而實現目標的檢測功能。

                      

    兩幀差分法的運算過程如圖2-2所示。記視頻序列中第n幀和第n−1幀圖像爲fnfn−1,兩幀對應像素點的灰度值記爲fn(x,y)和fn−1(x , y),按照式2.13將兩幀圖像對應像素點的灰度值進行相減,並取其絕對值,得到差分圖像Dn

                                                                                  

    設定閾值T,按照式2.14逐個對像素點進行二值化處理,得到二值化圖像Rn'。其中,灰度值爲255的點即爲前景(運動目標)點,灰度值爲0的點即爲背景點;對圖像Rn'進行連通性分析,最終可得到含有完整運動目標的圖像Rn

                                         

三幀差分法

    兩幀差分法適用於目標運動較爲緩慢的場景,當運動較快時,由於目標在相鄰幀圖像上的位置相差較大,兩幀圖像相減後並不能得到完整的運動目標,因此,人們在兩幀差分法的基礎上提出了三幀差分法。

            

   三幀差分法的運算過程如圖2-3所示。記視頻序列中第n+1幀、第n幀和第n−1幀的圖像分別爲fn+1、fnfn−1,三幀對應像素點的灰度值記爲fn+1(x , y) 、fn(x , y) 和fn−1(x , y) , 按照式2.13分別得到差分圖像Dn+1和Dn,對差分圖像Dn+1和Dn按照式2.15進行與操作,得到圖像Dn',然後再進行閾值處理、連通性分析,最終提取出運動目標。 

                   

    在幀間差分法中,閾值 的選擇非常重要。如果閾值T選取的值太小,則無法抑制差分圖像中的噪聲;如果閾值T選取的值太大,又有可能掩蓋差分圖像中目標的部分信息;而且固定的閾值T無法適應場景中光線變化等情況。爲此,有人提出了在判決條件中加入對整體光照敏感的添加項的方法,將判決條件修改爲:

                               

    其中, A爲待檢測區域中像素的總數目,λ爲光照的抑制係數,A可設爲整幀圖像。添加項表達了整幀圖像中光照的變化情況。如果場景中的光照變化較小,則該項的值趨向於零;如果場景中的光照變化明顯,則該項的值明顯增大,導致式2.16右側判決條件自適應地增大,最終的判決結果爲沒有運動目標,這樣就有效地抑制了光線變化對運動目標檢測結果的影響。

兩幀差分和三幀差分的比較

    圖 2-5 是採用幀間差分法對自拍序列 lab 序列進行運動目標檢測的實驗結果,(b)圖是採用兩幀差分法的檢測結果,(c)圖是採用三幀差分法的檢測結果。lab序列中的目標運動較快,在這種情況下,運動目標在不同圖像幀內的位置明顯不同,採用兩幀差分法檢測出的目標會出現“重影”的現象,採用三幀差分法,可以檢測出較爲完整的運動目標。

                

    綜上所述,幀間差分法的原理簡單,計算量小,能夠快速檢測出場景中的運動目標。但由實驗結果可以看出,幀間差分法檢測的目標不完整,內部含有“空洞”,這是因爲運動目標在相鄰幀之間的位置變化緩慢,目標內部在不同幀圖像中相重疊的部分很難檢測出來。幀間差分法通常不單獨用在目標檢測中,往往與其它的檢測算法結合使用。

背景減弱法原理

       對於一個穩定的監控場景而言,在沒有運動目標,光照沒有變化的情況下,視頻圖像中各個像素點的灰度值是符合隨機概率分佈的。由於攝像機在採集圖像的過程中,會不可避免地引入噪聲,這些灰度值以某一個均值爲基準線,在附近做一定範圍內的隨機振盪,這種場景就是所謂的“背景”。

        背景減法(Background subtraction)是當前運動目標檢測技術中應用較爲廣泛的一類方法,它的基本思想和幀間差分法相類似,都是利用不同圖像的差分運算提取目標區域。不過與幀間差分法不同的是,背景減法不是將當前幀圖像與相鄰幀圖像相減,而是將當前幀圖像與一個不斷更新的背景模型相減,在差分圖像中提取運動目標。

                                

    背景減法的運算過程如圖2-6所示。首先利用數學建模的方法建立一幅背景圖像幀B,記當前圖像幀爲fn,背景幀和當前幀對應像素點的灰度值分別記爲B(x,)和fn(x , ) ,按照式2.17將兩幀圖像對應像素點的灰度值進行相減,並取其絕對值,得到差分圖像D n

                                      

    設定閾值 ,按照式2.18逐個對像素點進行二值化處理,得到二值化圖像 Rn' 。其中,灰度值爲255的點即爲前景(運動目標)點,灰度值爲0的點即爲背景點;對圖像 Rn'進行連通性分析,最終可得到含有完整運動目標的圖像Rn 

                                     

    背景減法計算較爲簡單,由於背景圖像中沒有運動目標,當前圖像中有運動目標,將兩幅圖像相減,顯然可以提取出完整的運動目標,解決了幀間差分法提取的目標內部含有“空洞”的問題。

    利用背景減法實現目標檢測主要包括四個環節:背景建模,背景更新,目標檢測,後期處理。其中,背景建模和背景更新是背景減法中的核心問題。背景模型建立的好壞直接影響到目標檢測的效果。所謂背景建模,就是通過數學方法,構建出一種可以表徵“背景”的模型。獲取背景的最理想方法是在沒有運動目標的情況下獲取一幀“純淨”的圖像作爲背景,但是,在實際情況中,由於光照變化、雨雪天氣、目標運動等諸多因素的影響,這種情況是很難實現。

光流場法原理

    光流場(Optical Flow)是用來表徵圖像中像素點的灰度值發生變化趨勢的瞬時速度場。在現實世界中,目標的運動通常是通過視頻流中各個像素點灰度分佈的變化表徵的。圖2-1表現了昆蟲在飛行過程中所處的三維光流場。C圖中箭頭的長度和指向表徵了各點光流的大小和方向。美國學者Horn和Schunck在1981年提出了光流場的計算方法,他們在兩幀圖像的灰度變化和時間間隔都很小的前提下,推導出了光流的基本約束方程,從而奠定了光流場計算的理論知識。

                

實現思想:

    利用光流場法實現目標檢測的基本思想是:首先計算圖像中每一個像素點的運動向量,即建立整幅圖像的光流場。如果場景中沒有運動目標,則圖像中所有像素點的運動向量應該是連續變化的;如果有運動目標,由於目標和背景之間存在相對運動,目標所在位置處的運動向量必然和鄰域(背景)的運動向量不同,從而檢測出運動目標。

    通過計算光流場得到的像素運動向量是由目標和攝像機之間的相對運動產生的。因此該類檢測方法可以適用於攝像機靜止和運動兩種場合。但是光流場的計算過於複雜,而且在實際情況中, 由於光線等因素的影響,目標在運動時,其表面的亮度並不是保持不變的,這就不滿足光流基本約束方程的假設前提,導致計算會出現很大的誤差。光流場法很少應用於實際的

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章