NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
itkLocalHistogramDerivativeForceFilter.h
Go to the documentation of this file.
1 /*=============================================================================
2 
3  NifTK: A software platform for medical image computing.
4 
5  Copyright (c) University College London (UCL). All rights reserved.
6 
7  This software is distributed WITHOUT ANY WARRANTY; without even
8  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
9  PURPOSE.
10 
11  See LICENSE.txt in the top level directory for details.
12 
13 =============================================================================*/
14 
15 #ifndef itkLocalHistogramDerivativeForceFilter_h
16 #define itkLocalHistogramDerivativeForceFilter_h
17 
19 
20 namespace itk {
35 template< class TFixedImage, class TMovingImage, class TScalar >
37  public RegistrationForceFilter<TFixedImage, TMovingImage, TScalar>
38 {
39 public:
40 
44  typedef SmartPointer<Self> Pointer;
45  typedef SmartPointer<const Self> ConstPointer;
46 
49 
51  itkStaticConstMacro(Dimension, unsigned int, TFixedImage::ImageDimension);
52 
56  typedef typename OutputImageType::SpacingType OutputImageSpacingType;
58  typedef typename Superclass::InputImageRegionType RegionType;
59  typedef typename Superclass::MetricType MetricType;
69 
70 protected:
71 
74  void PrintSelf(std::ostream& os, Indent indent) const;
75 
77  virtual void ThreadedGenerateData( const RegionType &outputRegionForThread, ThreadIdType threadId);
78 
92  virtual MeasureType ComputeForcePerVoxel(double totalFrequency,
93  double jointEntropy,
94  double fixedImageEntropy,
95  double movingImageEntropy,
96  double transformedMovingImageMinusHistogramIndexJointFrequency,
97  double transformedMovingImagePlusHistogramIndexJointFrequency,
98  double transformedMovingImageMinusHistogramIndexFrequency,
99  double transformedMovingImagePlusHistogramIndexFrequency) const = 0;
100 
101 private:
102 
107  void operator=(const Self&);
108 
109 };
110 
111 }
112 
113 #ifndef ITK_MANUAL_INSTANTIATION
114 #include "itkLocalHistogramDerivativeForceFilter.txx"
115 #endif
116 
117 #endif
Superclass::HistogramIteratorType HistogramIteratorType
Definition: itkLocalHistogramDerivativeForceFilter.h:66
Superclass::OutputPixelType OutputPixelType
Definition: itkLocalHistogramDerivativeForceFilter.h:54
TScalar MeasureType
Definition: itkRegistrationForceFilter.h:69
Superclass::MeasureType MeasureType
Definition: itkLocalHistogramDerivativeForceFilter.h:68
Superclass::InputImageType InputImageType
Definition: itkLocalHistogramDerivativeForceFilter.h:57
MetricType::HistogramFrequencyType HistogramFrequencyType
Definition: itkRegistrationForceFilter.h:78
Definition: niftkITKAffineResampleImage.cxx:74
MetricType::HistogramPointer HistogramPointer
Definition: itkRegistrationForceFilter.h:75
Superclass::InputImageType InputImageType
Definition: itkRegistrationForceFilter.h:66
MetricType::HistogramIteratorType HistogramIteratorType
Definition: itkRegistrationForceFilter.h:79
HistogramType::ConstPointer HistogramConstPointer
Definition: itkLocalHistogramDerivativeForceFilter.h:67
Superclass::HistogramPointer HistogramPointer
Definition: itkLocalHistogramDerivativeForceFilter.h:62
SmartPointer< Self > Pointer
Definition: itkLocalHistogramDerivativeForceFilter.h:44
Superclass::HistogramMeasurementVectorType HistogramMeasurementVectorType
Definition: itkLocalHistogramDerivativeForceFilter.h:64
Definition: itkLocalHistogramDerivativeForceFilter.h:36
Superclass::MetricType MetricType
Definition: itkLocalHistogramDerivativeForceFilter.h:59
OutputImageType::SpacingType OutputImageSpacingType
Definition: itkLocalHistogramDerivativeForceFilter.h:56
Extends Histogram to provide standard Entropy functions.
Definition: itkUCLHistogram.h:32
~LocalHistogramDerivativeForceFilter()
Definition: itkLocalHistogramDerivativeForceFilter.h:73
Superclass::MetricPointer MetricPointer
Definition: itkLocalHistogramDerivativeForceFilter.h:60
This class takes as input 2 input images, and outputs the registration force.
Definition: itkRegistrationForceFilter.h:39
Superclass::HistogramFrequencyType HistogramFrequencyType
Definition: itkLocalHistogramDerivativeForceFilter.h:65
Superclass::OutputImageType OutputImageType
Definition: itkLocalHistogramDerivativeForceFilter.h:55
Superclass::InputImageRegionType RegionType
Definition: itkLocalHistogramDerivativeForceFilter.h:58
Superclass::HistogramSizeType HistogramSizeType
Definition: itkLocalHistogramDerivativeForceFilter.h:63
SmartPointer< const Self > ConstPointer
Definition: itkLocalHistogramDerivativeForceFilter.h:45
RegistrationForceFilter< TFixedImage, TMovingImage, TScalar > Superclass
Definition: itkLocalHistogramDerivativeForceFilter.h:43
Simultaneous itk::Image and itk::Array (and hence vnl_vector) class.
const unsigned int Dimension
Definition: niftkBreastDCEandADC.cxx:89
Vector< OutputDataType, itkGetStaticConstMacro(Dimension) > OutputPixelType
Definition: itkRegistrationForceFilter.h:64
Superclass::HistogramType HistogramType
Definition: itkLocalHistogramDerivativeForceFilter.h:61
MetricType::Pointer MetricPointer
Definition: itkRegistrationForceFilter.h:73
MetricType::HistogramMeasurementVectorType HistogramMeasurementVectorType
Definition: itkRegistrationForceFilter.h:77
MetricType::HistogramSizeType HistogramSizeType
Definition: itkRegistrationForceFilter.h:76
LocalHistogramDerivativeForceFilter Self
Definition: itkLocalHistogramDerivativeForceFilter.h:42
SmartPointer< const Self > ConstPointer
Definition: itkUCLHistogram.h:41