MCD5.8ms-Detection of Moving Objects with Non-Stationary Cameras in 5.8ms: Bringing Motion Detection
- CVPR2013的文章
- 專案地址https://sites.google.com/view/kiminyun/profile
- 下載下來的軟體有個隱藏的bug,程式能用,但是卡在第一幀,我猜是因為演算法對視訊解析度有要求,根據對演算法研究,輸入影象解析度必須是4(grid的大小)的倍數,854*480不行但裁剪成852*480就可以。
- 運動目標檢測
- 基於單高斯分佈
- 那個精度很高,但是召回很低,因為這種方法對於網格大小劃分敏感,同時對最後的判別引數敏感,只要前景和背景稍稍相似,就檢測不出來,這是基於SGM的通病
- 速度是槓槓的
1方法介紹
1.1single Gaussian model (SGM) with age
隨時間變化的單高斯模型
首先把影象按進行網格分割
總共個格子
網格中的畫素數目為
畫素點的亮度為
網格中的亮度均值為,方差,年齡
更新:
1.2Dual-Mode SGM
原理
演算法對每個grid維持兩個SGM
Apparent Background Model :,,
Candidate Background Model:,,
更新策略:
如果 則更新 Apparent Background Model
如果 則更新 Candidate Background Model
如果 則用Candidate Background Model 替代 Apparent Background Model,Candidate Background Model重初始化
其它情況則同時重初始化兩個SGM
作用
使用單個SGM對背景進行建模,在簡單的情況時有不錯的效果,但是當使用大的學習率時,背景模型容易受到前景畫素的汙染。
我們方法中使用了變化的學習率,因此有較大的學習率是很常見的。
比如在初始化時,所有畫素年齡設為1,這時意味著在下一幀,這些畫素的學習率為0.5。比如在下一幀中,前景和背景的分佈分別為均值1,方差0.5 的高斯分佈和 均值2.5,方差0.5 的高斯分佈。如下圖所示,左邊是單一SGM的更新結果,整個分佈被前景所汙染,但是如右圖所示,使用Dual-ModeSGM後,由於前景分佈不符合Apparent Background Model更新的條件,Apparent Background Model不更新,而Candidate Background Model則更新為前景分佈。
1.3基於模型融合的運動補償
KLT+RANSAC求單應性矩陣,根據單應性矩陣得到一箇中心點在下一幀的位置,該位置四周有四個分佈,根據位置關係加權融合四個分佈得到新分佈,如下圖所示。
權重計算用∩面積。
2實驗
實驗的資料集是一篇論文裡的,文獻[8],自己加了一個,還有一個是YouTube上的