MITK-IGT
IGT Extension of MITK
Loading...
Searching...
No Matches
mitkHummelProtocolEvaluation.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
14
#ifndef mitkHummelProtocolEvaluation_h
15
#define mitkHummelProtocolEvaluation_h
16
17
#include <mitkPointSet.h>
18
#include <array>
19
20
21
22
23
namespace
mitk
24
{
25
34
class
HummelProtocolEvaluation
35
36
{
37
public
:
38
40
struct
HummelProtocolDistanceError
{
double
distanceError
; std::string
description
;};
46
enum
HummelProtocolMeasurementVolume
{
small
,
medium
,
standard
};
51
static
bool
Evaluate5cmDistances
(mitk::PointSet::Pointer p,
HummelProtocolMeasurementVolume
m, std::vector<HummelProtocolDistanceError> &Results);
52
57
static
bool
Evaluate15cmDistances
(mitk::PointSet::Pointer p,
HummelProtocolMeasurementVolume
m, std::vector<HummelProtocolDistanceError> &Results);
58
63
static
bool
Evaluate30cmDistances
(mitk::PointSet::Pointer p,
HummelProtocolMeasurementVolume
m, std::vector<HummelProtocolDistanceError> &Results);
64
69
static
bool
EvaluateAccumulatedDistances
(mitk::PointSet::Pointer p,
HummelProtocolMeasurementVolume
m, std::vector<HummelProtocolDistanceError> &Results);
70
74
static
std::vector<HummelProtocolDistanceError>
ComputeStatistics
(std::vector<HummelProtocolDistanceError> values);
75
76
protected
:
80
static
std::array<std::array<mitk::Point3D, 10> ,9>
ParseMatrixStandardVolume
(mitk::PointSet::Pointer p);
81
//It would be really wonderful if we could replace std::array<std::array<mitk::Point3D, 10> ,9> by mitk::Matrix< mitk::Point3D, 9, 10 > but
82
//unfortunately this version does not compile under Linux. To be precise under Linux only matrices like this: mitk::Matriy<double, 9, 10> compile
83
//even the usage of a double pointer (eg mitk::Matrix<double* , 9, 10>) does not compile. We always got an error message saying:
84
//vnl_c_vector.h:42:49: error: invalid use of incomplete type ‘class vnl_numeric_traits<itk::Point<double, 3u> >’
85
//Under Windows this error does not appear there everything compiles fine.
86
87
static
std::array<std::array<mitk::Point3D, 5>, 5>
ParseMatrixMediumVolume
(mitk::PointSet::Pointer p);
88
89
};
90
}
// namespace mitk
91
92
#endif
mitk::HummelProtocolEvaluation
Static methods for evaluations according to the assessment protocol for EM trackers published by Humm...
Definition
mitkHummelProtocolEvaluation.h:36
mitk::HummelProtocolEvaluation::Evaluate15cmDistances
static bool Evaluate15cmDistances(mitk::PointSet::Pointer p, HummelProtocolMeasurementVolume m, std::vector< HummelProtocolDistanceError > &Results)
Definition
mitkHummelProtocolEvaluation.cpp:25
mitk::HummelProtocolEvaluation::Evaluate30cmDistances
static bool Evaluate30cmDistances(mitk::PointSet::Pointer p, HummelProtocolMeasurementVolume m, std::vector< HummelProtocolDistanceError > &Results)
Definition
mitkHummelProtocolEvaluation.cpp:86
mitk::HummelProtocolEvaluation::HummelProtocolMeasurementVolume
HummelProtocolMeasurementVolume
Definition
mitkHummelProtocolEvaluation.h:46
mitk::HummelProtocolEvaluation::small
@ small
Definition
mitkHummelProtocolEvaluation.h:46
mitk::HummelProtocolEvaluation::medium
@ medium
Definition
mitkHummelProtocolEvaluation.h:46
mitk::HummelProtocolEvaluation::standard
@ standard
Definition
mitkHummelProtocolEvaluation.h:46
mitk::HummelProtocolEvaluation::Evaluate5cmDistances
static bool Evaluate5cmDistances(mitk::PointSet::Pointer p, HummelProtocolMeasurementVolume m, std::vector< HummelProtocolDistanceError > &Results)
Definition
mitkHummelProtocolEvaluation.cpp:186
mitk::HummelProtocolEvaluation::ComputeStatistics
static std::vector< HummelProtocolDistanceError > ComputeStatistics(std::vector< HummelProtocolDistanceError > values)
Definition
mitkHummelProtocolEvaluation.cpp:389
mitk::HummelProtocolEvaluation::ParseMatrixStandardVolume
static std::array< std::array< mitk::Point3D, 10 >, 9 > ParseMatrixStandardVolume(mitk::PointSet::Pointer p)
Definition
mitkHummelProtocolEvaluation.cpp:351
mitk::HummelProtocolEvaluation::ParseMatrixMediumVolume
static std::array< std::array< mitk::Point3D, 5 >, 5 > ParseMatrixMediumVolume(mitk::PointSet::Pointer p)
Definition
mitkHummelProtocolEvaluation.cpp:367
mitk::HummelProtocolEvaluation::EvaluateAccumulatedDistances
static bool EvaluateAccumulatedDistances(mitk::PointSet::Pointer p, HummelProtocolMeasurementVolume m, std::vector< HummelProtocolDistanceError > &Results)
Definition
mitkHummelProtocolEvaluation.cpp:146
mitk
IGT Exceptions.
Definition
mitkAlgorithm.h:16
mitk::HummelProtocolEvaluation::HummelProtocolDistanceError
Definition
mitkHummelProtocolEvaluation.h:40
mitk::HummelProtocolEvaluation::HummelProtocolDistanceError::distanceError
double distanceError
Definition
mitkHummelProtocolEvaluation.h:40
mitk::HummelProtocolEvaluation::HummelProtocolDistanceError::description
std::string description
Definition
mitkHummelProtocolEvaluation.h:40
Plugins
org.mitk.gui.qt.igt.app.hummelprotocolmeasurements
src
internal
mitkHummelProtocolEvaluation.h
Generated by
1.12.0