gtsam 4.2
gtsam
Loading...
Searching...
No Matches
gtsam::Cal3Bundler Class Reference

Detailed Description

Calibration used by Bundler.

Inheritance diagram for gtsam::Cal3Bundler:

Advanced Interface

class boost::serialization::access
 Serialization function.

Testable

GTSAM_EXPORT friend std::ostream & operator<< (std::ostream &os, const Cal3Bundler &cal)
 Output stream operator.
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

Standard Constructors

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

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=boost::none, OptionalJacobian< 2, 2 > Dp=boost::none) const
 : convert intrinsic coordinates xy to image coordinates uv Version of uncalibrate with derivatives
Point2 calibrate (const Point2 &pi, OptionalJacobian< 2, 3 > Dcal=boost::none, OptionalJacobian< 2, 2 > Dp=boost::none) const
 Convert a pixel coordinate to ideal coordinate xy.
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

Public Types

enum  { dimension = 3 }
using shared_ptr = boost::shared_ptr<Cal3Bundler>
Public Types inherited from gtsam::Cal3
enum  { dimension = 5 }
using shared_ptr = boost::shared_ptr<Cal3>

Additional Inherited Members

bool equals (const Cal3 &K, double tol=10e-9) const
 Check if equal up to specified tolerance.
 Cal3 ()=default
 Create a default calibration that leaves coordinates unchanged.
 Cal3 (double fx, double fy, double s, double u0, double v0)
 constructor from doubles
 Cal3 (const Vector5 &d)
 constructor from vector
 Cal3 (double fov, int w, int h)
 Easy constructor, takes fov in degrees, asssumes zero skew, unit aspect.
virtual ~Cal3 ()
 Virtual destructor.
 Cal3 (const std::string &path)
 Load calibration parameters from calibration_info.txt file located in path directory.
double fx () const
 focal length x
double fy () const
 focal length y
double aspectRatio () const
 aspect ratio
double skew () const
 skew
double px () const
 image center in x
double py () const
 image center in y
Point2 principalPoint () const
 return the principal point
Vector5 vector () const
 vectorized form (column-wise)
Matrix3 inverse () const
 Return inverted calibration matrix inv(K).
static size_t Dim ()
 return DOF, dimensionality of tangent space
Protected Attributes inherited from gtsam::Cal3
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

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 = boost::none,
OptionalJacobian< 2, 2 > Dp = boost::none ) 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

◆ dim()

size_t gtsam::Cal3Bundler::dim ( ) const
inlineoverridevirtual

return DOF, dimensionality of tangent space

Reimplemented from gtsam::Cal3.

◆ K()

Matrix3 gtsam::Cal3Bundler::K ( ) const
overridevirtual

Standard 3*3 calibration matrix.

Reimplemented from gtsam::Cal3.

◆ print()

void gtsam::Cal3Bundler::print ( const std::string & s = "") const
overridevirtual

print with optional string

Reimplemented from gtsam::Cal3.

◆ uncalibrate()

Point2 gtsam::Cal3Bundler::uncalibrate ( const Point2 & p,
OptionalJacobian< 2, 3 > Dcal = boost::none,
OptionalJacobian< 2, 2 > Dp = boost::none ) 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 files: