Structure from motion aims to find both cameras and objects position, orientation and shape.
As this task is complex and highly depends on videos contents, a fast-robust-accurate technic who works with every types of input is still a dream. This API try to give to user an easy way to try differents algorithms for points detection, matching and of course geometry recovery.
So in a long term, you will be able to do, with this API:
Manage one or several cameras (I mean physical device) in a sequence (stereovision, single camera, multivision...).
Each camera can be of different type (Fisheye, with/without radial distortion, various intra-parameters...).
Initialize the different processing blocks according to the data availables:
Camera: Distortion, intra parameters, nothing, ...
Field of view: Extern position, points of interest, a known 3D pattern to match, 2D images, ...
Compute missing data (intra/extern parameters, 3D points,...)
Show the points cloud using an interactive visualization
Example
I made a little video to show current reconstruction progress. This is not really a structure from motion as the cameras are fully parameterized, but it's a start: