Public Member Functions | Public Attributes | List of all members
ov_core::Feature Class Reference

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...
 

Detailed Description

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.

Definition at line 39 of file Feature.h.

Member Function Documentation

◆ clean_invalid_measurements()

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.

Parameters
invalid_timesVector of timestamps that our measurements should not

Definition at line 55 of file Feature.cpp.

◆ clean_old_measurements()

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.

Parameters
valid_timesVector of timestamps that our measurements must occur at

Definition at line 26 of file Feature.cpp.

◆ clean_older_measurements()

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.

Parameters
timestampTimestamps that our measurements must occur after

Definition at line 84 of file Feature.cpp.

Member Data Documentation

◆ anchor_cam_id

int ov_core::Feature::anchor_cam_id = -1

What camera ID our pose is anchored in!! By default the first measurement is the anchor.

Definition at line 58 of file Feature.h.

◆ anchor_clone_timestamp

double ov_core::Feature::anchor_clone_timestamp

Timestamp of anchor clone.

Definition at line 61 of file Feature.h.

◆ featid

size_t ov_core::Feature::featid

Unique ID of this feature.

Definition at line 43 of file Feature.h.

◆ p_FinA

Eigen::Vector3d ov_core::Feature::p_FinA

Triangulated position of this feature, in the anchor frame.

Definition at line 64 of file Feature.h.

◆ p_FinG

Eigen::Vector3d ov_core::Feature::p_FinG

Triangulated position of this feature, in the global frame.

Definition at line 67 of file Feature.h.

◆ timestamps

std::unordered_map<size_t, std::vector<double> > ov_core::Feature::timestamps

Timestamps of each UV measurement (mapped by camera ID)

Definition at line 55 of file Feature.h.

◆ to_delete

bool ov_core::Feature::to_delete

If this feature should be deleted.

Definition at line 46 of file Feature.h.

◆ uvs

std::unordered_map<size_t, std::vector<Eigen::VectorXf> > ov_core::Feature::uvs

UV coordinates that this feature has been seen from (mapped by camera ID)

Definition at line 49 of file Feature.h.

◆ uvs_norm

std::unordered_map<size_t, std::vector<Eigen::VectorXf> > ov_core::Feature::uvs_norm

UV normalized coordinates that this feature has been seen from (mapped by camera ID)

Definition at line 52 of file Feature.h.


The documentation for this class was generated from the following files:


ov_core
Author(s): Patrick Geneva , Kevin Eckenhoff , Guoquan Huang
autogenerated on Mon Jan 22 2024 03:08:17