25 #include <gtsam/geometry/Cal3DS2_Base.h>
26 #include <gtsam/base/DerivedValue.h>
55 Vector vector()
const ;
63 Cal3Unified(
double fx,
double fy,
double s,
double u0,
double v0,
64 double k1,
double k2,
double p1 = 0.0,
double p2 = 0.0,
double xi = 0.0) :
65 Base(fx, fy, s, u0, v0, k1, k2, p1, p2), xi_(xi) {}
71 Cal3Unified(
const Vector &v) ;
78 void print(
const std::string& s =
"")
const ;
81 bool equals(
const Cal3Unified& K,
double tol = 10e-9)
const;
88 inline double xi()
const {
return xi_;}
98 boost::optional<Matrix&> Dcal = boost::none,
99 boost::optional<Matrix&> Dp = boost::none)
const ;
102 Point2 calibrate(
const Point2& p,
const double tol=1e-5)
const;
118 Vector localCoordinates(
const Cal3Unified& T2)
const ;
121 virtual size_t dim()
const {
return 10 ; }
124 static size_t Dim() {
return 10; }
133 friend class boost::serialization::access;
134 template<
class Archive>
135 void serialize(Archive & ar,
const unsigned int version)
137 ar & boost::serialization::make_nvp(
"Cal3Unified",
138 boost::serialization::base_object<Value>(*
this));
139 ar & boost::serialization::make_nvp(
"Cal3Unified",
140 boost::serialization::base_object<Cal3DS2_Base>(*
this));
141 ar & BOOST_SERIALIZATION_NVP(xi_);
Definition: Cal3DS2_Base.h:40
double xi() const
mirror parameter
Definition: Cal3Unified.h:88
Cal3Unified()
Default Constructor with only unit focal length.
Definition: Cal3Unified.h:61
virtual size_t dim() const
Return dimensions of calibration manifold object.
Definition: Cal3Unified.h:121
void print(const Matrix &A, const string &s, ostream &stream)
print a matrix
Definition: Matrix.cpp:183
Definition: Cal3Unified.h:43
Definition: DerivedValue.h:44
static size_t Dim()
Return dimensions of calibration manifold object.
Definition: Cal3Unified.h:124