SFMLibmvEuclideanReconstruction class provides an interface with the Libmv Structure From Motion pipeline.
More...
#include <opencv2/sfm/simple_pipeline.hpp>
SFMLibmvEuclideanReconstruction class provides an interface with the Libmv Structure From Motion pipeline.
◆ create()
◆ getCameras()
Returns the estimated camera extrinsic parameters.
- Parameters
-
Rs | Output vector of 3x3 rotations of the camera. |
Ts | Output vector of 3x1 translations of the camera. |
Implements cv::sfm::BaseSFM.
◆ getError()
virtual double cv::sfm::SFMLibmvEuclideanReconstruction::getError |
( |
| ) |
const |
|
pure virtual |
◆ getIntrinsics()
virtual cv::Mat cv::sfm::SFMLibmvEuclideanReconstruction::getIntrinsics |
( |
| ) |
const |
|
pure virtual |
◆ getPoints()
virtual void cv::sfm::SFMLibmvEuclideanReconstruction::getPoints |
( |
OutputArray | points3d | ) |
|
|
pure virtual |
Returns the estimated 3d points.
- Parameters
-
points3d | Output array with estimated 3d points. |
Implements cv::sfm::BaseSFM.
◆ run() [1/4]
virtual void cv::sfm::SFMLibmvEuclideanReconstruction::run |
( |
const std::vector< String > & | images | ) |
|
|
pure virtual |
Calls the pipeline in order to perform Eclidean reconstruction.
- Parameters
-
images | a vector of string with the images paths. |
- Note
- The images must be ordered as they were an image sequence. Additionally, each frame should be as close as posible to the previous and posterior.
- For now DAISY features are used in order to compute the 2d points tracks and it only works for 3-4 images.
Implements cv::sfm::BaseSFM.
◆ run() [2/4]
Calls the pipeline in order to perform Eclidean reconstruction.
- Parameters
-
images | a vector of string with the images paths. |
K | Input/Output camera matrix \(K = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\). Input parameters used as initial guess. |
Rs | Output vector of 3x3 rotations of the camera. |
Ts | Output vector of 3x1 translations of the camera. |
points3d | Output array with estimated 3d points. |
- Note
- The images must be ordered as they were an image sequence. Additionally, each frame should be as close as posible to the previous and posterior.
- For now DAISY features are used in order to compute the 2d points tracks and it only works for 3-4 images.
Implements cv::sfm::BaseSFM.
◆ run() [3/4]
Calls the pipeline in order to perform Eclidean reconstruction.
- Parameters
-
points2d | Input vector of vectors of 2d points (the inner vector is per image). |
- Note
- Tracks must be as precise as possible. It does not handle outliers and is very sensible to them.
Implements cv::sfm::BaseSFM.
◆ run() [4/4]
Calls the pipeline in order to perform Eclidean reconstruction.
- Parameters
-
points2d | Input vector of vectors of 2d points (the inner vector is per image). |
K | Input/Output camera matrix \(K = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\). Input parameters used as initial guess. |
Rs | Output vector of 3x3 rotations of the camera. |
Ts | Output vector of 3x1 translations of the camera. |
points3d | Output array with estimated 3d points. |
- Note
- Tracks must be as precise as possible. It does not handle outliers and is very sensible to them.
Implements cv::sfm::BaseSFM.
◆ setCameraIntrinsicOptions()
virtual void cv::sfm::SFMLibmvEuclideanReconstruction::setCameraIntrinsicOptions |
( |
const libmv_CameraIntrinsicsOptions & | libmv_camera_intrinsics_options | ) |
|
|
pure virtual |
Setter method for camera intrinsic options.
- Parameters
-
libmv_camera_intrinsics_options | struct with camera intrinsic options such as camera model and the internal camera parameters. |
Implements cv::sfm::BaseSFM.
◆ setReconstructionOptions()
virtual void cv::sfm::SFMLibmvEuclideanReconstruction::setReconstructionOptions |
( |
const libmv_ReconstructionOptions & | libmv_reconstruction_options | ) |
|
|
pure virtual |
Setter method for reconstruction options.
- Parameters
-
libmv_reconstruction_options | struct with reconstruction options such as initial keyframes, automatic keyframe selection, parameters to refine and the verbosity level. |
Implements cv::sfm::BaseSFM.
The documentation for this class was generated from the following file: