38 #ifndef vpCalibration_h
39 #define vpCalibration_h
43 #include <visp3/core/vpCameraParameters.h>
44 #include <visp3/core/vpDisplay.h>
45 #include <visp3/core/vpExponentialMap.h>
46 #include <visp3/core/vpHomogeneousMatrix.h>
47 #include <visp3/core/vpImage.h>
48 #include <visp3/core/vpImagePoint.h>
49 #include <visp3/core/vpMath.h>
50 #include <visp3/core/vpMatrix.h>
51 #include <visp3/vision/vpCalibrationException.h>
74 CALIB_VIRTUAL_VS_DIST,
76 CALIB_LAGRANGE_VIRTUAL_VS,
79 CALIB_LAGRANGE_VIRTUAL_VS_DIST,
82 } vpCalibrationMethodType;
140 int addPoint(
double X,
double Y,
double Z,
vpImagePoint &ip);
166 bool verbose =
false);
193 void computeStdDeviation(
double &deviation,
double &deviation_dist);
227 int subsampling_factor = 1);
240 int subsampling_factor = 1);
258 unsigned int get_npt()
const {
return m_npt; }
271 int readData(
const std::string &filename);
288 static int readGrid(
const std::string &filename,
unsigned int &n, std::list<double> &oX, std::list<double> &oY,
289 std::list<double> &oZ,
bool verbose =
false);
294 static void setLambda(
const double &lambda) { m_gain = lambda; }
302 void setAspectRatio(
double aspect_ratio);
311 int writeData(
const std::string &filename);
321 bool verbose =
false,
double aspect_ratio = -1);
322 static void calibVVSMulti(std::vector<vpCalibration> &table_cal,
vpCameraParameters &cam,
323 double &globalReprojectionError,
bool verbose =
false,
double aspect_ratio = -1);
326 bool verbose =
false,
double aspect_ratio = -1);
327 static void calibVVSWithDistortionMulti(std::vector<vpCalibration> &table_cal,
vpCameraParameters &cam,
328 double &globalReprojectionError,
bool verbose =
false,
329 double aspect_ratio = -1);
332 std::list<double> m_LoX, m_LoY, m_LoZ;
333 std::list<vpImagePoint> m_Lip;
336 double m_residual_dist;
339 static double m_threshold;
340 static unsigned int m_nbIterMax;
341 static double m_gain;
Tools for perspective camera calibration.
static void setLambda(const double &lambda)
static double getLambda()
Get the gain of the virtual visual servoing algorithm.
unsigned int get_npt() const
double getResidual(void) const
vpHomogeneousMatrix eMc_dist
vpCameraParameters cam_dist
double getResidual_dist(void) const
vpHomogeneousMatrix cMo_dist
Generic class defining intrinsic camera parameters.
Class to define RGB colors available for display functionalities.
static const vpColor yellow
Implementation of an homogeneous matrix and operations on such kind of matrices.
Class that defines a 2D point in an image. This class is useful for image processing and stores only ...