gtsam 4.2.0
gtsam
Loading...
Searching...
No Matches
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
24namespace gtsam {
25
29template<class CAMERA>
30class PinholeSet: public CameraSet<CAMERA> {
31
32private:
33 typedef CameraSet<CAMERA> Base;
34 typedef PinholeSet<CAMERA> This;
35
36protected:
37
38public:
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
66private:
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
76template<class CAMERA>
77struct traits<PinholeSet<CAMERA> > : public Testable<PinholeSet<CAMERA> > {
78};
79
80template<class CAMERA>
81struct traits<const PinholeSet<CAMERA> > : public Testable<PinholeSet<CAMERA> > {
82};
83
84} // \ namespace gtsam
Base class to create smart factors on poses or cameras.
Functions for triangulation.
Global functions in a separate testing namespace.
Definition chartTesting.h:28
TriangulationResult triangulateSafe(const CameraSet< CAMERA > &cameras, const typename CAMERA::MeasurementVector &measured, const TriangulationParameters &params)
triangulateSafe: extensive checking of the outcome
Definition triangulation.h:680
A manifold defines a space in which there is a notion of a linear tangent space that can be centered ...
Definition concepts.h:30
A helper that implements the traits interface for GTSAM types.
Definition Testable.h:151
A set of cameras, all with their own calibration.
Definition CameraSet.h:36
PinholeSet: triangulates point and keeps an estimate of it around.
Definition PinholeSet.h:30
TriangulationResult triangulateSafe(const typename CAMERA::MeasurementVector &measured, const TriangulationParameters &params) const
triangulateSafe
Definition PinholeSet.h:60
bool equals(const PinholeSet &p, double tol=1e-9) const
equals
Definition PinholeSet.h:53
virtual ~PinholeSet()
Virtual destructor.
Definition PinholeSet.h:41
void print(const std::string &s="") const override
print
Definition PinholeSet.h:48
friend class boost::serialization::access
Serialization function.
Definition PinholeSet.h:69
Definition triangulation.h:556
TriangulationResult is an optional point, along with the reasons why it is invalid.
Definition triangulation.h:626