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

Detailed Description

The most common 5DOF 3D->2D calibration, stereo version.

Inheritance diagram for gtsam::Cal3_S2Stereo:

Advanced Interface

class boost::serialization::access
 Serialization function.

Testable

GTSAM_EXPORT friend std::ostream & operator<< (std::ostream &os, const Cal3_S2Stereo &cal)
 Output stream operator.
void print (const std::string &s="") const override
 print with optional string
bool equals (const Cal3_S2Stereo &other, double tol=10e-9) const
 Check if equal up to specified tolerance.

Standard Constructors

 Cal3_S2Stereo ()=default
 default calibration leaves coordinates unchanged
 Cal3_S2Stereo (double fx, double fy, double s, double u0, double v0, double b)
 constructor from doubles
 Cal3_S2Stereo (const Vector6 &d)
 constructor from vector
 Cal3_S2Stereo (double fov, int w, int h, double b)
 easy constructor; field-of-view in degrees, assumes zero skew

Standard Interface

const Cal3_S2calibration () const
 return calibration, same for left and right
Matrix3 K () const override
 return calibration matrix K, same for left and right
double baseline () const
 return baseline
Vector6 vector () const
 vectorized form (column-wise)

Manifold

size_t dim () const override
 return DOF, dimensionality of tangent space
Cal3_S2Stereo retract (const Vector &d) const
 Given 6-dim tangent vector, create new calibration.
Vector6 localCoordinates (const Cal3_S2Stereo &T2) const
 Unretraction for the calibration.
static size_t Dim ()
 return DOF, dimensionality of tangent space

Public Member Functions

Point2 uncalibrate (const Point2 &p, OptionalJacobian< 2, 6 > Dcal=boost::none, OptionalJacobian< 2, 2 > Dp=boost::none) const
 Convert intrinsic coordinates xy to image coordinates uv, fixed derivaitves.
Point2 calibrate (const Point2 &p, OptionalJacobian< 2, 6 > Dcal=boost::none, OptionalJacobian< 2, 2 > Dp=boost::none) const
 Convert image coordinates uv to intrinsic coordinates xy.
Vector3 calibrate (const Vector3 &p) const
 Convert homogeneous image coordinates to intrinsic coordinates.
bool equals (const Cal3_S2 &K, double tol=10e-9) const
 Check if equal up to specified tolerance.
Cal3_S2 between (const Cal3_S2 &q, OptionalJacobian< 5, 5 > H1=boost::none, OptionalJacobian< 5, 5 > H2=boost::none) const
 "Between", subtracts calibrations. between(p,q) == compose(inverse(p),q)
 Cal3_S2 ()=default
 Create a default calibration that leaves coordinates unchanged.
 Cal3_S2 (double fx, double fy, double s, double u0, double v0)
 constructor from doubles
 Cal3_S2 (const Vector5 &d)
 constructor from vector
 Cal3_S2 (double fov, int w, int h)
 Easy constructor, takes fov in degrees, asssumes zero skew, unit aspect.
Point2 uncalibrate (const Point2 &p, OptionalJacobian< 2, 5 > Dcal=boost::none, OptionalJacobian< 2, 2 > Dp=boost::none) const
 Convert intrinsic coordinates xy to image coordinates uv, fixed derivaitves.
Point2 calibrate (const Point2 &p, OptionalJacobian< 2, 5 > Dcal=boost::none, OptionalJacobian< 2, 2 > Dp=boost::none) const
 Convert image coordinates uv to intrinsic coordinates xy.
Vector3 calibrate (const Vector3 &p) const
 Convert homogeneous image coordinates to intrinsic coordinates.
Cal3_S2 retract (const Vector &d) const
 Given 5-dim tangent vector, create new calibration.
Vector5 localCoordinates (const Cal3_S2 &T2) const
 Unretraction for the calibration.
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).

Public Types

enum  { dimension = 6 }
using shared_ptr = boost::shared_ptr<Cal3_S2Stereo>
Public Types inherited from gtsam::Cal3_S2
enum  { dimension = 5 }
using shared_ptr = boost::shared_ptr<Cal3_S2>
Public Types inherited from gtsam::Cal3
enum  { dimension = 5 }
using shared_ptr = boost::shared_ptr<Cal3>

Additional Inherited Members

static size_t Dim ()
 return DOF, dimensionality of tangent space
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

Member Function Documentation

◆ calibrate() [1/2]

Point2 gtsam::Cal3_S2Stereo::calibrate ( const Point2 & p,
OptionalJacobian< 2, 6 > Dcal = boost::none,
OptionalJacobian< 2, 2 > Dp = boost::none ) const

Convert image coordinates uv to intrinsic coordinates xy.

Parameters
ppoint in image coordinates
Dcaloptional 2*6 Jacobian wrpt Cal3_S2Stereo parameters
Dpoptional 2*2 Jacobian wrpt intrinsic coordinates
Returns
point in intrinsic coordinates

◆ calibrate() [2/2]

Vector3 gtsam::Cal3_S2Stereo::calibrate ( const Vector3 & p) const
inline

Convert homogeneous image coordinates to intrinsic coordinates.

Parameters
ppoint in image coordinates
Returns
point in intrinsic coordinates

◆ dim()

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

return DOF, dimensionality of tangent space

Reimplemented from gtsam::Cal3.

◆ K()

Matrix3 gtsam::Cal3_S2Stereo::K ( ) const
inlineoverridevirtual

return calibration matrix K, same for left and right

Reimplemented from gtsam::Cal3.

◆ print()

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

print with optional string

Reimplemented from gtsam::Cal3_S2.

◆ uncalibrate()

Point2 gtsam::Cal3_S2Stereo::uncalibrate ( const Point2 & p,
OptionalJacobian< 2, 6 > Dcal = boost::none,
OptionalJacobian< 2, 2 > Dp = boost::none ) const

Convert intrinsic coordinates xy to image coordinates uv, fixed derivaitves.

Parameters
ppoint in intrinsic coordinates
Dcaloptional 2*6 Jacobian wrpt Cal3_S2Stereo parameters
Dpoptional 2*2 Jacobian wrpt intrinsic coordinates
Returns
point in image coordinates

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