bundleAdjustment
Adjust collection of 3-D points and camera poses
Syntax
Description
[
refines 3-D points and camera poses to minimize reprojection errors. The refinement
procedure is a variant of the Levenberg-Marquardt algorithm. The function uses the
same global reference coordinate system to return both the 3-D points and camera
poses.xyzRefinedPoints
,refinedPoses
]
= bundleAdjustment(xyzPoints
,pointTracks
,cameraPoses
,intrinsics
)
[
refines 3-D points from the world point set, wpSetRefined
,vSetRefined
,pointIndex
] = bundleAdjustment(wpSet
,vSet
,viewIDs
,intrinsics
)wpSet
, and refines
camera poses from the image view set, vSet
.
viewIDs
specify the camera poses in
vSet
to refine.
[___,
returns the mean reprojection error for each 3-D world point, in addition to the
arguments from the previous syntax.reprojectionErrors
]
= bundleAdjustment(___)
[___] = bundleAdjustment(___,
specifies options using one or more name-value arguments in addition to any
combination of arguments from previous syntaxes. For example,
Name=Value
)MaxIterations
=50
sets the number of
iterations to 50
. Unspecified arguments have default
values.
Examples
Input Arguments
Output Arguments
References
[1] Lourakis, Manolis I. A., and Antonis A. Argyros. "SBA: A Software Package for Generic Sparse Bundle Adjustment." ACM Transactions on Mathematical Software 36, no. 1 (March 2009): 2:1–2:30.
[2] Hartley, Richard, and Andrew Zisserman. Multiple View Geometry in Computer Vision. 2nd ed. Cambridge, UK ; New York: Cambridge University Press, 2003.
[3] Triggs, Bill, Philip F. McLauchlan, Richard I. Hartley, and Andrew W. Fitzgibbon. "Bundle Adjustment — A Modern Synthesis." In Proceedings of the International Workshop on Vision Algorithms, 298–372. Springer-Verlag, 1999.
Version History
See Also
Functions
bundleAdjustmentMotion
|bundleAdjustmentStructure
|relativeCameraPose
|undistortImage
|undistortPoints
|cameraMatrix
|triangulateMultiview