Generic bearing sensor model, for both 2D and 3D state types. More...
#include <bearing_sensor_model.hpp>
Public Types | |
using | map_type = LandmarkMap |
Map representation type. More... | |
using | measurement_type = std::vector< LandmarkBearingDetection > |
Measurement type of the sensor: vector of landmark detections. More... | |
using | param_type = BearingModelParam |
Parameter type that the constructor uses to configure the bearing sensor model. More... | |
using | state_type = StateType |
State type of a particle. More... | |
using | weight_type = double |
Weight type of the particle. More... | |
Public Member Functions | |
template<class... Args> | |
BearingSensorModel (param_type params, LandmarkMap landmark_map) | |
Constructs a BearingSensorModel instance. More... | |
auto | operator() (measurement_type &&detections) const |
Returns a state weighting function conditioned on landmark bearing detections. More... | |
void | update_map (map_type &&map) |
Update the sensor model with a new landmark map . More... | |
Private Attributes | |
LandmarkMap | landmark_map_ |
param_type | params_ |
Generic bearing sensor model, for both 2D and 3D state types.
The model only relies on the bearing of a landmark detection relative to the sensor when calculating the updated importance weight. This can be used to support bearing-only measurements, such as feature detections in monocular images.
LandmarkMap | class managing the list of known landmarks. |
StateType | type of the state of the particle. |
Definition at line 60 of file bearing_sensor_model.hpp.
using beluga::BearingSensorModel< LandmarkMap, StateType >::map_type = LandmarkMap |
Map representation type.
Definition at line 69 of file bearing_sensor_model.hpp.
using beluga::BearingSensorModel< LandmarkMap, StateType >::measurement_type = std::vector<LandmarkBearingDetection> |
Measurement type of the sensor: vector of landmark detections.
Definition at line 67 of file bearing_sensor_model.hpp.
using beluga::BearingSensorModel< LandmarkMap, StateType >::param_type = BearingModelParam |
Parameter type that the constructor uses to configure the bearing sensor model.
Definition at line 71 of file bearing_sensor_model.hpp.
using beluga::BearingSensorModel< LandmarkMap, StateType >::state_type = StateType |
State type of a particle.
Definition at line 63 of file bearing_sensor_model.hpp.
using beluga::BearingSensorModel< LandmarkMap, StateType >::weight_type = double |
Weight type of the particle.
Definition at line 65 of file bearing_sensor_model.hpp.
|
inlineexplicit |
Constructs a BearingSensorModel instance.
params | Parameters to configure this instance. See beluga::BearingModelParam for details. |
landmark_map | Map of landmarks to be used by the sensor model to compute importance weights for particle states. |
Definition at line 80 of file bearing_sensor_model.hpp.
|
inline |
Returns a state weighting function conditioned on landmark bearing detections.
detections | Landmark bearing detections in the reference frame of particle states. |
Definition at line 89 of file bearing_sensor_model.hpp.
|
inline |
Update the sensor model with a new landmark map
.
Definition at line 144 of file bearing_sensor_model.hpp.
|
private |
Definition at line 148 of file bearing_sensor_model.hpp.
|
private |
Definition at line 147 of file bearing_sensor_model.hpp.