|
gtsam 4.2
gtsam
|
A pinhole camera class that has a Pose3, functions as base class for all pinhole cameras.
Derivatives | |
| static Matrix26 | Dpose (const Point2 &pn, double d) |
| Calculate Jacobian with respect to pose. | |
| static Matrix23 | Dpoint (const Point2 &pn, double d, const Matrix3 &Rt) |
| Calculate Jacobian with respect to point. | |
Static functions | |
| static Pose3 | LevelPose (const Pose2 &pose2, double height) |
| Create a level pose at the given 2D pose and height. | |
| static Pose3 | LookatPose (const Point3 &eye, const Point3 &target, const Point3 &upVector) |
| Create a camera pose at the given eye position looking at a target point in the scene with the specified up direction vector. | |
Transformations and measurement functions | |
| static Point2 | Project (const Point3 &pc, OptionalJacobian< 2, 3 > Dpoint=boost::none) |
| Project from 3D point in camera coordinates into image Does not throw a CheiralityException, even if pc behind image plane. | |
| static Point2 | Project (const Unit3 &pc, OptionalJacobian< 2, 2 > Dpoint=boost::none) |
| Project from 3D point at infinity in camera coordinates into image Does not throw a CheiralityException, even if pc behind image plane. | |
| static Point3 | BackprojectFromCamera (const Point2 &p, const double depth, OptionalJacobian< 3, 2 > Dpoint=boost::none, OptionalJacobian< 3, 1 > Ddepth=boost::none) |
| backproject a 2-dimensional point to a 3-dimensional point at given depth | |
| std::pair< Point2, bool > | projectSafe (const Point3 &pw) const |
| Project a point into the image and check depth. | |
| Point2 | project2 (const Point3 &point, OptionalJacobian< 2, 6 > Dpose=boost::none, OptionalJacobian< 2, 3 > Dpoint=boost::none) const |
| Project point into the image Throws a CheiralityException if point behind image plane iff GTSAM_THROW_CHEIRALITY_EXCEPTION. | |
| Point2 | project2 (const Unit3 &point, OptionalJacobian< 2, 6 > Dpose=boost::none, OptionalJacobian< 2, 2 > Dpoint=boost::none) const |
| Project point at infinity into the image Throws a CheiralityException if point behind image plane iff GTSAM_THROW_CHEIRALITY_EXCEPTION. | |
Advanced interface | |
| static std::pair< size_t, size_t > | translationInterval () |
| Return the start and end indices (inclusive) of the translation component of the exponential map parameterization. | |
Standard Constructors | |
| PinholeBase () | |
| Default constructor. | |
| PinholeBase (const Pose3 &pose) | |
| Constructor with pose. | |
Advanced Constructors | |
| PinholeBase (const Vector &v) | |
| virtual | ~PinholeBase ()=default |
| Default destructor. | |
Testable | |
| bool | equals (const PinholeBase &camera, double tol=1e-9) const |
| assert equality up to a tolerance | |
| virtual void | print (const std::string &s="PinholeBase") const |
| print | |
Standard Interface | |
| const Pose3 & | pose () const |
| return pose, constant version | |
| const Rot3 & | rotation () const |
| get rotation | |
| const Point3 & | translation () const |
| get translation | |
| const Pose3 & | getPose (OptionalJacobian< 6, 6 > H) const |
| return pose, with derivative | |
Public Types | |
| typedef Rot3 | Rotation |
| Pose Concept requirements. | |
| typedef Point3 | Translation |
| typedef Point2 | Measurement |
| Some classes template on either PinholeCamera or StereoCamera, and this typedef informs those classes what "project" returns. | |
| typedef Point2Vector | MeasurementVector |
Friends | |
| class | boost::serialization::access |
| Serialization function. | |
|
staticprotected |
Calculate Jacobian with respect to point.
| pn | projection in normalized coordinates |
| d | disparity (inverse depth) |
| Rt | transposed rotation matrix |
|
staticprotected |
Calculate Jacobian with respect to pose.
| pn | projection in normalized coordinates |
| d | disparity (inverse depth) |
Create a level pose at the given 2D pose and height.
| K | the calibration |
| pose2 | specifies the location and viewing direction (theta 0 = looking in direction of positive X axis) |
| height | camera height |
|
static |
Create a camera pose at the given eye position looking at a target point in the scene with the specified up direction vector.
| eye | specifies the camera position |
| target | the point to look at |
| upVector | specifies the camera up direction vector, doesn't need to be on the image plane nor orthogonal to the viewing axis |
|
virtual |
Reimplemented in gtsam::CalibratedCamera, gtsam::PinholeCamera< Calibration >, gtsam::PinholeCamera< Cal3_S2 >, gtsam::PinholeCamera< Cal3Bundler >, gtsam::PinholeCamera< CALIBRATION >, gtsam::PinholeCamera< gtsam::Cal3_S2 >, gtsam::PinholeCamera< gtsam::Cal3Bundler >, gtsam::PinholeCamera< gtsam::Cal3DS2 >, gtsam::PinholeCamera< gtsam::Cal3Fisheye >, gtsam::PinholeCamera< gtsam::Cal3Unified >, gtsam::PinholePose< CALIBRATION >, and gtsam::PinholePose< Cal3_S2 >.
|
static |
Project from 3D point in camera coordinates into image Does not throw a CheiralityException, even if pc behind image plane.
| pc | point in camera coordinates |
|
static |
Project from 3D point at infinity in camera coordinates into image Does not throw a CheiralityException, even if pc behind image plane.
| pc | point in camera coordinates |
| Point2 gtsam::PinholeBase::project2 | ( | const Point3 & | point, |
| OptionalJacobian< 2, 6 > | Dpose = boost::none, | ||
| OptionalJacobian< 2, 3 > | Dpoint = boost::none ) const |
Project point into the image Throws a CheiralityException if point behind image plane iff GTSAM_THROW_CHEIRALITY_EXCEPTION.
| point | 3D point in world coordinates |
| Point2 gtsam::PinholeBase::project2 | ( | const Unit3 & | point, |
| OptionalJacobian< 2, 6 > | Dpose = boost::none, | ||
| OptionalJacobian< 2, 2 > | Dpoint = boost::none ) const |
Project point at infinity into the image Throws a CheiralityException if point behind image plane iff GTSAM_THROW_CHEIRALITY_EXCEPTION.
| point | 3D point in world coordinates |
|
inlinestatic |
Return the start and end indices (inclusive) of the translation component of the exponential map parameterization.