@Namespace(value="cv") @Properties(inherit=opencv_video.class) public class VariationalRefinement extends DenseOpticalFlow
This class implements variational refinement of the input flow field, i.e.
it uses input flow to initialize the minimization of the following functional:
E(U) = \int_{\Omega} \delta \Psi(E_I) + \gamma \Psi(E_G) + \alpha \Psi(E_S)
,
where E_I,E_G,E_S
are color constancy, gradient constancy and smoothness terms
respectively. \Psi(s^2)=\sqrt{s^2+\epsilon^2}
is a robust penalizer to limit the
influence of outliers. A complete formulation and a description of the minimization
procedure can be found in \cite Brox2004
Pointer.CustomDeallocator, Pointer.Deallocator, Pointer.NativeDeallocator, Pointer.ReferenceCounter
Constructor and Description |
---|
VariationalRefinement(Pointer p)
Pointer cast constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
calcUV(GpuMat I0,
GpuMat I1,
GpuMat flow_u,
GpuMat flow_v) |
void |
calcUV(Mat I0,
Mat I1,
Mat flow_u,
Mat flow_v)
\brief \ref calc function overload to handle separate horizontal (u) and vertical (v) flow components
(to avoid extra splits/merges)
|
void |
calcUV(UMat I0,
UMat I1,
UMat flow_u,
UMat flow_v) |
static VariationalRefinement |
create()
\brief Creates an instance of VariationalRefinement
|
float |
getAlpha()
\brief Weight of the smoothness term
|
float |
getDelta()
\brief Weight of the color constancy term
|
int |
getFixedPointIterations()
\brief Number of outer (fixed-point) iterations in the minimization procedure.
|
float |
getGamma()
\brief Weight of the gradient constancy term
|
float |
getOmega()
\brief Relaxation factor in SOR
|
int |
getSorIterations()
\brief Number of inner successive over-relaxation (SOR) iterations
in the minimization procedure to solve the respective linear system.
|
void |
setAlpha(float val)
\copybrief getAlpha @see getAlpha
|
void |
setDelta(float val)
\copybrief getDelta @see getDelta
|
void |
setFixedPointIterations(int val)
\copybrief getFixedPointIterations @see getFixedPointIterations
|
void |
setGamma(float val)
\copybrief getGamma @see getGamma
|
void |
setOmega(float val)
\copybrief getOmega @see getOmega
|
void |
setSorIterations(int val)
\copybrief getSorIterations @see getSorIterations
|
calc, calc, calc, collectGarbage
clear, empty, getDefaultName, position, read, save, save, write, write, write
address, asBuffer, asByteBuffer, availablePhysicalBytes, calloc, capacity, capacity, close, deallocate, deallocate, deallocateReferences, deallocator, deallocator, equals, fill, formatBytes, free, hashCode, isNull, isNull, limit, limit, malloc, maxBytes, maxPhysicalBytes, memchr, memcmp, memcpy, memmove, memset, offsetof, parseBytes, physicalBytes, position, put, realloc, referenceCount, releaseReference, retainReference, setNull, sizeof, toString, totalBytes, totalPhysicalBytes, withDeallocator, zero
public VariationalRefinement(Pointer p)
Pointer.Pointer(Pointer)
.public void calcUV(@ByVal Mat I0, @ByVal Mat I1, @ByVal Mat flow_u, @ByVal Mat flow_v)
public void calcUV(@ByVal GpuMat I0, @ByVal GpuMat I1, @ByVal GpuMat flow_u, @ByVal GpuMat flow_v)
public int getFixedPointIterations()
setFixedPointIterations
public void setFixedPointIterations(int val)
public int getSorIterations()
setSorIterations
public void setSorIterations(int val)
public float getOmega()
setOmega
public void setOmega(float val)
public float getAlpha()
setAlpha
public void setAlpha(float val)
public float getDelta()
setDelta
public void setDelta(float val)
public float getGamma()
setGamma
public void setGamma(float val)
@opencv_core.Ptr public static VariationalRefinement create()
Copyright © 2020. All rights reserved.