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
mitkDiffusionImageCorrectionFilter.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 #ifndef MITKDIFFUSIONIMAGECORRECTIONFILTER_H
18 #define MITKDIFFUSIONIMAGECORRECTIONFILTER_H
19 
20 #include "mitkImageSource.h"
22 
23 namespace mitk
24 {
29  : public ImageSource
30 {
31 public:
34  ImageSource )
35 
36  itkSimpleNewMacro(Self)
37 
38  typedef short DiffusionPixelType;
39  typedef vnl_vector_fixed< double, 3 > GradientDirectionType;
40  typedef vnl_matrix_fixed< double, 3, 3 > TransformMatrixType;
41  typedef itk::VectorContainer< unsigned int, GradientDirectionType >
44 
45  typedef std::vector< TransformMatrixType > TransformsVectorType;
46 
47  typedef Superclass::OutputType DiffusionImageType;
49  typedef itk::VectorImage<DiffusionPixelType,3> ImageType;
50 
55  void SetImage( DiffusionImageTypePointer input )
56  {
57  m_SourceImage = input;
58  }
59 
65  void CorrectDirections( const TransformsVectorType& );
66 
72  void CorrectDirections( const TransformMatrixType& );
73 
74  virtual void GenerateOutputInformation() override {}
75 
76 
77 protected:
80 
91  TransformMatrixType GetRotationComponent( const TransformMatrixType& );
92 
93  DiffusionImageTypePointer m_SourceImage;
94 };
95 
96 }
97 
98 #endif // MITKDIFFUSIONIMAGECORRECTIONFILTER_H
Superclass of all classes generating Images (instances of class Image) as output. ...
itk::SmartPointer< Self > Pointer
Superclass of all classes generating some kind of mitk::BaseData.
DataCollection - Class to facilitate loading/accessing structured data.
itk::VectorImage< DiffusionPixelType, 3 > ImageType
#define MITKDIFFUSIONCORE_EXPORT
std::vector< TransformMatrixType > TransformsVectorType
vnl_matrix_fixed< double, 3, 3 > TransformMatrixType
void SetImage(DiffusionImageTypePointer input)
Set the mitk image ( a 3d+t image ) which is to be reinterpreted as dw image.
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:44
GradientDirectionContainerType::Pointer GradientDirectionContainerPointerType
itk::VectorContainer< unsigned int, GradientDirectionType > GradientDirectionContainerType