8 #ifndef META_OCEAN_TRACKING_ORB_FEATURE_TRACKER_6DOF_H
9 #define META_OCEAN_TRACKING_ORB_FEATURE_TRACKER_6DOF_H
124 unsigned int featureStrengthThreshold_ = 35u;
127 float matchingThreshold_ = 0.2f;
130 size_t numberDetectedFeatures_ = 0u;
133 bool useProjectedFeatures_ =
false;
136 bool usingHarrisFeatures_ =
false;
This class implements Ocean's image class.
Definition: Frame.h:1792
This class implements a generator for random numbers.
Definition: RandomGenerator.h:42
This class implements a timestamp.
Definition: Timestamp.h:36
This class implements a feature map for ORB features.
Definition: FeatureMap.h:39
This class implements a 6DOF ORB feature tracker.
Definition: FeatureTracker6DOF.h:39
Timestamp recentTimestamp_
Timestamp of the most recent pose.
Definition: FeatureTracker6DOF.h:115
FeatureTracker6DOF()=default
Creates a new feature tracker object.
Frame linedIntegralImage_
Internal lined integral image for the most recent frame.
Definition: FeatureTracker6DOF.h:144
bool determinePoseWithPreviousPose(CV::Detector::ORBFeatures &features, const Frame &frame, const PinholeCamera &pinholeCamera, HomogenousMatrix4 &pose)
Determines the pose if the pose from the previous frame is given.
Frame yFrame_
Internal grayscale frame with format FORMAT_Y8.
Definition: FeatureTracker6DOF.h:141
~FeatureTracker6DOF() override
Destructs a feature tracker object.
RandomGenerator randomGenerator_
Random generator object.
Definition: FeatureTracker6DOF.h:121
bool determinePoseWithoutKnowledge(CV::Detector::ORBFeatures &features, const Frame &frame, const PinholeCamera &pinholeCamera, HomogenousMatrix4 &pose, Worker *worker)
Determines the pose if no previous information is given.
bool setFeatureMap(const FeatureMap &featureMap, const bool autoUpdateMaxPositionOffset=true)
Sets or changes the feature map for this tracker.
bool determinePose(const Frame &frame, const uint32_t *integralImage, const PinholeCamera &pinholeCamera, const bool frameIsUndistorted, HomogenousMatrix4 &pose, Worker *worker=nullptr)
Determines the 6DOF tracking for a given frame and given integral image.
const uint32_t * createLinedIntegralImage(const Frame &frame, Worker *worker)
Creates the lined integral image of the given frame.
bool determinePoses(const Frame &frame, const PinholeCamera &pinholeCamera, const bool frameIsUndistorted, TransformationSamples &transformations, const Quaternion &previousCamera_R_camera=Quaternion(false), Worker *worker=nullptr) override
Executes the 6DOF tracking for a given frame.
FeatureMap featureMap_
Feature map holding all reference features.
Definition: FeatureTracker6DOF.h:112
This class implements a base class for all visual tracker objects.
Definition: tracking/VisualTracker.h:45
std::vector< TransformationSample > TransformationSamples
Definition of a vector holding a transformation sample object.
Definition: tracking/VisualTracker.h:98
This class implements a worker able to distribute function calls over different threads.
Definition: Worker.h:33
std::vector< ORBFeature > ORBFeatures
Definition of a vector holding ORB features.
Definition: ORBFeature.h:26
QuaternionT< Scalar > Quaternion
Definition of the Quaternion object, depending on the OCEAN_MATH_USE_SINGLE_PRECISION either with sin...
Definition: Quaternion.h:33
HomogenousMatrixT4< Scalar > HomogenousMatrix4
Definition of the HomogenousMatrix4 object, depending on the OCEAN_MATH_USE_SINGLE_PRECISION flag eit...
Definition: HomogenousMatrix4.h:37
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15