Medical Imaging Interaction Toolkit  2026.06.00
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 mitkAnisotropicRegistrationCommon_h
14 #define mitkAnisotropicRegistrationCommon_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 
41  {
42  protected:
43  // local typedefs
44 
46  typedef itk::Matrix<double, 3, 3> WeightMatrix;
54  typedef std::vector<WeightMatrix> MatrixList;
55 
58  public:
64  static WeightMatrix CalculateWeightMatrix(const CovarianceMatrix &sigma_X, const CovarianceMatrix &sigma_Y);
65 
83  static void TransformPoints(vtkPoints *src,
84  vtkPoints *dst,
85  const Rotation &rotation,
86  const Translation &translation);
87 
102  static void PropagateMatrices(const MatrixList &src, MatrixList &dst, const Rotation &rotation);
103 
118  static double ComputeTargetRegistrationError(const mitk::PointSet *movingTargets,
119  const mitk::PointSet *fixedTargets,
120  const Rotation &rotation,
121  const Translation &translation);
122  };
123 }
124 
125 #endif
#define MITKALGORITHMSEXT_EXPORT
A Class that provides common static functions used by all classes and tests in the anisotropic iterat...
static WeightMatrix CalculateWeightMatrix(const CovarianceMatrix &sigma_X, const CovarianceMatrix &sigma_Y)
Method that computes a WeightMatrix with two CovarianceMatrices.
static double ComputeTargetRegistrationError(const mitk::PointSet *movingTargets, const mitk::PointSet *fixedTargets, const Rotation &rotation, const Translation &translation)
Compute the target registration error between two point sets.
static void TransformPoints(vtkPoints *src, vtkPoints *dst, const Rotation &rotation, const Translation &translation)
Transforms a point cloud with a Rotation and Translation.
static void PropagateMatrices(const MatrixList &src, MatrixList &dst, const Rotation &rotation)
Propagate a list of matrices with a rotation matrix.
Data structure which stores a set of points.
Definition: mitkPointSet.h:71
Find image slices visible on a given plane.