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

cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel > Class Template Reference
[cmtkRegistration Library]

Base class for multi-channel registration functionals using the Histogram metric. More...

#include <cmtkMultiChannelHistogramRegistrationFunctional.h>

Inheritance diagram for cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel >:
Inheritance graph
[legend]
Collaboration diagram for cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel >:
Collaboration graph
[legend]

List of all members.

Classes

class  MetricData
 Local class for data needed to compute similarity metric. More...

Public Types

typedef
MultiChannelHistogramRegistrationFunctional
< TDataType, THashKeyType > 
Self
 This class.
typedef SmartPointer< SelfSmartPtr
 Smart pointer.
typedef
MultiChannelRegistrationFunctional
< TInterpolator > 
Superclass
 Superclass.
typedef TDataType DataType
 Real value type for data representation.
typedef THashKeyType HashKeyType
 Hash key type.

Public Member Functions

virtual void AddReferenceChannel (UniformVolume::SmartPtr &channel)
 Add reference channel.
virtual void AddFloatingChannel (UniformVolume::SmartPtr &channel)
 Add floating channel.
virtual void ClearAllChannels ()
 Reset channels, clear all images.

Static Public Attributes

static const char m_HistogramBitsPerChannel = NBitsPerChannel
 Number of bits per channel in the histogram bin index type.

Protected Member Functions

virtual void ContinueMetric (MetricData &metricData, const size_t rindex, const Vector3D &fvector)
 Continue metric computation.
virtual Functional::ReturnType GetMetric (const MetricData &metricData) const
 Get metric value.

Protected Attributes

MetricData m_MetricData
 Global data structure for metric computation.

Private Attributes

std::vector< TDataType > m_HashKeyScaleRef
 Scale factors for reference values to histogram "bins".
std::vector< TDataType > m_HashKeyScaleFlt
 Scale factors for floating values to histogram "bins".
std::vector< TDataType > m_HashKeyOffsRef
 Offsets for reference values to histogram "bins".
std::vector< TDataType > m_HashKeyOffsFlt
 Offsets for reference values to histogram "bins".
size_t m_HashKeyShiftRef
 Bit shift count to combine floating and reference hash keys into joint keys.

Detailed Description

template<class TDataType = float, class TInterpolator = cmtk::UniformVolumeInterpolator<cmtk::Interpolators::Linear>, class THashKeyType = unsigned int, char NBitsPerChannel = 6>
class cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel >

Base class for multi-channel registration functionals using the Histogram metric.

Definition at line 60 of file cmtkMultiChannelHistogramRegistrationFunctional.h.


Member Typedef Documentation

template<class TDataType = float, class TInterpolator = cmtk::UniformVolumeInterpolator<cmtk::Interpolators::Linear>, class THashKeyType = unsigned int, char NBitsPerChannel = 6>
typedef TDataType cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel >::DataType

Real value type for data representation.

Definition at line 78 of file cmtkMultiChannelHistogramRegistrationFunctional.h.

template<class TDataType = float, class TInterpolator = cmtk::UniformVolumeInterpolator<cmtk::Interpolators::Linear>, class THashKeyType = unsigned int, char NBitsPerChannel = 6>
typedef THashKeyType cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel >::HashKeyType

Hash key type.

Definition at line 81 of file cmtkMultiChannelHistogramRegistrationFunctional.h.

template<class TDataType = float, class TInterpolator = cmtk::UniformVolumeInterpolator<cmtk::Interpolators::Linear>, class THashKeyType = unsigned int, char NBitsPerChannel = 6>
typedef MultiChannelHistogramRegistrationFunctional<TDataType,THashKeyType> cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel >::Self
template<class TDataType = float, class TInterpolator = cmtk::UniformVolumeInterpolator<cmtk::Interpolators::Linear>, class THashKeyType = unsigned int, char NBitsPerChannel = 6>
typedef SmartPointer<Self> cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel >::SmartPtr
template<class TDataType = float, class TInterpolator = cmtk::UniformVolumeInterpolator<cmtk::Interpolators::Linear>, class THashKeyType = unsigned int, char NBitsPerChannel = 6>
typedef MultiChannelRegistrationFunctional<TInterpolator> cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel >::Superclass

Member Data Documentation

template<class TDataType = float, class TInterpolator = cmtk::UniformVolumeInterpolator<cmtk::Interpolators::Linear>, class THashKeyType = unsigned int, char NBitsPerChannel = 6>
std::vector<TDataType> cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel >::m_HashKeyOffsFlt [private]

Offsets for reference values to histogram "bins".

Definition at line 161 of file cmtkMultiChannelHistogramRegistrationFunctional.h.

template<class TDataType = float, class TInterpolator = cmtk::UniformVolumeInterpolator<cmtk::Interpolators::Linear>, class THashKeyType = unsigned int, char NBitsPerChannel = 6>
std::vector<TDataType> cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel >::m_HashKeyOffsRef [private]

Offsets for reference values to histogram "bins".

Definition at line 158 of file cmtkMultiChannelHistogramRegistrationFunctional.h.

template<class TDataType = float, class TInterpolator = cmtk::UniformVolumeInterpolator<cmtk::Interpolators::Linear>, class THashKeyType = unsigned int, char NBitsPerChannel = 6>
std::vector<TDataType> cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel >::m_HashKeyScaleFlt [private]

Scale factors for floating values to histogram "bins".

Definition at line 155 of file cmtkMultiChannelHistogramRegistrationFunctional.h.

template<class TDataType = float, class TInterpolator = cmtk::UniformVolumeInterpolator<cmtk::Interpolators::Linear>, class THashKeyType = unsigned int, char NBitsPerChannel = 6>
std::vector<TDataType> cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel >::m_HashKeyScaleRef [private]

Scale factors for reference values to histogram "bins".

Definition at line 152 of file cmtkMultiChannelHistogramRegistrationFunctional.h.

template<class TDataType = float, class TInterpolator = cmtk::UniformVolumeInterpolator<cmtk::Interpolators::Linear>, class THashKeyType = unsigned int, char NBitsPerChannel = 6>
size_t cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel >::m_HashKeyShiftRef [private]

Bit shift count to combine floating and reference hash keys into joint keys.

Definition at line 164 of file cmtkMultiChannelHistogramRegistrationFunctional.h.

template<class TDataType = float, class TInterpolator = cmtk::UniformVolumeInterpolator<cmtk::Interpolators::Linear>, class THashKeyType = unsigned int, char NBitsPerChannel = 6>
const char cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel >::m_HistogramBitsPerChannel = NBitsPerChannel [static]

Number of bits per channel in the histogram bin index type.

Definition at line 66 of file cmtkMultiChannelHistogramRegistrationFunctional.h.

template<class TDataType = float, class TInterpolator = cmtk::UniformVolumeInterpolator<cmtk::Interpolators::Linear>, class THashKeyType = unsigned int, char NBitsPerChannel = 6>
MetricData cmtk::MultiChannelHistogramRegistrationFunctional< TDataType, TInterpolator, THashKeyType, NBitsPerChannel >::m_MetricData [protected]

Global data structure for metric computation.

Definition at line 142 of file cmtkMultiChannelHistogramRegistrationFunctional.h.


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