![]() |
FlowSDK
3.701
Structure from motion and Multiview stereo Interfaces
|
Samantha pure virtual interface class. More...
#include <SamanthaInterface.h>
Inherited by FlowSaM::SamanthaInterface.
Public Member Functions | |
virtual void | setPointCloud (PointCloudInterface *pointCloud)=0 |
Set the sparse point cloud. The object will be filled in the compute function (mandatory to add at least 3 cameras before compute) | |
virtual void | addCamera (CameraInterface *camera)=0 |
Add a camera object for the reconstruction (mandatory to add at least 3 cameras before compute) | |
virtual void | setSettingValue (const char *nCategory, const char *nSettingName, const char *nValue)=0 |
Set a setting value. | |
virtual void | setLogListener (FlowCore::LogListener *logListener)=0 |
Set a log listener to record the samantha log (optional) | |
virtual void | setProgressBar (FlowCore::ProgressBar *progressBar)=0 |
Set the progress bar (optional) | |
virtual unsigned int | getCameraCount () const =0 |
Get the number of camera that has been added. | |
virtual bool | abort ()=0 |
Send an abort signal to stop the computation. Returns false if no process was currently running. | |
virtual int | compute ()=0 |
Start samantha reconstruction. The method will fill the reconstructed camera objects and the point cloud. A camera is correctly reconstructed if mVisiblePointsCount > 0 Return codes: 1 Samantha computation successfull 0 Samantha computation failed (check log) -1 Point cloud object not set -2 Not enough cameras (at least 3 needed) -4 Failed to create temporary directory -5 Not enough valid cameras (check paths and supported image formats) | |
virtual bool | triangulatePoint (unsigned int numberOfTracks, const unsigned int *imageIndexes, const double *imageCoords, double out3DPosition[3])=0 |
Triangulate a 3D point from a set of 2d camera coords. Triangulate a 3D point from a set of 2d camera coords. Cameras must be loaded with full intrinsics and extrinsics parameters. Parameters: numberOfTracks: number of camera coordinates. Must be at least 2. imageIndex: array containing the index of each camera (length numberOfTracks). imagePositions: array containing the 2D coordinates for of each camera (length numberOfTracks * 2). out3DPosition: output array containing the 3D coordinate of the point. | |
Samantha pure virtual interface class.