OpenCV混合高斯背景建模

2021-07-15 15:03:44 字數 1419 閱讀 8119

本文主要內容是乙個混合高斯背景建模[1]的opencv例子。

想要了解mog原理可以參考混合高斯背景建模原理及實現

opencv的mog例子**如下:

#include "stdafx.h"

#include

#include

#include

#include

#include

#include

#include

#include

using

namespace cv;

using

namespace

std;

bool pause = false;//是否暫停

int framenum = 0;

int main()

return

0;}

建構函式可以使用預設建構函式或帶形參的建構函式,呼叫的介面只有過載操作符():

//! the default constructor

cv_wrap backgroundsubtractormog();

//! the full constructor that takes the length of the history, the number of gaussian mixtures, the background ratio parameter and the noise strength

cv_wrap backgroundsubtractormog(int history, int nmixtures, double backgroundratio, double noisesigma=0);

//! the destructor

virtual ~backgroundsubtractormog();

//! the update operator

virtual

void

operator()(inputarray image, outputarray fgmask, double learningrate=0);

函式呼叫所涉及到的引數得根據實際應用場景進行調整,下面幾張圖只是簡單的前景檢測結果:

混合高斯背景建模(opecv)

混合高斯背景建模是基於畫素樣本統計資訊的背景表示方法,利用畫素在較長時間內大量樣本值的概率密度等統計資訊 如模式數量 每個模式的均值和標準差 表示背景,然後使用統計差分 如3 原則 進行目標畫素判斷,可以對複雜動態背景進行建模,計算量較大。在混合高斯背景模型 高斯分布 來描述每個畫素點的顏色呈現規律...

高斯混合背景建模的改進方案

高斯混合背景建模原理 1 stauffer提出自適應混合高斯背景建模,通過融入幀間差分把每幀中的影象區分為背景區域 背景顯露區域和運動物體區域。相對於背景區域,背景顯露區中的畫素點將以大的更新率更新背景模型,使得長時間停滯物體由背景變成運動前景時,被遮擋的背景顯露區被快速恢復。劉鑫,劉輝,強振平,等...

matlab 混合高斯背景建模的實現

clc clear 混合高斯背景建模 引數 gauss n 3 每個畫素點高斯背景模型數量 a 0.005 學習速率 alpha vt 2.5 2 方差閾值 2.5 2.5倍的方差varthreshold bgr 0.7 背景比率 backgroundratio w0 0.05 初始權值 weigh...