【背景建模】SACON

  SACON(SAmple CONsensus)算法是基於樣本一致性的運動目標檢測算法。該算法經過對每一個像素進行樣本一致性判斷來斷定像素是否爲背景。算法

算法框架圖框架

  

  由上圖可知,該算法主要分爲四個主要部分,分別是鄰域差分、SACON算法核心處理、空洞填充後處理、TOM(Time Out Map),其中TOM(Time Out Map)主要用於背景模型更新,其餘部分屬於前景目標檢測。.net

背景模型創建3d

  SACON算法創建背景模型的方法是直接取視頻序列的前N幀做爲背景模型視頻

  對於每一個像素而言,其背景模型能夠表示爲:C(c1,c2,...,cN),對於彩色圖像,ci=(r,g,b),對於灰度圖像,則對應於灰度值。blog

前景目標檢測圖片

1.鄰域幀間差分ci

  爲了減小計算量,加快計算速度,採用鄰域幀間差分法提取可能的運動像素。get

2.SACON算法核心io

  對於新像素,將其與對應的背景模型比較,判斷新像素是否知足背景模型樣本的一致性。斷定方法以下:

  

  其中,兩個公式分別計算新像素與背景模型的樣本是否距離相近和統計距離相近的樣本數目,當距離相近的樣本數目大於閾值時,則斷定新像素爲背景,Bt(m) = 1。

  公式涉及的閾值主要有Tr和Tn當背景模型的樣本集合的數目N越大,距離閾值Tr越大,則近似樣本數目閾值Tn越大,於是Tn正比於N和Tr,Tn = a * N * Tr,a爲比例因子。

3.後處理

  後處理主要包括兩個操做:陰影去除和空洞填充。

  陰影去除:採用進一步的驗證規則,去除陰影區域,驗證規則以下:

  

  其中,{r,g,I}是歸一化的色彩空間,r = R/(R+G+B), g = G/(R+G+B),I = (R+G+B)/3,具體細節請參考論文資料。

  空洞填充:對於檢測到的前景,採用連通性分析,填充前景區域的內部空洞,主要經過形態學濾波實現。

背景模型更新

  考慮到背景的移出或前景的中止,SACON算法採用TOM(Time of Map)進行處理,將背景的移出和運動目標的中止而引發的變化很快的融入到背景中,具體的更新方法分爲Pixel-level和Blob-level。

1.Pixel-level

  

  該方法主要統計像素m連續分爲前景的次數,TOMt(m)。

  若是TOMt(m)的值超過一個閾值,則更新像素m對應的背景模型。

2.Blob-level

  

  若是一個目標(a blob)處於靜止狀態,則該目標所包含的全部像素的TOM都加1;

  若是不處於靜止狀態,則該目標所包含的全部像素的TOM都置爲0;

  若是目標的TOM值大於閾值時,則該目標所包含的全部像素更新爲背景像素。

  Blob-level的更新方法,主要是彌補Pixel-level的不足,當一個目標包含運動的部分和不運動的部分,不運動的部分會持續被斷定會前景,從而會被Pixel-level更新爲背景;而運動的部分會時而被斷定爲前景,時而斷定爲背景,不會被Pixel-level更新爲背景;最終的更新後結果是一個目標被分割,部分被檢測爲前景,部分被檢測爲背景,不合理。

  Blob-level經過總體判斷目標是否處於運動或靜止,從而總體更新目標,保證了目標的完整性。

  

  如上圖所示,描述一我的走入房間,坐下並打電話,打電話過程當中,人大部分區域處於靜止狀態,只有部分區域處於輕微運動狀態。

  (a)是原始圖片,(b)是利用Pixel-level更新方法後的檢測結果,(c)是結合Pixel-level和Blob-level更新方法的檢測結果。

  由顯示結果能夠看出,Pixel-level將處於靜止狀態的區域更新爲背景,而Blob-level方法斷定人總體處於運動狀態,於是人未被更新爲背景。

注意:

1.背景更新時,背景模型樣本集合的替換策略未說明,是先進先出,仍是隨機替換,每次替換的數目也未說明。

2.如何斷定一個目標(a blob)是處於運動狀態,仍是處於靜止狀態,文中只是提到能夠利用目標的中心和像素的數目斷定,但具體的策略也未說明。

參考資料:

http://blog.csdn.net/kezunhai/article/details/9500637

http://www.dotblogs.com.tw/dragon229/archive/2012/01/13/65615.aspx

Background Subtraction Based on a Robust Consensus Method

SACON: A Consensus Based Model for Background Subtraction

相關文章
相關標籤/搜索