53 #ifndef vpCalibration_h
54 #define vpCalibration_h
56 #include <visp/vpMatrix.h>
57 #include <visp/vpHomogeneousMatrix.h>
58 #include <visp/vpCameraParameters.h>
59 #include <visp/vpExponentialMap.h>
60 #include <visp/vpMath.h>
61 #include <visp/vpDisplay.h>
62 #include <visp/vpImage.h>
63 #include <visp/vpCalibrationException.h>
64 #include <visp/vpImagePoint.h>
65 #ifdef VISP_BUILD_DEPRECATED_FUNCTIONS
66 # include <visp/vpList.h>
90 } vpCalibrationMethodType ;
113 int addPoint(
double X,
double Y,
double Z,
vpImagePoint &ip) ;
133 static void calibrationTsai(std::vector<vpHomogeneousMatrix> &cMo,
134 std::vector<vpHomogeneousMatrix> & rMe,
137 void computeStdDeviation(
double &deviation,
double &deviation_dist);
138 int computeCalibration(vpCalibrationMethodType method,
141 bool verbose =
false) ;
142 static int computeCalibrationMulti(vpCalibrationMethodType method,
unsigned int nbPose,
145 bool verbose =
false) ;
147 static int computeCalibrationTsai(
unsigned int nbPose,
156 unsigned int thickness=1) ;
158 unsigned int thickness=1) ;
162 int readData(
const char *filename) ;
163 static int readGrid(
const char *filename,
unsigned int &n,
164 std::list<double> &oX, std::list<double> &oY, std::list<double> &oZ,
165 bool verbose =
false);
168 static void setLambda(
const double &lambda){gain = lambda;}
169 int writeData(
const char *filename) ;
171 #ifdef VISP_BUILD_DEPRECATED_FUNCTIONS
175 vp_deprecated
static int readGrid(
const char *filename,
unsigned int &n,
177 bool verbose =
false);
186 bool verbose =
false) ;
187 static void calibVVSMulti(
unsigned int nbPose,
vpCalibration table_cal[] ,
191 bool verbose =
false) ;
192 static void calibVVSWithDistortionMulti(
unsigned int nbPose,
195 bool verbose =
false );
199 std::list<double> LoX, LoY, LoZ ;
200 std::list<vpImagePoint> Lip ;
203 double residual_dist ;
205 static double threshold;
206 static unsigned int nbIterMax;