Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
mitkTeemDiffusionTensor3DReconstructionImageFilter.h
Go to the documentation of this file.
1 /*===================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center,
6 Division of Medical and Biological Informatics.
7 All rights reserved.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without
10 even the implied warranty of MERCHANTABILITY or FITNESS FOR
11 A PARTICULAR PURPOSE.
12 
13 See LICENSE.txt or http://www.mitk.org for details.
14 
15 ===================================================================*/
16 
17 
18 #ifndef __mitkTeemDiffusionTensor3DReconstructionImageFilter_h__
19 #define __mitkTeemDiffusionTensor3DReconstructionImageFilter_h__
20 
21 #include "mitkImage.h"
22 #include "mitkTensorImage.h"
23 #include "itkDiffusionTensor3D.h"
24 
25 namespace mitk
26 {
27 
33  };
34 
35  template< class DiffusionImagePixelType = short,
36  class TTensorPixelType=float >
38  {
39  public:
40 
41  typedef TTensorPixelType TensorPixelType;
42 
43  typedef itk::Vector<TensorPixelType,7> VectorType;
44  typedef itk::Image<VectorType,3> VectorImageType;
45 
46  typedef itk::DiffusionTensor3D<TensorPixelType> TensorType;
47  typedef itk::Image<TensorType,3 > ItkTensorImageType;
48 
49  typedef itk::Vector<TensorPixelType,6> ItkTensorVectorType;
50  typedef itk::Image<ItkTensorVectorType,3> ItkTensorVectorImageType;
51 
52  typedef DiffusionImagePixelType DiffusionPixelType;
53  typedef itk::VectorImage< DiffusionPixelType, 3 > DiffusionImageType;
54 
56  itk::Object );
57  itkFactorylessNewMacro(Self)
58  itkCloneMacro(Self)
59 
60  itkGetMacro(Input,
61  mitk::Image::Pointer);
62  itkSetMacro(Input,
63  mitk::Image::Pointer);
64 
65  itkGetMacro(EstimateErrorImage, bool);
66  itkSetMacro(EstimateErrorImage, bool);
67 
68  itkGetMacro(Sigma, float);
69  itkSetMacro(Sigma, float);
70 
71  itkGetMacro(EstimationMethod, TeemTensorEstimationMethods);
72  itkSetMacro(EstimationMethod, TeemTensorEstimationMethods);
73 
74  itkGetMacro(NumIterations, int);
75  itkSetMacro(NumIterations, int);
76 
77  itkGetMacro(ConfidenceThreshold, double);
78  itkSetMacro(ConfidenceThreshold, double);
79 
80  itkGetMacro(ConfidenceFuzzyness, float);
81  itkSetMacro(ConfidenceFuzzyness, float);
82 
83  itkGetMacro(MinPlausibleValue, double);
84  itkSetMacro(MinPlausibleValue, double);
85 
86  itkGetMacro(Output, mitk::TensorImage::Pointer);
87  itkGetMacro(OutputItk, mitk::TensorImage::Pointer);
88 
89  // do the work
90  virtual void Update();
91 
92  protected:
93 
95  virtual ~TeemDiffusionTensor3DReconstructionImageFilter();
96 
97  mitk::Image::Pointer m_Input;
99  float m_Sigma;
100  TeemTensorEstimationMethods m_EstimationMethod;
108  };
109 
110 }
111 
112 #include "mitkTeemDiffusionTensor3DReconstructionImageFilter.cpp"
113 
114 #endif
115 
116 
DataCollection - Class to facilitate loading/accessing structured data.
mitkClassMacroItkParent(TeemDiffusionTensor3DReconstructionImageFilter, itk::Object)
Image class for storing images.
Definition: mitkImage.h:76
double TTensorPixelType
this class encapsulates tensor images