A.I.M.S algorithms


aims::MaskedDiffusionSmoother< T, std::vector< Point3df > > Class Template Reference

Heat diffusion, with Dirichlet and Neumann border conditions. More...

#include <aims/signalfilter/diffusionSmoother.h>

Inheritance diagram for aims::MaskedDiffusionSmoother< T, std::vector< Point3df > >:
Collaboration diagram for aims::MaskedDiffusionSmoother< T, std::vector< Point3df > >:

Public Member Functions

 MaskedDiffusionSmoother (float delta_t, bool safe=true)
 
 ~MaskedDiffusionSmoother ()
 
virtual AimsData< T > doSmoothing (const AimsData< T > &ima, int maxiter, bool verbose=false)
 
void add_neumann_condition (const Point3df &p)
 
- Public Member Functions inherited from aims::BaseMaskedDiffusionSmoother< T >
 BaseMaskedDiffusionSmoother (float delta_t, bool safe=true)
 
 ~BaseMaskedDiffusionSmoother ()
 
void setMask (AimsData< short > *const mask, short background=0)
 
- Public Member Functions inherited from aims::BaseDiffusionSmoother< T >
 BaseDiffusionSmoother (float delta_t)
 
 ~BaseDiffusionSmoother ()
 
void check (int maxiter)
 
bool optimal ()
 
void SetDt (float Delta_t)
 
float dt ()
 
- Public Member Functions inherited from aims::Smoother< AimsData< T >, AimsData< T > >
virtual ~Smoother ()
 

Additional Inherited Members

- Static Public Member Functions inherited from aims::BaseDiffusionSmoother< T >
static AimsData< float > init_laplacian (void)
 
- Static Public Attributes inherited from aims::BaseDiffusionSmoother< T >
static AimsData< float > laplacian
 
- Protected Attributes inherited from aims::BaseMaskedDiffusionSmoother< T >
AimsData< short > * _mask
 
bool _safe
 
short _background
 
- Protected Attributes inherited from aims::BaseDiffusionSmoother< T >
float _dt
 

Detailed Description

template<typename T>
class aims::MaskedDiffusionSmoother< T, std::vector< Point3df > >

Heat diffusion, with Dirichlet and Neumann border conditions.

  • Dirichlet conditions (data source, 1st order) are stored in the input volume.
  • Neumann conditions (null derivative condition along border normals) can be specified also (see add_neumann_condition). Conditions must be masked. Neumann ones must have 2 voxel width if there are surrounded by unmasked values (because values from unmasked neighbours are copied to borders satisfying Neumann conditions).

Definition at line 146 of file diffusionSmoother.h.

Constructor & Destructor Documentation

template<typename T >
aims::MaskedDiffusionSmoother< T, std::vector< Point3df > >::MaskedDiffusionSmoother ( float  delta_t,
bool  safe = true 
)
inline

Definition at line 150 of file diffusionSmoother.h.

template<typename T >
aims::MaskedDiffusionSmoother< T, std::vector< Point3df > >::~MaskedDiffusionSmoother ( )
inline

Definition at line 153 of file diffusionSmoother.h.

Member Function Documentation

template<typename T >
void aims::MaskedDiffusionSmoother< T, std::vector< Point3df > >::add_neumann_condition ( const Point3df p)
inline

Definition at line 227 of file diffusionSmoother_d.h.


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