Probability Hypotesis Density (PHD) Filter
[Algorithms]

This module provides ambstract classes and implementation for the Probability Hypotesis Density Filter for multi-target tracking in a 2-dimensional scenario. A standard interface for this tipe of filter is provided through a collection of abstract classes. The following implementation of the PHD Filter are also provided:
- Gaussian Mixture
. More...

Classes

class  MipAlgorithms::EKFilterUnicycle2DIn
 Provides a standard class for the input of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::EKFilterUnicycle2DPars
 Provides a standard class for the parameters of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::EKFilterUnicycle2DVars
 Provides a standard class for the variables of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::EKFilterUnicycle2D
 Provides an abstract standard class for a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMIDPHDUnicycle2DRCFilterPars
 Provides a standard class for the parameters of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMIDPHDUnicycle2DRCFilterVars
 Provides a standard class for the variables of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMIDPHDUnicycle2DRCFilter
 Provides an implementation for a PHD filter for tracking of multiple unicycles in a 2D world with multiple sensors. More...
class  MipAlgorithms::GMPHDLinear2DTargetNoIdFilterPars
 Provides a standard class for the parameters of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMPHDLinear2DTargetNoIdFilterVars
 Provides a standard class for the variables of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMPHDLinear2DTargetNoIdFilter
 Provides an abstract standard class for a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars
 Provides a standard class for the parameters of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars
class  MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter
class  MipAlgorithms::GMPHDUnicycle2DIdCentrFilterPars
 Provides a standard class for the parameters of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMPHDUnicycle2DIdCentrFilterVars
 Provides a standard class for the variables of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMPHDUnicycle2DIdCentrFilter
 Provides an abstract standard class for a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMPHDUnicycle2DIdCoop3Filter
 Provides an implementation for a PHD filter for tracking of multiple unicycles in a 2D world with multiple sensors. More...
class  MipAlgorithms::GMPHDUnicycle2DIdCoop4Filter
 Provides an implementation for a PHD filter for tracking of multiple unicycles in a 2D world with multiple sensors. More...
class  MipAlgorithms::GMPHDUnicycle2DIdCoopFilterPars
 Provides a standard class for the parameters of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMPHDUnicycle2DIdCoopFilterVars
 Provides a standard class for the variables of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMPHDUnicycle2DIdCoopFilter
 Provides an abstract standard class for a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMPHDUnicycle2DIdCoopFilter2
 Provides an implementation for a PHD filter for tracking of multiple unicycles in a 2D world with multiple sensors. More...
class  MipAlgorithms::GMPHDUnicycle2DIdCoopRCFilter
 Provides an implementation for a PHD filter for tracking of multiple unicycles in a 2D world with multiple sensors. More...
class  MipAlgorithms::GMPHDUnicycle2DIdFilterPars
 Provides a standard class for the parameters of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMPHDUnicycle2DIdFilterVars
 Provides a standard class for the variables of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMPHDUnicycle2DIdFilter
 Provides an abstract standard class for a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMPHDUnicycle2DIdRCFilter
 Provides an implementation for a PHD filter for tracking of multiple unicycles in a 2D world with multiple sensors. More...
class  MipAlgorithms::GMPHDUnicycle2DNoIdFilterPars
 Provides a standard class for the parameters of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMPHDUnicycle2DNoIdFilterVars
 Provides a standard class for the variables of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::GMPHDUnicycle2DNoIdFilter
 Provides an abstract standard class for a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::PHDFilterIn
 Provides a standard class for the input of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::PHDFilterPars
 Provides a standard class for the parameters of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::PHDFilterVars
 Provides a standard class for the variables of a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::PHDFilter
 Provides an abstract standard class for a PHD filter for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::PHDIDRansacPars
 Provides a class for the parameters of a Ransac algorithm executed on the output of two PHD filters for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::PHDIDRansacVars
 Provides a class for the variables of a Ransac algorithm executed on the output of two PHD filters for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::PHDIDRansac
 Provides a class for a Ransac algorithm executed on the output of two PHD filters for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::PHDRansacIn
 Provides a class for the input of a Ransac algorithm executed on the output of two PHD filters for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::PHDRansacOut
 Provides a class for the output of a Ransac algorithm executed on the output of two PHD filters for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::PHDRansacPars
 Provides a class for the parameters of a Ransac algorithm executed on the output of two PHD filters for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::PHDRansacVars
 Provides a class for the variables of a Ransac algorithm executed on the output of two PHD filters for tracking of multiple objects in a 2D world. More...
class  MipAlgorithms::PHDRansac
 Provides a class for a Ransac algorithm executed on the output of two PHD filters for tracking of multiple objects in a 2D world. More...
class  GMPHDUnicycle2DCamIdFilterVars
 Provides a standard class for the variables of a PHD filter for tracking of multiple objects in a 2D world. More...
class  GMPHDUnicycle2DCamIdFilterPars
 Provides a standard class for the parameters of a PHD filter for tracking of multiple objects in a 2D world. More...

Enumerations

enum  MipAlgorithms::EKFilterUnicycle2DInputType { MipAlgorithms::EKF_UNICYCLE2D_INPUT_NONE, MipAlgorithms::EKF_UNICYCLE2D_INPUT_POSE, MipAlgorithms::EKF_UNICYCLE2D_INPUT_VELOCITIES, MipAlgorithms::EKF_UNICYCLE2D_INPUT_TYPE_NUM }
 Enumerates all types of possible control inputs for time update. More...
enum  MipAlgorithms::EKFilterUnicycle2DMeasurementType {
  MipAlgorithms::EKF_UNICYCLE2D_MEASUREMENT_NONE, MipAlgorithms::EKF_UNICYCLE2D_MEASUREMENT_POSE, MipAlgorithms::EKF_UNICYCLE2D_MEASUREMENT_POSITION, MipAlgorithms::EKF_UNICYCLE2D_MEASUREMENT_DISTANCE,
  MipAlgorithms::EKF_UNICYCLE2D_MEASUREMENT_BEARING, MipAlgorithms::EKF_UNICYCLE2D_MEASUREMENT_ORIENTATION, MipAlgorithms::EKF_UNICYCLE2D_MEASUREMENT_TYPE_NUM
}
 Enumerates All types of possible measurement for measurement update. More...
enum  MipAlgorithms::PHDFilterType {
  MipAlgorithms::GM_LINEAR_NO_ID, MipAlgorithms::GM_UNICYCLE_2D_ID, MipAlgorithms::GM_UNICYCLE_2D_ID_RC, MipAlgorithms::GM_UNICYCLE_2D_ID_COOP,
  MipAlgorithms::GM_UNICYCLE_2D_ID_COOP_2, MipAlgorithms::GM_UNICYCLE_2D_ID_RC_COOP, MipAlgorithms::GM_UNICYCLE_2D_ID_3_COOP, MipAlgorithms::GM_UNICYCLE_2D_ID_4_COOP,
  MipAlgorithms::GM_UNICYCLE_2D_ID_CENTR, MipAlgorithms::GM_UNICYCLE_2D_NO_ID, MipAlgorithms::GM_UNICYCLE_2D_ID_RC_CAM, MipAlgorithms::NO_PHD_EKF_ONLY,
  MipAlgorithms::GMID_PHD_UNYCYCLE_2D_RC, MipAlgorithms::PHD_FILTER_TYPE_NUM
}
 Enumerates All types of implemented PHD filters. More...
enum  MipAlgorithms::PHDFilterOutputType {
  MipAlgorithms::PHD_OUT_NULL, MipAlgorithms::PHD_OUT_GM, MipAlgorithms::PHD_OUT_GMJID, MipAlgorithms::PHD_OUT_GMID,
  MipAlgorithms::PHD_FILTER_OUTPUT_TYPE_NUM
}

Functions

string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::print ()
 Print function.
 MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::GMPHDUnicycle2DCamIdRCFilterPars ()
 Default constructor.
 MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::GMPHDUnicycle2DCamIdRCFilterPars (int mId, Decimal pS, Decimal pD, SimTime t, DMat &nx, DMat &h, DMat &nz, Decimal tt, int mc, Decimal mt, int pN, Decimal sdr, Decimal td, Decimal mdb, Decimal flc, Decimal wc, Decimal hc, Roto3DHomoArma &qct, Decimal ppx, Decimal ppy, Roto3DArma &rotoQuadMob, Roto3DHomoArma &rotoSonarQuad, bool vzsm)
 Complete constructor.
 MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::GMPHDUnicycle2DCamIdRCFilterVars ()
 MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::GMPHDUnicycle2DCamIdRCFilter ()
 Default constructor.
 MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::GMPHDUnicycle2DCamIdRCFilter (GMPHDUnicycle2DCamIdRCFilterPars inParams)
 Constructor with parameters.
void MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::step (PHDFilterIn &in)
 Step function.
string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::print ()
 Print function.
void MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::getBelief (GaussianMixtureJointId &gm)
 Get the current list of belief.
void MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::getBeliefWeightedSum (map< int, Col< Decimal >::fixed< 3 > > &out, SimTime *actTime=NULL)
 It gets the weighted sum of the belief.
void MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::getBestBelief (map< int, Col< Decimal >::fixed< 3 > > &out, SimTime *actTime=NULL)
 It computes the best guess (the one with the highest weight) for every estimated robot.
string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringWeightedSum ()
 It computes the weighted sum for each id and it exports it as a string.
string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringWeightedSumImagePlane ()
 It computes the weighted sum for each id and it exports it as a string in image plane coordinates.
string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringBestGuess ()
 It computes the best guess for every id and it exports it as a string.
string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringBestGuessImagePlane ()
 It computes the best guess for each id and the image plane corrispondence is computed.
string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringAllGuessImagePlane ()
 It exports as string every guess with its weight in the image plane coordinates.
string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringAllGuess ()
 It exports as string every guess with its weight.
string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringUAVData ()
 It exports as string some UAV data. Fill with all data one wants to save out from plane estimates.
string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringClusterGuess (const Decimal &per)
 It computes the guess for first weighted num items given in input as percentage.
string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsString ()
 It returns a string representing all the belief.
void MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAs3DRelCoordBestGuess (map< int, DCol::fixed< 4 > > &in)
 It returns the relative coordinates (x y z theta) w.r.t. NED frame.
PHDFilterOutputType MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::getOutputType ()
Pose2DArma MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::_integral (Odometry2DTimeArma &vA, Odometry2DTimeArma &vB, const Decimal &dT)
 Export the the variable in Pose after integration.
string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::getObjectName () const
 Method that gives the name of the class as it will be displayed by the tracer.

Variables

static const char * MipAlgorithms::EKFilterUnicycle2DInputTypeName [EKF_UNICYCLE2D_INPUT_TYPE_NUM]
 Names of all types of possible control inputs for time update.
static const char * MipAlgorithms::EKFilterUnicycle2DMeasurementTypeName [EKF_UNICYCLE2D_MEASUREMENT_TYPE_NUM]
 Names of all types of possible measurement for measurement update.
DMat MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::H
 Matrix H in the measure model: z = Hx + n_z.
DMat MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::N_n_z
 Covariance of the measurement noise n_z in the measure model: z = Hx + n_z.
Decimal MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::truncThresh
 Truncation treshold.
int MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::maxNumComponents
 Maximum number of allowed gaussians in the belief.
Decimal MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::mergThresh
 Merging threshold.
int MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::partNumber
 Number of particles for the orientation.
Decimal MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::sensorDetectionRay
 Maximum detection ray of the sensor.
Decimal MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::targetDimension
 Target dimension.
Decimal MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::maxDetectionBearing
 Maximum (and negative minimum) detection angle of bearing.
bool MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::useNewNoMeasWeight
 Wether or not.
CameraPar3DArmaMipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::camPars
 Camera parameters.
int MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::myId
 Id of the robot performing the PHD with camera inputs.
Roto3DArmaMipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::rotoQuadMobRob
 Rotation matrix between quadrotor and mobile robot when the former is in hovering (if data of quadrotor is in NED and mobile robot is NWU, one needs a transformation between them).
Roto3DArmaMipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::rotSonarQuad
 Rotation matrix between quadrotor and sonar reference frames (w.r.t. quadrotor reference frame).
Roto3DArma MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::rotCameraQuadTrans
 Rotation matrix between camera and quadrotor (w.r.t. quadrotor reference frame) transpose.
Position3DArmaMipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::posSonarQuad
 Relative position between quadrotor and sonar reference frames (w.r.t. quadrotor reference frame).
bool MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::vertZSonarAlgo
 Specify if the sonar measurement provides vertical height (false) or along z-axis of the sensor (true).
Position3DArma MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::bVec
Roto3DArma MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::CMat
Decimal MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::vHeight
Decimal MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::zHeight
Decimal MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::roll
Decimal MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::pitch
Decimal MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::myYaw
Decimal MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::myLastYaw
Position2DArma MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::borders [4]
vector< Position2DArmaMipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::newMeas
vector< Position2DArmaMipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::newBorder
Odometry2DTimeArma MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::myLastOdom
Odometry2DTimeArma MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::myOdo
Decimal MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::lastMeasurementNumber
vector< PositionMipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::lastMeasurements
GaussianMixtureJointId MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::prediction
vector< DCol > MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::predictedMeasures
vector< DecimalMipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::predictedMeasuresD
vector< AngleMipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::predictedMeasuresB
vector< DMat > MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::predictedCovariances
vector< DMat > MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::kalmanGains
vector< DMat > MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::stepKCovariances
vector< DecimalMipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::detectionProbability
int MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::bestMyEstimate
vector< vector< Decimal > > MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::predictedMeasuresOth
vector< vector< Decimal > > MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::predictedCovariancesOth
vector< vector< DMat > > MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::kalmanGainsOth
vector< vector< DMat > > MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::stepKCovariancesOth
vector< vector< Decimal > > MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::detectionProbabilityOth
vector< vector< Decimal > > MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::sensorWeightsOth
vector< DecimalMipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::detectionProbabilitySum
Decimal MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::sensorWeightSum
vector< DecimalMipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::notDetectionProbabilityProd
vector< vector< Decimal > > MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::dists
map< int, vector< int > > MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::currSens
bool MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::firstStepAfterMeasurements
GaussianMixtureJointId MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::belief
GaussianMixtureJointId MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::beliefOth
vector< int > MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::lastOtherRobotPoseNum
map< int, Pose2DArmaMipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::lastOtherRobotPose
map< int, Pose2DArmaMipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::odometries
GMPHDUnicycle2DCamIdRCFilterPars * MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::_gmpars
static const char * MipAlgorithms::PHDFilterTypeName [PHD_FILTER_TYPE_NUM]
 Names of all types of implemented PHD filters.

Detailed Description

This module provides ambstract classes and implementation for the Probability Hypotesis Density Filter for multi-target tracking in a 2-dimensional scenario. A standard interface for this tipe of filter is provided through a collection of abstract classes. The following implementation of the PHD Filter are also provided:
- Gaussian Mixture
.


Enumeration Type Documentation

Enumerates all types of possible control inputs for time update.

Enumerator:
EKF_UNICYCLE2D_INPUT_NONE 
EKF_UNICYCLE2D_INPUT_POSE 
EKF_UNICYCLE2D_INPUT_VELOCITIES 
EKF_UNICYCLE2D_INPUT_TYPE_NUM 

Enumerates All types of possible measurement for measurement update.

Enumerator:
EKF_UNICYCLE2D_MEASUREMENT_NONE 
EKF_UNICYCLE2D_MEASUREMENT_POSE 
EKF_UNICYCLE2D_MEASUREMENT_POSITION 
EKF_UNICYCLE2D_MEASUREMENT_DISTANCE 
EKF_UNICYCLE2D_MEASUREMENT_BEARING 
EKF_UNICYCLE2D_MEASUREMENT_ORIENTATION 
EKF_UNICYCLE2D_MEASUREMENT_TYPE_NUM 

Enumerator:
PHD_OUT_NULL 
PHD_OUT_GM 
PHD_OUT_GMJID 
PHD_OUT_GMID 
PHD_FILTER_OUTPUT_TYPE_NUM 

Enumerates All types of implemented PHD filters.

Enumerates All types of outpiuts of PHD filters.

Enumerator:
GM_LINEAR_NO_ID 
GM_UNICYCLE_2D_ID 
GM_UNICYCLE_2D_ID_RC 
GM_UNICYCLE_2D_ID_COOP 
GM_UNICYCLE_2D_ID_COOP_2 
GM_UNICYCLE_2D_ID_RC_COOP 
GM_UNICYCLE_2D_ID_3_COOP 
GM_UNICYCLE_2D_ID_4_COOP 
GM_UNICYCLE_2D_ID_CENTR 
GM_UNICYCLE_2D_NO_ID 
GM_UNICYCLE_2D_ID_RC_CAM 
NO_PHD_EKF_ONLY 
GMID_PHD_UNYCYCLE_2D_RC 
PHD_FILTER_TYPE_NUM 


Function Documentation

Pose2DArma MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::_integral ( Odometry2DTimeArma vA,
Odometry2DTimeArma vB,
const Decimal dT 
) [inherited]

Export the the variable in Pose after integration.

Parameters:
[in] &vA Velocity to integrate at time t-1
[in] &vB Velocity to integrate at time t
[in] &dT Integral time
Returns:
Relative pose between t-1 and t in t-1 reference frame

void MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAs3DRelCoordBestGuess ( map< int, DCol::fixed< 4 > > &  in  )  [inherited]

It returns the relative coordinates (x y z theta) w.r.t. NED frame.

Parameters:
[out] in Map with id and 4 variables: relative [x y z theta]

string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsString (  )  [inherited]

It returns a string representing all the belief.

Returns:
String of the actual beliefs

string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringAllGuess (  )  [inherited]

It exports as string every guess with its weight.

Returns:
String representing a list of guesses with its weight

string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringAllGuessImagePlane (  )  [inherited]

It exports as string every guess with its weight in the image plane coordinates.

Returns:
String representing a list of guesses with its weight in the image plane coordinates

string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringBestGuess (  )  [inherited]

It computes the best guess for every id and it exports it as a string.

Returns:
String representing a list of best belief

string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringBestGuessImagePlane (  )  [inherited]

It computes the best guess for each id and the image plane corrispondence is computed.

Returns:
String representing a list of best belief

string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringClusterGuess ( const Decimal per  )  [inherited]

It computes the guess for first weighted num items given in input as percentage.

Parameters:
[in] per Percentage of number of belief one wants to compute the weighted sum
Returns:
String representing a list of cluster belief

string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringUAVData (  )  [inherited]

It exports as string some UAV data. Fill with all data one wants to save out from plane estimates.

Returns:
String representing a list of data concerning UAV

string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringWeightedSum (  )  [inherited]

It computes the weighted sum for each id and it exports it as a string.

Returns:
String representing a list of weighted belief sum

string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::exportAsStringWeightedSumImagePlane (  )  [inherited]

It computes the weighted sum for each id and it exports it as a string in image plane coordinates.

Returns:
String representing a list of weighted belief sum in image plane coordinates

void MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::getBelief ( GaussianMixtureJointId gm  )  [virtual, inherited]

Get the current list of belief.

Parameters:
[in] &gm GaussianMixtureJointId where each component is associated with one or more ids

Reimplemented from MipAlgorithms::PHDFilter.

void MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::getBeliefWeightedSum ( map< int, Col< Decimal >::fixed< 3 > > &  out,
SimTime actTime = NULL 
) [inherited]

It gets the weighted sum of the belief.

Parameters:
[in] &out Mapping between ids and actual pose weighted sum for the id
[in] actTime Optional - Actual time

void MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::getBestBelief ( map< int, Col< Decimal >::fixed< 3 > > &  out,
SimTime actTime = NULL 
) [inherited]

It computes the best guess (the one with the highest weight) for every estimated robot.

Parameters:
[in] &out Mapping between ids and actual best pose for the id
[in] actTime Optional - Actual time

string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::getObjectName (  )  const [inline, virtual, inherited]

Method that gives the name of the class as it will be displayed by the tracer.

Returns:
a string, which is the name of the current class
Note:
pure virtual, has to be redefined for each child class

Implements MIPObject.

PHDFilterOutputType MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::getOutputType (  )  [inline, virtual, inherited]

MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::GMPHDUnicycle2DCamIdRCFilter ( GMPHDUnicycle2DCamIdRCFilterPars  inParams  )  [inherited]

Constructor with parameters.

Parameters:
[in] inParams Input paramenters

MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::GMPHDUnicycle2DCamIdRCFilter (  )  [inherited]

Default constructor.

MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::GMPHDUnicycle2DCamIdRCFilterPars ( int  mId,
Decimal  pS,
Decimal  pD,
SimTime  t,
DMat &  nx,
DMat &  h,
DMat &  nz,
Decimal  tt,
int  mc,
Decimal  mt,
int  pN,
Decimal  sdr,
Decimal  td,
Decimal  mdb,
Decimal  flc,
Decimal  wc,
Decimal  hc,
Roto3DHomoArma qct,
Decimal  ppx,
Decimal  ppy,
Roto3DArma rotoQuadMob,
Roto3DHomoArma rotoSonarQuad,
bool  vzsm 
) [inherited]

Complete constructor.

MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::GMPHDUnicycle2DCamIdRCFilterPars (  )  [inherited]

Default constructor.

MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::GMPHDUnicycle2DCamIdRCFilterVars (  )  [inherited]

string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::print (  )  [virtual, inherited]

Print function.

Returns:
String representing the main info of this class

Implements MipAlgorithms::PHDFilter.

string MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterPars::print (  )  [inherited]

Print function.

void MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::step ( PHDFilterIn in  )  [virtual, inherited]

Step function.

Parameters:
[in] &in Input parameter for step function

Implements MipAlgorithms::PHDFilter.


Variable Documentation

GMPHDUnicycle2DCamIdRCFilterPars* MipAlgorithms::GMPHDUnicycle2DCamIdRCFilter::_gmpars [protected, inherited]

Camera parameters.

map<int, vector <int> > MipAlgorithms::GMPHDUnicycle2DCamIdRCFilterVars::currSens [inherited]

Initial value:

{
  "EKFUnicycle2DInputNone",
  "EKFUnicycle2DInputPose",
  "EKFUnicycle2DInputVelocities"
 }
Names of all types of possible control inputs for time update.

Initial value:

{
  "EKFUnicycle2DMeasurementNone",
  "EKFUnicycle2DMeasurementPose",
  "EKFUnicycle2DMeasurementPosition",
  "EKFUnicycle2DMeasurementDistance",
  "EKFUnicycle2DMeasurementBearing",
  "EKFUnicycle2DMeasurementOrientation"
 }
Names of all types of possible measurement for measurement update.

Matrix H in the measure model: z = Hx + n_z.

Maximum (and negative minimum) detection angle of bearing.

Maximum number of allowed gaussians in the belief.

Merging threshold.

All the components of the belief whose relative Mahalanobis square distance is lower than this value will be merged.

Id of the robot performing the PHD with camera inputs.

Covariance of the measurement noise n_z in the measure model: z = Hx + n_z.

Number of particles for the orientation.

Initial value:

{
   "GMLinearNoId",
   "GMUnicycle2DId",
   "GMUnicycle2DIdRoboCentric",
   "GMUnicycle2DIdCoop",
   "GMUnicycle2DIdCoop2",
   "GMUnicycle2DIdRoboCentricCoop",
   "GMUnicycle2DId3Coop",
   "GMUnicycle2DId4Coop",
   "GMUnicycle2DIdCentr",
   "GMUnicycle2DNoId",
   "GMUnicycle2DIdRoboCentricCam",
   "NoPHD:EKFOnly",
   "GMIDUnicycle2DRC"
 }
Names of all types of implemented PHD filters.

These names are very important, since the StringOption in the PHDFilterTask that determines the type of the filter refers to these names.

Relative position between quadrotor and sonar reference frames (w.r.t. quadrotor reference frame).

Rotation matrix between camera and quadrotor (w.r.t. quadrotor reference frame) transpose.

Rotation matrix between quadrotor and mobile robot when the former is in hovering (if data of quadrotor is in NED and mobile robot is NWU, one needs a transformation between them).

Rotation matrix between quadrotor and sonar reference frames (w.r.t. quadrotor reference frame).

Maximum detection ray of the sensor.

Target dimension.

Truncation treshold.

All the gaussians in the belief having a weight lower than this threshold will be neglected.

Wether or not.

Specify if the sonar measurement provides vertical height (false) or along z-axis of the sensor (true).


Generated on Mon Feb 20 07:01:08 2017 for MIP by  doxygen 1.5.6