Commit 3cfc22ae authored by Ievgen Khvedchenia's avatar Ievgen Khvedchenia

Fix initialisation order of parallel loop classes for AKAZE descriptor extraction

parent f3f0e06c
...@@ -553,11 +553,11 @@ void AKAZEFeatures::Feature_Suppression_Distance(std::vector<cv::KeyPoint>& kpts ...@@ -553,11 +553,11 @@ void AKAZEFeatures::Feature_Suppression_Distance(std::vector<cv::KeyPoint>& kpts
class SURF_Descriptor_Upright_64_Invoker : public cv::ParallelLoopBody class SURF_Descriptor_Upright_64_Invoker : public cv::ParallelLoopBody
{ {
public: public:
SURF_Descriptor_Upright_64_Invoker(std::vector<cv::KeyPoint>& kpts, cv::Mat& desc, const std::vector<TEvolution>& evolution, const AKAZEOptions& options) SURF_Descriptor_Upright_64_Invoker(std::vector<cv::KeyPoint>& kpts, cv::Mat& desc, std::vector<TEvolution>& evolution, AKAZEOptions& options)
: evolution_(evolution) : keypoints_(kpts)
, options_(options)
, keypoints_(kpts)
, descriptors_(desc) , descriptors_(desc)
, evolution_(evolution)
, options_(options)
{ {
} }
...@@ -574,18 +574,18 @@ public: ...@@ -574,18 +574,18 @@ public:
private: private:
std::vector<cv::KeyPoint>& keypoints_; std::vector<cv::KeyPoint>& keypoints_;
cv::Mat& descriptors_; cv::Mat& descriptors_;
const std::vector<TEvolution>& evolution_; std::vector<TEvolution>& evolution_;
const AKAZEOptions& options_; AKAZEOptions& options_;
}; };
class SURF_Descriptor_64_Invoker : public cv::ParallelLoopBody class SURF_Descriptor_64_Invoker : public cv::ParallelLoopBody
{ {
public: public:
SURF_Descriptor_64_Invoker(std::vector<cv::KeyPoint>& kpts, cv::Mat& desc, const std::vector<TEvolution>& evolution, const AKAZEOptions& options) SURF_Descriptor_64_Invoker(std::vector<cv::KeyPoint>& kpts, cv::Mat& desc, std::vector<TEvolution>& evolution, AKAZEOptions& options)
: evolution_(evolution) : keypoints_(kpts)
, options_(options)
, keypoints_(kpts)
, descriptors_(desc) , descriptors_(desc)
, evolution_(evolution)
, options_(options)
{ {
} }
...@@ -603,18 +603,18 @@ public: ...@@ -603,18 +603,18 @@ public:
private: private:
std::vector<cv::KeyPoint>& keypoints_; std::vector<cv::KeyPoint>& keypoints_;
cv::Mat& descriptors_; cv::Mat& descriptors_;
const std::vector<TEvolution>& evolution_; std::vector<TEvolution>& evolution_;
const AKAZEOptions& options_; AKAZEOptions& options_;
}; };
class MSURF_Upright_Descriptor_64_Invoker : public cv::ParallelLoopBody class MSURF_Upright_Descriptor_64_Invoker : public cv::ParallelLoopBody
{ {
public: public:
MSURF_Upright_Descriptor_64_Invoker(std::vector<cv::KeyPoint>& kpts, cv::Mat& desc, const std::vector<TEvolution>& evolution, const AKAZEOptions& options) MSURF_Upright_Descriptor_64_Invoker(std::vector<cv::KeyPoint>& kpts, cv::Mat& desc, std::vector<TEvolution>& evolution, AKAZEOptions& options)
: evolution_(evolution) : keypoints_(kpts)
, options_(options)
, keypoints_(kpts)
, descriptors_(desc) , descriptors_(desc)
, evolution_(evolution)
, options_(options)
{ {
} }
...@@ -631,19 +631,18 @@ public: ...@@ -631,19 +631,18 @@ public:
private: private:
std::vector<cv::KeyPoint>& keypoints_; std::vector<cv::KeyPoint>& keypoints_;
cv::Mat& descriptors_; cv::Mat& descriptors_;
const std::vector<TEvolution>& evolution_; std::vector<TEvolution>& evolution_;
const AKAZEOptions& options_; AKAZEOptions& options_;
}; };
class MSURF_Descriptor_64_Invoker : public cv::ParallelLoopBody class MSURF_Descriptor_64_Invoker : public cv::ParallelLoopBody
{ {
public: public:
MSURF_Descriptor_64_Invoker(std::vector<cv::KeyPoint>& kpts, cv::Mat& desc, const std::vector<TEvolution>& evolution, const AKAZEOptions& options) MSURF_Descriptor_64_Invoker(std::vector<cv::KeyPoint>& kpts, cv::Mat& desc, std::vector<TEvolution>& evolution, AKAZEOptions& options)
: evolution_(evolution) : keypoints_(kpts)
, options_(options)
, keypoints_(kpts)
, descriptors_(desc) , descriptors_(desc)
, evolution_(evolution)
, options_(options)
{ {
} }
...@@ -661,19 +660,18 @@ public: ...@@ -661,19 +660,18 @@ public:
private: private:
std::vector<cv::KeyPoint>& keypoints_; std::vector<cv::KeyPoint>& keypoints_;
cv::Mat& descriptors_; cv::Mat& descriptors_;
const std::vector<TEvolution>& evolution_; std::vector<TEvolution>& evolution_;
const AKAZEOptions& options_; AKAZEOptions& options_;
}; };
class Upright_MLDB_Full_Descriptor_Invoker : public cv::ParallelLoopBody class Upright_MLDB_Full_Descriptor_Invoker : public cv::ParallelLoopBody
{ {
public: public:
Upright_MLDB_Full_Descriptor_Invoker(std::vector<cv::KeyPoint>& kpts, cv::Mat& desc, const std::vector<TEvolution>& evolution, const AKAZEOptions& options) Upright_MLDB_Full_Descriptor_Invoker(std::vector<cv::KeyPoint>& kpts, cv::Mat& desc, std::vector<TEvolution>& evolution, AKAZEOptions& options)
: evolution_(evolution) : keypoints_(kpts)
, options_(options)
, keypoints_(kpts)
, descriptors_(desc) , descriptors_(desc)
, evolution_(evolution)
, options_(options)
{ {
} }
...@@ -690,9 +688,8 @@ public: ...@@ -690,9 +688,8 @@ public:
private: private:
std::vector<cv::KeyPoint>& keypoints_; std::vector<cv::KeyPoint>& keypoints_;
cv::Mat& descriptors_; cv::Mat& descriptors_;
const std::vector<TEvolution>& evolution_; std::vector<TEvolution>& evolution_;
const AKAZEOptions& options_; AKAZEOptions& options_;
}; };
class Upright_MLDB_Descriptor_Subset_Invoker : public cv::ParallelLoopBody class Upright_MLDB_Descriptor_Subset_Invoker : public cv::ParallelLoopBody
...@@ -700,14 +697,14 @@ class Upright_MLDB_Descriptor_Subset_Invoker : public cv::ParallelLoopBody ...@@ -700,14 +697,14 @@ class Upright_MLDB_Descriptor_Subset_Invoker : public cv::ParallelLoopBody
public: public:
Upright_MLDB_Descriptor_Subset_Invoker(std::vector<cv::KeyPoint>& kpts, Upright_MLDB_Descriptor_Subset_Invoker(std::vector<cv::KeyPoint>& kpts,
cv::Mat& desc, cv::Mat& desc,
const std::vector<TEvolution>& evolution, std::vector<TEvolution>& evolution,
const AKAZEOptions& options, AKAZEOptions& options,
cv::Mat descriptorSamples, cv::Mat descriptorSamples,
cv::Mat descriptorBits) cv::Mat descriptorBits)
: evolution_(evolution) : keypoints_(kpts)
, options_(options)
, keypoints_(kpts)
, descriptors_(desc) , descriptors_(desc)
, evolution_(evolution)
, options_(options)
, descriptorSamples_(descriptorSamples) , descriptorSamples_(descriptorSamples)
, descriptorBits_(descriptorBits) , descriptorBits_(descriptorBits)
{ {
...@@ -726,8 +723,8 @@ public: ...@@ -726,8 +723,8 @@ public:
private: private:
std::vector<cv::KeyPoint>& keypoints_; std::vector<cv::KeyPoint>& keypoints_;
cv::Mat& descriptors_; cv::Mat& descriptors_;
const std::vector<TEvolution>& evolution_; std::vector<TEvolution>& evolution_;
const AKAZEOptions& options_; AKAZEOptions& options_;
cv::Mat descriptorSamples_; // List of positions in the grids to sample LDB bits from. cv::Mat descriptorSamples_; // List of positions in the grids to sample LDB bits from.
cv::Mat descriptorBits_; cv::Mat descriptorBits_;
...@@ -736,11 +733,11 @@ private: ...@@ -736,11 +733,11 @@ private:
class MLDB_Full_Descriptor_Invoker : public cv::ParallelLoopBody class MLDB_Full_Descriptor_Invoker : public cv::ParallelLoopBody
{ {
public: public:
MLDB_Full_Descriptor_Invoker(std::vector<cv::KeyPoint>& kpts, cv::Mat& desc, const std::vector<TEvolution>& evolution, const AKAZEOptions& options) MLDB_Full_Descriptor_Invoker(std::vector<cv::KeyPoint>& kpts, cv::Mat& desc, std::vector<TEvolution>& evolution, AKAZEOptions& options)
: evolution_(evolution) : keypoints_(kpts)
, options_(options)
, keypoints_(kpts)
, descriptors_(desc) , descriptors_(desc)
, evolution_(evolution)
, options_(options)
{ {
} }
...@@ -758,9 +755,8 @@ public: ...@@ -758,9 +755,8 @@ public:
private: private:
std::vector<cv::KeyPoint>& keypoints_; std::vector<cv::KeyPoint>& keypoints_;
cv::Mat& descriptors_; cv::Mat& descriptors_;
const std::vector<TEvolution>& evolution_; std::vector<TEvolution>& evolution_;
const AKAZEOptions& options_; AKAZEOptions& options_;
}; };
class MLDB_Descriptor_Subset_Invoker : public cv::ParallelLoopBody class MLDB_Descriptor_Subset_Invoker : public cv::ParallelLoopBody
...@@ -768,14 +764,14 @@ class MLDB_Descriptor_Subset_Invoker : public cv::ParallelLoopBody ...@@ -768,14 +764,14 @@ class MLDB_Descriptor_Subset_Invoker : public cv::ParallelLoopBody
public: public:
MLDB_Descriptor_Subset_Invoker(std::vector<cv::KeyPoint>& kpts, MLDB_Descriptor_Subset_Invoker(std::vector<cv::KeyPoint>& kpts,
cv::Mat& desc, cv::Mat& desc,
const std::vector<TEvolution>& evolution, std::vector<TEvolution>& evolution,
const AKAZEOptions& options, AKAZEOptions& options,
cv::Mat descriptorSamples, cv::Mat descriptorSamples,
cv::Mat descriptorBits) cv::Mat descriptorBits)
: evolution_(evolution) : keypoints_(kpts)
, options_(options)
, keypoints_(kpts)
, descriptors_(desc) , descriptors_(desc)
, evolution_(evolution)
, options_(options)
, descriptorSamples_(descriptorSamples) , descriptorSamples_(descriptorSamples)
, descriptorBits_(descriptorBits) , descriptorBits_(descriptorBits)
{ {
...@@ -795,8 +791,8 @@ public: ...@@ -795,8 +791,8 @@ public:
private: private:
std::vector<cv::KeyPoint>& keypoints_; std::vector<cv::KeyPoint>& keypoints_;
cv::Mat& descriptors_; cv::Mat& descriptors_;
const std::vector<TEvolution>& evolution_; std::vector<TEvolution>& evolution_;
const AKAZEOptions& options_; AKAZEOptions& options_;
cv::Mat descriptorSamples_; // List of positions in the grids to sample LDB bits from. cv::Mat descriptorSamples_; // List of positions in the grids to sample LDB bits from.
cv::Mat descriptorBits_; cv::Mat descriptorBits_;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment