PinholeSet.h
Go to the documentation of this file.
1 /* ----------------------------------------------------------------------------
2 
3  * GTSAM Copyright 2010, Georgia Tech Research Corporation,
4  * Atlanta, Georgia 30332-0415
5  * All Rights Reserved
6  * Authors: Frank Dellaert, et al. (see THANKS for the full author list)
7 
8  * See LICENSE for the license information
9 
10  * -------------------------------------------------------------------------- */
11 
18 #pragma once
19 
22 #include <boost/optional.hpp>
23 
24 namespace gtsam {
25 
29 template<class CAMERA>
30 class PinholeSet: public CameraSet<CAMERA> {
31 
32 private:
35 
36 protected:
37 
38 public:
39 
41  virtual ~PinholeSet() {
42  }
43 
46 
48  void print(const std::string& s = "") const override {
49  Base::print(s);
50  }
51 
53  bool equals(const PinholeSet& p, double tol = 1e-9) const {
54  return Base::equals(p, tol); // TODO all flags
55  }
56 
58 
61  const typename CAMERA::MeasurementVector& measured,
62  const TriangulationParameters& params) const {
63  return gtsam::triangulateSafe(*this, measured, params);
64  }
65 
66 private:
67 
70  template<class ARCHIVE>
71  void serialize(ARCHIVE & ar, const unsigned int version) {
72  ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(Base);
73  }
74 };
75 
76 template<class CAMERA>
77 struct traits<PinholeSet<CAMERA> > : public Testable<PinholeSet<CAMERA> > {
78 };
79 
80 template<class CAMERA>
81 struct traits<const PinholeSet<CAMERA> > : public Testable<PinholeSet<CAMERA> > {
82 };
83 
84 } // \ namespace gtsam
TriangulationResult triangulateSafe(const typename CAMERA::MeasurementVector &measured, const TriangulationParameters &params) const
triangulateSafe
Definition: PinholeSet.h:60
PinholeSet< CAMERA > This
Definition: PinholeSet.h:34
CameraSet< CAMERA > Base
Definition: PinholeSet.h:33
Base class to create smart factors on poses or cameras.
void print(const std::string &s="") const override
print
Definition: PinholeSet.h:48
bool equals(const CameraSet &p, double tol=1e-9) const
equals
Definition: CameraSet.h:88
A set of cameras, all with their own calibration.
Definition: CameraSet.h:35
virtual void print(const std::string &s="") const
Definition: CameraSet.h:81
friend class boost::serialization::access
Serialization function.
Definition: PinholeSet.h:69
Functions for triangulation.
Array< double, 1, 3 > e(1./3., 0.5, 2.)
RealScalar s
static SmartStereoProjectionParams params
TriangulationResult triangulateSafe(const CameraSet< CAMERA > &cameras, const typename CAMERA::MeasurementVector &measured, const TriangulationParameters &params)
triangulateSafe: extensive checking of the outcome
traits
Definition: chartTesting.h:28
float * p
void serialize(ARCHIVE &ar, const unsigned int version)
Definition: PinholeSet.h:71
virtual ~PinholeSet()
Definition: PinholeSet.h:41
const G double tol
Definition: Group.h:83
Point3 measured
bool equals(const PinholeSet &p, double tol=1e-9) const
equals
Definition: PinholeSet.h:53


gtsam
Author(s):
autogenerated on Sat May 8 2021 02:43:26