RawFeatureTrackerConfig.hpp
Go to the documentation of this file.
1 #pragma once
2 #include <cstdint>
3 #include <vector>
4 
8 
9 namespace dai {
10 
13  static constexpr const std::int32_t AUTO = 0;
14 
18  struct CornerDetector {
19  enum class Type : std::int32_t {
23  HARRIS,
28  };
33 
42  std::int32_t cellGridDimension = 4;
43 
48  std::int32_t numTargetFeatures = 320;
49 
54  std::int32_t numMaxFeatures = AUTO;
55 
60  bool enableSobel = true;
61 
65  bool enableSorting = true;
66 
70  struct Thresholds {
77  float initialValue = AUTO;
78 
85  float min = AUTO;
86 
93  float max = AUTO;
94 
99  float decreaseFactor = 0.9f;
100 
105  float increaseFactor = 1.1f;
107  };
108 
114 
116  };
117 
125  bool enable = true;
126 
127  enum class Type : std::int32_t {
136  };
141 
145  struct OpticalFlow {
151  std::int32_t pyramidLevels = AUTO;
152 
159  std::int32_t searchWindowWidth = 5;
166  std::int32_t searchWindowHeight = 5;
167 
174  float epsilon = 0.01f;
175 
182  std::int32_t maxIterations = 9;
183 
185  };
186 
192 
194  };
195 
203  bool enable = true;
204 
211 
218 
226  float trackedFeatureThreshold = 200000;
227 
229  };
230 
236 
242 
248 
249  void serialize(std::vector<std::uint8_t>& metadata, DatatypeEnum& datatype) const override {
250  metadata = utility::serialize(*this);
252  };
253 
254  DatatypeEnum getType() const override {
256  }
257 
259 };
260 
261 } // namespace dai
dai::RawFeatureTrackerConfig::CornerDetector::type
Type type
Definition: RawFeatureTrackerConfig.hpp:32
dai::RawFeatureTrackerConfig::getType
DatatypeEnum getType() const override
Definition: RawFeatureTrackerConfig.hpp:254
dai::RawFeatureTrackerConfig::motionEstimator
MotionEstimator motionEstimator
Definition: RawFeatureTrackerConfig.hpp:241
dai::DatatypeEnum
DatatypeEnum
Definition: DatatypeEnum.hpp:7
dai::RawFeatureTrackerConfig::MotionEstimator::OpticalFlow::searchWindowHeight
std::int32_t searchWindowHeight
Definition: RawFeatureTrackerConfig.hpp:166
dai::RawFeatureTrackerConfig::DEPTHAI_SERIALIZE
DEPTHAI_SERIALIZE(RawFeatureTrackerConfig, cornerDetector, motionEstimator, featureMaintainer)
dai::RawFeatureTrackerConfig::CornerDetector::Type::HARRIS
@ HARRIS
dai::RawFeatureTrackerConfig::CornerDetector::Thresholds
Definition: RawFeatureTrackerConfig.hpp:70
dai::RawFeatureTrackerConfig::MotionEstimator::OpticalFlow::epsilon
float epsilon
Definition: RawFeatureTrackerConfig.hpp:174
dai::RawFeatureTrackerConfig::MotionEstimator::type
Type type
Definition: RawFeatureTrackerConfig.hpp:140
dai::RawFeatureTrackerConfig::MotionEstimator::opticalFlow
OpticalFlow opticalFlow
Definition: RawFeatureTrackerConfig.hpp:191
dai::RawFeatureTrackerConfig::cornerDetector
CornerDetector cornerDetector
Definition: RawFeatureTrackerConfig.hpp:235
dai::RawFeatureTrackerConfig::FeatureMaintainer::enable
bool enable
Definition: RawFeatureTrackerConfig.hpp:203
dai::RawFeatureTrackerConfig::CornerDetector::enableSobel
bool enableSobel
Definition: RawFeatureTrackerConfig.hpp:60
dai::utility::serialize
bool serialize(const T &obj, std::vector< std::uint8_t > &data)
Definition: Serialization.hpp:38
dai::RawFeatureTrackerConfig::CornerDetector::Thresholds::decreaseFactor
float decreaseFactor
Definition: RawFeatureTrackerConfig.hpp:99
dai::RawFeatureTrackerConfig::FeatureMaintainer::minimumDistanceBetweenFeatures
float minimumDistanceBetweenFeatures
Definition: RawFeatureTrackerConfig.hpp:210
DatatypeEnum.hpp
dai::RawFeatureTrackerConfig::MotionEstimator::OpticalFlow::DEPTHAI_SERIALIZE
DEPTHAI_SERIALIZE(OpticalFlow, pyramidLevels, searchWindowWidth, searchWindowHeight, epsilon, maxIterations)
dai::RawFeatureTrackerConfig::MotionEstimator::Type::LUCAS_KANADE_OPTICAL_FLOW
@ LUCAS_KANADE_OPTICAL_FLOW
dai::RawFeatureTrackerConfig::MotionEstimator::Type::HW_MOTION_ESTIMATION
@ HW_MOTION_ESTIMATION
dai::RawFeatureTrackerConfig::CornerDetector::Thresholds::min
float min
Definition: RawFeatureTrackerConfig.hpp:85
dai::RawFeatureTrackerConfig::FeatureMaintainer::lostFeatureErrorThreshold
float lostFeatureErrorThreshold
Definition: RawFeatureTrackerConfig.hpp:217
dai::RawFeatureTrackerConfig::AUTO
static constexpr const std::int32_t AUTO
Definition: RawFeatureTrackerConfig.hpp:13
dai::RawFeatureTrackerConfig::MotionEstimator::OpticalFlow::maxIterations
std::int32_t maxIterations
Definition: RawFeatureTrackerConfig.hpp:182
dai::RawFeatureTrackerConfig::MotionEstimator::OpticalFlow::pyramidLevels
std::int32_t pyramidLevels
Definition: RawFeatureTrackerConfig.hpp:151
dai::RawFeatureTrackerConfig::FeatureMaintainer::DEPTHAI_SERIALIZE
DEPTHAI_SERIALIZE(FeatureMaintainer, enable, minimumDistanceBetweenFeatures, lostFeatureErrorThreshold, trackedFeatureThreshold)
dai::RawFeatureTrackerConfig::FeatureMaintainer
Definition: RawFeatureTrackerConfig.hpp:199
dai::RawFeatureTrackerConfig::MotionEstimator::DEPTHAI_SERIALIZE
DEPTHAI_SERIALIZE(MotionEstimator, enable, type, opticalFlow)
dai::RawFeatureTrackerConfig::CornerDetector::Thresholds::initialValue
float initialValue
Definition: RawFeatureTrackerConfig.hpp:77
dai::RawFeatureTrackerConfig::MotionEstimator::Type
Type
Definition: RawFeatureTrackerConfig.hpp:127
dai::RawFeatureTrackerConfig
RawFeatureTrackerConfig configuration structure.
Definition: RawFeatureTrackerConfig.hpp:12
RawBuffer.hpp
dai::RawFeatureTrackerConfig::serialize
void serialize(std::vector< std::uint8_t > &metadata, DatatypeEnum &datatype) const override
Definition: RawFeatureTrackerConfig.hpp:249
dai::RawFeatureTrackerConfig::MotionEstimator::OpticalFlow::searchWindowWidth
std::int32_t searchWindowWidth
Definition: RawFeatureTrackerConfig.hpp:159
dai::RawFeatureTrackerConfig::CornerDetector::Type::SHI_THOMASI
@ SHI_THOMASI
dai::RawFeatureTrackerConfig::CornerDetector::enableSorting
bool enableSorting
Definition: RawFeatureTrackerConfig.hpp:65
dai::RawFeatureTrackerConfig::CornerDetector::cellGridDimension
std::int32_t cellGridDimension
Definition: RawFeatureTrackerConfig.hpp:42
dai::RawFeatureTrackerConfig::CornerDetector::numTargetFeatures
std::int32_t numTargetFeatures
Definition: RawFeatureTrackerConfig.hpp:48
Serialization.hpp
dai::RawFeatureTrackerConfig::CornerDetector::Thresholds::increaseFactor
float increaseFactor
Definition: RawFeatureTrackerConfig.hpp:105
dai::RawFeatureTrackerConfig::CornerDetector::thresholds
Thresholds thresholds
Definition: RawFeatureTrackerConfig.hpp:113
dai::RawFeatureTrackerConfig::CornerDetector::Type
Type
Definition: RawFeatureTrackerConfig.hpp:19
dai::RawFeatureTrackerConfig::MotionEstimator::enable
bool enable
Definition: RawFeatureTrackerConfig.hpp:125
dai::RawFeatureTrackerConfig::CornerDetector::DEPTHAI_SERIALIZE
DEPTHAI_SERIALIZE(CornerDetector, type, cellGridDimension, numTargetFeatures, numMaxFeatures, thresholds, enableSobel, enableSorting)
dai::RawFeatureTrackerConfig::featureMaintainer
FeatureMaintainer featureMaintainer
Definition: RawFeatureTrackerConfig.hpp:247
dai::RawFeatureTrackerConfig::CornerDetector::numMaxFeatures
std::int32_t numMaxFeatures
Definition: RawFeatureTrackerConfig.hpp:54
dai::RawFeatureTrackerConfig::MotionEstimator
Definition: RawFeatureTrackerConfig.hpp:121
dai::RawBuffer
RawBuffer structure.
Definition: RawBuffer.hpp:12
dai::RawFeatureTrackerConfig::MotionEstimator::OpticalFlow
Definition: RawFeatureTrackerConfig.hpp:145
dai::RawFeatureTrackerConfig::CornerDetector::Thresholds::DEPTHAI_SERIALIZE
DEPTHAI_SERIALIZE(Thresholds, initialValue, min, max, decreaseFactor, increaseFactor)
dai
Definition: CameraExposureOffset.hpp:6
dai::RawFeatureTrackerConfig::FeatureMaintainer::trackedFeatureThreshold
float trackedFeatureThreshold
Definition: RawFeatureTrackerConfig.hpp:226
dai::RawFeatureTrackerConfig::CornerDetector::Thresholds::max
float max
Definition: RawFeatureTrackerConfig.hpp:93
dai::DatatypeEnum::FeatureTrackerConfig
@ FeatureTrackerConfig
dai::RawFeatureTrackerConfig::CornerDetector
Definition: RawFeatureTrackerConfig.hpp:18


depthai
Author(s): Martin Peterlin
autogenerated on Sat Mar 22 2025 02:58:19