42#ifndef __OPENCV_CCALIB_HPP__
43#define __OPENCV_CCALIB_HPP__
45#include <opencv2/core.hpp>
46#include <opencv2/features2d.hpp>
47#include <opencv2/imgproc.hpp>
48#include <opencv2/calib3d.hpp>
55namespace cv{
namespace ccalib{
66 bool create(InputArray pattern,
const Size2f boardSize,
OutputArray output = noArray());
68 bool findPattern(InputArray image,
OutputArray matched_features,
OutputArray pattern_points,
const double ratio = 0.7,
69 const double proj_error = 8.0,
const bool refine_position =
false,
OutputArray out = noArray(),
91 double calibrate(InputArrayOfArrays objectPoints, InputArrayOfArrays imagePoints,
99 bool findRt(InputArray objectPoints, InputArray imagePoints, InputArray cameraMatrix, InputArray distCoeffs,
101 bool findRt(InputArray image, InputArray cameraMatrix, InputArray distCoeffs,
108 bool findRtRANSAC(InputArray objectPoints, InputArray imagePoints, InputArray cameraMatrix, InputArray distCoeffs,
110 float reprojectionError = 8.0,
int minInliersCount = 100,
OutputArray inliers = noArray(),
int flags = SOLVEPNP_ITERATIVE);
111 bool findRtRANSAC(InputArray image, InputArray cameraMatrix, InputArray distCoeffs,
113 float reprojectionError = 8.0,
int minInliersCount = 100,
OutputArray inliers = noArray(),
int flags = SOLVEPNP_ITERATIVE);
119 InputArray distCoeffs,
double axis_length = 3,
int axis_width = 2);
127 std::vector<Point2f> obj_corners;
136 std::vector<KeyPoint> keypoints;
137 std::vector<Point3f> points3d;
140 bool init(
Mat& image,
const float pixel_size,
OutputArray output = noArray());
141 bool findPatternPass(
const Mat& image, std::vector<Point2f>& matched_features, std::vector<Point3f>& pattern_points,
142 Mat& H, std::vector<Point2f>& scene_corners,
const double pratio,
const double proj_error,
143 const bool refine_position =
false,
const Mat& mask =
Mat(),
OutputArray output = noArray());
144 void scaleFoundPoints(
const double squareSize,
const std::vector<KeyPoint>& corners, std::vector<Point3f>& pts3d);
145 void check_matches(std::vector<Point2f>& matched,
const std::vector<Point2f>& pattern, std::vector<DMatch>& good, std::vector<Point3f>& pattern_3d,
const Mat& H);
147 void keypoints2points(
const std::vector<KeyPoint>& in, std::vector<Point2f>& out);
148 void updateKeypointsPos(std::vector<KeyPoint>& in,
const std::vector<Point2f>& new_pos);
149 void refinePointsPos(
const Mat& img, std::vector<Point2f>& p);
150 void refineKeypointsPos(
const Mat& img, std::vector<KeyPoint>& kp);
This type is very similar to InputArray except that it is used for input/output and output function p...
Definition: mat.hpp:295
This is a base class for all more or less complex algorithms in OpenCV
Definition: core.hpp:3091
n-dimensional dense array class
Definition: mat.hpp:802
The class defining termination criteria for iterative algorithms.
Definition: core/types.hpp:853
@ EPS
the desired accuracy or change in parameters at which the iterative algorithm stops
Definition: core/types.hpp:862
@ COUNT
the maximum number of iterations or elements to compute
Definition: core/types.hpp:860
Definition: ccalib.hpp:61
double calibrate(InputArrayOfArrays objectPoints, InputArrayOfArrays imagePoints, Size imageSize, InputOutputArray cameraMatrix, InputOutputArray distCoeffs, OutputArrayOfArrays rvecs, OutputArrayOfArrays tvecs, int flags=0, TermCriteria criteria=TermCriteria(TermCriteria::COUNT+TermCriteria::EPS, 30, DBL_EPSILON))
void drawOrientation(InputOutputArray image, InputArray tvec, InputArray rvec, InputArray cameraMatrix, InputArray distCoeffs, double axis_length=3, int axis_width=2)
void getPatternPoints(std::vector< KeyPoint > &original_points)
bool findRtRANSAC(InputArray image, InputArray cameraMatrix, InputArray distCoeffs, InputOutputArray rvec, InputOutputArray tvec, bool useExtrinsicGuess=false, int iterationsCount=100, float reprojectionError=8.0, int minInliersCount=100, OutputArray inliers=noArray(), int flags=SOLVEPNP_ITERATIVE)
bool findRt(InputArray image, InputArray cameraMatrix, InputArray distCoeffs, InputOutputArray rvec, InputOutputArray tvec, bool useExtrinsicGuess=false, int flags=SOLVEPNP_ITERATIVE)
"black box" representation of the file storage associated with a file on disk.
Definition: aruco.hpp:75
Definition: cvstd_wrapper.hpp:74