22 #ifndef OV_CORE_FEATURE_H 23 #define OV_CORE_FEATURE_H 25 #include <Eigen/Eigen> 27 #include <unordered_map> 49 std::unordered_map<size_t, std::vector<Eigen::VectorXf>>
uvs;
52 std::unordered_map<size_t, std::vector<Eigen::VectorXf>>
uvs_norm;
55 std::unordered_map<size_t, std::vector<double>>
timestamps;
Eigen::Vector3d p_FinG
Triangulated position of this feature, in the global frame.
bool to_delete
If this feature should be deleted.
std::unordered_map< size_t, std::vector< double > > timestamps
Timestamps of each UV measurement (mapped by camera ID)
void clean_older_measurements(double timestamp)
Remove measurements that are older then the specified timestamp.
int anchor_cam_id
What camera ID our pose is anchored in!! By default the first measurement is the anchor.
size_t featid
Unique ID of this feature.
Sparse feature class used to collect measurements.
double anchor_clone_timestamp
Timestamp of anchor clone.
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) ...
Core algorithms for OpenVINS.
void clean_old_measurements(const std::vector< double > &valid_times)
Remove measurements that do not occur at passed timestamps.
void clean_invalid_measurements(const std::vector< double > &invalid_times)
Remove measurements that occur at the invalid timestamps.
std::unordered_map< size_t, std::vector< Eigen::VectorXf > > uvs
UV coordinates that this feature has been seen from (mapped by camera ID)
Eigen::Vector3d p_FinA
Triangulated position of this feature, in the anchor frame.