Package boofcv.alg.sfm.d3.direct
Class PyramidDirectColorDepth<T extends ImageGray<T>>
java.lang.Object
boofcv.alg.sfm.d3.direct.PyramidDirectColorDepth<T>
Adds a pyramidal implementation on top of VisOdomDirectColorDepth
to enable it to handle larger motions
which its local approach couldn't handle in a single layer. Highest layers (lowest resolution) are processed
first. Their estimated motion is then passed into the next layers for its initial guess.
Selection of keyframes is a critical problem. A global keyframe is used for all pixels. if Keyframes are selected too often then performance will be degraded and not often enough can cause it to fail completely. A new keyframe is selected when the number of trackable pixels drops below a threshold or the it's spatial diversity has dropped too low
-
Nested Class Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
double
boolean
boolean
process
(Planar<T> input, ImagePixelTo3D inputDepth) void
reset()
void
setCameraParameters
(float fx, float fy, float cx, float cy, int width, int height) void
setDiversityThreshold
(double diversityThreshold) protected void
setKeyFrame
(ImagePixelTo3D inputDepth)
-
Constructor Details
-
PyramidDirectColorDepth
-
-
Method Details
-
setCameraParameters
public void setCameraParameters(float fx, float fy, float cx, float cy, int width, int height) -
process
-
setKeyFrame
-
estimateMotion
protected boolean estimateMotion() -
isFatalError
public boolean isFatalError() -
worldToCurrent
-
getInputType
-
reset
public void reset() -
setDiversityThreshold
public void setDiversityThreshold(double diversityThreshold) -
getFractionInBounds
public double getFractionInBounds()
-