43 #ifndef __OPENCV_STITCHING_STITCHER_HPP__
44 #define __OPENCV_STITCHING_STITCHER_HPP__
61 enum { ORIG_RESOL = -1 };
62 enum Status { OK, ERR_NEED_MORE_IMGS };
65 static Stitcher createDefault(
bool try_use_gpu =
false);
88 { features_finder_ = features_finder; }
93 { features_matcher_ = features_matcher; }
98 CV_Assert(mask.
type() == CV_8U && mask.
cols == mask.
rows);
99 matching_mask_ = mask.
clone();
105 { bundle_adjuster_ = bundle_adjuster; }
114 { exposure_comp_ = exposure_comp; }
125 Status estimateTransform(
InputArray images,
const std::vector<std::vector<Rect> > &rois);
134 std::vector<detail::CameraParams>
cameras()
const {
return cameras_; }
141 void estimateCameraParams();
143 double registr_resol_;
144 double seam_est_resol_;
145 double compose_resol_;
147 Ptr<detail::FeaturesFinder> features_finder_;
148 Ptr<detail::FeaturesMatcher> features_matcher_;
150 Ptr<detail::BundleAdjusterBase> bundle_adjuster_;
151 bool do_wave_correct_;
153 Ptr<WarperCreator> warper_;
154 Ptr<detail::ExposureCompensator> exposure_comp_;
155 Ptr<detail::SeamFinder> seam_finder_;
156 Ptr<detail::Blender> blender_;
158 std::vector<cv::Mat> imgs_;
159 std::vector<std::vector<cv::Rect> > rois_;
160 std::vector<cv::Size> full_img_sizes_;
161 std::vector<detail::ImageFeatures> features_;
162 std::vector<detail::MatchesInfo> pairwise_matches_;
163 std::vector<cv::Mat> seam_est_imgs_;
164 std::vector<int> indices_;
165 std::vector<detail::CameraParams> cameras_;
168 double seam_work_aspect_;
169 double warped_image_scale_;
174 #endif // __OPENCV_STITCHING_STITCHER_HPP__
int rows
the number of rows and columns or (-1, -1) when the matrix has more than 2 dimensions ...
Definition: core.hpp:1962
const cv::Mat & matchingMask() const
Definition: stitcher.hpp:95
void setWarper(Ptr< WarperCreator > creator)
Definition: stitcher.hpp:109
void setMatchingMask(const cv::Mat &mask)
Definition: stitcher.hpp:96
double compositingResol() const
Definition: stitcher.hpp:73
detail::WaveCorrectKind waveCorrectKind() const
Definition: stitcher.hpp:82
Ptr< detail::SeamFinder > seamFinder()
Definition: stitcher.hpp:116
Mat clone() const
returns deep copy of the matrix, i.e. the data is copied
Definition: mat.hpp:332
bool waveCorrection() const
Definition: stitcher.hpp:79
CvPoint2D32f float float b
Definition: legacy.hpp:578
void setSeamFinder(Ptr< detail::SeamFinder > seam_finder)
Definition: stitcher.hpp:118
typedef Status(APIENTRYP GLEEPFNGLXGETTRANSPARENTINDEXSUNPROC)(Display *dpy
const Ptr< detail::ExposureCompensator > exposureCompensator() const
Definition: stitcher.hpp:112
double registrationResol() const
Definition: stitcher.hpp:67
void setCompositingResol(double resol_mpx)
Definition: stitcher.hpp:74
int cols
Definition: core.hpp:1962
double workScale() const
Definition: stitcher.hpp:135
Ptr< detail::ExposureCompensator > exposureCompensator()
Definition: stitcher.hpp:111
int type() const
returns element type, similar to CV_MAT_TYPE(cvmat->type)
Definition: mat.hpp:399
Ptr< WarperCreator > warper()
Definition: stitcher.hpp:107
void setSeamEstimationResol(double resol_mpx)
Definition: stitcher.hpp:71
void setFeaturesFinder(Ptr< detail::FeaturesFinder > features_finder)
Definition: stitcher.hpp:87
void setBlender(Ptr< detail::Blender > b)
Definition: stitcher.hpp:122
std::vector< detail::CameraParams > cameras() const
Definition: stitcher.hpp:134
void setExposureCompensator(Ptr< detail::ExposureCompensator > exposure_comp)
Definition: stitcher.hpp:113
void setFeaturesMatcher(Ptr< detail::FeaturesMatcher > features_matcher)
Definition: stitcher.hpp:92
double seamEstimationResol() const
Definition: stitcher.hpp:70
const Ptr< detail::Blender > blender() const
Definition: stitcher.hpp:121
double panoConfidenceThresh() const
Definition: stitcher.hpp:76
void setWaveCorrection(bool flag)
Definition: stitcher.hpp:80
int CvSeq float CvSize2D32f int flag
Definition: legacy.hpp:237
void setRegistrationResol(double resol_mpx)
Definition: stitcher.hpp:68
void setBundleAdjuster(Ptr< detail::BundleAdjusterBase > bundle_adjuster)
Definition: stitcher.hpp:104
GLboolean GLboolean GLboolean b
Definition: legacy.hpp:633
Ptr< detail::BundleAdjusterBase > bundleAdjuster()
Definition: stitcher.hpp:102
The n-dimensional matrix class.
Definition: core.hpp:1688
void setPanoConfidenceThresh(double conf_thresh)
Definition: stitcher.hpp:77
const Ptr< detail::SeamFinder > seamFinder() const
Definition: stitcher.hpp:117
const Ptr< WarperCreator > warper() const
Definition: stitcher.hpp:108
std::vector< int > component() const
Definition: stitcher.hpp:133
Status
Definition: stitcher.hpp:62
void setWaveCorrectKind(detail::WaveCorrectKind kind)
Definition: stitcher.hpp:83
Ptr< detail::Blender > blender()
Definition: stitcher.hpp:120
Ptr< detail::FeaturesFinder > featuresFinder()
Definition: stitcher.hpp:85
const Ptr< detail::FeaturesFinder > featuresFinder() const
Definition: stitcher.hpp:86
Definition: stitcher.hpp:58
const Ptr< detail::BundleAdjusterBase > bundleAdjuster() const
Definition: stitcher.hpp:103
GLenum GLint GLuint mask
Definition: tracking.hpp:132
Ptr< detail::FeaturesMatcher > featuresMatcher()
Definition: stitcher.hpp:90
Proxy datatype for passing Mat's and vector<>'s as input parameters.
Definition: core.hpp:1400
WaveCorrectKind
Definition: motion_estimators.hpp:180
const Ptr< detail::FeaturesMatcher > featuresMatcher() const
Definition: stitcher.hpp:91