FeatureTracker Class.
More...
#include <feature_tracker.hpp>
|
| | FeatureTracker (FeatureTracker::Parameters params) |
| | FeatureTracker sensor constructor. More...
|
| |
| void | Track (double time, unsigned int frame_id, const cv::Mat &img_in, cv::Mat &img_out) |
| | Perform track on new image frame. More...
|
| |
| void | RatioTest (std::vector< std::vector< cv::DMatch >> &matches) const |
| | Perform ratio test on a set of matches. More...
|
| |
| void | RANSAC (std::vector< cv::DMatch > &matches_in, std::vector< cv::KeyPoint > &curr_key_points, std::vector< cv::DMatch > &matches_out) const |
| | Perform RANSAC filtering test given matches and key points. More...
|
| |
| void | DistanceTest (std::vector< cv::DMatch > &matches_in, std::vector< cv::KeyPoint > &curr_key_points, std::vector< cv::DMatch > &matches_out) const |
| | Perform distance test given matches and key points. More...
|
| |
| | Tracker (Parameters params) |
| | Tracker Initialization parameters structure. More...
|
| |
| unsigned int | GetID () const |
| | Tracker ID getter method. More...
|
| |
|
| static std::vector< cv::KeyPoint > | GridFeatures (std::vector< cv::KeyPoint > &key_points, int rows, int cols) |
| | Down sample features to grid. More...
|
| |
| static void | SymmetryTest (std::vector< std::vector< cv::DMatch >> &matches_forward, std::vector< std::vector< cv::DMatch >> &matches_backward, std::vector< cv::DMatch > &matches_out) |
| | Perform symmetry test given forward and backward matches. More...
|
| |
◆ FeatureTracker()
FeatureTracker sensor constructor.
- Parameters
-
| params | Parameter struct for feature tracker |
- Todo:
- add detector/extractor parameters to input
◆ DistanceTest()
| void FeatureTracker::DistanceTest |
( |
std::vector< cv::DMatch > & |
matches_in, |
|
|
std::vector< cv::KeyPoint > & |
curr_key_points, |
|
|
std::vector< cv::DMatch > & |
matches_out |
|
) |
| const |
Perform distance test given matches and key points.
- Parameters
-
| matches_in | Current matches |
| curr_key_points | Current detected key points |
| matches_out | Passing matches |
◆ GridFeatures()
| std::vector< cv::KeyPoint > FeatureTracker::GridFeatures |
( |
std::vector< cv::KeyPoint > & |
key_points, |
|
|
int |
rows, |
|
|
int |
cols |
|
) |
| |
|
static |
Down sample features to grid.
- Parameters
-
| key_points | Key points to down sample |
| rows | Number of final rows to consider |
| cols | Number of final columns to consider |
- Returns
- Down sampled key points
- Todo:
- Do keypoint vector editing in place
- Todo:
- replace this with some kind of boolean array. Eigen?
- Todo:
- Implement non-maximal suppression instead
◆ RANSAC()
| void FeatureTracker::RANSAC |
( |
std::vector< cv::DMatch > & |
matches_in, |
|
|
std::vector< cv::KeyPoint > & |
curr_key_points, |
|
|
std::vector< cv::DMatch > & |
matches_out |
|
) |
| const |
Perform RANSAC filtering test given matches and key points.
- Parameters
-
| matches_in | Current matches |
| curr_key_points | Current detected key points |
| matches_out | Passing matches |
- Todo:
- : Undistort?
◆ RatioTest()
| void FeatureTracker::RatioTest |
( |
std::vector< std::vector< cv::DMatch >> & |
matches | ) |
const |
Perform ratio test on a set of matches.
- Parameters
-
| matches | List of matches to perform test over |
◆ SymmetryTest()
| void FeatureTracker::SymmetryTest |
( |
std::vector< std::vector< cv::DMatch >> & |
matches_forward, |
|
|
std::vector< std::vector< cv::DMatch >> & |
matches_backward, |
|
|
std::vector< cv::DMatch > & |
matches_out |
|
) |
| |
|
static |
Perform symmetry test given forward and backward matches.
- Parameters
-
| matches_forward | Forward matches |
| matches_backward | Backward matches |
| matches_out | Passing matches |
◆ Track()
| void FeatureTracker::Track |
( |
double |
time, |
|
|
unsigned int |
frame_id, |
|
|
const cv::Mat & |
img_in, |
|
|
cv::Mat & |
img_out |
|
) |
| |
Perform track on new image frame.
- Parameters
-
| time | Frame time |
| frame_id | Frame ID |
| img_in | Input frame |
| img_out | Output frame with drawn track lines |
- Todo:
- : Get down-sample parameters from input
- Todo:
- create occupancy grid of key_points using minimal pixel distance
- Todo:
- Mask using maximum distance from predicted IMU rotations
The documentation for this class was generated from the following files: