Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __EK_PARTICLE_FILTER__
00021 #define __EK_PARTICLE_FILTER__
00022
00023 #include "particlefilter.h"
00024 #include "../pdf/EKF_proposaldensity.h"
00025 #include "../pdf/mcpdf.h"
00026 #include <list>
00027
00028 namespace BFL
00029 {
00031
00035 class EKParticleFilter
00036 : public ParticleFilter<ColumnVector,ColumnVector>
00037 {
00038 protected:
00040 std::vector<SymmetricMatrix> _sampleCov;
00041 std::vector<SymmetricMatrix>::iterator _cov_it;
00042
00043 std::vector<SymmetricMatrix> _tmpCov;
00044 std::vector<SymmetricMatrix>::iterator _tmpCovit;
00045
00046
00047 const int _dimension;
00048 const int _num_samples;
00049 std::vector<WeightedSample<ColumnVector> > _old_samples;
00050 std::vector<WeightedSample<ColumnVector> >::iterator _oit;
00051 std::vector<WeightedSample<ColumnVector> > _result_samples;
00052 std::vector<WeightedSample<ColumnVector> >::iterator _rit;
00053 std::vector<double> _unif_samples;
00054 std::vector<double> _CumPDF;
00055 std::vector<double>::const_iterator _CumPDFit;
00056 ColumnVector _x_old;
00057 Sample<ColumnVector> _sample;
00058
00059 virtual bool UpdateInternal(SystemModel<ColumnVector>* const sysmodel,
00060 const ColumnVector& u,
00061 MeasurementModel<ColumnVector,ColumnVector>* const measmodel,
00062 const ColumnVector& z,
00063 const ColumnVector& s);
00064
00067 virtual bool ProposalStepInternal(SystemModel<ColumnVector> * const sysmodel,
00068 const ColumnVector & u,
00069 MeasurementModel<ColumnVector,ColumnVector> * const measmodel,
00070 const ColumnVector & z,
00071 const ColumnVector & s);
00072
00074 virtual bool Resample();
00075
00076 public:
00078
00087 EKParticleFilter(MCPdf<ColumnVector> * prior,
00088 int resampleperiod = 0,
00089 double resamplethreshold = 0,
00090 int resamplescheme = DEFAULT_RS);
00091
00093 virtual ~EKParticleFilter();
00094 };
00095
00096 }
00097
00098 #endif // __EK_PARTICLE_FILTER__
bfl
Author(s): Klaas Gadeyne, Wim Meeussen, Tinne Delaet and many others. See web page for a full contributor list. ROS package maintained by Wim Meeussen.
autogenerated on Mon Feb 11 2019 03:45:12