GTSAM  4.0.2
C++ library for smoothing and mapping (SAM)
Public Types | Protected Attributes | List of all members
gtsam::Cal3Bundler Class Reference

Calibration used by Bundler. More...

#include <Cal3Bundler.h>

Inheritance diagram for gtsam::Cal3Bundler:
Inheritance graph
[legend]
Collaboration diagram for gtsam::Cal3Bundler:
Collaboration graph
[legend]

Public Types

enum  { dimension = 3 }
 
using shared_ptr = std::shared_ptr< Cal3Bundler >
 
enum  { dimension = 5 }
 

Protected Attributes

double fx_ = 1.0f
 
double fy_ = 1.0f
 focal length
 
double s_ = 0.0f
 skew
 
double u0_ = 0.0f
 
double v0_ = 0.0f
 principal point
 

Testable

bool equals (const Cal3 &K, double tol=10e-9) const
 Check if equal up to specified tolerance.
 

Standard Interface

double fx () const
 focal length x
 
double fy () const
 focal length y
 
double aspectRatio () const
 aspect ratio
 
double skew () const
 skew
 
Point2 principalPoint () const
 return the principal point
 
Matrix3 inverse () const
 Return inverted calibration matrix inv(K)
 

Standard Constructors

 Cal3Bundler ()=default
 Default constructor.
 
 Cal3Bundler (double f, double k1, double k2, double u0=0, double v0=0, double tol=1e-5)
 
 ~Cal3Bundler () override
 

Testable

void print (const std::string &s="") const override
 print with optional string
 
bool equals (const Cal3Bundler &K, double tol=10e-9) const
 assert equality up to a tolerance
 
GTSAM_EXPORT friend std::ostream & operator<< (std::ostream &os, const Cal3Bundler &cal)
 Output stream operator.
 

Standard Interface

double k1 () const
 distorsion parameter k1
 
double k2 () const
 distorsion parameter k2
 
double px () const
 image center in x
 
double py () const
 image center in y
 
Matrix3 K () const override
 Standard 3*3 calibration matrix.
 
Vector4 k () const
 Radial distortion parameters (4 of them, 2 0)
 
Vector3 vector () const
 
Point2 uncalibrate (const Point2 &p, OptionalJacobian< 2, 3 > Dcal={}, OptionalJacobian< 2, 2 > Dp={}) const
 : convert intrinsic coordinates xy to image coordinates uv Version of uncalibrate with derivatives More...
 
Point2 calibrate (const Point2 &pi, OptionalJacobian< 2, 3 > Dcal={}, OptionalJacobian< 2, 2 > Dp={}) const
 
Matrix2 D2d_intrinsic (const Point2 &p) const
 
Matrix23 D2d_calibration (const Point2 &p) const
 
Matrix25 D2d_intrinsic_calibration (const Point2 &p) const
 

Manifold

size_t dim () const override
 return DOF, dimensionality of tangent space
 
Cal3Bundler retract (const Vector &d) const
 Update calibration with tangent space delta.
 
Vector3 localCoordinates (const Cal3Bundler &T2) const
 Calculate local coordinates to another calibration.
 
static size_t Dim ()
 return DOF, dimensionality of tangent space
 

Detailed Description

Calibration used by Bundler.

Constructor & Destructor Documentation

◆ Cal3Bundler()

gtsam::Cal3Bundler::Cal3Bundler ( double  f,
double  k1,
double  k2,
double  u0 = 0,
double  v0 = 0,
double  tol = 1e-5 
)
inline

Constructor

Parameters
ffocal length
k1first radial distortion coefficient (quadratic)
k2second radial distortion coefficient (quartic)
u0optional image center (default 0), considered a constant
v0optional image center (default 0), considered a constant
toloptional calibration tolerance value

Member Function Documentation

◆ calibrate()

Point2 gtsam::Cal3Bundler::calibrate ( const Point2 pi,
OptionalJacobian< 2, 3 >  Dcal = {},
OptionalJacobian< 2, 2 >  Dp = {} 
) const

Convert a pixel coordinate to ideal coordinate xy

Parameters
ppoint in image coordinates
toloptional tolerance threshold value for iterative minimization
Dcaloptional 2*3 Jacobian wrpt Cal3Bundler parameters
Dpoptional 2*2 Jacobian wrpt intrinsic coordinates
Returns
point in intrinsic coordinates

◆ D2d_calibration()

Matrix23 gtsam::Cal3Bundler::D2d_calibration ( const Point2 p) const
Deprecated:
might be removed in next release, use uncalibrate

◆ D2d_intrinsic()

Matrix2 gtsam::Cal3Bundler::D2d_intrinsic ( const Point2 p) const
Deprecated:
might be removed in next release, use uncalibrate

◆ D2d_intrinsic_calibration()

Matrix25 gtsam::Cal3Bundler::D2d_intrinsic_calibration ( const Point2 p) const
Deprecated:
might be removed in next release, use uncalibrate

◆ uncalibrate()

Point2 gtsam::Cal3Bundler::uncalibrate ( const Point2 p,
OptionalJacobian< 2, 3 >  Dcal = {},
OptionalJacobian< 2, 2 >  Dp = {} 
) const

: convert intrinsic coordinates xy to image coordinates uv Version of uncalibrate with derivatives

Parameters
ppoint in intrinsic coordinates
Dcaloptional 2*3 Jacobian wrpt Cal3Bundler parameters
Dpoptional 2*2 Jacobian wrpt intrinsic coordinates
Returns
point in image coordinates

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