FeatureTracker Class.
More...
#include <feature_tracker.hpp>
|
| FeatureTracker (FeatureTracker::Parameters params) |
| FeatureTracker sensor constructor. More...
|
|
std::vector< cv::KeyPoint > | GridFeatures (std::vector< cv::KeyPoint > key_points, unsigned int rows, unsigned int cols) |
| Down sample features to grid. More...
|
|
void | Track (double time, 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) |
| Perform ratio test on a set of matches. More...
|
|
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...
|
|
void | RANSAC (std::vector< cv::DMatch > &matches_in, std::vector< cv::KeyPoint > &curr_key_points, std::vector< cv::DMatch > &matches_out) |
| 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) |
| Perform distance test given matches and key points. More...
|
|
| Tracker (Parameters params) |
| Tracker Initialization parameters structure. More...
|
|
unsigned int | GetID () |
| Tracker ID getter method. 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 |
|
) |
| |
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, |
|
|
unsigned int |
rows, |
|
|
unsigned int |
cols |
|
) |
| |
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 |
|
) |
| |
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 | ) |
|
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 |
|
) |
| |
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, |
|
|
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: