PoseManifoldGaussian Struct Reference

A "gaussian" distribution in pose space (i.e. More...

`#include <RobotAPI/libraries/ArmarXObjects/PoseManifoldGaussian.h>`

## Classes

struct  Ellipsoid

## Public Member Functions

Ellipsoid getPositionEllipsoid () const
Get the parameters of a 3D ellipsoid illustrating this gaussian. More...

Eigen::AngleAxisf getScaledRotationAxis (int index, bool global=false) const
Get a column of the pure orientational covariance matrix as axis-angle rotation. More...

PoseManifoldGaussian getTransformed (const Eigen::Matrix4f &fromFrame, const Eigen::Matrix4f &toFrame) const
Transform this gaussian from one base coordinate system to another one. More...

PoseManifoldGaussian getTransformed (const Eigen::Matrix4f &transform) const
Transform this gaussian by the given transform (e.g. More...

Eigen::Block< Eigen::Matrix< float, 6, 6 >, 3, 3 > orientationCovariance ()
Get the pure orientational part of the covariance matrix. More...

Eigen::Block< const Eigen::Matrix< float, 6, 6 >, 3, 3 > orientationCovariance () const

Eigen::Block< Eigen::Matrix< float, 6, 6 >, 3, 3 > positionCovariance ()
Get the pure positional part of the covariance matrix. More...

Eigen::Block< const Eigen::Matrix< float, 6, 6 >, 3, 3 > positionCovariance () const

## Public Attributes

Eigen::Matrix< float, 6, 6 > covariance = Eigen::Matrix<float, 6, 6>::Identity()
The covariance matrix. More...

Eigen::Matrix4f mean = Eigen::Matrix4f::Identity()
The mean (i.e. a pose). More...

## Detailed Description

A "gaussian" distribution in pose space (i.e.

pose manifold).

The mean is a specific pose, represented as 4x4 homogeneous matrix.

The covariance is a 6 x 6 covariance matrix. The first 3 dimensions represent the position (translation) part, the second 3 dimensions represent the orientation (rotation) part. A column of the pure orientational part (lower right 3 x 3 matrix) is a scaled rotation axis, i.e. rotation axis whose norm is the rotation angle (in this case the "angle variance").

Note that the lower left and upper right 3x3 parts of the covariance matrix can be non-zero.

Definition at line 25 of file PoseManifoldGaussian.h.

## ◆ getPositionEllipsoid()

 PoseManifoldGaussian::Ellipsoid getPositionEllipsoid ( ) const

Get the parameters of a 3D ellipsoid illustrating this gaussian.

Definition at line 11 of file PoseManifoldGaussian.cpp.

Here is the caller graph for this function:

## ◆ getScaledRotationAxis()

 Eigen::AngleAxisf getScaledRotationAxis ( int index, bool global = `false` ) const

Get a column of the pure orientational covariance matrix as axis-angle rotation.

Parameters
 index The column's index. global If true, rotate the axis by the mean orientation.
Returns

Definition at line 46 of file PoseManifoldGaussian.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

## ◆ getTransformed() [1/2]

 PoseManifoldGaussian getTransformed ( const Eigen::Matrix4f & fromFrame, const Eigen::Matrix4f & toFrame ) const

Transform this gaussian from one base coordinate system to another one.

Parameters
 fromFrame The original (current) base coordinate system' pose. toFrame The new base coordinate system' pose.
Returns
The same gaussian in thenew coordinate system.

Definition at line 74 of file PoseManifoldGaussian.cpp.

Here is the call graph for this function:

## ◆ getTransformed() [2/2]

 PoseManifoldGaussian getTransformed ( const Eigen::Matrix4f & transform ) const

Transform this gaussian by the given transform (e.g.

to another frame).

Parameters
 transform The transform to apply.
Returns
The transformed gaussian.

Definition at line 60 of file PoseManifoldGaussian.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

## ◆ orientationCovariance() [1/2]

 Eigen::Block, 3, 3> orientationCovariance ( )
inline

Get the pure orientational part of the covariance matrix.

Definition at line 51 of file PoseManifoldGaussian.h.

## ◆ orientationCovariance() [2/2]

 Eigen::Block, 3, 3> orientationCovariance ( ) const
inline

Definition at line 56 of file PoseManifoldGaussian.h.

## ◆ positionCovariance() [1/2]

 Eigen::Block, 3, 3> positionCovariance ( )
inline

Get the pure positional part of the covariance matrix.

Definition at line 39 of file PoseManifoldGaussian.h.

## ◆ positionCovariance() [2/2]

 Eigen::Block, 3, 3> positionCovariance ( ) const
inline

Definition at line 44 of file PoseManifoldGaussian.h.

## ◆ covariance

 Eigen::Matrix covariance = Eigen::Matrix::Identity()

The covariance matrix.

Definition at line 32 of file PoseManifoldGaussian.h.

## ◆ mean

 Eigen::Matrix4f mean = Eigen::Matrix4f::Identity()

The mean (i.e. a pose).

Definition at line 30 of file PoseManifoldGaussian.h.

The documentation for this struct was generated from the following files: