IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Public Types | Static Public Attributes | Protected Member Functions | List of all members
ipsdk::geom::Ellipsoid3dEstimator Class Reference

Class allowing to estimate an ellipsoid 3d from a data set of 3d contour points. More...

#include <Ellipsoid3dEstimator.h>

Inheritance diagram for ipsdk::geom::Ellipsoid3dEstimator:
ipsdk::math::BaseEstimator

Public Types

enum  eEstimParams {
  eEP_CenterX, eEP_CenterY, eEP_CenterZ, eEP_MajorRadius,
  eEP_MediumRadius, eEP_MinorRadius, eEP_Chi, eEP_Beta,
  eEP_Alpha
}
 
enum  eDataType { eDT_X, eDT_Y, eDT_Z }
 

Public Member Functions

Constructors and destructor
 Ellipsoid3dEstimator ()
 
 ~Ellipsoid3dEstimator ()
 
- Public Member Functions inherited from ipsdk::math::BaseEstimator
bool isInit () const
 check for object initialization
 
ipUInt32 getNbMinRequestedData () const
 retrieve minimum data set size to ensure an estimation More...
 
ipUInt32 getNbEstimParams () const
 retrieve number of estimated parameters More...
 
ipUInt32 getDataSize () const
 unitary data size into data set collection More...
 
BoolResult computeEstimation (const DataSet &dataSet, ParameterType &estimParams)
 method allowing to estimate parameters from a given data set More...
 
BoolResult computeResiduals (const DataSet &dataSet, const ParameterType &estimParams, ResidualsSet &residualsSet) const
 method allowing to compute estimation residuals from a given data set and some estimated parameters More...
 
 BaseEstimator ()
 
virtual ~BaseEstimator ()=0
 

Static Public Attributes

static const ipUInt32 g_parameterSize = eEstimParams::size
 size of estimated parameters
 
static const ipUInt32 g_dataSize = eDataType::size
 size of data into data set
 

Protected Member Functions

BoolResult processEstimation (const math::DataSet &dataSet, math::ParameterType &estimParams)
 method allowing to compute estimation into derived classes More...
 
BoolResult processResiduals (const math::DataSet &dataSet, const math::ParameterType &estimParams, math::ResidualsSet &residualsSet) const
 method allowing to compute residuals into derived classes More...
 
- Protected Member Functions inherited from ipsdk::math::BaseEstimator
void initBase (const ipUInt32 nbMinRequestedData, const ipUInt32 nbEstimParams, const ipUInt32 dataSize)
 base class initialization More...
 
BoolResult checkData (const DataSet &dataSet, const ParameterType &estimParams) const
 method allowing to check input data properties associated to estimation More...
 
virtual BoolResult processEstimation (const DataSet &dataSet, ParameterType &estimParams)=0
 method allowing to compute estimation into derived classes More...
 
virtual BoolResult processResiduals (const DataSet &dataSet, const ParameterType &estimParams, ResidualsSet &residualsSet) const =0
 method allowing to compute residuals into derived classes More...
 

Detailed Description

Class allowing to estimate an ellipsoid 3d from a data set of 3d contour points.

Author
E.Noirfalise
Date
2017/06/09
Note
This is the basic Fitzgibbon/Fisher method implementation Could be refined to solve quadratic constrained problem

Member Enumeration Documentation

◆ eEstimParams

description of estimated parameters

Note
This object is associated to a strong enumerate definition
See also
IPSDK_Enum
Enumerator
eEP_CenterX 

x coordinate of ellipse center

eEP_CenterY 

y coordinate of ellipse center

eEP_CenterZ 

z coordinate of ellipse center

eEP_MajorRadius 

major radius of ellipse

eEP_MediumRadius 

medium radius of ellipse

eEP_MinorRadius 

minor radius of ellipse

eEP_Chi 

orientation of ellipse around Z'' axis (in radians)

eEP_Beta 

orientation of ellipse around Y' axis (in radians)

eEP_Alpha 

orientation of ellipse around X axis (in radians)

◆ eDataType

description of data into data set

Note
This object is associated to a strong enumerate definition
See also
IPSDK_Enum
Enumerator
eDT_X 

x coordinate of contour point

eDT_Y 

y coordinate of contour point

eDT_Z 

z coordinate of contour point

Member Function Documentation

◆ processEstimation()

BoolResult ipsdk::geom::Ellipsoid3dEstimator::processEstimation ( const math::DataSet dataSet,
math::ParameterType estimParams 
)
protected

method allowing to compute estimation into derived classes

Returns
false in case of failure

◆ processResiduals()

BoolResult ipsdk::geom::Ellipsoid3dEstimator::processResiduals ( const math::DataSet dataSet,
const math::ParameterType estimParams,
math::ResidualsSet residualsSet 
) const
protected

method allowing to compute residuals into derived classes

Note
In this case we simply compute algebraic equation value
Returns
false in case of failure

The documentation for this class was generated from the following file: