47 #ifndef vpCameraParameters_H
48 #define vpCameraParameters_H
52 #include <visp3/core/vpColVector.h>
53 #include <visp3/core/vpConfig.h>
54 #include <visp3/core/vpDebug.h>
55 #include <visp3/core/vpMatrix.h>
240 perspectiveProjWithoutDistortion,
241 perspectiveProjWithDistortion
243 } vpCameraParametersProjType;
250 vpCameraParameters(
double px,
double py,
double u0,
double v0,
double kud,
double kdu);
259 void initFromCalibrationMatrix(
const vpMatrix &_K);
260 void initFromFov(
const unsigned int &w,
const unsigned int &h,
const double &hfov,
const double &vfov);
261 void initPersProjWithoutDistortion(
double px,
double py,
double u0,
double v0);
262 void initPersProjWithDistortion(
double px,
double py,
double u0,
double v0,
double kud,
double kdu);
273 void computeFov(
const unsigned int &w,
const unsigned int &h);
285 vpTRACE(
"Warning: The FOV is not computed, getHorizontalFovAngle() "
286 "won't be significant.");
301 vpTRACE(
"Warning: The FOV is not computed, getVerticalFovAngle() won't "
322 vpTRACE(
"Warning: The FOV is not computed, getFovNormals() won't be "
328 inline double get_px()
const {
return px; }
331 inline double get_py()
const {
return py; }
332 inline double get_u0()
const {
return u0; }
333 inline double get_v0()
const {
return v0; }
342 void printParameters();
343 friend VISP_EXPORT std::ostream &operator<<(std::ostream &os,
const vpCameraParameters &cam);
346 static const double DEFAULT_U0_PARAMETER;
347 static const double DEFAULT_V0_PARAMETER;
348 static const double DEFAULT_PX_PARAMETER;
349 static const double DEFAULT_PY_PARAMETER;
350 static const double DEFAULT_KUD_PARAMETER;
351 static const double DEFAULT_KDU_PARAMETER;
352 static const vpCameraParametersProjType DEFAULT_PROJ_TYPE;
364 std::vector<vpColVector> fovNormals;
366 double inv_px, inv_py;
368 vpCameraParametersProjType projModel;