Echoflow  1.0.0
A ROS2 Toolset for tracking marine radar targets
Loading...
Searching...
No Matches
echoflow::ParticleFilterNode Class Reference

Node that uses a particle filter to track targets in a 2D grid map of marine radar data. More...

#include <particle_filter_node.hpp>

Inheritance diagram for echoflow::ParticleFilterNode:
Collaboration diagram for echoflow::ParticleFilterNode:

Classes

struct  Parameters
 All configurable parameters for the particle filter node. More...
 

Public Member Functions

 ParticleFilterNode ()
 Construct a new Particle Filter Node object.
 

Public Attributes

std::shared_ptr< grid_map::GridMap > map_ptr_
 Shared pointer to the underlying grid map of radar intensity & EDT layers.
 

Protected Attributes

Parameters parameters_
 Runtime parameters.
 

Detailed Description

Node that uses a particle filter to track targets in a 2D grid map of marine radar data.

This node shares a pointer to a grid map with the radar_grid_map_node and spawns particles on areas of the map with valid radar returns in order to track the position and course of moving radar targets.

The node publishes a pointcloud of particles and a grid map with aggregated statistics on the particles (number of particles per cell, mean and standard deviation of particle age, x-position, y-position, course and velocity).

Constructor & Destructor Documentation

◆ ParticleFilterNode()

ParticleFilterNode::ParticleFilterNode ( )

Construct a new Particle Filter Node object.

Also creates grid map to compute and publish the following particle filter statistics for each cell:

  • Number of particles per cell
  • Particle age: Mean age of particles in the cell (arithmetic mean)
  • Particle age: Sum of squared deviations from mean (used to compute variance)
  • Particle age: Standard deviation of particle age
  • x-position: Mean of x-position of particles in cell (arithmetic mean)
  • x-position: Sum of squared deviations from mean (used to compute variance)
  • x-position: Standard deviation of x-position of particles
  • y-position: Mean of x-position of particles in cell (arithmetic mean)
  • y-position: Sum of squared deviations from mean (used to compute variance)
  • y-position: Standard deviation of y-position of particles
  • Speed: Mean speed of particles in the cell (arithmetic mean)
  • Speed: Sum of squared deviations from mean (used to compute variance)
  • Speed: Standard deviation of speed of particles
  • Course: Mean course angle of particles in the cell (circular mean)
  • Course: Standard deviation of course angle of particles in cell (circular standard deviation)
  • Sum of sines of course angles (used for calculating circular statistics)
  • Sum of cosines of course angles (used for calculating circular statistics)

Member Data Documentation

◆ map_ptr_

std::shared_ptr<grid_map::GridMap> echoflow::ParticleFilterNode::map_ptr_

Shared pointer to the underlying grid map of radar intensity & EDT layers.

◆ parameters_

Parameters echoflow::ParticleFilterNode::parameters_
protected

Runtime parameters.


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