43#ifndef OPENCV_STITCHING_MATCHERS_HPP
44#define OPENCV_STITCHING_MATCHERS_HPP
46#include "opencv2/core.hpp"
47#include "opencv2/features2d.hpp"
49#include "opencv2/opencv_modules.hpp"
60 CV_PROP_RW
int img_idx;
61 CV_PROP_RW
Size img_size;
62 std::vector<KeyPoint> keypoints;
63 CV_PROP_RW
UMat descriptors;
64 CV_WRAP std::vector<KeyPoint> getKeypoints() {
return keypoints; };
75 InputArrayOfArrays images,
76 CV_OUT std::vector<ImageFeatures> &features,
77 InputArrayOfArrays masks = noArray());
90 InputArray mask = noArray());
105 CV_PROP_RW
int src_img_idx;
106 CV_PROP_RW
int dst_img_idx;
107 std::vector<DMatch> matches;
109 CV_PROP_RW
int num_inliers;
111 CV_PROP_RW
double confidence;
112 CV_WRAP std::vector<DMatch> getMatches() {
return matches; };
113 CV_WRAP std::vector<uchar> getInliers() {
return inliers_mask; };
128 CV_OUT
MatchesInfo& matches_info) { match(features1, features2, matches_info); }
140 CV_WRAP_AS(apply2)
void operator ()(
const std::vector<ImageFeatures> &features, CV_OUT std::vector<MatchesInfo> &pairwise_matches,
145 CV_WRAP
bool isThreadSafe()
const {
return is_thread_safe_; }
149 CV_WRAP
virtual void collectGarbage() {}
152 FeaturesMatcher(
bool is_thread_safe =
false) : is_thread_safe_(is_thread_safe) {}
164 bool is_thread_safe_;
185 int num_matches_thresh2 = 6);
187 CV_WRAP
void collectGarbage() CV_OVERRIDE;
188 CV_WRAP static
Ptr<
BestOf2NearestMatcher> create(
bool try_use_gpu = false,
float match_conf = 0.3f,
int num_matches_thresh1 = 6,
189 int num_matches_thresh2 = 6);
194 int num_matches_thresh1_;
195 int num_matches_thresh2_;
203 int num_matches_thresh1 = 6,
int num_matches_thresh2 = 6);
205 void operator ()(
const std::vector<ImageFeatures> &features, std::vector<MatchesInfo> &pairwise_matches,
238 float match_conf = 0.3f,
int num_matches_thresh1 = 6) :
240 full_affine_(full_affine) {}
n-dimensional dense array class
Definition: mat.hpp:802
Template class for specifying the size of an image or rectangle.
Definition: core/types.hpp:316
Features matcher similar to cv::detail::BestOf2NearestMatcher which finds two best matches for each f...
Definition: matchers.hpp:223
void match(const ImageFeatures &features1, const ImageFeatures &features2, MatchesInfo &matches_info) CV_OVERRIDE
This method must implement matching logic in order to make the wrappers detail::FeaturesMatcher::oper...
Features matcher which finds two best matches for each feature and leaves the best one only if the ra...
Definition: matchers.hpp:173
Definition: matchers.hpp:200
Feature matchers base class.
Definition: matchers.hpp:118
virtual void match(const ImageFeatures &features1, const ImageFeatures &features2, MatchesInfo &matches_info)=0
This method must implement matching logic in order to make the wrappers detail::FeaturesMatcher::oper...
CV_WRAP_AS(apply) void operator()(const ImageFeatures &features1
CV_EXPORTS_AS(calibrateCameraExtended) double calibrateCamera(InputArrayOfArrays objectPoints
Finds the camera intrinsic and extrinsic parameters from several views of a calibration pattern.
CV_EXPORTS CV_WRAP_AS(goodFeaturesToTrackWithQuality) void goodFeaturesToTrack(InputArray image
Same as above, but returns also quality measure of the detected corners.
CV_EXPORTS_W void computeImageFeatures(const Ptr< Feature2D > &featuresFinder, InputArrayOfArrays images, CV_OUT std::vector< ImageFeatures > &features, InputArrayOfArrays masks=noArray())
"black box" representation of the file storage associated with a file on disk.
Definition: aruco.hpp:75
Definition: cvstd_wrapper.hpp:74
Structure containing image keypoints and descriptors.
Definition: matchers.hpp:59
Structure containing information about matches between two images.
Definition: matchers.hpp:100
std::vector< uchar > inliers_mask
Geometrically consistent matches mask
Definition: matchers.hpp:108