10 #ifndef mrpt_vision_tracking_H 11 #define mrpt_vision_tracking_H 204 out_featureList = in_featureList;
206 out_featureList.
begin(), out_featureList.
end(), [](
auto& ptr) {
207 ptr.reset(dynamic_cast<CFeature*>(ptr->clone()));
277 const size_t nNewlyDetectedFeats,
const size_t desired_num_features);
287 template <
typename FEATLIST>
290 FEATLIST& inout_featureList);
340 template <
typename FEATLIST>
343 FEATLIST& inout_featureList);
358 unsigned int numberOfSigmas);
mrpt::system::TParametersDouble extra_params
Optional list of extra parameters to the algorithm.
void internal_trackFeatures(const mrpt::img::CImage &old_img, const mrpt::img::CImage &new_img, FEATLIST &inout_featureList)
Perform feature tracking from "old_img" to "new_img", with a (possibly empty) list of previously trac...
mrpt::system::CTimeLogger m_timlog
the internal time logger, disabled by default.
int m_detector_adaptive_thres
For use in "add_new_features" == true.
virtual void trackFeatures_impl(const mrpt::img::CImage &old_img, const mrpt::img::CImage &new_img, vision::CFeatureList &inout_featureList) override
This version falls back to the version with TSimpleFeatureList if the derived class does not implemen...
virtual void trackFeatures_impl(const mrpt::img::CImage &old_img, const mrpt::img::CImage &new_img, TSimpleFeaturefList &inout_featureList)
The tracking method implementation, to be implemented in children classes.
CFeatureTracker_KL(mrpt::system::TParametersDouble extraParams)
Ctor with extra parameters.
void updateAdaptiveNewFeatsThreshold(const size_t nNewlyDetectedFeats, const size_t desired_num_features)
Adapts the threshold m_detector_adaptive_thres according to the real and desired number of features j...
Classes for computer vision, detectors, features, etc.
void trackFeatures(const mrpt::img::CImage &old_img, const mrpt::img::CImage &new_img, TSimpleFeatureList &inout_featureList)
Perform feature tracking from "old_img" to "new_img", with a (possibly empty) list of previously trac...
void trackFeatures_impl_templ(const mrpt::img::CImage &old_img, const mrpt::img::CImage &new_img, FEATLIST &inout_featureList)
Track a set of features from old_img -> new_img using sparse optimal flow (classic KL method) Optiona...
A list of visual features, to be used as output by detectors, as input/output by trackers, etc.
std::unique_ptr< CGenericFeatureTracker > CGenericFeatureTrackerAutoPtr
void enable(bool enabled=true)
void checkTrackedFeatures(CFeatureList &leftList, CFeatureList &rightList, vision::TMatchingOptions options)
Search for correspondences which are not in the same row and deletes them ...
void enableTimeLogger(bool enable=true)
Returns a read-only reference to the internal time logger.
void trackFeaturesNewList(const mrpt::img::CImage &old_img, const mrpt::img::CImage &new_img, const vision::CFeatureList &in_featureList, vision::CFeatureList &out_featureList)
A wrapper around the basic trackFeatures() method, but keeping the original list of features unmodifi...
Track a set of features from old_img -> new_img using sparse optimal flow (classic KL method)...
mrpt::system::CTimeLogger & getProfiler()
Returns a reference to the internal time logger.
A versatile "profiler" that logs the time spent within each pair of calls to enter(X)-leave(X), among other stats.
void filterBadCorrsByDistance(mrpt::tfest::TMatchingPairList &list, unsigned int numberOfSigmas)
Filter bad correspondences by distance ...
CGenericFeatureTracker(mrpt::system::TParametersDouble extraParams)
Ctor with extra parameters.
A structure containing options for the matching.
mrpt::vision::TSimpleFeatureList m_newly_detected_feats
This field is clared by trackFeatures() before calling trackFeatures_impl(), and can be filled out wi...
size_t m_check_KLT_counter
For use when "check_KLT_response_every">=1.
CFeatureTracker_KL()
Default ctor.
size_t m_update_patches_counter
for use when "update_patches_every">=1
TExtraOutputInfo last_execution_extra_info
Updated with each call to trackFeatures()
virtual ~CGenericFeatureTracker()
Dtor.
CGenericFeatureTracker()
Default ctor.
A virtual interface for all feature trackers, implementing the part of feature tracking that is commo...
int getDetectorAdaptiveThreshold() const
Returns the current adaptive threshold used by the FAST(ER) detector to find out new features in empt...
const mrpt::system::CTimeLogger & getProfiler() const
Returns a read-only reference to the internal time logger.
A class for storing images as grayscale or RGB bitmaps.