Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
itkDiffusionQballPrepareVisualizationImageFilter.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 
19 This file is based heavily on a corresponding ITK filter.
20 
21 ===================================================================*/
22 #ifndef __itkDiffusionQballPrepareVisualizationImageFilter_h_
23 #define __itkDiffusionQballPrepareVisualizationImageFilter_h_
24 
26 #include "itkImageToImageFilter.h"
27 //#include "vnl/vnl_matrix.h"
28 #include "vnl/vnl_vector_fixed.h"
29 #include "vnl/vnl_matrix.h"
30 #include "vnl/algo/vnl_svd.h"
31 #include "itkVectorContainer.h"
32 #include "itkVectorImage.h"
34 
35 namespace itk{
39 template< class TOdfPixelType,
40  int NrOdfDirections>
42  public ImageToImageFilter< Image< Vector< TOdfPixelType, NrOdfDirections >, 3 >,
43  Image< Vector< TOdfPixelType, NrOdfDirections >, 3 > >
44 {
45 
46 public:
47 
49  {
54  PV_MIN_MAX_INVERT
55  };
56 
60  typedef ImageToImageFilter< Image< Vector< TOdfPixelType, NrOdfDirections >, 3 >,
61  Image< Vector< TOdfPixelType, NrOdfDirections >, 3 > >
63 
68 
70  itkFactorylessNewMacro(Self)
71  itkCloneMacro(Self)
72 
75  ImageToImageFilter);
76 
77  typedef TOdfPixelType OdfComponentType;
78 
80 
82 
83  typedef typename Superclass::OutputImageRegionType
85 
86  itkStaticConstMacro(NOdfDirections,int,NrOdfDirections);
87 
88  itkSetMacro( Threshold, OdfComponentType );
89  itkGetMacro( Threshold, OdfComponentType );
90 
91  itkSetMacro( NormalizationMethod, NormalizationMethods );
92  itkGetMacro( NormalizationMethod, NormalizationMethods );
93 
94  itkSetMacro( ScaleByGfaType, GfaComputationMethod );
95  itkGetMacro( ScaleByGfaType, GfaComputationMethod );
96 
97  itkSetMacro( DoScaleGfa, bool );
98  itkGetMacro( DoScaleGfa, bool );
99 
100  itkSetMacro( GfaParam1, double );
101  itkGetMacro( GfaParam1, double );
102 
103  itkSetMacro( GfaParam2, double );
104  itkGetMacro( GfaParam2, double );
105 
106 protected:
107  DiffusionQballPrepareVisualizationImageFilter();
108  ~DiffusionQballPrepareVisualizationImageFilter() {};
109  void PrintSelf(std::ostream& os, Indent indent) const;
110 
111  void BeforeThreadedGenerateData();
112  void ThreadedGenerateData( const
113  OutputImageRegionType &outputRegionForThread, ThreadIdType);
114 
115 private:
116 
118  OdfComponentType m_Threshold;
119 
120  NormalizationMethods m_NormalizationMethod;
121 
122  OdfComponentType m_GlobalInputMaximum;
123 
124  GfaComputationMethod m_ScaleByGfaType;
125 
126  bool m_DoScaleGfa;
127 
128  typename GfaImageType::Pointer m_GfaImage;
129 
130  double m_GfaParam1;
131 
132  double m_GfaParam2;
133 };
134 
135 }
136 
137 #ifndef ITK_MANUAL_INSTANTIATION
139 #endif
140 
141 #endif //__itkDiffusionQballPrepareVisualizationImageFilter_h_
142 
DiffusionQballGeneralizedFaImageFilter< TOdfPixelType, TOdfPixelType, NrOdfDirections > GfaFilterType
itk::SmartPointer< Self > Pointer
#define MITKDIFFUSIONCORE_EXPORT
ImageToImageFilter< Image< Vector< TOdfPixelType, NrOdfDirections >, 3 >, Image< Vector< TOdfPixelType, NrOdfDirections >, 3 > > Superclass