42
#ifndef __OPENCV_RANDOMPATTERN_HPP__
43
#define __OPENCV_RANDOMPATTERN_HPP__
45
#include "opencv2/features2d.hpp"
46
#include "opencv2/highgui.hpp"
48
namespace
cv
{
namespace
randpattern {
81
int
nminiMatch = 20,
int
depth = CV_32F,
int
verbose = 0,
int
showExtraction = 0,
89
void
loadPattern(
const
cv::Mat
&patternImage);
96
void
loadPattern(
const
cv::Mat
&patternImage,
const
std::vector<cv::KeyPoint> &patternKeyPoints,
const
cv::Mat
&patternDescriptors);
105
void
computeObjectImagePoints(std::vector<cv::Mat> inputImages);
114
std::vector<cv::Mat> computeObjectImagePointsForSingle(
cv::Mat
inputImage);
118
const
std::vector<cv::Mat> &getObjectPoints();
122
const
std::vector<cv::Mat> &getImagePoints();
126
std::vector<cv::Mat> _objectPonits, _imagePoints;
127
float
_patternWidth, _patternHeight;
136
Mat
_descriptorPattern;
137
std::vector<cv::KeyPoint> _keypointsPattern;
141
void
keyPoints2MatchedLocation(
const
std::vector<cv::KeyPoint>& imageKeypoints,
142
const
std::vector<cv::KeyPoint>& patternKeypoints,
const
std::vector<cv::DMatch> matchces,
145
void
getObjectImagePoints(
const
cv::Mat& imageKeypoints,
const
cv::Mat& patternKeypoints);
147
const
Mat& descriptors1,
const
Mat& descriptors2,
148
std::vector<DMatch>& filteredMatches12,
int
knn=1 );
149
void
drawCorrespondence(
const
Mat& image1,
const
std::vector<cv::KeyPoint> keypoint1,
150
const
Mat& image2,
const
std::vector<cv::KeyPoint> keypoint2,
const
std::vector<cv::DMatch> matchces,
151
const
Mat& mask1,
const
Mat& mask2,
const
int
step);
172
void
generatePattern();
178
int
_imageWidth, _imageHeight;
static CV_WRAP Ptr< AKAZE > create(AKAZE::DescriptorType descriptor_type=AKAZE::DESCRIPTOR_MLDB, int descriptor_size=0, int descriptor_channels=3, float threshold=0.001f, int nOctaves=4, int nOctaveLayers=4, KAZE::DiffusivityType diffusivity=KAZE::DIFF_PM_G2)
The AKAZE constructor
static CV_WRAP Ptr< DescriptorMatcher > create(const String &descriptorMatcherType)
Creates a descriptor matcher of a given type with the default parameters (using default constructor).
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
Class for finding features points and corresponding 3D in world coordinate of a "random" pattern,...
Definition:
randpattern.hpp:66
Definition:
randpattern.hpp:161
"black box" representation of the file storage associated with a file on disk.
Definition:
aruco.hpp:75
Definition:
cvstd_wrapper.hpp:74