Expand description
This figure illustrates the stitching module pipeline implemented in the Stitcher class. Using that
class it’s possible to configure/remove some steps, i.e. adjust the stitching pipeline according to
the particular needs. All building blocks from the pipeline are available in the detail namespace,
one can combine and use them separately.
The implemented stitching pipeline is very similar to the one proposed in BL07 .

There are currently 2 camera models implemented in stitching pipeline.
- Homography model expecting perspective transformations between images
implemented in @ref cv::detail::BestOf2NearestMatcher cv::detail::HomographyBasedEstimator
cv::detail::BundleAdjusterReproj cv::detail::BundleAdjusterRay
- Affine model expecting affine transformation with 6 DOF or 4 DOF implemented in
@ref cv::detail::AffineBestOf2NearestMatcher cv::detail::AffineBasedEstimator
cv::detail::BundleAdjusterAffine cv::detail::BundleAdjusterAffinePartial cv::AffineWarper
Homography model is useful for creating photo panoramas captured by camera,
while affine-based model can be used to stitch scans and object captured by
specialized devices. Use @ref cv::Stitcher::create to get preconfigured pipeline for one
of those models.
Note:
Certain detailed settings of @ref cv::Stitcher might not make sense. Especially
you should not mix classes implementing affine model and classes implementing
Homography model, as they work with different transformations.
Affine warper factory class.
Cylindrical warper factory class.
Affine transformation based estimator.
Features matcher similar to cv::detail::BestOf2NearestMatcher which
finds two best matches for each feature and leaves the best one only if the
ratio between descriptor distances is greater than the threshold match_conf.
Affine warper that uses rotations and translations
Features matcher which finds two best matches for each feature and leaves the best one only if the
ratio between descriptor distances is greater than the threshold match_conf
Base class for all blenders.
Exposure compensator which tries to remove exposure related artifacts by adjusting image block
on each channel.
Exposure compensator which tries to remove exposure related artifacts by adjusting image block
intensities, see
UES01 for details.
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
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 reprojection
error squares
Implementation of the camera parameters refinement algorithm which minimizes sum of the distances
between the rays passing through the camera center and a feature. :
Implementation of the camera parameters refinement algorithm which minimizes sum of the reprojection
error squares
Describes camera parameters.
Exposure compensator which tries to remove exposure related artifacts by adjusting image
intensities on each channel independently.
Warper that maps an image onto the x*x + z*z = 1 cylinder.
Simple blender which mixes images at its borders.
Exposure compensator which tries to remove exposure related artifacts by adjusting image
intensities, see
BL07 and
WJ10 for details.
Minimum graph cut-based seam estimator. See details in
V03 .
Base class for all minimum graph-cut-based seam estimators.
Homography based rotation estimator.
Structure containing image keypoints and descriptors.
Structure containing information about matches between two images.
Blender which uses multi-band blending algorithm (see
BA83).
Stub bundle adjuster that does nothing.
Stub exposure compensator which does nothing.
Stub seam estimator which does nothing.
Warper that maps an image onto the z = 1 plane.
Base class for warping logic implementation.
Warper that maps an image onto the unit sphere located at the origin.
Voronoi diagram-based seam estimator.
Plane warper factory class.
Spherical warper factory class
High level image stitcher.
Affine warper factory class.
Cylindrical warper factory class.
Affine transformation based estimator.
Features matcher similar to cv::detail::BestOf2NearestMatcher which
finds two best matches for each feature and leaves the best one only if the
ratio between descriptor distances is greater than the threshold match_conf.
Affine warper that uses rotations and translations
Features matcher which finds two best matches for each feature and leaves the best one only if the
ratio between descriptor distances is greater than the threshold match_conf
Base class for all blenders.
Exposure compensator which tries to remove exposure related artifacts by adjusting image block
on each channel.
Exposure compensator which tries to remove exposure related artifacts by adjusting image blocks.
Exposure compensator which tries to remove exposure related artifacts by adjusting image block
intensities, see
UES01 for details.
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 reprojection
error squares
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
Base class for all camera parameters refinement methods.
Implementation of the camera parameters refinement algorithm which minimizes sum of the distances
between the rays passing through the camera center and a feature. :
Implementation of the camera parameters refinement algorithm which minimizes sum of the reprojection
error squares
Describes camera parameters.
Exposure compensator which tries to remove exposure related artifacts by adjusting image
intensities on each channel independently.
Warper that maps an image onto the x*x + z*z = 1 cylinder.
Rotation estimator base class.
Base class for all exposure compensators.
Simple blender which mixes images at its borders.
Feature matchers base class.
Exposure compensator which tries to remove exposure related artifacts by adjusting image
intensities, see
BL07 and
WJ10 for details.
Base class for all minimum graph-cut-based seam estimators.
Minimum graph cut-based seam estimator. See details in
V03 .
Homography based rotation estimator.
Structure containing image keypoints and descriptors.
Structure containing information about matches between two images.
Blender which uses multi-band blending algorithm (see
BA83).
Stub bundle adjuster that does nothing.
Stub exposure compensator which does nothing.
Stub seam estimator which does nothing.
Base class for all pairwise seam estimators.
Warper that maps an image onto the z = 1 plane.
Base class for warping logic implementation.
Rotation-only model image warper interface.
Base class for a seam estimator.
Warper that maps an image onto the unit sphere located at the origin.
Voronoi diagram-based seam estimator.
Plane warper factory class.
Spherical warper factory class
High level image stitcher.
Image warper factories base class.