Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
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