Classes | Public Types | Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes

cmtk::SplineWarpCongealingFunctional Class Reference
[cmtkRegistration Library]

Functional for spline warp congealing. More...

#include <cmtkSplineWarpCongealingFunctional.h>

Inheritance diagram for cmtk::SplineWarpCongealingFunctional:
Inheritance graph
[legend]
Collaboration diagram for cmtk::SplineWarpCongealingFunctional:
Collaboration graph
[legend]

List of all members.

Classes

class  EvaluateLocalGradientThreadParameters
 Thread function parameters for image interpolation. More...
class  EvaluateThreadParameters
 Thread parameter for entropy evaluation. More...
class  StaticThreadStorage
 Class for static thread storage to avoid recurring memory allocations. More...

Public Types

typedef CongealingFunctional
< SplineWarpXform
Superclass
 Type of parent class.
typedef Superclass::HistogramType HistogramType
 Superclass histogram type.
typedef
SplineWarpCongealingFunctional 
Self
 Type of this class.
typedef SmartPointer< SelfSmartPtr
 Smart pointer.

Public Member Functions

virtual void InitializeXformsFromAffine (const Types::Coordinate gridSpacing, std::vector< AffineXform::SmartPtr > initialAffineXformsVector, const bool exactSpacing=true)
 Initialize spline warp transformations.
virtual void RefineTransformationGrids ()
 Refine transformation control point grids.
virtual void SetTemplateGrid (UniformVolume::SmartPtr &templateGrid, const int downsample=1, const bool useTemplateData=false)
 Call inherited function and allocate local storage.
virtual Self::ReturnType Evaluate ()
 Evaluate functional with currently set parameters.
virtual Self::ReturnType EvaluateAt (CoordinateVector &v)
 Evaluate functional and set parameters.
virtual Self::ReturnType EvaluateWithGradient (CoordinateVector &v, CoordinateVector &g, const Types::Coordinate step=1)
 Compute functional value and gradient.

Private Member Functions

virtual void UpdateActiveControlPoints ()
 Update deactivated control points.
virtual void UpdateStandardDeviationByPixel ()
 Update standard deviation by pixel.

Static Private Member Functions

static void EvaluateThread (void *args, const size_t taskIdx, const size_t taskCnt, const size_t threadIdx, const size_t)
 Evaluate functional with currently set parameters.
static CMTK_THREAD_RETURN_TYPE EvaluateLocalGradientThreadFunc (void *args)
 Thread function: Compute local gradient of the cost function for gradient approximation.

Private Attributes

std::vector< double > m_EntropyByPixel
 Entropies over all images by pixel for fast local recomputation.
size_t m_ControlPointIndexNext
 Index of next control point to be processed by an available thread.
size_t m_ControlPointIndexLast
 Index of (last control point + 1) to be processed by an available thread.
MutexLock m_ControlPointIndexLock
 Mutex lock for control point queue.
std::vector< StaticThreadStoragem_StaticThreadStorage
 Static thread storage array.

Detailed Description

Functional for spline warp congealing.

This functional evaluates Lilla Zollei's entropy criterion for massively groupwise image registration.

References

[1] L . Zoellei, E. Learned-Miller, E. Grimson, W.M. Wells III: "Efficient Population Registration of 3D Data", ICCV 2005, Computer Vision for Biomedical Image Applications; Beijing, China

Definition at line 70 of file cmtkSplineWarpCongealingFunctional.h.


Member Typedef Documentation

Superclass histogram type.

Reimplemented from cmtk::CongealingFunctional< SplineWarpXform >.

Definition at line 78 of file cmtkSplineWarpCongealingFunctional.h.

Type of this class.

Reimplemented from cmtk::CongealingFunctional< SplineWarpXform >.

Definition at line 81 of file cmtkSplineWarpCongealingFunctional.h.

Smart pointer.

Reimplemented from cmtk::CongealingFunctional< SplineWarpXform >.

Definition at line 84 of file cmtkSplineWarpCongealingFunctional.h.

Type of parent class.

Reimplemented from cmtk::CongealingFunctional< SplineWarpXform >.

Definition at line 75 of file cmtkSplineWarpCongealingFunctional.h.


Member Function Documentation

virtual Self::ReturnType cmtk::SplineWarpCongealingFunctional::EvaluateAt ( CoordinateVector v ) [inline, virtual]

Evaluate functional and set parameters.

Reimplemented from cmtk::GroupwiseRegistrationFunctionalBase.

Definition at line 103 of file cmtkSplineWarpCongealingFunctional.h.


Member Data Documentation

Index of (last control point + 1) to be processed by an available thread.

Definition at line 174 of file cmtkSplineWarpCongealingFunctional.h.

Mutex lock for control point queue.

Definition at line 177 of file cmtkSplineWarpCongealingFunctional.h.

Index of next control point to be processed by an available thread.

Definition at line 171 of file cmtkSplineWarpCongealingFunctional.h.

Entropies over all images by pixel for fast local recomputation.

Definition at line 125 of file cmtkSplineWarpCongealingFunctional.h.

Static thread storage array.

Definition at line 215 of file cmtkSplineWarpCongealingFunctional.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines