Open Source Computer Vision
cv::BackgroundSubtractorMOG Class Reference

#include <background_segm.hpp>

Inheritance diagram for cv::BackgroundSubtractorMOG:
cv::BackgroundSubtractor cv::Algorithm

Public Member Functions

 BackgroundSubtractorMOG ()
 the default constructor More...
 BackgroundSubtractorMOG (int history, int nmixtures, double backgroundRatio, double noiseSigma=0)
 the full constructor that takes the length of the history, the number of gaussian mixtures, the background ratio parameter and the noise strength More...
virtual ~BackgroundSubtractorMOG ()
 the destructor More...
virtual void operator() (InputArray image, OutputArray fgmask, double learningRate=0)
 the update operator More...
virtual void initialize (Size frameSize, int frameType)
 re-initiaization method More...
virtual AlgorithmInfoinfo () const
- Public Member Functions inherited from cv::BackgroundSubtractor
virtual ~BackgroundSubtractor ()
 the virtual destructor More...
virtual void getBackgroundImage (OutputArray backgroundImage) const
 computes a background image More...
- Public Member Functions inherited from cv::Algorithm
 Algorithm ()
virtual ~Algorithm ()
string name () const
template<typename _Tp >
ParamType< _Tp >::member_type get (const string &name) const
template<typename _Tp >
ParamType< _Tp >::member_type get (const char *name) const
int getInt (const string &name) const
double getDouble (const string &name) const
bool getBool (const string &name) const
string getString (const string &name) const
Mat getMat (const string &name) const
vector< MatgetMatVector (const string &name) const
Ptr< AlgorithmgetAlgorithm (const string &name) const
void set (const string &name, int value)
void set (const string &name, double value)
void set (const string &name, bool value)
void set (const string &name, const string &value)
void set (const string &name, const Mat &value)
void set (const string &name, const vector< Mat > &value)
void set (const string &name, const Ptr< Algorithm > &value)
template<typename _Tp >
void set (const string &name, const Ptr< _Tp > &value)
void setInt (const string &name, int value)
void setDouble (const string &name, double value)
void setBool (const string &name, bool value)
void setString (const string &name, const string &value)
void setMat (const string &name, const Mat &value)
void setMatVector (const string &name, const vector< Mat > &value)
void setAlgorithm (const string &name, const Ptr< Algorithm > &value)
template<typename _Tp >
void setAlgorithm (const string &name, const Ptr< _Tp > &value)
void set (const char *name, int value)
void set (const char *name, double value)
void set (const char *name, bool value)
void set (const char *name, const string &value)
void set (const char *name, const Mat &value)
void set (const char *name, const vector< Mat > &value)
void set (const char *name, const Ptr< Algorithm > &value)
template<typename _Tp >
void set (const char *name, const Ptr< _Tp > &value)
void setInt (const char *name, int value)
void setDouble (const char *name, double value)
void setBool (const char *name, bool value)
void setString (const char *name, const string &value)
void setMat (const char *name, const Mat &value)
void setMatVector (const char *name, const vector< Mat > &value)
void setAlgorithm (const char *name, const Ptr< Algorithm > &value)
template<typename _Tp >
void setAlgorithm (const char *name, const Ptr< _Tp > &value)
string paramHelp (const string &name) const
int paramType (const char *name) const
int paramType (const string &name) const
void getParams (CV_OUT vector< string > &names) const
virtual void write (FileStorage &fs) const
virtual void read (const FileNode &fn)

Protected Attributes

Size frameSize
int frameType
Mat bgmodel
int nframes
int history
int nmixtures
double varThreshold
double backgroundRatio
double noiseSigma

Additional Inherited Members

- Public Types inherited from cv::Algorithm
typedef Algorithm *(* Constructor) (void)
typedef int(Algorithm::* Getter) () const
typedef void(Algorithm::* Setter) (int)
- Static Public Member Functions inherited from cv::Algorithm
static void getList (CV_OUT vector< string > &algorithms)
static Ptr< Algorithm_create (const string &name)
template<typename _Tp >
static Ptr< _Tp > create (const string &name)

Detailed Description

Gaussian Mixture-based Backbround/Foreground Segmentation Algorithm

The class implements the following algorithm: "An improved adaptive background mixture model for real-time tracking with shadow detection" P. KadewTraKuPong and R. Bowden, Proc. 2nd European Workshp on Advanced Video-Based Surveillance Systems, 2001."

Constructor & Destructor Documentation

§ BackgroundSubtractorMOG() [1/2]

cv::BackgroundSubtractorMOG::BackgroundSubtractorMOG ( )

the default constructor

§ BackgroundSubtractorMOG() [2/2]

cv::BackgroundSubtractorMOG::BackgroundSubtractorMOG ( int  history,
int  nmixtures,
double  backgroundRatio,
double  noiseSigma = 0 

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

§ ~BackgroundSubtractorMOG()

virtual cv::BackgroundSubtractorMOG::~BackgroundSubtractorMOG ( )

the destructor

Member Function Documentation

§ info()

virtual AlgorithmInfo* cv::BackgroundSubtractorMOG::info ( ) const

Reimplemented from cv::Algorithm.

§ initialize()

virtual void cv::BackgroundSubtractorMOG::initialize ( Size  frameSize,
int  frameType 

re-initiaization method

§ operator()()

virtual void cv::BackgroundSubtractorMOG::operator() ( InputArray  image,
OutputArray  fgmask,
double  learningRate = 0 

the update operator

Reimplemented from cv::BackgroundSubtractor.

Member Data Documentation

§ backgroundRatio

double cv::BackgroundSubtractorMOG::backgroundRatio

§ bgmodel

Mat cv::BackgroundSubtractorMOG::bgmodel

§ frameSize

Size cv::BackgroundSubtractorMOG::frameSize

§ frameType

int cv::BackgroundSubtractorMOG::frameType

§ history

int cv::BackgroundSubtractorMOG::history

§ nframes

int cv::BackgroundSubtractorMOG::nframes

§ nmixtures

int cv::BackgroundSubtractorMOG::nmixtures

§ noiseSigma

double cv::BackgroundSubtractorMOG::noiseSigma

§ varThreshold

double cv::BackgroundSubtractorMOG::varThreshold

The documentation for this class was generated from the following file: