OpenCV453
公開メンバ関数 | 全メンバ一覧
cv::BackgroundSubtractorMOG2 クラスabstract

Gaussian Mixture-based Background/Foreground Segmentation Algorithm. [詳解]

#include <background_segm.hpp>

cv::BackgroundSubtractorを継承しています。

公開メンバ関数

virtual CV_WRAP int getHistory () const =0
 Returns the number of last frames that affect the background model
 
virtual CV_WRAP void setHistory (int history)=0
 Sets the number of last frames that affect the background model
 
virtual CV_WRAP int getNMixtures () const =0
 Returns the number of gaussian components in the background model
 
virtual CV_WRAP void setNMixtures (int nmixtures)=0
 Sets the number of gaussian components in the background model. [詳解]
 
virtual CV_WRAP double getBackgroundRatio () const =0
 Returns the "background ratio" parameter of the algorithm [詳解]
 
virtual CV_WRAP void setBackgroundRatio (double ratio)=0
 Sets the "background ratio" parameter of the algorithm
 
virtual CV_WRAP double getVarThreshold () const =0
 Returns the variance threshold for the pixel-model match [詳解]
 
virtual CV_WRAP void setVarThreshold (double varThreshold)=0
 Sets the variance threshold for the pixel-model match
 
virtual CV_WRAP double getVarThresholdGen () const =0
 Returns the variance threshold for the pixel-model match used for new mixture component generation [詳解]
 
virtual CV_WRAP void setVarThresholdGen (double varThresholdGen)=0
 Sets the variance threshold for the pixel-model match used for new mixture component generation
 
virtual CV_WRAP double getVarInit () const =0
 Returns the initial variance of each gaussian component
 
virtual CV_WRAP void setVarInit (double varInit)=0
 Sets the initial variance of each gaussian component
 
virtual CV_WRAP double getVarMin () const =0
 
virtual CV_WRAP void setVarMin (double varMin)=0
 
virtual CV_WRAP double getVarMax () const =0
 
virtual CV_WRAP void setVarMax (double varMax)=0
 
virtual CV_WRAP double getComplexityReductionThreshold () const =0
 Returns the complexity reduction threshold [詳解]
 
virtual CV_WRAP void setComplexityReductionThreshold (double ct)=0
 Sets the complexity reduction threshold
 
virtual CV_WRAP bool getDetectShadows () const =0
 Returns the shadow detection flag [詳解]
 
virtual CV_WRAP void setDetectShadows (bool detectShadows)=0
 Enables or disables shadow detection
 
virtual CV_WRAP int getShadowValue () const =0
 Returns the shadow value [詳解]
 
virtual CV_WRAP void setShadowValue (int value)=0
 Sets the shadow value
 
virtual CV_WRAP double getShadowThreshold () const =0
 Returns the shadow threshold [詳解]
 
virtual CV_WRAP void setShadowThreshold (double threshold)=0
 Sets the shadow threshold
 
virtual CV_WRAP void apply (InputArray image, OutputArray fgmask, double learningRate=-1) CV_OVERRIDE=0
 Computes a foreground mask. [詳解]
 
- 基底クラス cv::BackgroundSubtractor に属する継承公開メンバ関数
virtual CV_WRAP void getBackgroundImage (OutputArray backgroundImage) const =0
 Computes a background image. [詳解]
 
- 基底クラス cv::Algorithm に属する継承公開メンバ関数
virtual CV_WRAP void clear ()
 Clears the algorithm state [詳解]
 
virtual void write (FileStorage &fs) const
 Stores algorithm parameters in a file storage [詳解]
 
CV_WRAP void write (const Ptr< FileStorage > &fs, const String &name=String()) const
 simplified API for language bindings これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。
 
virtual CV_WRAP void read (const FileNode &fn)
 Reads algorithm parameters from a file storage [詳解]
 
virtual CV_WRAP bool empty () const
 Returns true if the Algorithm is empty (e.g. in the very beginning or after unsuccessful read [詳解]
 
virtual CV_WRAP void save (const String &filename) const
 
virtual CV_WRAP String getDefaultName () const
 

その他の継承メンバ

- 基底クラス cv::Algorithm に属する継承静的公開メンバ関数
template<typename _Tp >
static Ptr< _Tp > read (const FileNode &fn)
 Reads algorithm from the file node [詳解]
 
template<typename _Tp >
static Ptr< _Tp > load (const String &filename, const String &objname=String())
 Loads algorithm from the file [詳解]
 
template<typename _Tp >
static Ptr< _Tp > loadFromString (const String &strModel, const String &objname=String())
 Loads algorithm from a String [詳解]
 
- 基底クラス cv::Algorithm に属する継承限定公開メンバ関数
void writeFormat (FileStorage &fs) const
 

詳解

Gaussian Mixture-based Background/Foreground Segmentation Algorithm.

The class implements the Gaussian mixture model background subtraction described in [Zivkovic2004] and [Zivkovic2006] .

関数詳解

◆ apply()

virtual CV_WRAP void cv::BackgroundSubtractorMOG2::apply ( InputArray  image,
OutputArray  fgmask,
double  learningRate = -1 
)
pure virtual

Computes a foreground mask.

引数
imageNext video frame. Floating point frame will be used without scaling and should be in range $[0,255]$.
fgmaskThe output foreground mask as an 8-bit binary image.
learningRateThe value between 0 and 1 that indicates how fast the background model is learnt. Negative parameter value makes the algorithm to use some automatically chosen learning rate. 0 means that the background model is not updated at all, 1 means that the background model is completely reinitialized from the last frame.

cv::BackgroundSubtractorを実装しています。

◆ getBackgroundRatio()

virtual CV_WRAP double cv::BackgroundSubtractorMOG2::getBackgroundRatio ( ) const
pure virtual

Returns the "background ratio" parameter of the algorithm

If a foreground pixel keeps semi-constant value for about backgroundRatio*history frames, it's considered background and added to the model as a center of a new component. It corresponds to TB parameter in the paper.

◆ getComplexityReductionThreshold()

virtual CV_WRAP double cv::BackgroundSubtractorMOG2::getComplexityReductionThreshold ( ) const
pure virtual

Returns the complexity reduction threshold

This parameter defines the number of samples needed to accept to prove the component exists. CT=0.05 is a default value for all the samples. By setting CT=0 you get an algorithm very similar to the standard Stauffer&Grimson algorithm.

◆ getDetectShadows()

virtual CV_WRAP bool cv::BackgroundSubtractorMOG2::getDetectShadows ( ) const
pure virtual

Returns the shadow detection flag

If true, the algorithm detects shadows and marks them. See createBackgroundSubtractorMOG2 for details.

◆ getShadowThreshold()

virtual CV_WRAP double cv::BackgroundSubtractorMOG2::getShadowThreshold ( ) const
pure virtual

Returns the shadow threshold

A shadow is detected if pixel is a darker version of the background. The shadow threshold (Tau in the paper) is a threshold defining how much darker the shadow can be. Tau= 0.5 means that if a pixel is more than twice darker then it is not shadow. See Prati, Mikic, Trivedi and Cucchiara, Detecting Moving Shadows...*, IEEE PAMI,2003.

◆ getShadowValue()

virtual CV_WRAP int cv::BackgroundSubtractorMOG2::getShadowValue ( ) const
pure virtual

Returns the shadow value

Shadow value is the value used to mark shadows in the foreground mask. Default value is 127. Value 0 in the mask always means background, 255 means foreground.

◆ getVarThreshold()

virtual CV_WRAP double cv::BackgroundSubtractorMOG2::getVarThreshold ( ) const
pure virtual

Returns the variance threshold for the pixel-model match

The main threshold on the squared Mahalanobis distance to decide if the sample is well described by the background model or not. Related to Cthr from the paper.

◆ getVarThresholdGen()

virtual CV_WRAP double cv::BackgroundSubtractorMOG2::getVarThresholdGen ( ) const
pure virtual

Returns the variance threshold for the pixel-model match used for new mixture component generation

Threshold for the squared Mahalanobis distance that helps decide when a sample is close to the existing components (corresponds to Tg in the paper). If a pixel is not close to any component, it is considered foreground or added as a new component. 3 sigma => Tg=3*3=9 is default. A smaller Tg value generates more components. A higher Tg value may result in a small number of components but they can grow too large.

◆ setNMixtures()

virtual CV_WRAP void cv::BackgroundSubtractorMOG2::setNMixtures ( int  nmixtures)
pure virtual

Sets the number of gaussian components in the background model.

The model needs to be reinitalized to reserve memory.


このクラス詳解は次のファイルから抽出されました: