Medical Imaging Interaction Toolkit  2018.4.99-b585543d
Medical Imaging Interaction Toolkit
mitkAnisotropicRegistrationCommon.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 (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef __ANISOTROPICREGISTRATIONCOMMON_H__
14 #define __ANISOTROPICREGISTRATIONCOMMON_H__
15 
16 #include <itkMatrix.h>
17 #include <mitkCommon.h>
18 #include <mitkVector.h>
19 
21 
22 // forward declarations
23 class vtkPoints;
24 
25 namespace mitk
26 {
27  class PointSet;
28 
42  {
43  protected:
44  // local typedefs
45 
47  typedef itk::Matrix<double, 3, 3> WeightMatrix;
49  typedef WeightMatrix Rotation;
51  typedef WeightMatrix CovarianceMatrix;
55  typedef std::vector<WeightMatrix> MatrixList;
56 
59  public:
65  static WeightMatrix CalculateWeightMatrix(const CovarianceMatrix &sigma_X, const CovarianceMatrix &sigma_Y);
66 
84  static void TransformPoints(vtkPoints *src,
85  vtkPoints *dst,
86  const Rotation &rotation,
87  const Translation &translation);
88 
103  static void PropagateMatrices(const MatrixList &src, MatrixList &dst, const Rotation &rotation);
104 
119  static double ComputeTargetRegistrationError(const mitk::PointSet *movingTargets,
120  const mitk::PointSet *fixedTargets,
121  const Rotation &rotation,
122  const Translation &translation);
123  };
124 }
125 
126 #endif
DataCollection - Class to facilitate loading/accessing structured data.
static Matrix3D rotation
#define MITKALGORITHMSEXT_EXPORT
Data structure which stores a set of points. Superclass of mitk::Mesh.
Definition: mitkPointSet.h:75
A Class that provides common static functions used by all classes and tests in the anisotropic iterat...