Jafar
|
Non linear observation model defined by blocks (two blocks). More...
Non linear observation model defined by blocks (two blocks).
To define your own model you must derive this class. This model is well suited for feature observation model in the SLAM problem.
Definition at line 213 of file observeModel.hpp.
#include <observeModel.hpp>
Public Member Functions | |
BlockObserveModel (std::size_t sizeObs_, std::size_t sizeState1_, std::size_t sizeState2_) | |
BlockObserveModel (std::size_t sizeObs_, std::size_t sizeState1_, std::size_t sizeState2_, std::size_t sizeInnovation_, std::size_t sizePrediction_) | |
std::size_t | sizeState1 () const |
std::size_t | sizeState2 () const |
virtual jblas::vec const & | predictObservation (const jblas::vec_range &x1_, const jblas::vec_range &x2_)=0 |
Predict observation for state x_. | |
virtual jblas::vec const & | computeInnovation (jblas::vec const &y_, jblas::vec const &zPred_) |
By default, simply do the substraction. | |
virtual void | predictObservationJac (const jblas::vec_range &x1_, const jblas::vec_range &x2_)=0 |
Public Attributes | |
jblas::mat | Jobs1 |
Jacobian of the observe function with respect to block1. | |
jblas::mat | Jobs2 |
Jacobian of the observe function with respect to block2. | |
Protected Attributes | |
std::size_t | _sizeState1 |
std::size_t | _sizeState2 |
virtual jblas::vec const& jafar::filter::BlockObserveModel::computeInnovation | ( | jblas::vec const & | y_, |
jblas::vec const & | zPred_ | ||
) | [inline, virtual] |
By default, simply do the substraction.
Reimplementation of that function are allowed to adjust the values of Jobs1 and Jobs2.
y_ | observation |
zPred_ | prediction |
Reimplemented in jafar::slam::StereoImagePluckerFeatureObserveModel, jafar::slam::ScaledHomogeneousImagePluckerFeatureObserveModel, jafar::slam::RhoThetaImagePluckerFeatureObserveModel, jafar::slam::ImageEuclideanPluckerFeatureObserveModel, jafar::slam::ImageAnchorPluckerFeatureObserveModel, jafar::slam::ImageSegInvDepthFeatureObserveModel, jafar::slam::BearingPointFeatureObserveModel, jafar::slam::PolarPointFeatureObserveModel, jafar::slam::ImageSegInvDepthInovFeatureObserveModel, jafar::slam::BearingPointInfFeatureObserveModel, and jafar::slam::BearingPointInvDepthFeatureObserveModel.
Definition at line 270 of file observeModel.hpp.
References JFR_PRECOND, and jafar::filter::BaseObserveModel::z.
virtual jblas::vec const& jafar::filter::BlockObserveModel::predictObservation | ( | const jblas::vec_range & | x1_, |
const jblas::vec_range & | x2_ | ||
) | [pure virtual] |
Predict observation for state x_.
In order to minimize memory allocation, z vector is allocated once, predictObservation() implementation should look like:
const vec& predictObservation(const range_vec& x1_, const range_vec& x2_) { JFR_PRECOND(x1_.size() == _sizeState1, message); JFR_PRECOND(x2_.size() == _sizeState2, message); // compute z function of x1_ and x2_ return z; }
Implemented in jafar::slam::BaseFeatureObserveModel.
Jacobian of the observe function with respect to block1.
Definition at line 226 of file observeModel.hpp.
Jacobian of the observe function with respect to block2.
Definition at line 232 of file observeModel.hpp.
Generated on Wed Oct 15 2014 00:37:36 for Jafar by doxygen 1.7.6.1 |