OpenCV 4.13.0
开源计算机视觉库 (Open Source Computer Vision)
正在加载...
正在搜索...
未找到匹配项
cv::Stitcher 类参考

高级图像拼接器。 更多...

#include <opencv2/stitching.hpp>

cv::Stitcher 的协作图

公开类型

enum  模式 {
  全景图 = 0 ,
  扫描 = 1
}
 
enum  状态 {
  OK = 0 ,
  ERR_NEED_MORE_IMGS = 1 ,
  ERR_HOMOGRAPHY_EST_FAIL = 2 ,
  ERR_CAMERA_PARAMS_ADJUST_FAIL = 3
}
 

公开成员函数

Ptr< detail::Blenderblender ()
 
const Ptr< detail::Blenderblender () const
 
Ptr< detail::BundleAdjusterBasebundleAdjuster ()
 
const Ptr< detail::BundleAdjusterBasebundleAdjuster () const
 
std::vector< cv::detail::CameraParamscameras () const
 
std::vector< int > component () const
 返回用于全景图拼接的输入图像索引。
 
状态 composePanorama (InputArrayOfArrays images, OutputArray pano)
 这些函数尝试将给定的图像(或从其他函数调用中存储的内部图像)组合成最终的全景图,假设图像变换已预先估计。
 
状态 composePanorama (OutputArray pano)
 
double compositingResol () const
 
状态 estimateTransform (InputArrayOfArrays images, InputArrayOfArrays masks=noArray())
 这些函数尝试匹配给定的图像并估计每个相机的旋转。
 
Ptr< detail::Estimatorestimator ()
 
const Ptr< detail::Estimatorestimator () const
 
Ptr< detail::ExposureCompensatorexposureCompensator ()
 
const Ptr< detail::ExposureCompensatorexposureCompensator () const
 
Ptr< Feature2DfeaturesFinder ()
 
Ptr< Feature2DfeaturesFinder () const
 
Ptr< detail::FeaturesMatcherfeaturesMatcher ()
 
Ptr< detail::FeaturesMatcherfeaturesMatcher () const
 
InterpolationFlags interpolationFlags () const
 
const cv::UMatmatchingMask () const
 
double panoConfidenceThresh () const
 
double registrationResol () const
 
UMat resultMask () const
 返回全景图的掩码。
 
double seamEstimationResol () const
 
Ptr< detail::SeamFinderseamFinder ()
 
const Ptr< detail::SeamFinderseamFinder () const
 
void setBlender (Ptr< detail::Blender > b)
 
void setBundleAdjuster (Ptr< detail::BundleAdjusterBase > bundle_adjuster)
 
void setCompositingResol (double resol_mpx)
 
void setEstimator (Ptr< detail::Estimator > estimator)
 
void setExposureCompensator (Ptr< detail::ExposureCompensator > exposure_comp)
 
void setFeaturesFinder (Ptr< Feature2D > features_finder)
 
void setFeaturesMatcher (Ptr< detail::FeaturesMatcher > features_matcher)
 
void setInterpolationFlags (InterpolationFlags interp_flags)
 
void setMatchingMask (const cv::UMat &mask)
 
void setPanoConfidenceThresh (double conf_thresh)
 
void setRegistrationResol (double resol_mpx)
 
void setSeamEstimationResol (double resol_mpx)
 
void setSeamFinder (Ptr< detail::SeamFinder > seam_finder)
 
状态 setTransform (InputArrayOfArrays images, const std::vector< detail::CameraParams > &cameras)
 
状态 setTransform (InputArrayOfArrays images, const std::vector< detail::CameraParams > &cameras, const std::vector< int > &component)
 这些函数恢复每个相机的相机旋转和相机内参,可以通过 Stitcher::cameras 调用获得。
 
void setWarper (Ptr< WarperCreator > creator)
 
void setWaveCorrection (bool flag)
 
void setWaveCorrectKind (detail::WaveCorrectKind kind)
 
状态 stitch (InputArrayOfArrays images, InputArrayOfArrays masks, OutputArray pano)
 这些函数尝试拼接给定的图像。
 
状态 stitch (InputArrayOfArrays images, OutputArray pano)
 
Ptr< WarperCreatorwarper ()
 
const Ptr< WarperCreatorwarper () const
 
bool waveCorrection () const
 
detail::WaveCorrectKind waveCorrectKind () const
 
double workScale () const
 

静态公开成员函数

static Ptr< Stitchercreate (Mode mode=Stitcher::PANORAMA)
 创建在一种拼接模式下配置的 Stitcher
 

静态公开属性

static const double ORIG_RESOL
 

详细说明

高级图像拼接器。

可以使用此类而不了解整个拼接流程。但是,为了能够获得更高的拼接稳定性和最终图像质量,至少熟悉理论是推荐的。

注意
  • 有关图像拼接的基本示例,请参见 opencv_source_code/samples/cpp/stitching.cpp
  • 有关 Python 中图像拼接的基本示例,请参见 opencv_source_code/samples/python/stitching.py
  • 有关图像拼接的详细示例,请参见 opencv_source_code/samples/cpp/stitching_detailed.cpp

成员枚举文档

◆ Mode

枚举值 (Enumerator)
PANORAMA 

用于创建照片全景图的模式。期望图像处于透视变换下,并将结果全景图投影到球面上。

另请参阅
detail::BestOf2NearestMatcher SphericalWarper
SCANS 

用于组合扫描的模式。期望图像处于仿射变换下,默认不进行曝光补偿。

另请参阅
detail::AffineBestOf2NearestMatcher AffineWarper

◆ Status

枚举值 (Enumerator)
OK 
ERR_NEED_MORE_IMGS 
ERR_HOMOGRAPHY_EST_FAIL 
ERR_CAMERA_PARAMS_ADJUST_FAIL 

成员函数说明

◆ blender() [1/2]

Ptr< detail::Blender > cv::Stitcher::blender ( )
内联

◆ blender() [2/2]

const Ptr< detail::Blender > cv::Stitcher::blender ( ) const
内联

◆ bundleAdjuster() [1/2]

Ptr< detail::BundleAdjusterBase > cv::Stitcher::bundleAdjuster ( )
内联

◆ bundleAdjuster() [2/2]

const Ptr< detail::BundleAdjusterBase > cv::Stitcher::bundleAdjuster ( ) const
内联

◆ cameras()

std::vector< cv::detail::CameraParams > cv::Stitcher::cameras ( ) const
内联
Python
cv.Stitcher.cameras() -> retval

返回所有拼接图像的估计相机参数

◆ component()

std::vector< int > cv::Stitcher::component ( ) const
内联
Python
cv.Stitcher.component() -> retval

返回用于全景图拼接的输入图像索引。

◆ composePanorama() [1/2]

Status cv::Stitcher::composePanorama ( InputArrayOfArrays images,
OutputArray pano )
Python
cv.Stitcher.composePanorama([, pano]) -> 返回值, pano
cv.Stitcher.composePanorama(images[, pano]) -> 返回值, pano

这些函数尝试将给定的图像(或从其他函数调用中存储的内部图像)组合成最终的全景图,假设图像变换已预先估计。

注意
仅当您了解拼接流程时才使用这些函数,否则请使用 Stitcher::stitch
参数
images输入图像。
pano最终全景图。
返回
状态码。

◆ composePanorama() [2/2]

Status cv::Stitcher::composePanorama ( OutputArray pano)
Python
cv.Stitcher.composePanorama([, pano]) -> 返回值, pano
cv.Stitcher.composePanorama(images[, pano]) -> 返回值, pano

这是一个重载的成员函数,为方便起见而提供。它与上述函数的区别仅在于所接受的参数不同。

◆ compositingResol()

double cv::Stitcher::compositingResol ( ) const
内联
Python
cv.Stitcher.compositingResol() -> retval

◆ create()

static Ptr< Stitcher > cv::Stitcher::create ( 模式 mode = Stitcher::PANORAMA)
static (静态)
Python
cv.Stitcher.create([, mode]) -> retval
cv.Stitcher_create([, mode]) -> retval

创建在一种拼接模式下配置的 Stitcher

参数
mode拼接器操作的场景。这通常由待拼接图像的来源及其变换决定。默认参数将为给定的场景操作进行选择。
返回
Stitcher 类实例。

◆ estimateTransform()

Status cv::Stitcher::estimateTransform ( InputArrayOfArrays images,
InputArrayOfArrays masks = noArray() )
Python
cv.Stitcher.estimateTransform(images[, masks]) -> retval

这些函数尝试匹配给定的图像并估计每个相机的旋转。

注意
仅当您了解拼接流程时才使用这些函数,否则请使用 Stitcher::stitch
参数
images输入图像。
masks每个输入图像的掩码,指定在何处寻找关键点(可选)。
返回
状态码。
此函数的调用图

◆ estimator() [1/2]

Ptr< detail::Estimator > cv::Stitcher::estimator ( )
内联

◆ estimator() [2/2]

const Ptr< detail::Estimator > cv::Stitcher::estimator ( ) const
内联

◆ exposureCompensator() [1/2]

Ptr< detail::ExposureCompensator > cv::Stitcher::exposureCompensator ( )
内联

◆ exposureCompensator() [2/2]

const Ptr< detail::ExposureCompensator > cv::Stitcher::exposureCompensator ( ) const
内联

◆ featuresFinder() [1/2]

Ptr< Feature2D > cv::Stitcher::featuresFinder ( )
内联

◆ featuresFinder() [2/2]

Ptr< Feature2D > cv::Stitcher::featuresFinder ( ) const
内联

◆ featuresMatcher() [1/2]

Ptr< detail::FeaturesMatcher > cv::Stitcher::featuresMatcher ( )
内联

◆ featuresMatcher() [2/2]

Ptr< detail::FeaturesMatcher > cv::Stitcher::featuresMatcher ( ) const
内联

◆ interpolationFlags()

InterpolationFlags cv::Stitcher::interpolationFlags ( ) const
内联
Python
cv.Stitcher.interpolationFlags() -> retval

◆ matchingMask()

const cv::UMat & cv::Stitcher::matchingMask ( ) const
内联

◆ panoConfidenceThresh()

double cv::Stitcher::panoConfidenceThresh ( ) const
内联
Python
cv.Stitcher.panoConfidenceThresh() -> retval

◆ registrationResol()

double cv::Stitcher::registrationResol ( ) const
内联
Python
cv.Stitcher.registrationResol() -> retval

◆ resultMask()

UMat cv::Stitcher::resultMask ( ) const
内联

返回全景图的掩码。

掩码是一个 8U 的 UMat,其值为:0xFF(白色)表示由输入图像填充的像素,0(黑色)表示未使用的像素。它可以作为 inpaint 的掩码使用。

返回
掩码。

◆ seamEstimationResol()

double cv::Stitcher::seamEstimationResol ( ) const
内联
Python
cv.Stitcher.seamEstimationResol() -> retval

◆ seamFinder() [1/2]

Ptr< detail::SeamFinder > cv::Stitcher::seamFinder ( )
内联

◆ seamFinder() [2/2]

const Ptr< detail::SeamFinder > cv::Stitcher::seamFinder ( ) const
内联

◆ setBlender()

void cv::Stitcher::setBlender ( Ptr< detail::Blender > b)
内联

◆ setBundleAdjuster()

void cv::Stitcher::setBundleAdjuster ( Ptr< detail::BundleAdjusterBase > bundle_adjuster)
内联

◆ setCompositingResol()

void cv::Stitcher::setCompositingResol ( double resol_mpx)
内联
Python
cv.Stitcher.setCompositingResol(resol_mpx) -> None

◆ setEstimator()

void cv::Stitcher::setEstimator ( Ptr< detail::Estimator > estimator)
内联

◆ setExposureCompensator()

void cv::Stitcher::setExposureCompensator ( Ptr< detail::ExposureCompensator > exposure_comp)
内联

◆ setFeaturesFinder()

void cv::Stitcher::setFeaturesFinder ( Ptr< Feature2D > features_finder)
内联

◆ setFeaturesMatcher()

void cv::Stitcher::setFeaturesMatcher ( Ptr< detail::FeaturesMatcher > features_matcher)
内联

◆ setInterpolationFlags()

void cv::Stitcher::setInterpolationFlags ( InterpolationFlags interp_flags)
内联
Python
cv.Stitcher.setInterpolationFlags(interp_flags) -> None

◆ setMatchingMask()

void cv::Stitcher::setMatchingMask ( const cv::UMat & mask)
内联

◆ setPanoConfidenceThresh()

void cv::Stitcher::setPanoConfidenceThresh ( double conf_thresh)
内联
Python
cv.Stitcher.setPanoConfidenceThresh(conf_thresh) -> None

◆ setRegistrationResol()

void cv::Stitcher::setRegistrationResol ( double resol_mpx)
内联
Python
cv.Stitcher.setRegistrationResol(resol_mpx) -> None

◆ setSeamEstimationResol()

void cv::Stitcher::setSeamEstimationResol ( double resol_mpx)
内联
Python
cv.Stitcher.setSeamEstimationResol(resol_mpx) -> None

◆ setSeamFinder()

void cv::Stitcher::setSeamFinder ( Ptr< detail::SeamFinder > seam_finder)
内联

◆ setTransform() [1/2]

Status cv::Stitcher::setTransform ( InputArrayOfArrays images,
const std::vector< detail::CameraParams > & cameras )

这是一个重载的成员函数,为方便起见而提供。它与上述函数的区别仅在于所接受的参数不同。

◆ setTransform() [2/2]

Status cv::Stitcher::setTransform ( InputArrayOfArrays images,
const std::vector< detail::CameraParams > & cameras,
const std::vector< int > & component )

这些函数恢复每个相机的相机旋转和相机内参,可以通过 Stitcher::cameras 调用获得。

参数
images输入图像。
cameras估计的每个输入图像的相机旋转。
component构成最终全景图的图像索引(0-based,可选)。
返回
状态码。

◆ setWarper()

void cv::Stitcher::setWarper ( Ptr< WarperCreator > creator)
内联

◆ setWaveCorrection()

void cv::Stitcher::setWaveCorrection ( bool 标志)
内联
Python
cv.Stitcher.setWaveCorrection(标志) -> None

◆ setWaveCorrectKind()

void cv::Stitcher::setWaveCorrectKind ( detail::WaveCorrectKind kind)
内联

◆ stitch() [1/2]

Status cv::Stitcher::stitch ( InputArrayOfArrays images,
InputArrayOfArrays masks,
OutputArray pano )
Python
cv.Stitcher.stitch(images[, pano]) -> 返回值, pano
cv.Stitcher.stitch(images, masks[, pano]) -> 返回值, pano

这些函数尝试拼接给定的图像。

参数
images输入图像。
masks每个输入图像的掩码,指定在何处寻找关键点(可选)。
pano最终全景图。
返回
状态码。

◆ stitch() [2/2]

Status cv::Stitcher::stitch ( InputArrayOfArrays images,
OutputArray pano )
Python
cv.Stitcher.stitch(images[, pano]) -> 返回值, pano
cv.Stitcher.stitch(images, masks[, pano]) -> 返回值, pano

这是一个重载的成员函数,为方便起见而提供。它与上述函数的区别仅在于所接受的参数不同。

◆ warper() [1/2]

Ptr< WarperCreator > cv::Stitcher::warper ( )
内联

◆ warper() [2/2]

const Ptr< WarperCreator > cv::Stitcher::warper ( ) const
内联

◆ waveCorrection()

bool cv::Stitcher::waveCorrection ( ) const
内联
Python
cv.Stitcher.waveCorrection() -> retval

◆ waveCorrectKind()

detail::WaveCorrectKind cv::Stitcher::waveCorrectKind ( ) const
内联

◆ workScale()

double cv::Stitcher::workScale ( ) const
内联
Python
cv.Stitcher.workScale() -> retval

成员数据文档

◆ ORIG_RESOL

const double cv::Stitcher::ORIG_RESOL
static (静态)

在设置拼接分辨率时,此值是保留原始分辨率的占位符。


该类的文档由以下文件生成: