49 #ifndef BSFM_CAMERA_CAMERA_H
50 #define BSFM_CAMERA_CAMERA_H
56 #include "../util/types.h"
60 using Eigen::Matrix3d;
103 void WorldToCamera(
double wx,
double wy,
double wz,
double* cx,
double* cy,
108 double* wx,
double* wy,
double* wz)
const;
113 double* u_distorted,
double* v_distorted)
const;
118 double* u_distorted,
double* v_distorted)
const;
123 double* u_distorted,
double* v_distorted)
const;
128 double* u_normalized,
double* v_normalized)
const;
131 void Distort(
double u,
double v,
132 double* u_distorted,
double* v_distorted)
const;
135 void Undistort(
double u_distorted,
double v_distorted,
136 double* u,
double* v)
const;
bool WorldToImage(double wx, double wy, double wz, double *u_distorted, double *v_distorted) const
CameraIntrinsics & MutableIntrinsics()
void Undistort(double u_distorted, double v_distorted, double *u, double *v) const
Vector3d AxisAngleRotation() const
void ImageToDirection(double u_distorted, double v_distorted, double *u_normalized, double *v_normalized) const
void WorldToCamera(double wx, double wy, double wz, double *cx, double *cy, double *cz) const
void SetIntrinsics(const CameraIntrinsics &)
CameraIntrinsics intrinsics_
CameraExtrinsics & MutableExtrinsics()
const CameraIntrinsics & Intrinsics() const
void SetExtrinsics(const CameraExtrinsics &)
CameraExtrinsics extrinsics_
void Distort(double u, double v, double *u_distorted, double *v_distorted) const
void CameraToWorld(double cx, double cy, double cz, double *wx, double *wy, double *wz) const
::Eigen::Matrix< double, 3, 4 > Matrix34d
Vector3d Translation() const
bool CameraToImage(double cx, double cy, double cz, double *u_distorted, double *v_distorted) const
const CameraExtrinsics & Extrinsics() const
Matrix3d Rotation() const
bool DirectionToImage(double u_normalized, double v_normalized, double *u_distorted, double *v_distorted) const