Fixed Stereo parameters not used for OdometryBOW. Saving parameters in Memory and Feature2D to re-use old parameters when underlaying algorithm strategies are re-created.

This commit is contained in:
matlabbe
2016-01-04 11:41:13 -05:00
parent 51300dde06
commit b578fc732e
11 changed files with 37 additions and 26 deletions

View File

@@ -148,6 +148,7 @@ public:
const std::vector<cv::KeyPoint> & keypoints) const;
virtual void parseParameters(const ParametersMap & parameters);
virtual const ParametersMap & getParameters() const {return parameters_;}
virtual Feature2D::Type getType() const = 0;
protected:
@@ -158,6 +159,7 @@ private:
virtual cv::Mat generateDescriptorsImpl(const cv::Mat & image, std::vector<cv::KeyPoint> & keypoints) const = 0;
private:
ParametersMap parameters_;
int maxFeatures_;
float _wordsMaxDepth; // 0=inf
float _wordsMinDepth;

View File

@@ -67,6 +67,7 @@ public:
virtual ~Memory();
virtual void parseParameters(const ParametersMap & parameters);
virtual const ParametersMap & getParameters() const {return parameters_;}
bool update(const SensorData & data,
Statistics * stats = 0);
bool update(const SensorData & data,
@@ -222,6 +223,7 @@ protected:
private:
// parameters
ParametersMap parameters_;
float _similarityThreshold;
bool _rawDataKept;
bool _binDataKept;

View File

@@ -112,6 +112,7 @@ public:
void dumpPrediction() const;
void dumpData() const;
void parseParameters(const ParametersMap & parameters);
const ParametersMap & getParameters() const {return _parameters;}
void setWorkingDirectory(std::string path);
void rejectLoopClosure(int oldId, int newId);
void get3DMap(std::map<int, Signature> & signatures,
@@ -215,7 +216,7 @@ private:
EpipolarGeometry * _epipolarGeometry;
BayesFilter * _bayesFilter;
Optimizer * _graphOptimizer;
ParametersMap _modifiedParameters;
ParametersMap _parameters;
Memory * _memory;