Loading...
Searching...
No Matches
PinholeSet.h
Go to the documentation of this file.
/* ----------------------------------------------------------------------------
* GTSAM Copyright 2010, Georgia Tech Research Corporation,
* Atlanta, Georgia 30332-0415
* All Rights Reserved
* Authors: Frank Dellaert, et al. (see THANKS for the full author list)
* See LICENSE for the license information
* -------------------------------------------------------------------------- */
#pragma once
#include <gtsam/geometry/CameraSet.h>
#include <gtsam/geometry/triangulation.h>
#include <boost/optional.hpp>
namespace gtsam {
template<class CAMERA>
class PinholeSet: public CameraSet<CAMERA> {
private:
typedef CameraSet<CAMERA> Base;
typedef PinholeSet<CAMERA> This;
protected:
public:
virtual ~PinholeSet() {
}
void print(const std::string& s = "") const override {
Base::print(s);
}
bool equals(const PinholeSet& p, double tol = 1e-9) const {
return Base::equals(p, tol); // TODO all flags
}
TriangulationResult triangulateSafe(
const typename CAMERA::MeasurementVector& measured,
const TriangulationParameters& params) const {
return gtsam::triangulateSafe(*this, measured, params);
}
private:
friend class boost::serialization::access;
template<class ARCHIVE>
void serialize(ARCHIVE & ar, const unsigned int version) {
ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(Base);
}
};
template<class CAMERA>
struct traits<PinholeSet<CAMERA> > : public Testable<PinholeSet<CAMERA> > {
};
template<class CAMERA>
struct traits<const PinholeSet<CAMERA> > : public Testable<PinholeSet<CAMERA> > {
};
} // \ namespace gtsam
triangulation.h
Functions for triangulation.
CameraSet.h
Base class to create smart factors on poses or cameras.
gtsam
Global functions in a separate testing namespace.
Definition chartTesting.h:28
gtsam::triangulateSafe
TriangulationResult triangulateSafe(const CameraSet< CAMERA > &cameras, const typename CAMERA::MeasurementVector &measured, const TriangulationParameters &params)
triangulateSafe: extensive checking of the outcome
Definition triangulation.h:680
gtsam::traits
A manifold defines a space in which there is a notion of a linear tangent space that can be centered ...
Definition concepts.h:30
gtsam::Testable
A helper that implements the traits interface for GTSAM types.
Definition Testable.h:151
gtsam::CameraSet
A set of cameras, all with their own calibration.
Definition CameraSet.h:36
gtsam::CameraSet::print
virtual void print(const std::string &s="") const
print
Definition CameraSet.h:85
gtsam::CameraSet::equals
bool equals(const CameraSet &p, double tol=1e-9) const
equals
Definition CameraSet.h:91
gtsam::PinholeSet
PinholeSet: triangulates point and keeps an estimate of it around.
Definition PinholeSet.h:30
gtsam::PinholeSet::triangulateSafe
TriangulationResult triangulateSafe(const typename CAMERA::MeasurementVector &measured, const TriangulationParameters &params) const
triangulateSafe
Definition PinholeSet.h:60
gtsam::PinholeSet::equals
bool equals(const PinholeSet &p, double tol=1e-9) const
equals
Definition PinholeSet.h:53
gtsam::PinholeSet::~PinholeSet
virtual ~PinholeSet()
Virtual destructor.
Definition PinholeSet.h:41
gtsam::PinholeSet::print
void print(const std::string &s="") const override
print
Definition PinholeSet.h:48
gtsam::PinholeSet::access
friend class boost::serialization::access
Serialization function.
Definition PinholeSet.h:69
gtsam::TriangulationParameters
Definition triangulation.h:556
gtsam::TriangulationResult
TriangulationResult is an optional point, along with the reasons why it is invalid.
Definition triangulation.h:626