OpenCV 5.0.0
Open Source Computer Vision
読み込み中...
検索中...
見つかりません
🤖 AIによる機械翻訳(非公式) — これは OpenCV 5.0.0 公式リファレンス(英語)を AI (Claude) で自動翻訳したものです。訳に誤りを含む場合があります。正確な情報は 公式英語版(原文) を参照してください。
cv::BackgroundSubtractorMOG2 クラスabstract

ガウス混合モデルに基づく背景/前景セグメンテーション Algorithmさらに詳しく...

#include <opencv2/video/background_segm.hpp>

Collaboration diagram for cv::BackgroundSubtractorMOG2:

公開メンバ関数

virtual void apply (InputArray image, InputArray knownForegroundMask, OutputArray fgmask, double learningRate=-1) CV_OVERRIDE=0
 前景マスクを計算し、評価時に既知の前景をスキップする。
 
virtual void apply (InputArray image, OutputArray fgmask, double learningRate=-1) CV_OVERRIDE=0
 前景マスクを計算する。
 
virtual double getBackgroundRatio () const =0
 アルゴリズムの「背景比率(background ratio)」パラメータを返す。
 
virtual double getComplexityReductionThreshold () const =0
 複雑度低減のしきい値を返す。
 
virtual bool getDetectShadows () const =0
 影検出フラグを返す。
 
virtual int getHistory () const =0
 背景モデルに影響する直近フレーム数を返す。
 
virtual int getNMixtures () const =0
 背景モデルにおけるガウス成分の数を返す。
 
virtual double getShadowThreshold () const =0
 影のしきい値を返す。
 
virtual int getShadowValue () const =0
 影の値を返す。
 
virtual double getVarInit () const =0
 各ガウス成分の初期分散を返す。
 
virtual double getVarMax () const =0
 
virtual double getVarMin () const =0
 
virtual double getVarThreshold () const =0
 ピクセルとモデルのマッチングに用いる分散しきい値を返す。
 
virtual double getVarThresholdGen () const =0
 新しい混合成分の生成に用いる、ピクセルとモデルのマッチングのための分散しきい値を返す。
 
virtual void setBackgroundRatio (double ratio)=0
 アルゴリズムの「背景比率(background ratio)」パラメータを設定する。
 
virtual void setComplexityReductionThreshold (double ct)=0
 複雑度低減のしきい値を設定する。
 
virtual void setDetectShadows (bool detectShadows)=0
 影検出を有効または無効にする。
 
virtual void setHistory (int history)=0
 背景モデルに影響する直近フレーム数を設定する。
 
virtual void setNMixtures (int nmixtures)=0
 背景モデルにおけるガウス成分の数を設定する。
 
virtual void setShadowThreshold (double threshold)=0
 影のしきい値を設定する。
 
virtual void setShadowValue (int value)=0
 影の値を設定する。
 
virtual void setVarInit (double varInit)=0
 各ガウス成分の初期分散を設定する。
 
virtual void setVarMax (double varMax)=0
 
virtual void setVarMin (double varMin)=0
 
virtual void setVarThreshold (double varThreshold)=0
 ピクセルとモデルのマッチングに用いる分散しきい値を設定する。
 
virtual void setVarThresholdGen (double varThresholdGen)=0
 新しい混合成分の生成に用いる、ピクセルとモデルのマッチングのための分散しきい値を設定する。
 
- Public Member Functions inherited from cv::BackgroundSubtractor
virtual void getBackgroundImage (OutputArray backgroundImage) const =0
 背景画像を計算する。
 
- Public Member Functions inherited from cv::Algorithm
 Algorithm ()
 
virtual ~Algorithm ()
 
virtual void clear ()
 アルゴリズムの状態をクリアする。
 
virtual bool empty () const
 Algorithm が空の場合(たとえば開始直後や読み込みに失敗した後)に true を返す。
 
virtual String getDefaultName () const
 
virtual void read (const FileNode &fn)
 ファイルストレージからアルゴリズムの引数を読み込む。
 
virtual void save (const String &filename) const
 
virtual void write (FileStorage &fs) const
 アルゴリズムの引数をファイルストレージに保存する。
 
void write (FileStorage &fs, const String &name) const
 

Additional Inherited Members

- Static Public Member Functions inherited from cv::Algorithm
template<typename _Tp >
static Ptr< _Tpload (const String &filename, const String &objname=String())
 ファイルからアルゴリズムを読み込む。
 
template<typename _Tp >
static Ptr< _TploadFromString (const String &strModel, const String &objname=String())
 文字列からアルゴリズムを読み込む。
 
template<typename _Tp >
static Ptr< _Tpread (const FileNode &fn)
 ファイルノードからアルゴリズムを読み込む。
 
- Protected Member Functions inherited from cv::Algorithm
void writeFormat (FileStorage &fs) const
 

詳細説明

ガウス混合モデルに基づく背景/前景セグメンテーション Algorithm

本クラスは、[335] および [334] に記載されたガウス混合モデルによる背景差分を実装する。

メンバ関数詳解

◆ apply() [1/2]

virtual void cv::BackgroundSubtractorMOG2::apply ( InputArray image,
InputArray knownForegroundMask,
OutputArray fgmask,
double learningRate = -1 )
pure virtual
Python:
cv.BackgroundSubtractorMOG2.apply(image[, fgmask[, learningRate]]) -> fgmask
cv.BackgroundSubtractorMOG2.apply(image, knownForegroundMask[, fgmask[, learningRate]]) -> fgmask

前景マスクを計算し、評価時に既知の前景をスキップする。

引数
image次のビデオフレーム。浮動小数点のフレームはスケーリングせずに使用され、\([0,255]\) の範囲でなければならない。
fgmask8ビットのバイナリ画像としての出力前景マスク。
knownForegroundMask既知の前景を入力するためのマスクであり、モデルがピクセルを無視できるようにする。
learningRate背景モデルがどれだけ速く学習されるかを示す0〜1の値。負のパラメータ値を指定すると、アルゴリズムは自動的に選択された学習率を使用する。0は背景モデルがまったく更新されないことを意味し、1は背景モデルが直前のフレームから完全に再初期化されることを意味する。

cv::BackgroundSubtractor を実装する。

◆ apply() [2/2]

virtual void cv::BackgroundSubtractorMOG2::apply ( InputArray image,
OutputArray fgmask,
double learningRate = -1 )
pure virtual
Python:
cv.BackgroundSubtractorMOG2.apply(image[, fgmask[, learningRate]]) -> fgmask
cv.BackgroundSubtractorMOG2.apply(image, knownForegroundMask[, fgmask[, learningRate]]) -> fgmask

前景マスクを計算する。

引数
image次のビデオフレーム。浮動小数点のフレームはスケーリングせずに使用され、\([0,255]\) の範囲でなければならない。
fgmask8ビットのバイナリ画像としての出力前景マスク。
learningRate背景モデルがどれだけ速く学習されるかを示す0〜1の値。負のパラメータ値を指定すると、アルゴリズムは自動的に選択された学習率を使用する。0は背景モデルがまったく更新されないことを意味し、1は背景モデルが直前のフレームから完全に再初期化されることを意味する。

cv::BackgroundSubtractor を実装する。

◆ getBackgroundRatio()

virtual double cv::BackgroundSubtractorMOG2::getBackgroundRatio ( ) const
pure virtual
Python:
cv.BackgroundSubtractorMOG2.getBackgroundRatio() -> retval

アルゴリズムの「背景比率(background ratio)」パラメータを返す。

前景ピクセルが約 backgroundRatio*history フレームの間ほぼ一定の値を保つと、そのピクセルは背景とみなされ、新しい成分の中心としてモデルに追加される。これは論文中のTBパラメータに対応する。

◆ getComplexityReductionThreshold()

virtual double cv::BackgroundSubtractorMOG2::getComplexityReductionThreshold ( ) const
pure virtual
Python:
cv.BackgroundSubtractorMOG2.getComplexityReductionThreshold() -> retval

複雑度低減のしきい値を返す。

このパラメータは、成分の存在を証明するために受け入れに必要なサンプル数を定義する。CT=0.05 がすべてのサンプルに対するデフォルト値である。CT=0 と設定すると、標準的なStauffer&Grimsonアルゴリズムに非常に近いアルゴリズムが得られる。

◆ getDetectShadows()

virtual bool cv::BackgroundSubtractorMOG2::getDetectShadows ( ) const
pure virtual
Python:
cv.BackgroundSubtractorMOG2.getDetectShadows() -> retval

影検出フラグを返す。

true の場合、アルゴリズムは影を検出してマークする。詳細は createBackgroundSubtractorMOG2 を参照。

◆ getHistory()

virtual int cv::BackgroundSubtractorMOG2::getHistory ( ) const
pure virtual
Python:
cv.BackgroundSubtractorMOG2.getHistory() -> retval

背景モデルに影響する直近フレーム数を返す。

◆ getNMixtures()

virtual int cv::BackgroundSubtractorMOG2::getNMixtures ( ) const
pure virtual
Python:
cv.BackgroundSubtractorMOG2.getNMixtures() -> retval

背景モデルにおけるガウス成分の数を返す。

◆ getShadowThreshold()

virtual double cv::BackgroundSubtractorMOG2::getShadowThreshold ( ) const
pure virtual
Python:
cv.BackgroundSubtractorMOG2.getShadowThreshold() -> retval

影のしきい値を返す。

ピクセルが背景のより暗いバージョンである場合に影が検出される。影のしきい値(論文中のTau)は、影がどの程度暗くなり得るかを定義するしきい値である。Tau=0.5 は、ピクセルが2倍より暗ければ影ではないことを意味する。Prati, Mikic, Trivedi and Cucchiara, Detecting Moving Shadows...*, IEEE PAMI,2003 を参照。

◆ getShadowValue()

virtual int cv::BackgroundSubtractorMOG2::getShadowValue ( ) const
pure virtual
Python:
cv.BackgroundSubtractorMOG2.getShadowValue() -> retval

影の値を返す。

影の値は、前景マスク内で影をマークするために使用される値である。デフォルト値は127である。マスク内の値0は常に背景を意味し、255は前景を意味する。

◆ getVarInit()

virtual double cv::BackgroundSubtractorMOG2::getVarInit ( ) const
pure virtual
Python:
cv.BackgroundSubtractorMOG2.getVarInit() -> retval

各ガウス成分の初期分散を返す。

◆ getVarMax()

virtual double cv::BackgroundSubtractorMOG2::getVarMax ( ) const
pure virtual
Python:
cv.BackgroundSubtractorMOG2.getVarMax() -> retval

◆ getVarMin()

virtual double cv::BackgroundSubtractorMOG2::getVarMin ( ) const
pure virtual
Python:
cv.BackgroundSubtractorMOG2.getVarMin() -> retval

◆ getVarThreshold()

virtual double cv::BackgroundSubtractorMOG2::getVarThreshold ( ) const
pure virtual
Python:
cv.BackgroundSubtractorMOG2.getVarThreshold() -> retval

ピクセルとモデルのマッチングに用いる分散しきい値を返す。

サンプルが背景モデルでよく記述されているかどうかを判定するための、二乗マハラノビス距離に対する主要なしきい値。論文中の Cthr に関連する。

◆ getVarThresholdGen()

virtual double cv::BackgroundSubtractorMOG2::getVarThresholdGen ( ) const
pure virtual
Python:
cv.BackgroundSubtractorMOG2.getVarThresholdGen() -> retval

新しい混合成分の生成に用いる、ピクセルとモデルのマッチングのための分散しきい値を返す。

サンプルが既存成分に近いかどうかを判定するのに役立つ二乗マハラノビス距離のしきい値(論文中の Tg に対応)。ピクセルがどの成分にも近くない場合、前景とみなされるか、新しい成分として追加される。3シグマ => Tg=3*3=9 がデフォルトである。Tg の値が小さいほど多くの成分が生成される。Tg の値が大きいと成分数は少なくなるが、各成分が大きくなりすぎることがある。

◆ setBackgroundRatio()

virtual void cv::BackgroundSubtractorMOG2::setBackgroundRatio ( double ratio)
pure virtual
Python:
cv.BackgroundSubtractorMOG2.setBackgroundRatio(ratio) -> None

アルゴリズムの「背景比率(background ratio)」パラメータを設定する。

◆ setComplexityReductionThreshold()

virtual void cv::BackgroundSubtractorMOG2::setComplexityReductionThreshold ( double ct)
pure virtual
Python:
cv.BackgroundSubtractorMOG2.setComplexityReductionThreshold(ct) -> None

複雑度低減のしきい値を設定する。

◆ setDetectShadows()

virtual void cv::BackgroundSubtractorMOG2::setDetectShadows ( bool detectShadows)
pure virtual
Python:
cv.BackgroundSubtractorMOG2.setDetectShadows(detectShadows) -> None

影検出を有効または無効にする。

◆ setHistory()

virtual void cv::BackgroundSubtractorMOG2::setHistory ( int history)
pure virtual
Python:
cv.BackgroundSubtractorMOG2.setHistory(history) -> None

背景モデルに影響する直近フレーム数を設定する。

◆ setNMixtures()

virtual void cv::BackgroundSubtractorMOG2::setNMixtures ( int nmixtures)
pure virtual
Python:
cv.BackgroundSubtractorMOG2.setNMixtures(nmixtures) -> None

背景モデルにおけるガウス成分の数を設定する。

メモリを確保するためにモデルの再初期化が必要である。

◆ setShadowThreshold()

virtual void cv::BackgroundSubtractorMOG2::setShadowThreshold ( double threshold)
pure virtual
Python:
cv.BackgroundSubtractorMOG2.setShadowThreshold(threshold) -> None

影のしきい値を設定する。

◆ setShadowValue()

virtual void cv::BackgroundSubtractorMOG2::setShadowValue ( int value)
pure virtual
Python:
cv.BackgroundSubtractorMOG2.setShadowValue(value) -> None

影の値を設定する。

◆ setVarInit()

virtual void cv::BackgroundSubtractorMOG2::setVarInit ( double varInit)
pure virtual
Python:
cv.BackgroundSubtractorMOG2.setVarInit(varInit) -> None

各ガウス成分の初期分散を設定する。

◆ setVarMax()

virtual void cv::BackgroundSubtractorMOG2::setVarMax ( double varMax)
pure virtual
Python:
cv.BackgroundSubtractorMOG2.setVarMax(varMax) -> None

◆ setVarMin()

virtual void cv::BackgroundSubtractorMOG2::setVarMin ( double varMin)
pure virtual
Python:
cv.BackgroundSubtractorMOG2.setVarMin(varMin) -> None

◆ setVarThreshold()

virtual void cv::BackgroundSubtractorMOG2::setVarThreshold ( double varThreshold)
pure virtual
Python:
cv.BackgroundSubtractorMOG2.setVarThreshold(varThreshold) -> None

ピクセルとモデルのマッチングに用いる分散しきい値を設定する。

◆ setVarThresholdGen()

virtual void cv::BackgroundSubtractorMOG2::setVarThresholdGen ( double varThresholdGen)
pure virtual
Python:
cv.BackgroundSubtractorMOG2.setVarThresholdGen(varThresholdGen) -> None

新しい混合成分の生成に用いる、ピクセルとモデルのマッチングのための分散しきい値を設定する。


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