Class BackgroundSubtractor
- Namespace
- OpenCvSharp
- Assembly
- OpenCvSharp.dll
The Base Class for Background/Foreground Segmentation. The class is only used to define the common interface for the whole family of background/foreground segmentation algorithms.
public abstract class BackgroundSubtractor : Algorithm, IDisposable
- Inheritance
-
BackgroundSubtractor
- Implements
- Derived
- Inherited Members
Constructors
BackgroundSubtractor(nint, nint, Action<nint>)
Constructor for the factory pattern (cv::Ptr<T>* + raw T*).
protected BackgroundSubtractor(nint smartPtr, nint rawPtr, Action<nint> release)
Parameters
Methods
Apply(InputArray, InputArray, OutputArray, double)
Computes a foreground mask with known foreground mask input. This method has a default virtual implementation that throws a "not implemented" error in OpenCV. Foreground masking may not be supported by all background subtractors.
public virtual void Apply(InputArray image, InputArray knownForegroundMask, OutputArray fgmask, double learningRate = -1)
Parameters
imageInputArrayNext video frame. Floating point frame will be used without scaling and should be in range [0,255].
knownForegroundMaskInputArrayThe mask for inputting already known foreground, allows model to ignore pixels.
fgmaskOutputArrayThe output foreground mask as an 8-bit binary image.
learningRatedouble
Apply(InputArray, OutputArray, double)
the update operator that takes the next video frame and returns the current foreground mask as 8-bit binary image.
public virtual void Apply(InputArray image, OutputArray fgmask, double learningRate = -1)
Parameters
imageInputArrayfgmaskOutputArraylearningRatedouble
GetBackgroundImage(OutputArray)
computes a background image
public virtual void GetBackgroundImage(OutputArray backgroundImage)
Parameters
backgroundImageOutputArray