62 bool verboseCheirality =
false,
double retriangulationTh = 1
e-5) :
63 linearizationMode(linMode), degeneracyMode(degMode), retriangulationThreshold(
64 retriangulationTh), throwCheirality(throwCheirality), verboseCheirality(
71 void print(
const std::string&
str =
"")
const {
72 std::cout <<
"linearizationMode: " << linearizationMode <<
"\n";
73 std::cout <<
" degeneracyMode: " << degeneracyMode <<
"\n";
74 std::cout << triangulation << std::endl;
98 linearizationMode = linMode;
101 degeneracyMode = degMode;
104 retriangulationThreshold = retriangulationTh;
121 #ifdef GTSAM_ENABLE_BOOST_SERIALIZATION 122 friend class boost::serialization::access; 124 template<
class ARCHIVE>
126 ar & BOOST_SERIALIZATION_NVP(linearizationMode);
127 ar & BOOST_SERIALIZATION_NVP(degeneracyMode);
128 ar & BOOST_SERIALIZATION_NVP(triangulation);
129 ar & BOOST_SERIALIZATION_NVP(retriangulationThreshold);
130 ar & BOOST_SERIALIZATION_NVP(throwCheirality);
131 ar & BOOST_SERIALIZATION_NVP(verboseCheirality);
bool getVerboseCheirality() const
std::string serialize(const T &input)
serializes to a string
DegeneracyMode degeneracyMode
How to linearize the factor.
void setRetriangulationThreshold(double retriangulationTh)
void setEnableEPI(bool enableEPI)
TriangulationParameters triangulation
double dynamicOutlierRejectionThreshold
virtual ~SmartProjectionParams()
LinearizationMode
Linearization mode: what factor to linearize to.
DegeneracyMode getDegeneracyMode() const
void setRankTolerance(double rankTol)
bool throwCheirality
If true, re-throws Cheirality exceptions (default: false)
bool verboseCheirality
If true, prints text for Cheirality exceptions (default: false)
static const double rankTol
double getRetriangulationThreshold() const
double landmarkDistanceThreshold
SmartProjectionParams(LinearizationMode linMode=HESSIAN, DegeneracyMode degMode=IGNORE_DEGENERACY, bool throwCheirality=false, bool verboseCheirality=false, double retriangulationTh=1e-5)
bool enableEPI
if set to true, will refine triangulation using LM
double rankTolerance
(the rank is the number of singular values of the triangulation matrix which are larger than rankTole...
Functions for triangulation.
void setLandmarkDistanceThreshold(double landmarkDistanceThreshold)
Array< double, 1, 3 > e(1./3., 0.5, 2.)
LinearizationMode linearizationMode
How to linearize the factor.
bool getThrowCheirality() const
void setDegeneracyMode(DegeneracyMode degMode)
void setLinearizationMode(LinearizationMode linMode)
LinearizationMode getLinearizationMode() const
DegeneracyMode
How to manage degeneracy.
void setDynamicOutlierRejectionThreshold(double dynOutRejectionThreshold)
void print(const std::string &str="") const
TriangulationParameters getTriangulationParameters() const
double retriangulationThreshold
threshold to decide whether to re-triangulate