Declares a class that represents a Probability Density Function (PDF) of a 3D pose (6D actually).
This class is just the base class for unifying many diferent 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 3D points (without attitude), see CPointPDF
See also the tutorial on probabilistic spatial representations in the MRPT.
Definition at line 61 of file CPose3DPDF.h.
#include <mrpt/poses/CPose3DPDF.h>
Public Types | |
enum | { is_3D_val = 1 } |
enum | { is_PDF_val = 1 } |
Public Member Functions | |
MRPT_DECLARE_DEPRECATED_FUNCTION ("**deprecated** Use getMean instead", CPose3D getEstimatedPose() const ) | |
Returns an estimate of the pose, (the mean, or mathematical expectation of the PDF) | |
virtual void | copyFrom (const CPose3DPDF &o)=0 |
Copy operator, translating if necesary (for example, between particles and gaussian representations) | |
virtual void | bayesianFusion (const CPose3DPDF &p1, const CPose3DPDF &p2)=0 |
Bayesian fusion of two pose distributions, then save the result in this object (WARNING: Currently only distributions of the same class can be fused! eg, gaussian with gaussian,etc) | |
virtual void | inverse (CPose3DPDF &o) const =0 |
Returns a new PDF such as: NEW_PDF = (0,0,0) - THIS_PDF. | |
template<class OPENGL_SETOFOBJECTSPTR > | |
void | getAs3DObject (OPENGL_SETOFOBJECTSPTR &out_obj) const |
Returns a 3D representation of this PDF. | |
template<class OPENGL_SETOFOBJECTSPTR > | |
OPENGL_SETOFOBJECTSPTR | getAs3DObject () const |
Returns a 3D representation of this PDF. | |
Static Public Member Functions | |
static CPose3DPDF * | createFrom2D (const CPosePDF &o) |
This is a static transformation method from 2D poses to 3D PDFs, preserving the representation type (particles->particles, Gaussians->Gaussians,etc) It returns a new object of any of the derived classes of CPose3DPDF. | |
static bool | is_3D () |
static bool | is_PDF () |
RTTI stuff | |
static const mrpt::utils::TRuntimeClassId | classCPose3DPDF |
class | mrpt::utils::CStream |
static const mrpt::utils::TRuntimeClassId * | _GetBaseClass () |
virtual const mrpt::utils::TRuntimeClassId * | GetRuntimeClass () const |
Returns information about the class of an object in runtime. |
anonymous enum |
Definition at line 96 of file CPose3DPDF.h.
anonymous enum |
Definition at line 98 of file CPose3DPDF.h.
static const mrpt::utils::TRuntimeClassId* mrpt::poses::CPose3DPDF::_GetBaseClass | ( | ) | [static, protected] |
Reimplemented from mrpt::utils::CSerializable.
Reimplemented in mrpt::poses::CPose3DPDFGaussian, mrpt::poses::CPose3DPDFGaussianInf, mrpt::poses::CPose3DPDFParticles, and mrpt::poses::CPose3DPDFSOG.
virtual void mrpt::poses::CPose3DPDF::bayesianFusion | ( | const CPose3DPDF & | p1, |
const CPose3DPDF & | p2 | ||
) | [pure virtual] |
Bayesian fusion of two pose distributions, then save the result in this object (WARNING: Currently only distributions of the same class can be fused! eg, gaussian with gaussian,etc)
Implemented in mrpt::poses::CPose3DPDFGaussian, mrpt::poses::CPose3DPDFGaussianInf, mrpt::poses::CPose3DPDFParticles, and mrpt::poses::CPose3DPDFSOG.
virtual void mrpt::poses::CPose3DPDF::copyFrom | ( | const CPose3DPDF & | o ) | [pure virtual] |
Copy operator, translating if necesary (for example, between particles and gaussian representations)
Implemented in mrpt::poses::CPose3DPDFGaussian, mrpt::poses::CPose3DPDFGaussianInf, mrpt::poses::CPose3DPDFParticles, and mrpt::poses::CPose3DPDFSOG.
static CPose3DPDF* mrpt::poses::CPose3DPDF::createFrom2D | ( | const CPosePDF & | o ) | [static] |
This is a static transformation method from 2D poses to 3D PDFs, preserving the representation type (particles->particles, Gaussians->Gaussians,etc) It returns a new object of any of the derived classes of CPose3DPDF.
This object must be deleted by the user when not required anymore.
void mrpt::poses::CPose3DPDF::getAs3DObject | ( | OPENGL_SETOFOBJECTSPTR & | out_obj ) | const [inline] |
Returns a 3D representation of this PDF.
Definition at line 105 of file CPose3DPDF.h.
OPENGL_SETOFOBJECTSPTR mrpt::poses::CPose3DPDF::getAs3DObject | ( | ) | const [inline] |
Returns a 3D representation of this PDF.
Definition at line 113 of file CPose3DPDF.h.
virtual const mrpt::utils::TRuntimeClassId* mrpt::poses::CPose3DPDF::GetRuntimeClass | ( | ) | const [virtual] |
Returns information about the class of an object in runtime.
Reimplemented from mrpt::utils::CSerializable.
Reimplemented in mrpt::poses::CPose3DPDFGaussian, mrpt::poses::CPose3DPDFGaussianInf, mrpt::poses::CPose3DPDFParticles, and mrpt::poses::CPose3DPDFSOG.
virtual void mrpt::poses::CPose3DPDF::inverse | ( | CPose3DPDF & | o ) | const [pure virtual] |
Returns a new PDF such as: NEW_PDF = (0,0,0) - THIS_PDF.
Implemented in mrpt::poses::CPose3DPDFGaussian, mrpt::poses::CPose3DPDFGaussianInf, mrpt::poses::CPose3DPDFParticles, and mrpt::poses::CPose3DPDFSOG.
static bool mrpt::poses::CPose3DPDF::is_3D | ( | ) | [inline, static] |
Definition at line 97 of file CPose3DPDF.h.
static bool mrpt::poses::CPose3DPDF::is_PDF | ( | ) | [inline, static] |
Definition at line 99 of file CPose3DPDF.h.
mrpt::poses::CPose3DPDF::MRPT_DECLARE_DEPRECATED_FUNCTION | ( | "**deprecated** Use getMean instead" | , |
CPose3D getEstimatedPose() | const | ||
) | [inline] |
Returns an estimate of the pose, (the mean, or mathematical expectation of the PDF)
Definition at line 69 of file CPose3DPDF.h.
friend class mrpt::utils::CStream [friend] |
Reimplemented from mrpt::utils::CSerializable.
Definition at line 63 of file CPose3DPDF.h.
Definition at line 63 of file CPose3DPDF.h.
Page generated by Doxygen 1.7.2 for MRPT 0.9.4 SVN: at Mon Jan 10 22:46:17 UTC 2011 |