高海壯 段先華
(江蘇科技大學計算機學院 鎮江 212000)
在計算機視覺和圖像處理領域中,海上運動目標追蹤是一個重要的研究課題。海上運動目標的自動檢測技術在海防安全、海關管理、海上緝私以及港口船只調度等場合有重要的用途和意義。
海上運動目標的自動檢測在雷達以及紅外成像的圖像序列中,開展較為順利,但在最為普遍的可見光視頻圖像序列中,開展的比較困難。這是因為海上存在大量的波浪噪聲,因此若直接采用傳統的運動檢測技術,往往會將這些波浪也檢測為運動物體,導致大量的誤檢。常用的運動目標檢測方法有光流法[1]、幀間差分法[2]、背景減除法[3]。其中,背景減除法是目前最常見的方法。光流法算法復雜、需要特殊的硬件支持、實時性較差。幀間差分法是將相鄰的兩幀圖像對應像素點進行相減而得到運動目標,能夠適應光照突變,具有較小的計算量,但抗噪聲性能較差、易出現空洞現象。背景差分法是將當前幀與背景模型進行差分操作來實現對運動目標的檢測,該算法準確性高、易于實現、檢測速度快,但是由于實際場景的復雜多變,而且存在著各種噪聲干擾,造成背景建模的難度增加。文獻[4]提出了在混合高斯建立背景模型時對方差更新作了修改和用采取自適應閾值的連續三幀差分的結果融合并作形態學處理提取目標,算法能有效抑制噪聲和空洞,適應性強;文獻[5]提出了一種基于高斯混合模型和鄰域信息項融合的海面運動目標檢測算法,在對強光和不同氣候環境有較好的魯棒性;文獻[6]提出了利用前n幀視頻圖像的中值構造海面背景圖像,并提出相應的背景更新策略,實現了海水養殖海域非法侵入目標的自動檢測;文獻[4~6]都提出了改進的方法,但也存在一些缺點:1)對每個點孤立地建立多個模型,忽視了點的空間位置,導致算法復雜,計算量大,不利于實時處理;2)沒有對學習率進行改進,使得固定的學習率對復雜場景的適應能力較差。文獻[7]提出了在靜態圖像中分割出感興趣區域(ROI),繼而僅在感興趣區域中應用變形的時間差分法來檢測運動目標,由于粗分辨率上的平滑作用,使得該方法不利于海上場景中小目標的檢測;文獻[8]提出在提出在單幀圖像中采用Sobel算子計算梯度圖像從而分割出感興趣區域,然后從感興趣區域出發,根據連續幀間的感興趣區域的中心點是否移動來判斷物體是否運動,從而找出運動的目標,但由于八連通分析的時間復雜度較大,比較難實現實時檢測。
在前人的基礎上,本文從提出了一種把三幀差分法和改進的混合高斯背景模型結合起來,用三幀差分法代替兩幀差分法,提高檢測的靈敏度和一定程度上消除“空洞”;再根據相鄰像素之間的相似性進行區域分塊,并使用自適應的學習率。通過上述步驟,本文算法能較好地檢測運動目標并具有較強的魯棒性。
2.1.1 模型建立

混合高斯模型是由 Stauffer[9]等提出,它對圖像中的每個像素點用Κ個多維高斯分布組成的混合高斯模型來建模,即:式中,μk,t為t時刻第k個高斯分布的均值;∑k,t為t時刻第k個高斯分布的協方差矩陣;|Σ|是Σ的行列式;ωk,t為t時刻第k個高斯分布的權重,且有權重;Κ取值越大,越能描述更復雜的背景,背景模型的抗干擾能力越強,但也增加了計算量,影響力實時的效果。Κ一般取值3~5之間,本文取3;η為第k個高斯分布在t時刻的高斯密度函數;n為像素It的變量的維數,灰色圖像一般用灰度值描述每個像素,此時取n=1。
2.1.2 模型匹配和參數更新
當t+1時刻新一幀圖像的像素點到來時,將It+1分別與Κ個高斯分布的均值 μk,t做匹配,匹配的規則為:

式中:μk,t和 σk,t分別為第k個高斯分布在t時刻的均值和標準差。λ是一個根據經驗自定義的參數,在實際應用中一般取2.5。若滿足上述規則,則認為It+1與第k個高斯函數匹配,否則,不匹配。
匹配會出現兩種情況:1)當高斯混合模型的k個高斯模型中的一個或幾個與像素It+1相匹配時,則按照如下方法更新該高斯分布的參數:

式中:α為學習速率,其值在0~1之間;Z為偏置,對于與當前像素值匹配的高斯分布,Z=1,否則Z=0。通過這個式子將導致匹配的高斯分布權重值增加,而不匹配的高斯分布權重值減小。β為均值和方差的更新速率。
2)當像素It+1與k個高斯模型都不匹配時,則將其混合高斯模型中權重最小的那個模型用一個新的模型取代。新模型以It+1為均值,并初始化一個較大的標準差和一個較小的權重。其中不匹配的高斯模型保持均值和方差不變,權重按式(4)更新。
2.1.3 權重的歸一化和背景估計
為提高背景模型的可靠程度,需要對權重進行歸一化處理,即:

將高斯分布按照ωσ的值從大到小排列,取優先級較高的前B個分布作為混合高斯的背景模型:

式中:T為閾值,代表背景模型占所有高斯分布的最小比例,一般取值為0.7~0.8。
2.1.4 前景分割
在進行前景檢測時,選取的B個高斯分布作為背景模型后,將t+1時刻的像素值It+1與B個高斯背景模型做匹配,匹配規則按照式(3),如果像素值It+1與背景模型中的任何一個分布相匹配,則該像素點為背景點,否則為前景點。
幀間差分法是把相鄰連續的兩幀或者三幀圖像做差分處理,通過閾值比較,從而獲得運動目標。差分規則如下:

式中:dt為二值圖像;T1為分割閾值。像素值為0被認背景點,像素值為1被認為前景點。T1的取值影響到對后續運動目標的處理。若差分圖像的某點像素值小于設定的閾值,就認為該點是靜止的;否則,就認為該點是運動的。
由于用連續兩幀進行差分,存在如下兩個缺點:1)檢測結果是兩幀圖像中變化的信息,檢測出來的目標點要比實際的目標范圍要大;2)差分結果會導致兩幀重疊的部分被減掉,從而會出現運動目標的“空洞”。
三幀差分法[10]算法簡單,運算速度快,靈敏度高,能快速的檢測出運動區域,消除背景顯露區域[11],比連續兩幀差分法有明顯改進。三幀差分法的運算規則如下:將連續相鄰的三幀圖像 ft-1,ft,ft+1兩兩做差分,通過閾值比較得到二值圖像d1,d2,最后再對二值圖像做與操作,從而可以檢測出變化的區域。具體計算公式如下:


閾值的選取直接影響到運動目標的提取和分割,T2的選值過小,會引入大量的噪聲點,T2的選值過大,會導致小的運動目標漏檢。同時復雜的自適應閾值會造成計算上的負擔。通常背景區域的像素值變化較小同時受噪聲的影響滿足高斯分布,對于滿足高斯分布的數據服從3σ準則,所以閾值可以設定為T2=3σ+μ,其中σ和μ分別表示差分背景圖像的方差和均值。
由于三幀差分法是對兩兩差分圖像進行與運算,它能夠自動消除上一幀被運動目標覆蓋而在下一幀顯露出來的背景區域。通常場景中往往會存在一些周期性反復運動的干擾物體,比如水面的波動、搖擺的樹枝和飄動的旗幟等[12]。所以在運動目標出現時,檢測到的目標通常包含運動目標自身和由干擾物體引起的變化區域。傳統的混合高斯背景模型因采用固定學習率,不能有效消除此類干擾。為解決此類問題,將存在干擾物體的區域從變化區域中消除,可以把當前幀分為背景區域、干擾區域和目標區域。
3.2.1 背景區域的區分
在相對固定的場景下,很多相鄰像素點的像素值相同或者相近,其對應的模型參數也相同或者相近,所以可以用一個模型代替這些相鄰像素點。文獻[13]中證明了利用相鄰像素間的相關性提取運動目標是一條有效途徑。通過引入分塊模型的思想,對t時刻大小為h×g的圖像 ft,從左到右,從上到下,分成大小為 h′×g′的 h″×g″個區域 OX。
對三幀差分法得到的二值圖像dt中區域進行統計,其方法如下:對二值圖像dt中的區域OX進行逐行掃描,統計OX中值為1像素點的個數nk,再用nk除以OX區域像素點的總個數h′×g′,就可以得到變化區域占區域面積的近似比值。通過閾值比較可以判定該區域屬于背景區域還是變化區域。判斷準則如下:

其中:Obg,Obh分別表示背景區域和變化區域。區域OX如果選取過小,將會增加計算量,選取過大,則會將較小的目標錯誤地判別為背景區域,容易造成漏檢。閾值T3的選取越小,對檢測結果的精度會有所提高。
3.2.2 變化區域的區分
可以取視頻圖像的前M幀,然后統計變化區域Obh在M幀出現的次數nl,通過閾值的比較,可以判定此區域為干擾區域還是目標區域,判別規則如下:

其中:Omb,Ogr分別表示目標區域和干擾區域。
3.2.3 自適應學習率的選取
由前面介紹的混合高斯背景模型可知,更新率β的大小由學習率α的大小決定。傳統模型中固定的學習率對復雜場景的適應能力較差。如果α取值過小,適應環境的變化能力較低,不能迅速跟上實際背景的變化;如果α取值過大,適應環境的變化能力較強,但很容易引入大量的噪聲。綜上所述,需要對不同的區域采取不同的更新策略來應對復雜場景的變化[14~16]。
1)賦予背景區域中像素點對應的多維混合高斯分布模型較小的學習率αbg,可以保持背景區域的穩定性,以免引入噪聲。
2)賦予目標區域極低的學習率αmb,減少運動目標對背景的影響。
3)賦予干擾區域較大的學習率αgr,這樣匹配的高斯分布將獲得較大的權值和較小的方差,其優先級迅速提高,而其他的高斯分布權值將會減小,優先級也相應地降低,所以匹配的高斯分布影響背景的權重將加大,使干擾區域迅速跟上背景的變化。學習率αgr更新策略如下:

式中:γ為偏置系數,取1.5;n為當前通過的幀數。
將目標區域中像素點與各自的高斯分布模型進行匹配,如果匹配,則認為該變化點是由背景擾動引起的;如與所有的高斯模型都不匹配,則認為該變化點是由運動物體本身引起的,是前景點;最后再對提取出的運動目標進行后續處理(如去噪、形態學處理)工作,就可以得到完整的運動目標。
實驗使用的是攝像機在室外采集的兩組海面視頻圖像作為實驗素材,為了驗證本文算法的有效性,實驗平臺為VC++2012和OpenCV3.0。混合高斯背景模型的參數K為3;初始方差為30;α為0.02。實驗對混合高斯模型、兩幀差分法、三幀差分法和本文方法做了對比。圖1(a)為原始視頻的第257幀的圖像。
圖1(b)是混合高斯背景模型對原始視頻的第257幀處理的結果。實驗表明,由于海上存在較大風浪,高斯模型對場景中周期性反復運動的干擾物,有一定的適應能力,且運動目標檢測輪廓較完整,但對這較大的干擾也會存在誤檢。
圖1(c)是兩幀差分法對原始視頻的第257幀處理的結果。可以看出不僅存在很多的噪聲干擾,抗干擾能力較低,而且運動目標輪廓非常稀疏。
圖1(d)是三幀差分法對原始視頻的第257幀處理的結果。可以看出檢測效果靈敏度提高,能檢測到目標的大部分,有效地消除兩幀差分法帶來的“空洞”現象。
圖1(e)是本文方法對原始視頻的第257幀處理的結果。涉及到實驗的幾個參數:1)閾值T3的選取:閾值越小,運動目標屬于變化區域的像素點就越多,這樣可以提高檢測精度,本文閾值選取0.4合適,檢測效果較好。2)變化區域M和T4的選取:過多的幀數會加大計算的量,對檢測的精度沒有明顯的提高,通常實驗M取值為10,T4為5即可。3)學習率的選取:αbg=0.01,αmb=0.002。實驗結果表明,本文算法對干擾區域進行了判斷,沒有產生誤檢,很好地消除了虛假的干擾目標,正確檢測出了運動目標。

圖1 實驗結果
針對復雜背景下的海上視頻圖像運動目標的檢測問題,首先對混合高斯背景模型法和幀間差分法進行分析,探討了他們各自存在的檢測缺點。提出了一種三幀差分法和改進的混合高斯背景模型相結合的算法。利用相鄰像素間的相關性,把每幀圖像劃分為背景區域、干擾區域和目標區域,對不同的區域采取不同的更新策略,從而實現模型的自適應學習。實驗表明,該算法對海面場景中的復雜噪聲也有良好的去噪效果,同時對環境有較好的魯棒性。