|
GTSAM
4.0.2
C++ library for smoothing and mapping (SAM)
|
The most common 5DOF 3D->2D calibration. More...
#include <Cal3_S2.h>


Public Types | |
| enum | { dimension = 5 } |
| using | shared_ptr = std::shared_ptr< Cal3_S2 > |
| 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 | |
| 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) | |
| virtual Matrix3 | K () const |
| return calibration matrix K | |
| Matrix3 | inverse () const |
| Return inverted calibration matrix inv(K) | |
| virtual size_t | dim () const |
| return DOF, dimensionality of tangent space | |
Standard Constructors | |
| 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) | |
| Point2 | uncalibrate (const Point2 &p, OptionalJacobian< 2, 5 > Dcal={}, OptionalJacobian< 2, 2 > Dp={}) const |
| Point2 | calibrate (const Point2 &p, OptionalJacobian< 2, 5 > Dcal={}, OptionalJacobian< 2, 2 > Dp={}) const |
| Vector3 | calibrate (const Vector3 &p) const |
Testable | |
| void | print (const std::string &s="Cal3_S2") const override |
| print with optional string | |
| 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={}, OptionalJacobian< 5, 5 > H2={}) const |
| "Between", subtracts calibrations. between(p,q) == compose(inverse(p),q) | |
| GTSAM_EXPORT friend std::ostream & | operator<< (std::ostream &os, const Cal3_S2 &cal) |
| Output stream operator. | |
Manifold | |
| 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. | |
| static size_t | Dim () |
| return DOF, dimensionality of tangent space | |
The most common 5DOF 3D->2D calibration.
|
inline |
Easy constructor, takes fov in degrees, asssumes zero skew, unit aspect
| fov | field of view in degrees |
| w | image width |
| h | image height |
| Point2 gtsam::Cal3_S2::calibrate | ( | const Point2 & | p, |
| OptionalJacobian< 2, 5 > | Dcal = {}, |
||
| OptionalJacobian< 2, 2 > | Dp = {} |
||
| ) | const |
Convert image coordinates uv to intrinsic coordinates xy
| p | point in image coordinates |
| Dcal | optional 2*5 Jacobian wrpt Cal3 parameters |
| Dp | optional 2*2 Jacobian wrpt intrinsic coordinates |
| Vector3 gtsam::Cal3_S2::calibrate | ( | const Vector3 & | p | ) | const |
Convert homogeneous image coordinates to intrinsic coordinates
| p | point in image coordinates |
| Point2 gtsam::Cal3_S2::uncalibrate | ( | const Point2 & | p, |
| OptionalJacobian< 2, 5 > | Dcal = {}, |
||
| OptionalJacobian< 2, 2 > | Dp = {} |
||
| ) | const |
Convert intrinsic coordinates xy to image coordinates uv, fixed derivaitves
| p | point in intrinsic coordinates |
| Dcal | optional 2*5 Jacobian wrpt Cal3 parameters |
| Dp | optional 2*2 Jacobian wrpt intrinsic coordinates |
1.8.13