Formula Student Autonomous Systems
The code for the main driverless system
Loading...
Searching...
No Matches
ConsecutiveCounterFilter Class Reference

#include <consecutive_counter_filter.hpp>

Inheritance diagram for ConsecutiveCounterFilter:
Inheritance graph
Collaboration diagram for ConsecutiveCounterFilter:
Collaboration graph

Public Member Functions

 ConsecutiveCounterFilter (LandmarkFilterParameters params, std::shared_ptr< DataAssociationModel > data_association)
 
Eigen::VectorXd filter (const Eigen::VectorXd &observations, const Eigen::VectorXd &observation_confidences, Eigen::VectorXi &associations) override
 This function receives a new set of observations and returns a filtered set of landmarks in global coordinates that are ready to be added to be added to the map.
 
void delete_landmarks (const Eigen::VectorXd &some_landmarks) override
 Used by SLAM to signal to the filter that the landmarks are already in SLAM's map, and they should no longer be returned by the filter as new.
 
- Public Member Functions inherited from LandmarkFilter
 LandmarkFilter ()=default
 
 LandmarkFilter (LandmarkFilterParameters params, std::shared_ptr< DataAssociationModel > data_association)
 
virtual ~LandmarkFilter ()=default
 

Private Attributes

Eigen::VectorXd map
 
Eigen::VectorXi counter
 

Friends

class ConsecutiveCounterFilter_TestCase1_Test
 

Additional Inherited Members

- Protected Attributes inherited from LandmarkFilter
LandmarkFilterParameters _params_
 
std::shared_ptr< DataAssociationModel_data_association_
 

Detailed Description

Definition at line 6 of file consecutive_counter_filter.hpp.

Constructor & Destructor Documentation

◆ ConsecutiveCounterFilter()

ConsecutiveCounterFilter::ConsecutiveCounterFilter ( LandmarkFilterParameters  params,
std::shared_ptr< DataAssociationModel data_association 
)
inline

Definition at line 12 of file consecutive_counter_filter.hpp.

Member Function Documentation

◆ delete_landmarks()

void ConsecutiveCounterFilter::delete_landmarks ( const Eigen::VectorXd &  some_landmarks)
overridevirtual

Used by SLAM to signal to the filter that the landmarks are already in SLAM's map, and they should no longer be returned by the filter as new.

Parameters
some_landmarkslandmarks to be deleted in the form of [x1, y1, x2, y2, ...] in the global frame

Implements LandmarkFilter.

Definition at line 84 of file consecutive_counter_filter.cpp.

◆ filter()

Eigen::VectorXd ConsecutiveCounterFilter::filter ( const Eigen::VectorXd &  observations,
const Eigen::VectorXd &  observation_confidences,
Eigen::VectorXi &  associations 
)
overridevirtual

This function receives a new set of observations and returns a filtered set of landmarks in global coordinates that are ready to be added to be added to the map.

This filter keeps track of how many consecutive times an observation has been seen. If an observation has been seen more than minimum_observation_count_ times consecutively, it is added to the map and returned as a new landmark. If an observation is not seen in a given call to filter, its counter is reset.

Parameters
observationsObservations in the form of [x1, y1, x2, y2, ...] in the global frame
observation_confidencesConfidence in the observations in the same order as the observations
Returns
Eigen::VectorXd the filtered observations in the form of [x1, y1, x2, y2, ...] in the global frame

Implements LandmarkFilter.

Definition at line 6 of file consecutive_counter_filter.cpp.

Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ ConsecutiveCounterFilter_TestCase1_Test

friend class ConsecutiveCounterFilter_TestCase1_Test
friend

Definition at line 34 of file consecutive_counter_filter.hpp.

Member Data Documentation

◆ counter

Eigen::VectorXi ConsecutiveCounterFilter::counter
private

Definition at line 9 of file consecutive_counter_filter.hpp.

◆ map

Eigen::VectorXd ConsecutiveCounterFilter::map
private

Definition at line 8 of file consecutive_counter_filter.hpp.


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