OpenCV  4.10.0
开源计算机视觉
正在加载...
正在搜索...
没有匹配项
公共类型 | 公共成员函数 | 静态公共成员函数 | 静态公共属性 | 所有成员列表
cv::Stitcher 类参考

高级图像缝合器。 更多...

#include <opencv2/stitching.hpp>

cv::Stitcher 的协作图

公共类型

enum  Mode {
  PANORAMA = 0 ,
  SCANS = 1
}
 
enum  Status {
  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< detail::CameraParamscameras () const
 
std::vector< int > component () const
 
Status composePanorama (InputArrayOfArrays images, OutputArray pano)
 这些函数尝试将给定的图像(或从其他函数调用存储的内部图像)组合到最终的 pano,假设图像变换之前已经估计过。
 
Status composePanorama (OutputArray pano)
 
double compositingResol () const
 
Status 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)
 
Status 设置变换 (InputArrayOfArrays images, const std::vector< detail::CameraParams > &cameras)
 
Status 设置变换 (InputArrayOfArrays images, const std::vector< detail::CameraParams > &cameras, const std::vector< int > &component)
 这些函数恢复了相机旋转和每个相机的内部参数,可以通过调用 Stitcher::cameras 获取。
 
void 设置Warper (Ptr< WarperCreator > creator)
 
void 设置波校正 (bool flag)
 
void 设置波校正类型 (detail::WaveCorrectKind kind)
 
Status 叠加 (InputArrayOfArrays images, InputArrayOfArrays masks, OutputArray pano)
 这些函数尝试进行给定图像的拼接。
 
Status 叠加 (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 找到基本的图像拼接示例。
  • 可以在 opencv_source_code/samples/python/stitching.py 找到 Python 中的基本图像拼接示例。
  • 可以在 opencv_source_code/samples/cpp/stitching_detailed.cpp 找到详细的图像拼接示例。

成员枚举文档

◆ Mode

枚举值
PANORAMA 

创建照片全景模式的程序。期望图像在透视变换下,并将生成的全景投影到球面上。

参见:
detail::BestOf2NearestMatcher SphericalWarper
SCANS 

组合扫描的程序。期望图像在仿射变换下,默认不补偿曝光。

参见:
detail::AffineBestOf2NearestMatcher AffineWarper

◆ 状态

枚举值
OK 
ERR_NEED_MORE_IMGS 
ERR_HOMOGRAPHY_EST_FAIL 
ERR_CAMERA_PARAMS_ADJUST_FAIL 

成员函数文档

◆ blender() [1/2]

Ptr< detail::Blender > cv::Stitcher::blender ( )
inline

◆ blender() [2/2]

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

◆ bundleAdjuster() [1/2]

Ptr< detail::BundleAdjusterBase> cv::Stitcher::bundleAdjuster ( )
inline

◆ bundleAdjuster() [2/2]

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

◆ cameras()

std::vector< detail::CameraParams > cv::Stitcher::cameras ( ) const
inline

◆ component()

std::vector< int > cv::Stitcher::component ( ) const
inline

◆ composePanorama() [1/2]

adv::Stitcher::composePanorama ( InputArrayOfArrays  images,
OutputArray  pano 
)
Python
cv.Stitcher.composePanorama([, pano]) -> retval, pano
cv.Stitcher.composePanorama(images[, pano]) -> retval, pano

这些函数尝试将给定的图像(或从其他函数调用存储的内部图像)组合到最终的 pano,假设图像变换之前已经估计过。

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

◆ composePanorama() [2/2]

adv::Stitcher::composePanorama ( OutputArray  pano)
Python
cv.Stitcher.composePanorama([, pano]) -> retval, pano
cv.Stitcher.composePanorama(images[, pano]) -> retval, pano

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

◆ compositingResol()

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

◆ create()

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

创建了一个配置在拼接模式之一的 Stitcher

参数
模式缝合器操作场景。这通常取决于要缝合的图像来源及其变换。将根据给定场景选择默认参数进行操作。
返回
Stitcher 类实例。

◆ estimateTransform()

状态 cv::Stitcher::estimateTransform ( InputArrayOfArrays  images,
InputArrayOfArrays  mask = noArray() 
)
Python
cv.Stitcher.estimateTransform(图像[, mask]) -> retval

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

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

◆ estimator() [1/2]

Ptr< detail::Estimator > cv::Stitcher::estimator ( )
inline

◆ estimator() [2/2]

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

◆ exposureCompensator() [1/2]

Ptr< detail::ExposureCompensator > cv::Stitcher::exposureCompensator ( )
inline

◆ exposureCompensator() [2/2]

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

◆ featuresFinder() [1/2]

Ptr< Feature2D > cv::Stitcher::featuresFinder ( )
inline

◆ featuresFinder() [2/2]

Ptr< Feature2D > cv::Stitcher::featuresFinder ( ) const
inline

◆ featuresMatcher() [1/2]

Ptr< detail::FeaturesMatcher > cv::Stitcher::featuresMatcher ( )
inline

◆ featuresMatcher() [2/2]

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

◆ interpolationFlags()

插值标志 cv::Stitcher::interpolationFlags ( ) const
inline
Python
cv.Stitcher.interpolationFlags() -> retval

◆ matchingMask()

const cv::UMat & cv::Stitcher::matchingMask ( ) const
inline

◆ panoConfidenceThresh()

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

◆ registrationResol()

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

◆ resultMask()

UMat cv::Stitcher::resultMask ( ) const
inline

返回全景图的遮罩。

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

返回
掩码。

◆ seamEstimationResol()

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

◆ seamFinder() [1/2]

Ptr< detail::SeamFinder > cv::Stitcher::seamFinder ( )
inline

◆ seamFinder() [2/2]

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

◆ setBlender()

void cv::Stitcher::setBlender ( Ptr< detail::Blender b)
inline

◆ setBundleAdjuster()

void cv::Stitcher::setBundleAdjuster ( Ptr< detail::BundleAdjusterBase bundle_adjuster)
inline

◆ setCompositingResol()

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

◆ setEstimator()

void cv::Stitcher::setEstimator ( Ptr< detail::Estimator estimator)
inline

◆ setExposureCompensator()

void cv::Stitcher::setExposureCompensator ( Ptr< detail::ExposureCompensator exposure_comp)
inline

◆ setFeaturesFinder()

void cv::Stitcher::setFeaturesFinder ( Ptr< Feature2D features_finder)
inline

◆ setFeaturesMatcher()

void cv::Stitcher::setFeaturesMatcher ( Ptr< detail::FeaturesMatcher features_matcher)
inline

◆ setInterpolationFlags()

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

◆ setMatchingMask()

void cv::Stitcher::setMatchingMask ( const cv::UMat mask)
inline

◆ setPanoConfidenceThresh()

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

◆ setRegistrationResol()

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

◆ setSeamEstimationResol()

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

◆ setSeamFinder()

void cv::Stitcher::setSeamFinder ( Ptr< detail::SeamFinder seam_finder)
inline

◆ 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)。(可选)。
返回
状态代码。

◆ setWarper()

void cv::Stitcher::setWarper ( Ptr< WarperCreator creator)
inline

◆ setWaveCorrection()

void cv::Stitcher::setWaveCorrection ( bool  flag)
inline
Python
cv.Stitcher.setWaveCorrection(flag) -> None

◆ setWaveCorrectKind()

void cv::Stitcher::setWaveCorrectKind ( detail::WaveCorrectKind  kind)
inline

◆ stitch() [1/2]

Status cv::Stitcher::stitch ( InputArrayOfArrays  images,
InputArrayOfArrays  mask,
OutputArray  pano 
)
Python
cv.Stitcher.stitch(images[, pano]) -> retval, pano
cv.Stitcher.stitch(images, masks[, pano]) -> retval, pano

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

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

◆ stitch() [2/2]

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

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

◆ warper() [1/2]

Ptr< WarperCreator > cv::Stitcher::warper ( )
inline

◆ warper() [2/2]

const Ptr< WarperCreator > cv::Stitcher::warper ( ) const
inline

◆ 波前校正()

bool cv::Stitcher::waveCorrection ( ) const
inline
Python
cv.Stitcher波前校正() -> retval

◆ 波前纠正方式()

detail::WaveCorrectKind cv::Stitcher::waveCorrectKind ( ) const
inline

◆ 工作比例()

double cv::Stitcher::workScale ( ) const
inline
Python
cv.Stitcher工作比例() -> retval

成员数据文档

◆ ORIG_RESOL

const double cv::Stitcher::ORIG_RESOL
静态

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


本类的文档是从以下文件生成的