Sparse feature class used to collect measurements. More...
#include <Feature.h>
Public Member Functions | |
void | clean_invalid_measurements (const std::vector< double > &invalid_times) |
Remove measurements that occur at the invalid timestamps. More... | |
void | clean_old_measurements (const std::vector< double > &valid_times) |
Remove measurements that do not occur at passed timestamps. More... | |
void | clean_older_measurements (double timestamp) |
Remove measurements that are older then the specified timestamp. More... | |
Public Attributes | |
int | anchor_cam_id = -1 |
What camera ID our pose is anchored in!! By default the first measurement is the anchor. More... | |
double | anchor_clone_timestamp |
Timestamp of anchor clone. More... | |
size_t | featid |
Unique ID of this feature. More... | |
Eigen::Vector3d | p_FinA |
Triangulated position of this feature, in the anchor frame. More... | |
Eigen::Vector3d | p_FinG |
Triangulated position of this feature, in the global frame. More... | |
std::unordered_map< size_t, std::vector< double > > | timestamps |
Timestamps of each UV measurement (mapped by camera ID) More... | |
bool | to_delete |
If this feature should be deleted. More... | |
std::unordered_map< size_t, std::vector< Eigen::VectorXf > > | uvs |
UV coordinates that this feature has been seen from (mapped by camera ID) More... | |
std::unordered_map< size_t, std::vector< Eigen::VectorXf > > | uvs_norm |
UV normalized coordinates that this feature has been seen from (mapped by camera ID) More... | |
Sparse feature class used to collect measurements.
This feature class allows for holding of all tracking information for a given feature. Each feature has a unique ID assigned to it, and should have a set of feature tracks alongside it. See the FeatureDatabase class for details on how we load information into this, and how we delete features.
void Feature::clean_invalid_measurements | ( | const std::vector< double > & | invalid_times | ) |
Remove measurements that occur at the invalid timestamps.
Given a series of invalid timestamps, this will remove all measurements that have occurred at these times.
invalid_times | Vector of timestamps that our measurements should not |
Definition at line 55 of file Feature.cpp.
void Feature::clean_old_measurements | ( | const std::vector< double > & | valid_times | ) |
Remove measurements that do not occur at passed timestamps.
Given a series of valid timestamps, this will remove all measurements that have not occurred at these times. This would normally be used to ensure that the measurements that we have occur at our clone times.
valid_times | Vector of timestamps that our measurements must occur at |
Definition at line 26 of file Feature.cpp.
void Feature::clean_older_measurements | ( | double | timestamp | ) |
Remove measurements that are older then the specified timestamp.
Given a valid timestamp, this will remove all measurements that have occured earlier then this.
timestamp | Timestamps that our measurements must occur after |
Definition at line 84 of file Feature.cpp.
int ov_core::Feature::anchor_cam_id = -1 |
double ov_core::Feature::anchor_clone_timestamp |
Eigen::Vector3d ov_core::Feature::p_FinA |
Eigen::Vector3d ov_core::Feature::p_FinG |
std::unordered_map<size_t, std::vector<double> > ov_core::Feature::timestamps |
bool ov_core::Feature::to_delete |
std::unordered_map<size_t, std::vector<Eigen::VectorXf> > ov_core::Feature::uvs |
std::unordered_map<size_t, std::vector<Eigen::VectorXf> > ov_core::Feature::uvs_norm |