42
#ifndef __OPENCV_MULTICAMERACALIBRATION_HPP__
43
#define __OPENCV_MULTICAMERACALIBRATION_HPP__
45
#include "opencv2/ccalib/randpattern.hpp"
46
#include "opencv2/ccalib/omnidir.hpp"
50
namespace
cv
{
namespace
multicalib {
133
float
patternHeight,
int
verbose = 0,
int
showExtration = 0,
int
nMiniMatches = 20,
int
flags = 0,
149
double
optimizeExtrinsics();
157
void
writeParameters(
const
std::string& filename);
160
std::vector<std::string> readStringList();
162
int
getPhotoVertex(
int
timestamp);
164
void
graphTraverse(
const
Mat& G,
int
begin, std::vector<int>& order, std::vector<int>& pre);
166
void
findRowNonZero(
const
Mat& row,
Mat& idx);
168
void
computeJacobianExtrinsic(
const
Mat& extrinsicParams,
Mat& JTJ_inv,
Mat& JTE);
170
void
computePhotoCameraJacobian(
const
Mat& rvecPhoto,
const
Mat& tvecPhoto,
const
Mat& rvecCamera,
171
const
Mat& tvecCamera,
Mat& rvecTran,
Mat& tvecTran,
const
Mat& objectPoints,
const
Mat& imagePoints,
const
Mat& K,
172
const
Mat& distort,
const
Mat& xi,
Mat& jacobianPhoto,
Mat& jacobianCamera,
Mat& E);
174
void
compose_motion(InputArray _om1, InputArray _T1, InputArray _om2, InputArray _T2,
Mat& om3,
Mat& T3,
Mat& dom3dom1,
177
void
JRodriguesMatlab(
const
Mat& src,
Mat& dst);
180
double
computeProjectError(
Mat& parameters);
182
void
vector2parameters(
const
Mat& parameters, std::vector<Vec3f>& rvecVertex, std::vector<Vec3f>& tvecVertexs);
183
void
parameters2vector(
const
std::vector<Vec3f>& rvecVertex,
const
std::vector<Vec3f>& tvecVertex,
Mat& parameters);
191
float
_patternWidth, _patternHeight;
193
std::string _filename;
199
std::vector<edge> _edgeList;
200
std::vector<vertex> _vertexList;
201
std::vector<std::vector<cv::Mat> > _objectPointsForEachCamera;
202
std::vector<std::vector<cv::Mat> > _imagePointsForEachCamera;
203
std::vector<cv::Mat> _cameraMatrix;
204
std::vector<cv::Mat> _distortCoeffs;
205
std::vector<cv::Mat> _xi;
206
std::vector<std::vector<Mat> > _omEachCamera, _tEachCamera;
This type is very similar to InputArray except that it is used for input/output and output function p...
Definition:
mat.hpp:295
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
static MatExpr eye(int rows, int cols, int type)
Returns an identity matrix of the specified size and type.
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
Class for multiple camera calibration that supports pinhole camera and omnidirection camera....
Definition:
multicalib.hpp:73
CV_EXPORTS_W void transform(InputArray src, OutputArray dst, InputArray m)
Performs the matrix transformation of every array element.
"black box" representation of the file storage associated with a file on disk.
Definition:
aruco.hpp:75
Definition:
cvstd_wrapper.hpp:74
Definition:
multicalib.hpp:83
Definition:
multicalib.hpp:99