- All Known Implementing Classes:
public interface StereoVisualOdometry<T extends ImageBase<T>> extends VisualOdometry<Se3_F64>
Stereo visual odometry algorithms that estimate the camera's ego-motion in Euclidean space using a pair of stereo images. Camera motion is estimated relative to the first frame in the left camera's point of view.
The following is a set of assumptions and behaviors that all implementations of this interface must follow:
- Stereo images must be captured simultaneously
- Cameras must have a global shutter
- Calibration parameters can be changed at any time, but must be set at least once before processing an image.
- If process returns false then the motion could not be estimated and isFault() should be checked
- If isFault() is true then the reset() should be called since it can't estimate motion any more
- reset() puts back into its initial state
Optional interfaces are provided for accessing internal features.
setCalibrationvoid setCalibration(StereoParameters parameters)Specifies intrinsic and extrinsic parameters for the stereo camera system. Can be called at any time, but must be called at least once before
process(T, T)can be called.
parameters- stereo calibration
processProcess the new image and update the motion estimate. The return value must be checked to see if the estimate was actually updated. If false is returned then
VisualOdometry.isFault()also needs to be checked to see if the pose estimate has been reset.
- true if the motion estimate has been updated and false if not
getImageTypeType of input images it can process.
- The image type