001
002//
003// This file is auto-generated. Please don't modify it!
004//
005package org.opencv.video;
006
007import org.opencv.core.Algorithm;
008import org.opencv.core.Mat;
009
010// C++: class BackgroundSubtractor
011//javadoc: BackgroundSubtractor
012public class BackgroundSubtractor extends Algorithm {
013
014    protected BackgroundSubtractor(long addr) { super(addr); }
015
016
017    //
018    // C++:  void apply(Mat image, Mat& fgmask, double learningRate = -1)
019    //
020
021    //javadoc: BackgroundSubtractor::apply(image, fgmask, learningRate)
022    public  void apply(Mat image, Mat fgmask, double learningRate)
023    {
024        
025        apply_0(nativeObj, image.nativeObj, fgmask.nativeObj, learningRate);
026        
027        return;
028    }
029
030    //javadoc: BackgroundSubtractor::apply(image, fgmask)
031    public  void apply(Mat image, Mat fgmask)
032    {
033        
034        apply_1(nativeObj, image.nativeObj, fgmask.nativeObj);
035        
036        return;
037    }
038
039
040    //
041    // C++:  void getBackgroundImage(Mat& backgroundImage)
042    //
043
044    //javadoc: BackgroundSubtractor::getBackgroundImage(backgroundImage)
045    public  void getBackgroundImage(Mat backgroundImage)
046    {
047        
048        getBackgroundImage_0(nativeObj, backgroundImage.nativeObj);
049        
050        return;
051    }
052
053
054    @Override
055    protected void finalize() throws Throwable {
056        delete(nativeObj);
057    }
058
059
060
061    // C++:  void apply(Mat image, Mat& fgmask, double learningRate = -1)
062    private static native void apply_0(long nativeObj, long image_nativeObj, long fgmask_nativeObj, double learningRate);
063    private static native void apply_1(long nativeObj, long image_nativeObj, long fgmask_nativeObj);
064
065    // C++:  void getBackgroundImage(Mat& backgroundImage)
066    private static native void getBackgroundImage_0(long nativeObj, long backgroundImage_nativeObj);
067
068    // native support for java finalize()
069    private static native void delete(long nativeObj);
070
071}