gtsam  3.2.1
gtsam
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
gtsam::CalibratedCamera Class Reference
+ Inheritance diagram for gtsam::CalibratedCamera:

Standard Interface

virtual ~CalibratedCamera ()
 destructor
 
const Pose3pose () const
 return pose
 
const CalibratedCamera compose (const CalibratedCamera &c, boost::optional< Matrix & > H1=boost::none, boost::optional< Matrix & > H2=boost::none) const
 compose the two camera poses: TODO Frank says this might not make sense
 
const CalibratedCamera between (const CalibratedCamera &c, boost::optional< Matrix & > H1=boost::none, boost::optional< Matrix & > H2=boost::none) const
 between the two camera poses: TODO Frank says this might not make sense
 
const CalibratedCamera inverse (boost::optional< Matrix & > H1=boost::none) const
 invert the camera pose: TODO Frank says this might not make sense
 
static CalibratedCamera Level (const Pose2 &pose2, double height)
 Create a level camera at the given 2D pose and height. More...
 

Manifold

CalibratedCamera retract (const Vector &d) const
 move a cameras pose according to d
 
Vector localCoordinates (const CalibratedCamera &T2) const
 Return canonical coordinate.
 
size_t dim () const
 Lie group dimensionality.
 
static size_t Dim ()
 Lie group dimensionality.
 

Transformations and mesaurement functions

Point2 project (const Point3 &point, boost::optional< Matrix & > Dpose=boost::none, boost::optional< Matrix & > Dpoint=boost::none) const
 This function receives the camera pose and the landmark location and returns the location the point is supposed to appear in the image. More...
 
double range (const Point3 &point, boost::optional< Matrix & > H1=boost::none, boost::optional< Matrix & > H2=boost::none) const
 Calculate range to a landmark. More...
 
double range (const Pose3 &pose, boost::optional< Matrix & > H1=boost::none, boost::optional< Matrix & > H2=boost::none) const
 Calculate range to another pose. More...
 
double range (const CalibratedCamera &camera, boost::optional< Matrix & > H1=boost::none, boost::optional< Matrix & > H2=boost::none) const
 Calculate range to another camera. More...
 
static Point2 project_to_camera (const Point3 &cameraPoint, boost::optional< Matrix & > H1=boost::none)
 projects a 3-dimensional point in camera coordinates into the camera and returns a 2-dimensional point, no calibration applied With optional 2by3 derivative
 
static Point3 backproject_from_camera (const Point2 &p, const double scale)
 backproject a 2-dimensional point to a 3-dimension point
 

Advanced Interface

class boost::serialization::access
 Serialization function.
 

Public Member Functions

Standard Constructors
 CalibratedCamera ()
 default constructor
 
 CalibratedCamera (const Pose3 &pose)
 construct with pose
 
Advanced Constructors
 CalibratedCamera (const Vector &v)
 construct from vector
 
Testable
virtual void print (const std::string &s="") const
 Print this value, for debugging and unit tests.
 
bool equals (const CalibratedCamera &camera, double tol=1e-9) const
 check equality to another camera
 
- Public Member Functions inherited from gtsam::DerivedValue< CalibratedCamera >
virtual Valueclone_ () const
 Create a duplicate object returned as a pointer to the generic Value interface. More...
 
virtual void deallocate_ () const
 Destroy and deallocate this object, only if it was originally allocated using clone_().
 
virtual boost::shared_ptr< Valueclone () const
 Clone this value (normal clone on the heap, delete with 'delete' operator)
 
virtual bool equals_ (const Value &p, double tol=1e-9) const
 equals implementing generic Value interface
 
virtual Valueretract_ (const Vector &delta) const
 Generic Value interface version of retract.
 
virtual Vector localCoordinates_ (const Value &value2) const
 Generic Value interface version of localCoordinates.
 
virtual Valueoperator= (const Value &rhs)
 Assignment operator.
 
 operator const CalibratedCamera & () const
 Conversion to the derived class.
 
 operator CalibratedCamera & ()
 Conversion to the derived class.
 
- Public Member Functions inherited from gtsam::Value
virtual ~Value ()
 Virutal destructor.
 

Additional Inherited Members

- Protected Member Functions inherited from gtsam::DerivedValue< CalibratedCamera >
DerivedValue< CalibratedCamera > & operator= (const DerivedValue< CalibratedCamera > &rhs)
 Assignment operator, protected because only the Value or DERIVED assignment operators should be used. More...
 

Member Function Documentation

CalibratedCamera gtsam::CalibratedCamera::Level ( const Pose2 pose2,
double  height 
)
static

Create a level camera at the given 2D pose and height.

Parameters
pose2specifies the location and viewing direction
heightspecifies the height of the camera (along the positive Z-axis) (theta 0 = looking in direction of positive X axis)
Point2 gtsam::CalibratedCamera::project ( const Point3 point,
boost::optional< Matrix & >  Dpose = boost::none,
boost::optional< Matrix & >  Dpoint = boost::none 
) const

This function receives the camera pose and the landmark location and returns the location the point is supposed to appear in the image.

Parameters
pointa 3D point to be projected
Dposethe optionally computed Jacobian with respect to pose
Dpointthe optionally computed Jacobian with respect to the 3D point
Returns
the intrinsic coordinates of the projected point
double gtsam::CalibratedCamera::range ( const Point3 point,
boost::optional< Matrix & >  H1 = boost::none,
boost::optional< Matrix & >  H2 = boost::none 
) const
inline

Calculate range to a landmark.

Parameters
point3D location of landmark
H1optionally computed Jacobian with respect to pose
H2optionally computed Jacobian with respect to the 3D point
Returns
range (double)
double gtsam::CalibratedCamera::range ( const Pose3 pose,
boost::optional< Matrix & >  H1 = boost::none,
boost::optional< Matrix & >  H2 = boost::none 
) const
inline

Calculate range to another pose.

Parameters
poseOther SO(3) pose
H1optionally computed Jacobian with respect to pose
H2optionally computed Jacobian with respect to the 3D point
Returns
range (double)
double gtsam::CalibratedCamera::range ( const CalibratedCamera camera,
boost::optional< Matrix & >  H1 = boost::none,
boost::optional< Matrix & >  H2 = boost::none 
) const
inline

Calculate range to another camera.

Parameters
cameraOther camera
H1optionally computed Jacobian with respect to pose
H2optionally computed Jacobian with respect to the 3D point
Returns
range (double)

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