libcvd
Public Member Functions | Static Public Attributes | List of all members
CVD::Camera::Quintic Class Reference

A camera with zero skew and quintic distortion. More...

#include <camera.h>

Public Member Functions

void load (std::istream &is)
 Load parameters from a stream. More...
 
void save (std::ostream &os) const
 Save parameters to a stream. More...
 
TooN::Vector< 2 > linearproject (const TooN::Vector< 2 > &camframe, TooN::DefaultPrecision scale=1) const
 Fast linear projection for working out what's there.
 
TooN::Vector< 2 > project_vector (const TooN::Vector< 2 > &x, const TooN::Vector< 2 > &d) const
 Project from Euclidean camera frame to image plane.
 
TooN::Vector< 2 > project_vector (const TooN::Vector< 2 > &d) const
 
TooN::Vector< 2 > unproject_vector (const TooN::Vector< 2 > &d) const
 
TooN::Vector< 2 > project (const TooN::Vector< 2 > &camframe) const
 
std::pair< TooN::Vector< 2 >, TooN::Matrix< 2 > > project (const TooN::Vector< 2 > &camframe, const TooN::Matrix< 2 > &R) const
 
TooN::Vector< 2 > unproject (const TooN::Vector< 2 > &imframe) const
 Project from image plane to a Euclidean camera.
 
std::pair< TooN::Vector< 2 >, TooN::Matrix< 2 > > unproject (const TooN::Vector< 2 > &imframe, const TooN::Matrix< 2 > &R) const
 
TooN::Matrix< 2, 2 > get_derivative () const
 Get the derivative of image frame wrt camera frame at the last computed projection in the form \( \begin{bmatrix} \frac{\partial \text{im1}}{\partial \text{cam1}} & \frac{\partial \text{im1}}{\partial \text{cam2}} \\ \frac{\partial \text{im2}}{\partial \text{cam1}} & \frac{\partial \text{im2}}{\partial \text{cam2}} \end{bmatrix} \).
 
TooN::Matrix< 2, 2 > get_derivative (const TooN::Vector< 2 > &x) const
 
TooN::Matrix< 2, 2 > get_inv_derivative () const
 
TooN::Matrix< 2, 2 > get_inv_derivative (const TooN::Vector< 2 > &x) const
 
TooN::Matrix< num_parameters, 2 > get_parameter_derivs () const
 Get the motion of a point with respect to each of the internal camera parameters.
 
TooN::Vector< num_parametersget_parameter_derivs (const TooN::Vector< 2 > &direction) const
 Get the component of the motion of a point in the direction provided with respect to each of the internal camera parameters. More...
 
void update (const TooN::Vector< num_parameters > &updates)
 Update the internal camera parameters by adding the vector given. More...
 
const TooN::Vector< num_parameters > & get_parameters () const
 Returns the vector of camera parameters in the format \( \begin{pmatrix}f_u & f_v & u_0 & v_0 & c & q\end{pmatrix} \).
 
TooN::Vector< num_parameters > & get_parameters ()
 Returns the vector of camera parameters in the format \( \begin{pmatrix}f_u & f_v & u_0 & v_0 & c & q\end{pmatrix} \).
 

Static Public Attributes

static const int num_parameters = 6
 The number of parameters in the camera.
 

Detailed Description

A camera with zero skew and quintic distortion.

Member Function Documentation

◆ get_parameter_derivs()

TooN::Vector< Camera::Quintic::num_parameters > CVD::Camera::Quintic::get_parameter_derivs ( const TooN::Vector< 2 > &  direction) const
inline

Get the component of the motion of a point in the direction provided with respect to each of the internal camera parameters.

Parameters
directionThe (x,y) direction to use

◆ load()

void CVD::Camera::Quintic::load ( std::istream &  is)
inline

Load parameters from a stream.

Parameters
isThe stream to use

◆ save()

void CVD::Camera::Quintic::save ( std::ostream &  os) const
inline

Save parameters to a stream.

Parameters
osThe stream to use

◆ update()

void CVD::Camera::Quintic::update ( const TooN::Vector< num_parameters > &  updates)
inline

Update the internal camera parameters by adding the vector given.

Parameters
updatesUpdate vector in the format \( \begin{pmatrix}\Delta f_u & \Delta f_v & \Delta u_0 & \Delta v_0 & \Delta c & \Delta q\end{pmatrix} \)

The documentation for this class was generated from the following file: