Package org.opencv.video
Class DualTVL1OpticalFlow
- java.lang.Object
-
- org.opencv.core.Algorithm
-
- org.opencv.video.DenseOpticalFlow
-
- org.opencv.video.DualTVL1OpticalFlow
-
public class DualTVL1OpticalFlow extends DenseOpticalFlow
"Dual TV L1" Optical Flow Algorithm. The class implements the "Dual TV L1" optical flow algorithm described in CITE: Zach2007 and CITE: Javier2012 . Here are important members of the class that control the algorithm, which you can set after constructing the class instance:- member double tau Time step of the numerical scheme.
- member double lambda Weight parameter for the data term, attachment parameter. This is the most relevant parameter, which determines the smoothness of the output. The smaller this parameter is, the smoother the solutions we obtain. It depends on the range of motions of the images, so its value should be adapted to each image sequence.
- member double theta Weight parameter for (u - v)\^2, tightness parameter. It serves as a link between the attachment and the regularization terms. In theory, it should have a small value in order to maintain both parts in correspondence. The method is stable for a large range of values of this parameter.
- member int nscales Number of scales used to create the pyramid of images.
- member int warps Number of warpings per scale. Represents the number of times that I1(x+u0) and grad( I1(x+u0) ) are computed per scale. This is a parameter that assures the stability of the method. It also affects the running time, so it is a compromise between speed and accuracy.
- member double epsilon Stopping criterion threshold used in the numerical scheme, which is a trade-off between precision and running time. A small value will yield more accurate solutions at the expense of a slower convergence.
- member int iterations Stopping criterion iterations number used in the numerical scheme.
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
DualTVL1OpticalFlow(long addr)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static DualTVL1OpticalFlow
__fromPtr__(long addr)
static DualTVL1OpticalFlow
create()
Creates instance of cv::DualTVL1OpticalFlowstatic DualTVL1OpticalFlow
create(double tau)
Creates instance of cv::DualTVL1OpticalFlowstatic DualTVL1OpticalFlow
create(double tau, double lambda)
Creates instance of cv::DualTVL1OpticalFlowstatic DualTVL1OpticalFlow
create(double tau, double lambda, double theta)
Creates instance of cv::DualTVL1OpticalFlowstatic DualTVL1OpticalFlow
create(double tau, double lambda, double theta, int nscales)
Creates instance of cv::DualTVL1OpticalFlowstatic DualTVL1OpticalFlow
create(double tau, double lambda, double theta, int nscales, int warps)
Creates instance of cv::DualTVL1OpticalFlowstatic DualTVL1OpticalFlow
create(double tau, double lambda, double theta, int nscales, int warps, double epsilon)
Creates instance of cv::DualTVL1OpticalFlowstatic DualTVL1OpticalFlow
create(double tau, double lambda, double theta, int nscales, int warps, double epsilon, int innnerIterations)
Creates instance of cv::DualTVL1OpticalFlowstatic DualTVL1OpticalFlow
create(double tau, double lambda, double theta, int nscales, int warps, double epsilon, int innnerIterations, int outerIterations)
Creates instance of cv::DualTVL1OpticalFlowstatic DualTVL1OpticalFlow
create(double tau, double lambda, double theta, int nscales, int warps, double epsilon, int innnerIterations, int outerIterations, double scaleStep)
Creates instance of cv::DualTVL1OpticalFlowstatic DualTVL1OpticalFlow
create(double tau, double lambda, double theta, int nscales, int warps, double epsilon, int innnerIterations, int outerIterations, double scaleStep, double gamma)
Creates instance of cv::DualTVL1OpticalFlowstatic DualTVL1OpticalFlow
create(double tau, double lambda, double theta, int nscales, int warps, double epsilon, int innnerIterations, int outerIterations, double scaleStep, double gamma, int medianFiltering)
Creates instance of cv::DualTVL1OpticalFlowstatic DualTVL1OpticalFlow
create(double tau, double lambda, double theta, int nscales, int warps, double epsilon, int innnerIterations, int outerIterations, double scaleStep, double gamma, int medianFiltering, boolean useInitialFlow)
Creates instance of cv::DualTVL1OpticalFlowprotected void
finalize()
double
getEpsilon()
SEE: setEpsilondouble
getGamma()
SEE: setGammaint
getInnerIterations()
SEE: setInnerIterationsdouble
getLambda()
SEE: setLambdaint
getMedianFiltering()
SEE: setMedianFilteringint
getOuterIterations()
SEE: setOuterIterationsint
getScalesNumber()
SEE: setScalesNumberdouble
getScaleStep()
SEE: setScaleStepdouble
getTau()
SEE: setTaudouble
getTheta()
SEE: setThetaboolean
getUseInitialFlow()
SEE: setUseInitialFlowint
getWarpingsNumber()
SEE: setWarpingsNumbervoid
setEpsilon(double val)
getEpsilon SEE: getEpsilonvoid
setGamma(double val)
getGamma SEE: getGammavoid
setInnerIterations(int val)
getInnerIterations SEE: getInnerIterationsvoid
setLambda(double val)
getLambda SEE: getLambdavoid
setMedianFiltering(int val)
getMedianFiltering SEE: getMedianFilteringvoid
setOuterIterations(int val)
getOuterIterations SEE: getOuterIterationsvoid
setScalesNumber(int val)
getScalesNumber SEE: getScalesNumbervoid
setScaleStep(double val)
getScaleStep SEE: getScaleStepvoid
setTau(double val)
getTau SEE: getTauvoid
setTheta(double val)
getTheta SEE: getThetavoid
setUseInitialFlow(boolean val)
getUseInitialFlow SEE: getUseInitialFlowvoid
setWarpingsNumber(int val)
getWarpingsNumber SEE: getWarpingsNumber-
Methods inherited from class org.opencv.video.DenseOpticalFlow
calc, collectGarbage
-
Methods inherited from class org.opencv.core.Algorithm
clear, empty, getDefaultName, getNativeObjAddr, save
-
-
-
-
Method Detail
-
__fromPtr__
public static DualTVL1OpticalFlow __fromPtr__(long addr)
-
getTau
public double getTau()
SEE: setTau- Returns:
- automatically generated
-
setTau
public void setTau(double val)
getTau SEE: getTau- Parameters:
val
- automatically generated
-
getLambda
public double getLambda()
SEE: setLambda- Returns:
- automatically generated
-
setLambda
public void setLambda(double val)
getLambda SEE: getLambda- Parameters:
val
- automatically generated
-
getTheta
public double getTheta()
SEE: setTheta- Returns:
- automatically generated
-
setTheta
public void setTheta(double val)
getTheta SEE: getTheta- Parameters:
val
- automatically generated
-
getGamma
public double getGamma()
SEE: setGamma- Returns:
- automatically generated
-
setGamma
public void setGamma(double val)
getGamma SEE: getGamma- Parameters:
val
- automatically generated
-
getScalesNumber
public int getScalesNumber()
SEE: setScalesNumber- Returns:
- automatically generated
-
setScalesNumber
public void setScalesNumber(int val)
getScalesNumber SEE: getScalesNumber- Parameters:
val
- automatically generated
-
getWarpingsNumber
public int getWarpingsNumber()
SEE: setWarpingsNumber- Returns:
- automatically generated
-
setWarpingsNumber
public void setWarpingsNumber(int val)
getWarpingsNumber SEE: getWarpingsNumber- Parameters:
val
- automatically generated
-
getEpsilon
public double getEpsilon()
SEE: setEpsilon- Returns:
- automatically generated
-
setEpsilon
public void setEpsilon(double val)
getEpsilon SEE: getEpsilon- Parameters:
val
- automatically generated
-
getInnerIterations
public int getInnerIterations()
SEE: setInnerIterations- Returns:
- automatically generated
-
setInnerIterations
public void setInnerIterations(int val)
getInnerIterations SEE: getInnerIterations- Parameters:
val
- automatically generated
-
getOuterIterations
public int getOuterIterations()
SEE: setOuterIterations- Returns:
- automatically generated
-
setOuterIterations
public void setOuterIterations(int val)
getOuterIterations SEE: getOuterIterations- Parameters:
val
- automatically generated
-
getUseInitialFlow
public boolean getUseInitialFlow()
SEE: setUseInitialFlow- Returns:
- automatically generated
-
setUseInitialFlow
public void setUseInitialFlow(boolean val)
getUseInitialFlow SEE: getUseInitialFlow- Parameters:
val
- automatically generated
-
getScaleStep
public double getScaleStep()
SEE: setScaleStep- Returns:
- automatically generated
-
setScaleStep
public void setScaleStep(double val)
getScaleStep SEE: getScaleStep- Parameters:
val
- automatically generated
-
getMedianFiltering
public int getMedianFiltering()
SEE: setMedianFiltering- Returns:
- automatically generated
-
setMedianFiltering
public void setMedianFiltering(int val)
getMedianFiltering SEE: getMedianFiltering- Parameters:
val
- automatically generated
-
create
public static DualTVL1OpticalFlow create(double tau, double lambda, double theta, int nscales, int warps, double epsilon, int innnerIterations, int outerIterations, double scaleStep, double gamma, int medianFiltering, boolean useInitialFlow)
Creates instance of cv::DualTVL1OpticalFlow- Parameters:
tau
- automatically generatedlambda
- automatically generatedtheta
- automatically generatednscales
- automatically generatedwarps
- automatically generatedepsilon
- automatically generatedinnnerIterations
- automatically generatedouterIterations
- automatically generatedscaleStep
- automatically generatedgamma
- automatically generatedmedianFiltering
- automatically generateduseInitialFlow
- automatically generated- Returns:
- automatically generated
-
create
public static DualTVL1OpticalFlow create(double tau, double lambda, double theta, int nscales, int warps, double epsilon, int innnerIterations, int outerIterations, double scaleStep, double gamma, int medianFiltering)
Creates instance of cv::DualTVL1OpticalFlow- Parameters:
tau
- automatically generatedlambda
- automatically generatedtheta
- automatically generatednscales
- automatically generatedwarps
- automatically generatedepsilon
- automatically generatedinnnerIterations
- automatically generatedouterIterations
- automatically generatedscaleStep
- automatically generatedgamma
- automatically generatedmedianFiltering
- automatically generated- Returns:
- automatically generated
-
create
public static DualTVL1OpticalFlow create(double tau, double lambda, double theta, int nscales, int warps, double epsilon, int innnerIterations, int outerIterations, double scaleStep, double gamma)
Creates instance of cv::DualTVL1OpticalFlow- Parameters:
tau
- automatically generatedlambda
- automatically generatedtheta
- automatically generatednscales
- automatically generatedwarps
- automatically generatedepsilon
- automatically generatedinnnerIterations
- automatically generatedouterIterations
- automatically generatedscaleStep
- automatically generatedgamma
- automatically generated- Returns:
- automatically generated
-
create
public static DualTVL1OpticalFlow create(double tau, double lambda, double theta, int nscales, int warps, double epsilon, int innnerIterations, int outerIterations, double scaleStep)
Creates instance of cv::DualTVL1OpticalFlow- Parameters:
tau
- automatically generatedlambda
- automatically generatedtheta
- automatically generatednscales
- automatically generatedwarps
- automatically generatedepsilon
- automatically generatedinnnerIterations
- automatically generatedouterIterations
- automatically generatedscaleStep
- automatically generated- Returns:
- automatically generated
-
create
public static DualTVL1OpticalFlow create(double tau, double lambda, double theta, int nscales, int warps, double epsilon, int innnerIterations, int outerIterations)
Creates instance of cv::DualTVL1OpticalFlow- Parameters:
tau
- automatically generatedlambda
- automatically generatedtheta
- automatically generatednscales
- automatically generatedwarps
- automatically generatedepsilon
- automatically generatedinnnerIterations
- automatically generatedouterIterations
- automatically generated- Returns:
- automatically generated
-
create
public static DualTVL1OpticalFlow create(double tau, double lambda, double theta, int nscales, int warps, double epsilon, int innnerIterations)
Creates instance of cv::DualTVL1OpticalFlow- Parameters:
tau
- automatically generatedlambda
- automatically generatedtheta
- automatically generatednscales
- automatically generatedwarps
- automatically generatedepsilon
- automatically generatedinnnerIterations
- automatically generated- Returns:
- automatically generated
-
create
public static DualTVL1OpticalFlow create(double tau, double lambda, double theta, int nscales, int warps, double epsilon)
Creates instance of cv::DualTVL1OpticalFlow- Parameters:
tau
- automatically generatedlambda
- automatically generatedtheta
- automatically generatednscales
- automatically generatedwarps
- automatically generatedepsilon
- automatically generated- Returns:
- automatically generated
-
create
public static DualTVL1OpticalFlow create(double tau, double lambda, double theta, int nscales, int warps)
Creates instance of cv::DualTVL1OpticalFlow- Parameters:
tau
- automatically generatedlambda
- automatically generatedtheta
- automatically generatednscales
- automatically generatedwarps
- automatically generated- Returns:
- automatically generated
-
create
public static DualTVL1OpticalFlow create(double tau, double lambda, double theta, int nscales)
Creates instance of cv::DualTVL1OpticalFlow- Parameters:
tau
- automatically generatedlambda
- automatically generatedtheta
- automatically generatednscales
- automatically generated- Returns:
- automatically generated
-
create
public static DualTVL1OpticalFlow create(double tau, double lambda, double theta)
Creates instance of cv::DualTVL1OpticalFlow- Parameters:
tau
- automatically generatedlambda
- automatically generatedtheta
- automatically generated- Returns:
- automatically generated
-
create
public static DualTVL1OpticalFlow create(double tau, double lambda)
Creates instance of cv::DualTVL1OpticalFlow- Parameters:
tau
- automatically generatedlambda
- automatically generated- Returns:
- automatically generated
-
create
public static DualTVL1OpticalFlow create(double tau)
Creates instance of cv::DualTVL1OpticalFlow- Parameters:
tau
- automatically generated- Returns:
- automatically generated
-
create
public static DualTVL1OpticalFlow create()
Creates instance of cv::DualTVL1OpticalFlow- Returns:
- automatically generated
-
finalize
protected void finalize() throws java.lang.Throwable
- Overrides:
finalize
in classDenseOpticalFlow
- Throws:
java.lang.Throwable
-
-