Micmac

Micmac

MicMac, as a photogrammetric tool, stresses the aspects of accuracy, reliability, and provides tools typically unavailable in existing software alternatives, for instance:

  • access to intermediary results in open data formats allowing to interact with the processing chain at any desired stage,
  • qualitative evaluation of the results via quality indicators (e.g. bundle block adjustment residuals, covariance matrices, parameter’s sensitivity, correlation images),
  • a wide range of camera calibration models (e.g. the models adapted to consumer grade cameras, large-frame aerial cameras, cameras with very long focal lengths, fish-eye and spherical cameras),
  • two-dimensional dense image matching for deformation studies,
  • processing of frame camera and push broom sensor images,
  • processing of scanned analogue images, architecture adapted to big datasets.

MicMac is a free open-source photogrammetric suite that can be used in a variety of 3D reconstruction scenarios. In aims mainly at professional or academic users but constant efforts are made to make it more accessible to the general public.

One of MicMac strengths is its high degree of versatility. It can indeed be used in various fields : cartography, environment, industry, forestry, heritage, archaeology,…

MicMac allows both the creation of 3D models and of ortho-imagery when appropriate.

The software is suitable to every type of objects of any scale : from small object or statues with acquisition from the ground, to church, castle through drone acquisitions, to buildings, cities or natural areas through aerial or satellite acquisitions. The tools also allow for the geo-referencing of the end products in local/global/absolute coordinates system. Some complementary tools opens the fields of metrology and site surveying.

  • To discover MicMac, its environment, its philosophy and the main tools it offers:
  • To access the MicMac reference documentation

 

Software organization

MicMac is organized in a number of modules, accessible through a common command mm3d. Execution with a unique command has a twofold advantage: (a) it allows to factorize certain developments while keeping the binary files compact, and from the user point of view, (b) it is easy to remember and gives instantaneous access to all modules. Invoking a selected module is followed by a number of parameters. The obligatory parameters must be specified at first, and since they do not carry names, their order of occurrence is important, The obligatory parameter would be the format specification, while the change coordinate file, ChSys, serves as an option.

Examples

These are some examples of surveys were MicMac was used for the photogrammetric processing.

Digitizing the castle of Chambord

Two survey campaigns of two weeks were organized in Chambord castle during the autumns of 2014 and 2015 in order to digitize this national heritage monument. These surveys were conducted by students of the ENSG PPMD master as educational fieldwork. The following methods were used there : laser scanning, photogrammetry, topography, geodesy, remote sensing, etc… The student have for example surveyed the fronts of the castle :

ApericloudChambord.jpg

3D modelization of Mourres site

Here are some results from a project made by ENSG students, at Forcalquier. Ground acquisition and from UAV. Photogrammetric workflow was made on Micmac, and the layout on QGIS.

Mourres1.jpg

The algorithmic aspects

The photogrammetric workflow encompasses the passage from images, through the estimation of the orientation parameters, finalizing with a 3D surface model. In other words, it is a passage from a 2D representation of the world captured by a camera, through inference of the position and rotation of that camera at the moment of the image taking, towards a 3D restitution of the lost dimension. As long as the quality of the final output depends on the skillful engineering of many small processing steps, estimation of the camera orientation parameters and the matching algorithms constitute the heart of the pipeline. Respectively, the coming sections concentrate on these two aspects, report on the adopted methods and give a global look on what is possible in MicMac.

Structure from motion

Recovery of the structure (i.e. 3D coordinates of the observed scene) and the model. It is well known that this model (i.e. the transformation from 3D to 2D space and vice-versa also referred to as collinearity equation) is not linear, hence requires linearization. Moreover, there exists no direct algorithm able to compute orientation parameters globally consistent with a number of images (generally n>3). To overcome this gap, bootstrap solutions were proposed. Using direct algorithms for a single image, a pair or triplet of images, the global orientation is deduced sequentially or hierarchically  starting from a seed image pair. The so-obtained parameters serve as input to a system of equations composed of the linearized collinearity equations, where their optimal values – in the stochastic sense – are found iteratively. The observations (e.g. tie points) are redundant therefore the solution is deduced with the least squares method by minimizing an objective function. The typical function is the squared differences between the nominal observations and those predicted from the estimated model, possibly subject to constraints. The latter stage is also known as the bundle block adjustment (BBA).

MicMac implementation.

MicMac solves the BBA with the Levenberg-Marquardt (L-M) method. The L – M is in essence the Gauss-Newton method enriched with a damping factor to handle rank-deficient (or nearly so) Jacobian matrices. A range of different observations equations, constraints and unknowns (i.e. parameters) are allowed in the adjustment routine, among them:

  • tie points,

  • lines,

  • perspective centers derived from direct geo-referencing (i.e. GNSS),

  • ground control points (GCP),

  • the lever-arm vector separating the GNSS antenna and the perspective center,
  • rigid relative orientation between cameras.

On top of that, a broad spectrum of camera calibration models are available. Both argumentation are supported, the physical and the phenomenological. The former models any imaging error attributed to a phenomenon of a physical nature, while the latter models solely the effects of the lens imperfections, without interrogating its causes. The total distortion is defined as a composition of predefined elementary distortions, such as radial, decentric or a generic polynomial. Typically, the major distortion are modeled by the physical model, while the generic polynomial models remove the less significant remaining systematism.

The critical element of the BBA’s mathematical model is the observation weighting, known as the stochastic model. MicMac specifies three different weighting strategies. The first strategy corresponds to the weighting in the classical model known in photogrammetry – the Gauss-Markov – where the observations are weighted by their true standard deviations known a priori. The second strategy controls the influence of a particular category of observations so as to avoid solutions that are driven by a single category only for the sheer reason of its abundant observations. The last strategy addresses the robustness. The weight is a function of the observation’s residual in the BBA, therefore giving more credibility to observations that are close to the estimated model, and contrary, limiting the influence of observations with high residuals.

Related Posts

Leave a Reply

Your email address will not be published. Required fields are marked *