Multi-view triangulation

Reconstruct a point from N image projections
Updated 7 Aug 2020

View License

This function implements multi-view triangulation for reconstructing a 3D point from its projections in N
images and the corresponding camera matrices. It is the extension in N views of my stereoReconsPts
function (see

At the user's choice, a point can be reconstructed by any of the following multi-view triangulation methods:
i) The N view DLT
ii) The N view inhomogeneous method
iii) The N view midpoint method
vi) A N view robust method that can tolerate mismatches

Note that i) & ii) are algebraic methods, whereas iii) involves a more meaningful geometric constraint.

Since the rays defined by the camera centers and corresponding image projections will in general be skew
(i.e., they will not meet in a single intersection point), it is recommended to refine the estimate
computed above with one of the following methods:
i) Minimization of the reprojection error in N views with VGG's Gauss-Newton code
ii) Minimization of the reprojection error in N views with Levenberg-Marquardt
iii) Minimization of the N view angular criterion by Recker et al: "Statistical angular error-based
triangulation for efficient and accurate multi-view scene reconstruction", WACV 2013

In general, the combinations 'dlt', 'lm' or 'midp', 'lm' should work well in most cases.
Refer to the comments in the code for more details.

* If you use this function in your published work, please cite the following paper:

S. Nousias, M. Lourakis, C. Bergeles (2019). Large-Scale, Metric Structure from Motion for Unordered Light Fields
IEEE Conf. on Pattern Recognition and Computer Vision (CVPR'19), pp. 3292-3301.

title={Large-Scale, Metric Structure From Motion for Unordered Light Fields},
author={S. Nousias and M. Lourakis and C. Bergeles},
booktitle={IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},

Cite As

Manolis Lourakis (2024). Multi-view triangulation (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2013b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Tags Add Tags

Inspired by: Stereo triangulation

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes

Changed title


Updated description