Merge pull request #1517 from dllu/develop
commit
52ecb09a4f
|
@ -1180,11 +1180,13 @@ class TriangulationParameters {
|
||||||
bool enableEPI;
|
bool enableEPI;
|
||||||
double landmarkDistanceThreshold;
|
double landmarkDistanceThreshold;
|
||||||
double dynamicOutlierRejectionThreshold;
|
double dynamicOutlierRejectionThreshold;
|
||||||
|
bool useLOST;
|
||||||
gtsam::SharedNoiseModel noiseModel;
|
gtsam::SharedNoiseModel noiseModel;
|
||||||
TriangulationParameters(const double rankTolerance = 1.0,
|
TriangulationParameters(const double rankTolerance = 1.0,
|
||||||
const bool enableEPI = false,
|
const bool enableEPI = false,
|
||||||
double landmarkDistanceThreshold = -1,
|
double landmarkDistanceThreshold = -1,
|
||||||
double dynamicOutlierRejectionThreshold = -1,
|
double dynamicOutlierRejectionThreshold = -1,
|
||||||
|
const bool useLOST = false,
|
||||||
const gtsam::SharedNoiseModel& noiseModel = nullptr);
|
const gtsam::SharedNoiseModel& noiseModel = nullptr);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -574,6 +574,11 @@ struct GTSAM_EXPORT TriangulationParameters {
|
||||||
*/
|
*/
|
||||||
double dynamicOutlierRejectionThreshold;
|
double dynamicOutlierRejectionThreshold;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* if true, will use the LOST algorithm instead of DLT
|
||||||
|
*/
|
||||||
|
bool useLOST;
|
||||||
|
|
||||||
SharedNoiseModel noiseModel; ///< used in the nonlinear triangulation
|
SharedNoiseModel noiseModel; ///< used in the nonlinear triangulation
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -588,10 +593,12 @@ struct GTSAM_EXPORT TriangulationParameters {
|
||||||
TriangulationParameters(const double _rankTolerance = 1.0,
|
TriangulationParameters(const double _rankTolerance = 1.0,
|
||||||
const bool _enableEPI = false, double _landmarkDistanceThreshold = -1,
|
const bool _enableEPI = false, double _landmarkDistanceThreshold = -1,
|
||||||
double _dynamicOutlierRejectionThreshold = -1,
|
double _dynamicOutlierRejectionThreshold = -1,
|
||||||
|
const bool _useLOST = false,
|
||||||
const SharedNoiseModel& _noiseModel = nullptr) :
|
const SharedNoiseModel& _noiseModel = nullptr) :
|
||||||
rankTolerance(_rankTolerance), enableEPI(_enableEPI), //
|
rankTolerance(_rankTolerance), enableEPI(_enableEPI), //
|
||||||
landmarkDistanceThreshold(_landmarkDistanceThreshold), //
|
landmarkDistanceThreshold(_landmarkDistanceThreshold), //
|
||||||
dynamicOutlierRejectionThreshold(_dynamicOutlierRejectionThreshold),
|
dynamicOutlierRejectionThreshold(_dynamicOutlierRejectionThreshold),
|
||||||
|
useLOST(_useLOST),
|
||||||
noiseModel(_noiseModel){
|
noiseModel(_noiseModel){
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -604,6 +611,7 @@ struct GTSAM_EXPORT TriangulationParameters {
|
||||||
<< std::endl;
|
<< std::endl;
|
||||||
os << "dynamicOutlierRejectionThreshold = "
|
os << "dynamicOutlierRejectionThreshold = "
|
||||||
<< p.dynamicOutlierRejectionThreshold << std::endl;
|
<< p.dynamicOutlierRejectionThreshold << std::endl;
|
||||||
|
os << "useLOST = " << p.useLOST << std::endl;
|
||||||
os << "noise model" << std::endl;
|
os << "noise model" << std::endl;
|
||||||
return os;
|
return os;
|
||||||
}
|
}
|
||||||
|
@ -701,7 +709,7 @@ TriangulationResult triangulateSafe(const CameraSet<CAMERA>& cameras,
|
||||||
try {
|
try {
|
||||||
Point3 point =
|
Point3 point =
|
||||||
triangulatePoint3<CAMERA>(cameras, measured, params.rankTolerance,
|
triangulatePoint3<CAMERA>(cameras, measured, params.rankTolerance,
|
||||||
params.enableEPI, params.noiseModel);
|
params.enableEPI, params.noiseModel, params.useLOST);
|
||||||
|
|
||||||
// Check landmark distance and re-projection errors to avoid outliers
|
// Check landmark distance and re-projection errors to avoid outliers
|
||||||
size_t i = 0;
|
size_t i = 0;
|
||||||
|
|
Loading…
Reference in New Issue