Structure from Motion


Structure from Motion is a photogrammetric range imaging technique for estimating three-dimensional structures from two-dimensional image sequences that may be coupled with local motion signals. It is studied in the fields of computer vision and visual perception. In biological vision, SfM refers to the phenomenon by which humans can recover 3D structure from the projected 2D motion field of a moving object or scene.

Principle

Humans perceive a lot of information about the three-dimensional structure in their environment by moving around it. When the observer moves, objects around them move different amounts depending on their distance from the observer. This is known as motion parallax, and from this depth information can be used to generate an accurate 3D representation of the world around them.
Finding structure from motion presents a similar problem to finding structure from stereo vision. In both instances, the correspondence between images and the reconstruction of 3D object needs to be found.
To find correspondence between images, features such as corner points are tracked from one image to the next. One of the most widely used feature detectors is the scale-invariant feature transform. It uses the maxima from a difference-of-Gaussians pyramid as features. The first step in SIFT is finding a dominant gradient direction. To make it rotation-invariant, the descriptor is rotated to fit this orientation. Another common feature detector is the SURF. In SURF, the DOG is replaced with a Hessian matrix-based blob detector. Also, instead of evaluating the gradient histograms, SURF computes for the sums of gradient components and the sums of their absolute values. Its usage of integral images allows the features to be detected extremely quickly with high detection rate. Therefore, comparing to SIFT, SURF is a faster feature detector with drawback of less accuracy in feature positions.
Another type of feature recently made practical for structure from motion are general curves, part of a technology known as "Pointless" SfM, useful when point features are insufficient, common in man-made environments.
The features detected from all the images will then be matched. One of the matching algorithms that track features from one image to another is the Lukas–Kanade tracker.
Sometimes some of the matched features are incorrectly matched. This is why the matches should also be filtered. RANSAC is the algorithm that is usually used to remove the outlier correspondences. In the paper of Fischler and Bolles, RANSAC is used to solve the location determination problem, where the objective is to determine the points in space that project onto an image into a set of landmarks with known locations.
The feature trajectories over time are then used to reconstruct their 3D positions and the camera's motion.
An alternative is given by so-called direct approaches, where geometric information is directly estimated from the images, without intermediate abstraction to features or corners.
There are several approaches to structure from motion. In incremental SFM, camera poses are solved for and added one by one to the collection. In global SFM, the poses of all cameras are solved for at the same time. A somewhat intermediate approach is out-of-core SFM, where several partial reconstructions are computed that are then integrated into a global solution.

Applications

Geosciences

Structure from Motion photogrammetry with multi-view stereo provides hyperscale landform models using images acquired from a range of digital cameras and optionally a network of ground control points. The technique is not limited in temporal frequency and can provide point cloud data comparable in density and accuracy to those generated by terrestrial and airborne laser scanning at a fraction of the cost.. Structure from motion is also useful in remote or rugged environments where terrestrial laser scanning is limited by equipment portability and airborne laser scanning is limited by terrain roughness causing loss of data and image foreshortening. The technique has been applied in many settings such as rivers, badlands, sandy coastlines, fault zones, landslides, and coral reef settings. SfM has been also successfully applied for the assessment of large wood accumulation volume and porosity in fluvial systems, as well as for the characterization of rock masses through the determination of some properties as the orientation, persistence, etc. of discontinuities. A full range of digital cameras can be utilized, including digital SLR's, compact digital cameras and even smart phones. Generally though, higher accuracy data will be achieved with more expensive cameras, which include lenses of higher optical quality. The technique therefore offers exciting opportunities to characterize surface topography in unprecedented detail and, with multi-temporal data, to detect elevation, position and volumetric changes that are symptomatic of earth surface processes. Structure from Motion can be placed in the context of other digital surveying methods.

Cultural heritage

Cultural heritage is present everywhere. Its structural control, documentation and conservation is one of humanity's main duties. Under this point of view, SfM is used in order to properly estimate situations as well as planning and maintenance efforts and costs, control and restoration.
Because serious constraints often exist connected to the accessibility of the site and impossibility to install invasive surveying pillars that did not permit the use of traditional surveying routines, SfM provides a non-invasive approach for the structure, without the direct interaction between the structure and any operator. The use is accurate as only qualitative considerations are needed. It is fast enough to respond to the monument’s immediate management needs.
The first operational phase is an accurate preparation of the photogrammetric surveying where is established the relation between best distance from the object, focal length, the ground sampling distance and the sensor’s resolution. With this information the programmed photographic acquisitions must be made using vertical overlapping of at least 60%.

Structure from motion software toolboxes

Open source solutions

C++
*
*
Matlab
Python
Original site, archived:
*