NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
Public Member Functions | Protected Member Functions | List of all members
mitk::PivotCalibration Class Reference

Does a pivot calibration from a vector of 4x4 matrices, such as might be used to calibrate an image guided surgery pointing device. More...

Inheritance diagram for mitk::PivotCalibration:
Inheritance graph
[legend]
Collaboration diagram for mitk::PivotCalibration:
Collaboration graph
[legend]

Public Member Functions

 mitkClassMacroItkParent (PivotCalibration, itk::Object) static Pointer New()
 
virtual void SetSingularValueThreshold (double _arg)
 
virtual double GetSingularValueThreshold ()
 
void CalibrateUsingFilesInDirectories (const std::string &matrixDirectory, double &residualError, vtkMatrix4x4 &outputMatrix, const int &percentage=100, const int &reruns=100)
 Method that provides directory scanning before calling the other calibrate method. More...
 
void Calibrate (const std::vector< cv::Mat > &matrices, cv::Matx44d &outputMatrix, double &residualError, const int &percentage=100, const int &reruns=100)
 Performs pivot (invariant point) based calibration. More...
 

Protected Member Functions

 PivotCalibration ()
 
virtual ~PivotCalibration ()
 
 PivotCalibration (const PivotCalibration &)
 
PivotCalibrationoperator= (const PivotCalibration &)
 

Detailed Description

Does a pivot calibration from a vector of 4x4 matrices, such as might be used to calibrate an image guided surgery pointing device.

Inspired by: Feuerstein et. al. Intraoperative Laparoscope Augmentation for Port Placement and Resection Planning. IEEE TMI Vol 27, No 3. March 2008.

Constructor & Destructor Documentation

mitk::PivotCalibration::PivotCalibration ( )
protected
mitk::PivotCalibration::~PivotCalibration ( )
protectedvirtual
mitk::PivotCalibration::PivotCalibration ( const PivotCalibration )
protected

Member Function Documentation

void mitk::PivotCalibration::Calibrate ( const std::vector< cv::Mat > &  matrices,
cv::Matx44d &  outputMatrix,
double &  residualError,
const int percentage = 100,
const int reruns = 100 
)

Performs pivot (invariant point) based calibration.

Parameters
In]matrices a vector of 4x4 matrices representing rigid body tracking transformation.
Out]outputMatrix the calibration matrix
Out]residualError the root mean square distance of each re-constructed point from the invariant point.
In]percentage if < 100 and > 0 will take a randomly chosen number of matrices and run calibration, and measure the mean and standard deviation of the RMS reconstrution error.
In]reruns the number of re-runs to do when you are randomly selecting data.
void mitk::PivotCalibration::CalibrateUsingFilesInDirectories ( const std::string matrixDirectory,
double &  residualError,
vtkMatrix4x4 &  outputMatrix,
const int percentage = 100,
const int reruns = 100 
)

Method that provides directory scanning before calling the other calibrate method.

More specifically, it is assumed that a directory is provided containing JUST the 4x4 matrices, where each matrix is a separate plain text file, containing 4 rows of 4 floating point numbers, each number separated by spaces.

Parameters
In]matrixDirectory directory containing tracking matrices
Out]residualError the root mean square distance of each re-constructed point from the invariant point.
Out]outputMatrix the output transformation.
In]percentage if < 100 and > 0 will take a randomly chosen number of matrices and run calibration, and measure the mean and standard deviation of the RMS reconstrution error.
In]reruns the number of re-runs to do when you are randomly selecting data.
virtual double mitk::PivotCalibration::GetSingularValueThreshold ( )
virtual
mitk::PivotCalibration::mitkClassMacroItkParent ( PivotCalibration  ,
itk::Object   
)
PivotCalibration& mitk::PivotCalibration::operator= ( const PivotCalibration )
protected
virtual void mitk::PivotCalibration::SetSingularValueThreshold ( double  _arg)
virtual

The documentation for this class was generated from the following files: