class cv::cuda::BackgroundSubtractorGMG

Overview

Background/Foreground Segmentation Algorithm. Moreā€¦

#include <cudalegacy.hpp>

class BackgroundSubtractorGMG: public cv::BackgroundSubtractor
{
public:
    // methods

    virtual
    void
    apply(
        InputArray image,
        OutputArray fgmask,
        double learningRate,
        Stream& stream
        ) = 0;

    virtual
    double
    getBackgroundPrior() const = 0;

    virtual
    double
    getDecisionThreshold() const = 0;

    virtual
    double
    getDefaultLearningRate() const = 0;

    virtual
    int
    getMaxFeatures() const = 0;

    virtual
    double
    getMaxVal() const = 0;

    virtual
    double
    getMinVal() const = 0;

    virtual
    int
    getNumFrames() const = 0;

    virtual
    int
    getQuantizationLevels() const = 0;

    virtual
    int
    getSmoothingRadius() const = 0;

    virtual
    bool
    getUpdateBackgroundModel() const = 0;

    virtual
    void
    setBackgroundPrior(double bgprior) = 0;

    virtual
    void
    setDecisionThreshold(double thresh) = 0;

    virtual
    void
    setDefaultLearningRate(double lr) = 0;

    virtual
    void
    setMaxFeatures(int maxFeatures) = 0;

    virtual
    void
    setMaxVal(double val) = 0;

    virtual
    void
    setMinVal(double val) = 0;

    virtual
    void
    setNumFrames(int nframes) = 0;

    virtual
    void
    setQuantizationLevels(int nlevels) = 0;

    virtual
    void
    setSmoothingRadius(int radius) = 0;

    virtual
    void
    setUpdateBackgroundModel(bool update) = 0;
};

Inherited Members

public:
    // methods

    virtual
    void
    clear();

    virtual
    bool
    empty() const;

    virtual
    String
    getDefaultName() const;

    virtual
    void
    read(const FileNode& fn);

    virtual
    void
    save(const String& filename) const;

    virtual
    void
    write(FileStorage& fs) const;

    template <typename _Tp>
    static
    Ptr<_Tp>
    load(
        const String& filename,
        const String& objname = String()
        );

    template <typename _Tp>
    static
    Ptr<_Tp>
    loadFromString(
        const String& strModel,
        const String& objname = String()
        );

    template <typename _Tp>
    static
    Ptr<_Tp>
    read(const FileNode& fn);

    virtual
    void
    apply(
        InputArray image,
        OutputArray fgmask,
        double learningRate = -1
        ) = 0;

    virtual
    void
    getBackgroundImage(OutputArray backgroundImage) const = 0;

protected:
    // methods

    void
    writeFormat(FileStorage& fs) const;

Detailed Documentation

Background/Foreground Segmentation Algorithm.

The class discriminates between foreground and background pixels by building and maintaining a model of the background. Any pixel which does not fit this model is then deemed to be foreground. The class implements algorithm described in [33].