1. 程式人生 > >【影象處理基礎知識】-混合高斯背景建模

【影象處理基礎知識】-混合高斯背景建模

0、高斯模糊原理

-------------------------------------------------------分割線----------------------------------------------------------------

1、一維高斯函式:

高斯函式

a表示得到曲線的高度,b是指曲線在x軸的中心,c指width(與半峰全寬有關),圖形如下:

2、根據一維高斯函式,可以推導得到二維高斯函式:

 


在圖形上,正態分佈是一種鐘形曲線,越接近中心,取值越大,越遠離中心,取值越小。
計算平均值的時候,我們只需要將"中心點"作為原點,其他點按照其在正態曲線上的位置,分配權重,就可以得到一個加權平均值。如:通常,影象處理軟體會提供"模糊"(blur)濾鏡,使圖片產生模糊的效果。

 

"高斯模糊"(Gaussian Blur)。它將正態分佈(又名"高斯分佈")用於影象處理。

 

資料平滑技術(data smoothing),適用於多個場合,影象處理恰好提供了一個直觀的應用例項。

高斯模糊的原理

所謂"模糊",可以理解成每一個畫素都取周邊畫素的平均值。

上圖中,2是中間點,周邊點都是1。

"中間點"取"周圍點"的平均值,就會變成1。在數值上,這是一種"平滑化"。在圖形上,就相當於產生"模糊"效果,"中間點"失去細節。

顯然,計算平均值時,取值範圍越大,"模糊效果"越強烈。

上面分別是原圖、模糊半徑3畫素、模糊半徑10畫素的效果。模糊半徑越大,影象就越模糊。從數值角度看,就是數值越平滑。

接下來的問題就是,既然每個點都要取周邊畫素的平均值,那麼應該如何分配權重呢?

如果使用簡單平均,顯然不是很合理,因為影象都是連續的,越靠近的點關係越密切,越遠離的點關係越疏遠。因此,加權平均更合理,距離越近的點權重越大,距離越遠的點權重越小。

正態分佈的權重

正態分佈顯然是一種可取的權重分配模式。

在圖形上,正態分佈是一種鐘形曲線,越接近中心,取值越大,越遠離中心,取值越小。

計算平均值的時候,我們只需要將"中心點"作為原點,其他點按照其在正態曲線上的位置,分配權重,就可以得到一個加權平均值。

高斯函式

上面的正態分佈是一維的,影象都是二維的,所以我們需要二維的正態分佈。

"高斯函式"(Gaussian function)。它的一維形式是

其中,μ是x的均值,σ是x的方差。因為計算平均值的時候,中心點就是原點,所以μ等於0。

根據一維高斯函式,可以推導得到二維高斯函式

有了這個函式 ,就可以計算每個點的權重了。

權重矩陣

假定中心點的座標是(0,0),那麼距離它最近的8個點的座標如下:

更遠的點以此類推。

為了計算權重矩陣,需要設定σ的值。假定σ=1.5,則模糊半徑為1的權重矩陣如下:

這9個點的權重總和等於0.4787147,如果只計算這9個點的加權平均,還必須讓它們的權重之和等於1,因此上面9個值還要分別除以0.4787147,得到最終的權重矩陣。

計算高斯模糊

有了權重矩陣,就可以計算高斯模糊的值了。

假設現有9個畫素點,灰度值(0-255)如下:

每個點乘以自己的權重值:

得到

將這9個值加起來,就是中心點的高斯模糊的值。

對所有點重複這個過程,就得到了高斯模糊後的影象。如果原圖是彩色圖片,可以對RGB三個通道分別做高斯模糊。

二、高斯(核)函式簡介

1函式的基本概念

所謂徑向基函式 (Radial Basis Function 簡稱 RBF), 就是某種沿徑向對稱的標量函式。 通常定義為空間中任一點x到某一中心xc之間歐氏距離的單調函式 , 可記作 k(||x-xc||), 其作用往往是區域性的 , 即當x遠離xc時函式取值很小。最常用的徑向基函式是高斯核函式 ,形式為 k(||x-xc||)=exp{- ||x-xc||^2/2*σ^2) } 其中xc為核函式中心,σ為函式的寬度引數 , 控制了函式的徑向作用範圍。

 
高斯函式具有五個重要的性質,這些性質使得它在早期影象處理中特別有用.這些性質表明,高斯平滑濾波器無論在空間域還是在頻率域都是十分有效的低通濾波器,且在實際影象處理中得到了工程人員的有效使用.高斯函式具有五個十分重要的性質,它們是:

(1)二維高斯函式具有旋轉對稱性,即濾波器在各個方向上的平滑程度是相同的.一般來說,一幅影象的邊緣方向是事先不知道的,因此,在濾波前是無法確定一個方向上比另一方向上需要更多的平滑.旋轉對稱性意味著高斯平滑濾波器在後續邊緣檢測中不會偏向任一方向.
 
(2)高斯函式是單值函式.這表明,高斯濾波器用畫素鄰域的加權均值來代替該點的畫素值,而每一鄰域畫素點權值是隨該點與中心點的距離單調增減的.這一性 質是很重要的,因為邊緣是一種影象區域性特徵,如果平滑運算對離運算元中心很遠的畫素點仍然有很大作用,則平滑運算會使影象失真.

(3)高斯函式的付立葉變換頻譜是單瓣的.正如下面所示,這一性質是高斯函式付立葉變換等於高斯函式本身這一事實的直接推論.影象常被不希望的高頻訊號所 汙染(噪聲和細紋理).而所希望的影象特徵(如邊緣),既含有低頻分量,又含有高頻分量.高斯函式付立葉變換的單瓣意味著平滑影象不會被不需要的高頻訊號 所汙染,同時保留了大部分所需訊號.

(4)高斯濾波器寬度(決定著平滑程度)是由引數σ表徵的,而且σ和平滑程度的關係是非常簡單的.σ越大,高斯濾波器的頻帶就越寬,平滑程度就越好.通過 調節平滑程度引數σ,可在影象特徵過分模糊(過平滑)與平滑影象中由於噪聲和細紋理所引起的過多的不希望突變數(欠平滑)之間取得折衷.
 

(5)由於高斯函式的可分離性,大高斯濾波器可以得以有效地實現.二維高斯函式卷積可以分兩步來進行,首先將影象與一維高斯函式進行卷積,然後將卷積結果與方向垂直的相同一維高斯函式卷積.因此,二維高斯濾波的計算量隨濾波模板寬度成線性增長而不是成平方增長.

參考:
http://www.ruanyifeng.com/blog/2012/11/gaussian_blur.html

http://www.cnblogs.com/pzxbc/archive/2012/02/14/2351708.html

http://baike.baidu.com/view/1097446.htm?fr=aladdin



1、混合高斯背景建模原理

---------------------------------------------------------分割線--------------------------------------------------------

目前,基於二值化影象提取運動目標仍具有廣泛的應用。但是,在提取運動目標之前必須進行背景建模。

背景建模的方法很多,如平均法,最大值最小值統計法,單高斯建模法,加權平均法等,而混合高斯背景建模應該來說是比較成功的一種。

為什麼這麼說呢? 機器視覺演算法提取運動目標面臨的基本問題:影象抖動,噪聲干擾,光線變化,雲飄動,陰影(包括目標陰影和區域外物體陰影),區域內部反光(如水面,顯示器),運動目標緩慢移動等。那我們來看看,混合高斯背景建模是怎麼解決這些問題的?從混合高斯模型的原理一看便知。

混合高斯模型的原理

  影象中每個畫素點的值(或特徵)短時間內都是圍繞與某一中心值一定距離內分佈,通常,中心值可以用均值來代替,距離呢可以用方差來代替。這種分佈呢是有規律的,根據統計定律,如果資料點足夠多的話,是可以說這些點呈正態分佈,也稱為高斯分佈(取名高斯,大概是因為很多地方都用這個名字吧)。根據這個特點,如果畫素點的值偏離中心值較遠,那麼,這個畫素值屬於前景,如果畫素點的值偏離中心值很近(在一定方差範圍內),那麼可以說這個點屬於背景。理論上,如果不存在任何干擾的話,是可以準確區分前景和背景的。但是,現實往往不盡如人意,如果畫面中光線變化的話,這個高斯分佈的中心位置是會改變的。如果光線強度改變的話,在原來那個位置並沒有無數個點供統計,因此,不符合大數定理,也就不能說那個點的分佈滿足正態分佈了,只能說是近似為高斯分佈。

  混合高斯模型指這個畫素點值存在多箇中心位置,如來回擺動的樹葉,波光粼粼的水面,閃爍的顯示器,影象中特徵邊緣位置的抖動等,這些都會引起某個畫素點會在多箇中心位置聚集大量的點,每個位置便會產生一個高斯分佈,四個以上的高斯分佈其實並不常見,這便是混合高斯模型的由來。混合高斯背景建模主要用來解決背景畫素點具有多峰特性的場合,如在智慧交通場景中,解決視訊畫面抖動帶來的干擾。

  針對光線變化的問題,混合高斯模型通過比較當前畫素點的值與高斯分佈中心位置,選擇一定的加權係數對當前高斯分佈的中心位置進行更新,以便於適應緩慢的光線變。言外之意,高斯分佈並不能解決光線的突變問題,如雲飄動,陰影。個人認為,陰影或雲飄動並不屬於背景建模的內容。

  此外,混合高斯模型尤其適合於檢測緩慢移動的物體,因為背景已是一個高斯分佈,如果車停下來,等到聚集一定的前景資料便會形成一個新的高斯分佈,停下來的車也會便是背景。但是如果車緩慢行駛的話,是很難在短時間內形成一個新的高斯分佈,也就是應用混合高斯分佈很容易檢測緩慢行駛的車輛

混合高斯背景建模的優點

  影象畫面中,其實每個畫素(也可以說是區域性單元),其運動變化特性是不一樣的,這才是混合高斯模型具有優勢的主要原因。普通的二值化目標分割,整個畫面採用同一閾值,無論這個閾值是固定的,還是自適應的,都存在本質性的缺陷,屬於有缺陷的分割,這種演算法帶有不穩定性,無論怎麼調整分割引數,也解決不了根本性的問題。因為,畫面中每個部分,其實分割閾值是不一樣的。一定得建立統計學的方法,進行區域性分割,而混合高斯模型正是採用區域性分割的一種演算法。

混合高斯背景建模方法評價

  從理論上來說,混合高斯背景建模真是一種較為完美的背景分割方法。但是由於畫素值在光線干擾下在中心位置停留時間較短,圍繞這一中心位置波動的資料準確地來說並不屬於高斯分佈,因此也就無法準確地確定這些資料的中心值及方差,造成實際分割的效果並不完美。

  以上闡述屬於個人看法,僅作參考,希望今後能對分割問題理解更深刻,歡迎與大家交流,共同學習!