DMRITool  v0.1.1-139-g860d86b4
Diffusion MRI Tool
itkGeneralizedHighOrderTensorImageFilter.h
Go to the documentation of this file.
1 
18 #ifndef __itkGeneralizedHighOrderTensorImageFilter_h
19 #define __itkGeneralizedHighOrderTensorImageFilter_h
20 
22 
23 
24 namespace itk
25 {
26 
34 template < class TInputImage, class TOutputImage=TInputImage >
36  public SphericalPolarFourierEstimationImageFilter<TInputImage, TOutputImage>
37 {
38 public:
42  typedef SmartPointer<Self> Pointer;
43  typedef SmartPointer<const Self> ConstPointer;
44 
46  itkNewMacro(Self);
47 
50 
52 
53  typedef typename Superclass::MatrixType MatrixType;
54  typedef typename Superclass::VectorType VectorType;
55  typedef typename Superclass::MatrixPointer MatrixPointer;
56  typedef typename Superclass::VectorPointer VectorPointer;
57  typedef typename Superclass::STDVectorType STDVectorType;
58  typedef typename Superclass::STDVectorPointer STDVectorPointer;
59 
60  typedef typename Superclass::L2SolverType L2SolverType;
61  typedef typename Superclass::EstimationType EstimationType;
62 
63  void VerifyInputParameters() const ITK_OVERRIDE;
64 
65  std::vector<int> DimToRank(const int dimm) const ITK_OVERRIDE;
66  int RankToDim(const bool is_radial=false, const int radialRank=-1, const int shRank=-1) const ITK_OVERRIDE;
67 
68  double ComputeScale(const bool setScale=true) ITK_OVERRIDE;
69 
70  void ComputeRadialMatrix () ITK_OVERRIDE;
71  void ComputeBasisMatrix () ITK_OVERRIDE;
72  void ComputeRegularizationWeight ( ) ITK_OVERRIDE;
73 
74 
75 
76 protected:
78  virtual ~GeneralizedHighOrderTensorImageFilter() {};
79 
80  void PrintSelf(std::ostream& os, Indent indent) const ITK_OVERRIDE;
81 
82  void BeforeThreadedGenerateData () ITK_OVERRIDE;
83 
84  void ThreadedGenerateData(const OutputImageRegionType& outputRegionForThread,ThreadIdType threadId ) ITK_OVERRIDE;
85 
86 
87 private:
88  GeneralizedHighOrderTensorImageFilter(const Self&);//purposely not implemented
89  void operator=(const Self&);//purposely not implemented
90 
91 };
92 
93 }
94 
95 #if ITK_TEMPLATE_EXPLICIT
96 # include "Templates/itkGeneralizedHighOrderTensorImageFilter+-.h"
97 #endif
98 
99 #if !defined(ITK_MANUAL_INSTANTIATION) && !defined(__itkGeneralizedHighOrderTensorImageFilter_hxx)
101 #endif
102 
103 #endif
estimate the coefficients in GHOT model, which is used for md image estimation
#define itkTypedefMaskedImageToImageMacro(Superclass)
Definition: utlITKMacro.h:165
STL namespace.
#define ITK_OVERRIDE
Definition: utlITKMacro.h:46
estimate the coeffcients of generalized Spherical Polar Fourier basis which can be separated into dif...
estimate the coeffcients of generalized Spherical Polar Fourier basis which can be separated into dif...
SphericalPolarFourierEstimationImageFilter< TInputImage, TOutputImage > Superclass