| OpenCV 3.4.8 Open Source Computer Vision

Public Member Functions | Static Public Member Functions | List of all members
cv::sfm::SFMLibmvEuclideanReconstruction Class Referenceabstract
Structure From Motion » Simple Pipeline

SFMLibmvEuclideanReconstruction class provides an interface with the Libmv Structure From Motion pipeline. More...

`#include <opencv2/sfm/simple_pipeline.hpp>`

Inheritance diagram for cv::sfm::SFMLibmvEuclideanReconstruction:

## Public Member Functions
virtual void | getCameras (OutputArray Rs, OutputArray Ts) CV_OVERRIDE=0
| Returns the estimated camera extrinsic parameters. More...
virtual double | getError () const CV_OVERRIDE=0
| Returns the computed reprojection error. More...
virtual cv::Mat | getIntrinsics () const CV_OVERRIDE=0
| Returns the refined camera calibration matrix. More...
virtual void | getPoints (OutputArray points3d) CV_OVERRIDE=0
| Returns the estimated 3d points. More...
virtual void | run (InputArrayOfArrays points2d) CV_OVERRIDE=0
| Calls the pipeline in order to perform Eclidean reconstruction. More...
virtual void | run (InputArrayOfArrays points2d, InputOutputArray K, OutputArray Rs, OutputArray Ts, OutputArray points3d) CV_OVERRIDE=0
| Calls the pipeline in order to perform Eclidean reconstruction. More...
virtual void | run (const std::vector< String > &images) CV_OVERRIDE=0
| Calls the pipeline in order to perform Eclidean reconstruction. More...
virtual void | run (const std::vector< String > &images, InputOutputArray K, OutputArray Rs, OutputArray Ts, OutputArray points3d) CV_OVERRIDE=0
| Calls the pipeline in order to perform Eclidean reconstruction. More...
virtual void | setCameraIntrinsicOptions (const libmv_CameraIntrinsicsOptions &libmv_camera_intrinsics_options) CV_OVERRIDE=0
| Setter method for camera intrinsic options. More...
virtual void | setReconstructionOptions (const libmv_ReconstructionOptions &libmv_reconstruction_options) CV_OVERRIDE=0
| Setter method for reconstruction options. More...
Public Member Functions inherited from cv::sfm::BaseSFM
virtual | ~BaseSFM ()

## Static Public Member Functions
static Ptr< SFMLibmvEuclideanReconstruction > | create (const libmv_CameraIntrinsicsOptions &camera_instrinsic_options=libmv_CameraIntrinsicsOptions(), const libmv_ReconstructionOptions &reconstruction_options=libmv_ReconstructionOptions())
| Creates an instance of the SFMLibmvEuclideanReconstruction class. Initializes Libmv. More...

## Detailed Description

SFMLibmvEuclideanReconstruction class provides an interface with the Libmv Structure From Motion pipeline.

## Member Function Documentation

## § create()

static Ptr<SFMLibmvEuclideanReconstruction> cv::sfm::SFMLibmvEuclideanReconstruction::create | ( | const libmv_CameraIntrinsicsOptions & | camera_instrinsic_options = `libmv_CameraIntrinsicsOptions()`,
|  | const libmv_ReconstructionOptions & | reconstruction_options = `libmv_ReconstructionOptions()`
| ) |  |
| static

Creates an instance of the SFMLibmvEuclideanReconstruction class. Initializes Libmv.

## § getCameras()

virtual void cv::sfm::SFMLibmvEuclideanReconstruction::getCameras | ( | OutputArray | Rs,
|  | OutputArray | Ts
| ) |  |
| pure virtual

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

Returns the computed reprojection error.

Implements cv::sfm::BaseSFM.

## § getIntrinsics()

virtual cv::Mat cv::sfm::SFMLibmvEuclideanReconstruction::getIntrinsics | ( |  | ) | const
| pure virtual

Returns the refined camera calibration matrix.

Implements cv::sfm::BaseSFM.

## § 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 | ( | InputArrayOfArrays | points2d | ) |
| pure virtual

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() [2/4]

virtual void cv::sfm::SFMLibmvEuclideanReconstruction::run | ( | InputArrayOfArrays | points2d,
|  | InputOutputArray | K,
|  | OutputArray | Rs,
|  | OutputArray | Ts,
|  | OutputArray | points3d
| ) |  |
| pure virtual

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.

## § run() [3/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() [4/4]

virtual void cv::sfm::SFMLibmvEuclideanReconstruction::run | ( | const std::vector< String > & | images,
|  | InputOutputArray | K,
|  | OutputArray | Rs,
|  | OutputArray | Ts,
|  | OutputArray | points3d
| ) |  |
| pure virtual

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.

## § 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:

- opencv2/sfm/simple_pipeline.hpp