DGtal 2.0.0
|
Aim: Use Ponca library to perform a local sphere fitting. More...
#include <DGtal/geometry/surfaces/estimation/estimationFunctors/SphereFittingEstimator.h>
Data Structures | |
class | PoncaPoint |
struct | Quantity |
Quantity type: a 3-sphere (model of CQuantity) More... |
Public Types | |
typedef TSurfel | Surfel |
typedef TEmbedder | SCellEmbedder |
typedef SCellEmbedder::RealPoint | RealPoint |
typedef TNormalVectorEstimatorCache | NormalVectorEstimatorCache |
typedef PoncaPoint::Scalar | Scalar |
typedef PoncaPoint::VectorType | VectorType |
typedef Ponca::DistWeightFunc< PoncaPoint, Ponca::SmoothWeightKernel< Scalar > > | WeightFunc |
typedef Ponca::Basket< PoncaPoint, WeightFunc, Ponca::OrientedSphereFit, Ponca::GLSParam > | Fit |
Public Member Functions | |
SphereFittingEstimator (ConstAlias< SCellEmbedder > anEmbedder, const double h, const double radius, ConstAlias< NormalVectorEstimatorCache > anEstimator) | |
~SphereFittingEstimator () | |
void | pushSurfel (const Surfel &aSurf, const double aDistance) |
Quantity | eval () |
void | reset () |
Private Attributes | |
const SCellEmbedder * | myEmbedder |
Alias of the geometrical embedder. | |
Fit * | myFit |
Fitting object. | |
double | myH |
Grid step. | |
bool | myFirstPoint |
Boolean for initial point. | |
const NormalVectorEstimatorCache * | myNormalEsitmatorCache |
NormalVectorCache. | |
const WeightFunc * | myWeightFunction |
const WeightFunction |
Aim: Use Ponca library to perform a local sphere fitting.
Description of template class 'SphereFittingEstimator'
Given a kernel radius, this functor performs a sphere fitting and outputs the parameters of an AlgebraicSphere (please see Ponca documentation for details).
Model of concepts::CLocalEstimatorFromSurfelFunctor.
TSurfel | type of surfels |
TEmbedder | type of functors which embed surfel to \mathbb{R}^3. |
TNormalVectorEstimatorCache | the type of normal vector cache to consider (see EstimatorCache class). |
Definition at line 88 of file SphereFittingEstimator.h.
typedef Ponca::Basket<PoncaPoint, WeightFunc, Ponca::OrientedSphereFit, Ponca::GLSParam> DGtal::functors::SphereFittingEstimator< TSurfel, TEmbedder, TNormalVectorEstimatorCache >::Fit |
Definition at line 126 of file SphereFittingEstimator.h.
typedef TNormalVectorEstimatorCache DGtal::functors::SphereFittingEstimator< TSurfel, TEmbedder, TNormalVectorEstimatorCache >::NormalVectorEstimatorCache |
Definition at line 120 of file SphereFittingEstimator.h.
typedef SCellEmbedder::RealPoint DGtal::functors::SphereFittingEstimator< TSurfel, TEmbedder, TNormalVectorEstimatorCache >::RealPoint |
Definition at line 118 of file SphereFittingEstimator.h.
typedef PoncaPoint::Scalar DGtal::functors::SphereFittingEstimator< TSurfel, TEmbedder, TNormalVectorEstimatorCache >::Scalar |
Definition at line 122 of file SphereFittingEstimator.h.
typedef TEmbedder DGtal::functors::SphereFittingEstimator< TSurfel, TEmbedder, TNormalVectorEstimatorCache >::SCellEmbedder |
Definition at line 117 of file SphereFittingEstimator.h.
typedef TSurfel DGtal::functors::SphereFittingEstimator< TSurfel, TEmbedder, TNormalVectorEstimatorCache >::Surfel |
Definition at line 116 of file SphereFittingEstimator.h.
typedef PoncaPoint::VectorType DGtal::functors::SphereFittingEstimator< TSurfel, TEmbedder, TNormalVectorEstimatorCache >::VectorType |
Definition at line 123 of file SphereFittingEstimator.h.
typedef Ponca::DistWeightFunc<PoncaPoint, Ponca::SmoothWeightKernel<Scalar> > DGtal::functors::SphereFittingEstimator< TSurfel, TEmbedder, TNormalVectorEstimatorCache >::WeightFunc |
Definition at line 125 of file SphereFittingEstimator.h.
|
inline |
Constructor.
[in] | anEmbedder | embedder to map surfel to R^n. |
[in] | h | gridstep. |
[in] | radius | radius of the convolution kernel (in \mathbb{Z}^n space). |
[in] | anEstimator | normal vector estimator on the surface. |
Definition at line 158 of file SphereFittingEstimator.h.
References myEmbedder, myFit, myH, myNormalEsitmatorCache, and myWeightFunction.
|
inline |
Destructor.
Definition at line 174 of file SphereFittingEstimator.h.
References myFit, and myWeightFunction.
|
inline |
Evaluate the sphere fitting.
Definition at line 221 of file SphereFittingEstimator.h.
References DGtal::functors::SphereFittingEstimator< TSurfel, TEmbedder, TNormalVectorEstimatorCache >::Quantity::center, DGtal::functors::SphereFittingEstimator< TSurfel, TEmbedder, TNormalVectorEstimatorCache >::Quantity::eta, DGtal::functors::SphereFittingEstimator< TSurfel, TEmbedder, TNormalVectorEstimatorCache >::Quantity::kappa, myFit, DGtal::functors::SphereFittingEstimator< TSurfel, TEmbedder, TNormalVectorEstimatorCache >::Quantity::radius, DGtal::functors::SphereFittingEstimator< TSurfel, TEmbedder, TNormalVectorEstimatorCache >::Quantity::tau, and DGtal::trace.
|
inline |
Add the geometrical embedding of a surfel to the point list
[in] | aSurf | a surfel to add |
[in] | aDistance | of aSurf to the neighborhood boundary |
Definition at line 187 of file SphereFittingEstimator.h.
References myEmbedder, myFirstPoint, myFit, myH, myNormalEsitmatorCache, and DGtal::trace.
|
inline |
Reset the point list.
Definition at line 266 of file SphereFittingEstimator.h.
References myFirstPoint, myFit, and myWeightFunction.
|
private |
Alias of the geometrical embedder.
Definition at line 278 of file SphereFittingEstimator.h.
Referenced by pushSurfel(), and SphereFittingEstimator().
|
private |
Boolean for initial point.
Definition at line 287 of file SphereFittingEstimator.h.
Referenced by pushSurfel(), and reset().
|
private |
Fitting object.
Definition at line 281 of file SphereFittingEstimator.h.
Referenced by eval(), pushSurfel(), reset(), SphereFittingEstimator(), and ~SphereFittingEstimator().
|
private |
Grid step.
Definition at line 284 of file SphereFittingEstimator.h.
Referenced by pushSurfel(), and SphereFittingEstimator().
|
private |
NormalVectorCache.
Definition at line 290 of file SphereFittingEstimator.h.
Referenced by pushSurfel(), and SphereFittingEstimator().
|
private |
const WeightFunction
Definition at line 293 of file SphereFittingEstimator.h.
Referenced by reset(), SphereFittingEstimator(), and ~SphereFittingEstimator().