53 enum { dimension = 10 };
65 double k2,
double p1 = 0.0,
double p2 = 0.0,
double xi = 0.0)
66 :
Base(fx, fy, s, u0, v0, k1, k2,
p1,
p2), xi_(
xi) {}
75 :
Base(v(0), v(1), v(2), v(3), v(4), v(5), v(6), v(7), v(8)), xi_(v(9)) {}
82 GTSAM_EXPORT
friend std::ostream&
operator<<(std::ostream&
os,
86 void print(
const std::string&
s =
"")
const override;
96 inline double xi()
const {
return xi_; }
99 Vector10 vector()
const;
133 size_t dim()
const override {
return Dim(); }
136 inline static size_t Dim() {
return dimension; }
141 #ifdef GTSAM_ENABLE_BOOST_SERIALIZATION 143 friend class boost::serialization::access;
144 template <
class Archive>
145 void serialize(Archive& ar,
const unsigned int ) {
146 ar& boost::serialization::make_nvp(
147 "Cal3Unified", boost::serialization::base_object<Cal3DS2_Base>(*
this));
148 ar& BOOST_SERIALIZATION_NVP(xi_);
void print(const Matrix &A, const string &s, ostream &stream)
Both ManifoldTraits and Testable.
std::ostream & operator<<(std::ostream &os, const Dih6 &m)
std::string serialize(const T &input)
serializes to a string
size_t dim() const override
Return dimensions of calibration manifold object.
Cal3Unified(double fx, double fy, double s, double u0, double v0, double k1, double k2, double p1=0.0, double p2=0.0, double xi=0.0)
static Cal3_S2 K(500, 500, 0.1, 640/2, 480/2)
Calibration of a camera with radial distortion.
static const Pose3 T2(Rot3::Rodrigues(0.3, 0.2, 0.1), P2)
std::shared_ptr< Cal3 > shared_ptr
Array< int, Dynamic, 1 > v
double xi() const
mirror parameter
Array< double, 1, 3 > e(1./3., 0.5, 2.)
Calibration of a omni-directional camera with mirror + lens radial distortion.
ofstream os("timeSchurFactors.csv")
static size_t Dim()
Return dimensions of calibration manifold object.
Point2_ uncalibrate(const Expression< CALIBRATION > &K, const Point2_ &xy_hat)
Cal3Unified(const Vector10 &v)