View Source Evision.DISOpticalFlow (Evision v0.2.9)
Summary
Functions
Creates an instance of DISOpticalFlow
Creates an instance of DISOpticalFlow
Finest level of the Gaussian pyramid on which the flow is computed (zero level corresponds to the original image resolution). The final flow is obtained by bilinear upscaling.
Maximum number of gradient descent iterations in the patch inverse search stage. Higher values may improve quality in some cases.
Size of an image patch for matching (in pixels). Normally, default 8x8 patches work well enough in most cases.
Stride between neighbor patches. Must be less than patch size. Lower values correspond to higher flow quality.
Whether to use mean-normalization of patches when computing patch distance. It is turned on by default as it typically provides a noticeable quality boost because of increased robustness to illumination variations. Turn it off if you are certain that your sequence doesn't contain any changes in illumination.
Whether to use spatial propagation of good optical flow vectors. This option is turned on by default, as it tends to work better on average and can sometimes help recover from major errors introduced by the coarse-to-fine scheme employed by the DIS optical flow algorithm. Turning this option off can make the output flow field a bit smoother, however.
Weight of the smoothness term
Weight of the color constancy term
Norm value shift for robust penalizer
Weight of the gradient constancy term
Number of fixed point iterations of variational refinement per scale. Set to zero to disable variational refinement completely. Higher values will typically result in more smooth and high-quality flow.
setFinestScale
setGradientDescentIterations
setPatchSize
setPatchStride
setUseMeanNormalization
setUseSpatialPropagation
setVariationalRefinementAlpha
setVariationalRefinementDelta
setVariationalRefinementEpsilon
setVariationalRefinementGamma
setVariationalRefinementIterations
Enumerator
Types
Functions
Creates an instance of DISOpticalFlow
Keyword Arguments
preset:
integer()
.one of PRESET_ULTRAFAST, PRESET_FAST and PRESET_MEDIUM
Return
- retval:
Evision.DISOpticalFlow.t()
Python prototype (for reference only):
create([, preset]) -> retval
@spec create(Keyword.t()) :: any() | {:error, String.t()}
@spec create([{:preset, term()}] | nil) :: t() | {:error, String.t()}
Creates an instance of DISOpticalFlow
Keyword Arguments
preset:
integer()
.one of PRESET_ULTRAFAST, PRESET_FAST and PRESET_MEDIUM
Return
- retval:
Evision.DISOpticalFlow.t()
Python prototype (for reference only):
create([, preset]) -> retval
@spec getFinestScale(Keyword.t()) :: any() | {:error, String.t()}
@spec getFinestScale(t()) :: integer() | {:error, String.t()}
Finest level of the Gaussian pyramid on which the flow is computed (zero level corresponds to the original image resolution). The final flow is obtained by bilinear upscaling.
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
Return
- retval:
integer()
@see setFinestScale/2
Python prototype (for reference only):
getFinestScale() -> retval
@spec getGradientDescentIterations(Keyword.t()) :: any() | {:error, String.t()}
@spec getGradientDescentIterations(t()) :: integer() | {:error, String.t()}
Maximum number of gradient descent iterations in the patch inverse search stage. Higher values may improve quality in some cases.
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
Return
- retval:
integer()
@see setGradientDescentIterations/2
Python prototype (for reference only):
getGradientDescentIterations() -> retval
@spec getPatchSize(Keyword.t()) :: any() | {:error, String.t()}
@spec getPatchSize(t()) :: integer() | {:error, String.t()}
Size of an image patch for matching (in pixels). Normally, default 8x8 patches work well enough in most cases.
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
Return
- retval:
integer()
@see setPatchSize/2
Python prototype (for reference only):
getPatchSize() -> retval
@spec getPatchStride(Keyword.t()) :: any() | {:error, String.t()}
@spec getPatchStride(t()) :: integer() | {:error, String.t()}
Stride between neighbor patches. Must be less than patch size. Lower values correspond to higher flow quality.
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
Return
- retval:
integer()
@see setPatchStride/2
Python prototype (for reference only):
getPatchStride() -> retval
@spec getUseMeanNormalization(Keyword.t()) :: any() | {:error, String.t()}
@spec getUseMeanNormalization(t()) :: boolean() | {:error, String.t()}
Whether to use mean-normalization of patches when computing patch distance. It is turned on by default as it typically provides a noticeable quality boost because of increased robustness to illumination variations. Turn it off if you are certain that your sequence doesn't contain any changes in illumination.
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
Return
- retval:
bool
@see setUseMeanNormalization/2
Python prototype (for reference only):
getUseMeanNormalization() -> retval
@spec getUseSpatialPropagation(Keyword.t()) :: any() | {:error, String.t()}
@spec getUseSpatialPropagation(t()) :: boolean() | {:error, String.t()}
Whether to use spatial propagation of good optical flow vectors. This option is turned on by default, as it tends to work better on average and can sometimes help recover from major errors introduced by the coarse-to-fine scheme employed by the DIS optical flow algorithm. Turning this option off can make the output flow field a bit smoother, however.
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
Return
- retval:
bool
@see setUseSpatialPropagation/2
Python prototype (for reference only):
getUseSpatialPropagation() -> retval
@spec getVariationalRefinementAlpha(Keyword.t()) :: any() | {:error, String.t()}
@spec getVariationalRefinementAlpha(t()) :: number() | {:error, String.t()}
Weight of the smoothness term
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
Return
- retval:
float
@see setVariationalRefinementAlpha/2
Python prototype (for reference only):
getVariationalRefinementAlpha() -> retval
@spec getVariationalRefinementDelta(Keyword.t()) :: any() | {:error, String.t()}
@spec getVariationalRefinementDelta(t()) :: number() | {:error, String.t()}
Weight of the color constancy term
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
Return
- retval:
float
@see setVariationalRefinementDelta/2
Python prototype (for reference only):
getVariationalRefinementDelta() -> retval
@spec getVariationalRefinementEpsilon(Keyword.t()) :: any() | {:error, String.t()}
@spec getVariationalRefinementEpsilon(t()) :: number() | {:error, String.t()}
Norm value shift for robust penalizer
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
Return
- retval:
float
@see setVariationalRefinementEpsilon/2
Python prototype (for reference only):
getVariationalRefinementEpsilon() -> retval
@spec getVariationalRefinementGamma(Keyword.t()) :: any() | {:error, String.t()}
@spec getVariationalRefinementGamma(t()) :: number() | {:error, String.t()}
Weight of the gradient constancy term
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
Return
- retval:
float
@see setVariationalRefinementGamma/2
Python prototype (for reference only):
getVariationalRefinementGamma() -> retval
@spec getVariationalRefinementIterations(Keyword.t()) :: any() | {:error, String.t()}
@spec getVariationalRefinementIterations(t()) :: integer() | {:error, String.t()}
Number of fixed point iterations of variational refinement per scale. Set to zero to disable variational refinement completely. Higher values will typically result in more smooth and high-quality flow.
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
Return
- retval:
integer()
@see setGradientDescentIterations/2
Python prototype (for reference only):
getVariationalRefinementIterations() -> retval
setFinestScale
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
- val:
integer()
@see getFinestScale/1
Python prototype (for reference only):
setFinestScale(val) -> None
setGradientDescentIterations
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
- val:
integer()
@see getGradientDescentIterations/1
Python prototype (for reference only):
setGradientDescentIterations(val) -> None
setPatchSize
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
- val:
integer()
@see getPatchSize/1
Python prototype (for reference only):
setPatchSize(val) -> None
setPatchStride
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
- val:
integer()
@see getPatchStride/1
Python prototype (for reference only):
setPatchStride(val) -> None
setUseMeanNormalization
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
- val:
bool
@see getUseMeanNormalization/1
Python prototype (for reference only):
setUseMeanNormalization(val) -> None
setUseSpatialPropagation
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
- val:
bool
@see getUseSpatialPropagation/1
Python prototype (for reference only):
setUseSpatialPropagation(val) -> None
setVariationalRefinementAlpha
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
- val:
float
@see getVariationalRefinementAlpha/1
Python prototype (for reference only):
setVariationalRefinementAlpha(val) -> None
setVariationalRefinementDelta
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
- val:
float
@see getVariationalRefinementDelta/1
Python prototype (for reference only):
setVariationalRefinementDelta(val) -> None
setVariationalRefinementEpsilon
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
- val:
float
@see getVariationalRefinementEpsilon/1
Python prototype (for reference only):
setVariationalRefinementEpsilon(val) -> None
setVariationalRefinementGamma
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
- val:
float
@see getVariationalRefinementGamma/1
Python prototype (for reference only):
setVariationalRefinementGamma(val) -> None
setVariationalRefinementIterations
Positional Arguments
- self:
Evision.DISOpticalFlow.t()
- val:
integer()
@see getGradientDescentIterations/1
Python prototype (for reference only):
setVariationalRefinementIterations(val) -> None