Construct a bundle adjuster instance
obj = cv.BundleAdjuster(adjusterType)
obj = cv.BundleAdjuster(adjusterType, 'OptionName',optionValue, ...)
Input
- adjusterType Bundle adjustment cost function. One of:
- NoBundleAdjuster Stub bundle adjuster that does nothing.
- BundleAdjusterRay Implementation of the camera
parameters refinement algorithm which minimizes sum of the
distances between the rays passing through the camera center
and a feature. It can estimate focal length. It ignores the
refinement mask for now.
- BundleAdjusterReproj Implementation of the camera
parameters refinement algorithm which minimizes sum of the
reprojection error squares. It can estimate focal length,
aspect ratio, principal point. You can affect only on them
via the refinement mask.
- BundleAdjusterAffine Bundle adjuster that expects affine
transformation represented in homogeneous coordinates in R
for each camera param. Implements camera parameters
refinement algorithm which minimizes sum of the reprojection
error squares. It estimates all transformation parameters.
Refinement mask is ignored. See also cv.AffineBasedEstimator
and
AffineBestOf2NearestMatcher
.
- BundleAdjusterAffinePartial Bundle adjuster that expects
affine transformation with 4 DOF represented in homogeneous
coordinates in R for each camera param. Implements camera
parameters refinement algorithm which minimizes sum of the
the reprojection error squares. It estimates all
transformation parameters. Refinement mask is ignored.
Options
The following are options accepted by all adjusters:
- ConfThresh Threshold to filter out poorly matched image
pairs. default 1
- RefinementMask 3x3 8-bit mask, where 0 means don't refine
respective parameter, non-zero means refine.
default
eye(3,'uint8')
- TermCriteria Levenberg-Marquardt algorithm termination
criteria. default
struct('type','Count+EPS', 'maxCount',1000, 'epsilon',eps)