Class CPoint2DPDF

Inheritance Relationships

Base Types

  • public mrpt::serialization::CSerializable

  • public mrpt::math::CProbabilityDensityFunction< CPoint2D, 2 >

Derived Type

Class Documentation

class CPoint2DPDF : public mrpt::serialization::CSerializable, public mrpt::math::CProbabilityDensityFunction<CPoint2D, 2>

Declares a class that represents a Probability Distribution function (PDF) of a 2D point (x,y). This class is just the base class for unifying many different ways this PDF can be implemented.

For convenience, a pose composition is also defined for any PDF derived class, changeCoordinatesReference, in the form of a method rather than an operator.

For a similar class for 6D poses (a 3D point with attitude), see CPose3DPDF

See also: probabilistic spatial representations

See also

CPoint2D, CPointPDF

Subclassed by mrpt::poses::CPoint2DPDFGaussian

Public Types

enum [anonymous]

Values:

enumerator is_3D_val
enum [anonymous]

Values:

enumerator is_PDF_val

Public Functions

CPoint2DPDF() = default
CPoint2DPDF(const CPoint2DPDF&) = default
CPoint2DPDF(CPoint2DPDF&&) = default
CPoint2DPDF &operator=(const CPoint2DPDF&) = default
CPoint2DPDF &operator=(CPoint2DPDF&&) = default
virtual ~CPoint2DPDF() = default
virtual void copyFrom(const CPoint2DPDF &o) = 0

Copy operator, translating if necessary (for example, between particles and gaussian representations)

virtual void changeCoordinatesReference(const CPose3D &newReferenceBase) = 0
virtual void bayesianFusion(const CPoint2DPDF &p1, const CPoint2DPDF &p2, const double minMahalanobisDistToDrop = 0) = 0

Bayesian fusion of two point distributions (product of two distributions->new distribution), then save the result in this object (WARNING: See implementing classes to see classes that can and cannot be mixtured!)

Parameters:
  • p1 – The first distribution to fuse

  • p2 – The second distribution to fuse

  • minMahalanobisDistToDrop – If set to different of 0, the result of very separate Gaussian modes (that will result in negligible components) in SOGs will be dropped to reduce the number of modes in the output.

Public Static Functions

static inline constexpr bool is_3D()
static inline constexpr bool is_PDF()