UsTK : Ultrasound ToolKit  version 2.0.1 under development (2023-12-07)
usTissueTranslationEstimatorUKF Class Reference

#include <visp3/ustk_needle_modeling/usTissueTranslationEstimatorUKF.h>

+ Inheritance diagram for usTissueTranslationEstimatorUKF:

Public Types

enum  StateDynamicsType : int { CONSTANT_POSITION , CONSTANT_VELOCITY }
 
enum  TissueTranslationType : int { LATERAL_TRANSLATIONS_ONLY , FULL_TRANSLATIONS }
 
enum  MeasureType : int { NEEDLE_BODY_POINTS , TIP_POSITION_AND_DIRECTION , BASE_FORCE_TORQUE }
 
enum  NoiseType : int { ADDITIVE_NOISE , GENERIC_NOISE }
 
enum  SigmaPointGenerationType : int { STANDARD_COVARIANCE , FIXED_SCALING_FACTOR , LIMITED_SPREAD }
 

Public Member Functions

 usTissueTranslationEstimatorUKF ()
 
 ~usTissueTranslationEstimatorUKF ()
 
double getPositionMeasureNoiseVariance () const
 
void setPositionMeasureNoiseVariance (double sigma)
 
double getTipDirectionMeasureNoiseVariance () const
 
void setTipDirectionMeasureNoiseVariance (double sigma)
 
double getForceMeasureNoiseVariance () const
 
void setForceMeasureNoiseVariance (double sigma)
 
double getTorqueMeasureNoiseVariance () const
 
void setTorqueMeasureNoiseVariance (double sigma)
 
double getTissuePositionProcessNoiseVariance () const
 
void setTissuePositionProcessNoiseVariance (double sigma)
 
double getTissueVelocityProcessNoiseVariance () const
 
void setTissueVelocityProcessNoiseVariance (double sigma)
 
StateDynamicsType getStateDynamicsType () const
 
void setStateDynamicsType (StateDynamicsType type)
 
TissueTranslationType getTissueTranslationType () const
 
void setTissueTranslationType (TissueTranslationType type)
 
MeasureType getMeasureType () const
 
void setMeasureType (MeasureType type)
 
void setPropagationTime (double time)
 
void setCurrentNeedle (const usNeedleInsertionModelRayleighRitzSpline &needle)
 
void applyStateToNeedle (usNeedleInsertionModelRayleighRitzSpline &needle) const
 
bool checkConsistency (const vpColVector &measure)
 
void computeProcessNoiseCovarianceMatrix ()
 
void computeMeasureNoiseCovarianceMatrix ()
 
vpColVector propagateSigmaPoint (const vpColVector &sigmaPoint)
 
vpColVector computeMeasureFromSigmaPoint (const vpColVector &sigmaPoint)
 
double stateNorm (const vpColVector &state) const
 
vpColVector measureLog (const vpColVector &measure, const vpColVector &measureCenter) const
 
int getStateDimension () const
 
void setStateDimension (int dim)
 
int getMeasureDimension () const
 
void setMeasureDimension (int dim)
 
NoiseType getProcessNoiseType () const
 
void setProcessNoiseType (NoiseType type)
 
int getProcessNoiseDimension () const
 
void setProcessNoiseDimension (int dim)
 
NoiseType getMeasureNoiseType () const
 
void setMeasureNoiseType (NoiseType type)
 
int getMeasureNoiseDimension () const
 
void setMeasureNoiseDimension (int dim)
 
SigmaPointGenerationType getSigmaPointGenerationType () const
 
void setSigmaPointGenerationType (SigmaPointGenerationType type)
 
double getSigmaPointScalingFactor () const
 
void setSigmaPointScalingFactor (double factor)
 
double getSigmaPointSpreadThreshold () const
 
void setSigmaPointSpreadThreshold (double threshold)
 
vpColVector getState () const
 
void setState (const vpColVector &state)
 
vpMatrix getStateCovarianceMatrix () const
 
void setStateCovarianceMatrix (const vpMatrix &mat)
 
vpMatrix getProcessNoiseCovarianceMatrix () const
 
void setProcessNoiseCovarianceMatrix (const vpMatrix &cov)
 
bool computeProcessNoiseCovarianceMatrixAutomatically () const
 
void computeProcessNoiseCovarianceMatrixAutomatically (bool flag)
 
vpMatrix getMeasureNoiseCovarianceMatrix () const
 
void setMeasureNoiseCovarianceMatrix (const vpMatrix &cov)
 
bool computeMeasureNoiseCovarianceMatrixAutomatically () const
 
void computeMeasureNoiseCovarianceMatrixAutomatically (bool flag)
 
bool generateSigmaPoints ()
 
bool computePropagatedSigmaPoints ()
 
bool computeSigmaMeasures ()
 
void computeMeansAndCovarianceMatricesFromSigmaPoints ()
 
bool updateState ()
 
bool filter (const vpColVector &measure)
 
virtual vpColVector stateLog (const vpColVector &state, const vpColVector &stateCenter) const
 
virtual vpColVector stateExp (const vpColVector &state, const vpColVector &stateCenter) const
 

Public Attributes

double m_var_measure_p
 
double m_var_measure_d
 
double m_var_measure_f
 
double m_var_measure_t
 
double m_var_process_p
 
double m_var_process_v
 
StateDynamicsType m_stateDynamicsType
 
TissueTranslationType m_tissueTranslationType
 
MeasureType m_measureType
 
double m_propagationTime
 
usNeedleInsertionModelRayleighRitzSpline m_needle
 

Protected Attributes

unsigned int m_stateDimension
 
unsigned int m_measureDimension
 
unsigned int m_processNoiseDimension
 
unsigned int m_measureNoiseDimension
 
vpColVector m_state
 
vpMatrix m_stateCovarianceMatrix
 
NoiseType m_processNoiseType
 
vpMatrix m_processNoiseCovarianceMatrix
 
bool m_computeProcessNoiseCovarianceMatrixAutomatically
 
NoiseType m_measureNoiseType
 
vpMatrix m_measureNoiseCovarianceMatrix
 
bool m_computeMeasureNoiseCovarianceMatrixAutomatically
 
vpColVector m_measure
 
SigmaPointGenerationType m_sigmaPointsGenerationType
 
vpMatrix m_sigmaPointsInit
 
vpMatrix m_sigmaPointsPropagated
 
vpMatrix m_sigmaPointsMeasure
 
vpColVector m_sigmaPointsMeanWeights
 
vpColVector m_sigmaPointsCovarianceWeights
 
double m_sigmaPointsScalingFactor
 
double m_sigmaPointsSpreadThreshold
 
vpColVector m_stateSigmaMean
 
vpColVector m_measureSigmaMean
 
vpMatrix m_stateSigmaCovarianceMatrix
 
vpMatrix m_stateMeasureSigmaCovarianceMatrix
 
vpMatrix m_measureSigmaCovarianceMatrix
 

Detailed Description

Definition at line 49 of file usTissueTranslationEstimatorUKF.h.

Member Enumeration Documentation

◆ MeasureType

Enumerator
NEEDLE_BODY_POINTS 
TIP_POSITION_AND_DIRECTION 
BASE_FORCE_TORQUE 

Definition at line 55 of file usTissueTranslationEstimatorUKF.h.

◆ NoiseType

enum usUnscentedKalmanFilter::NoiseType : int
inherited
Enumerator
ADDITIVE_NOISE 
GENERIC_NOISE 

Definition at line 53 of file usUnscentedKalmanFilter.h.

◆ SigmaPointGenerationType

Enumerator
STANDARD_COVARIANCE 
FIXED_SCALING_FACTOR 
LIMITED_SPREAD 

Definition at line 54 of file usUnscentedKalmanFilter.h.

◆ StateDynamicsType

Enumerator
CONSTANT_POSITION 
CONSTANT_VELOCITY 

Definition at line 53 of file usTissueTranslationEstimatorUKF.h.

◆ TissueTranslationType

Enumerator
LATERAL_TRANSLATIONS_ONLY 
FULL_TRANSLATIONS 

Definition at line 54 of file usTissueTranslationEstimatorUKF.h.

Constructor & Destructor Documentation

◆ usTissueTranslationEstimatorUKF()

◆ ~usTissueTranslationEstimatorUKF()

usTissueTranslationEstimatorUKF::~usTissueTranslationEstimatorUKF ( )

Definition at line 57 of file usTissueTranslationEstimatorUKF.cpp.

Member Function Documentation

◆ applyStateToNeedle()

◆ checkConsistency()

◆ computeMeansAndCovarianceMatricesFromSigmaPoints()

◆ computeMeasureFromSigmaPoint()

◆ computeMeasureNoiseCovarianceMatrix()

◆ computeMeasureNoiseCovarianceMatrixAutomatically() [1/2]

bool usUnscentedKalmanFilter::computeMeasureNoiseCovarianceMatrixAutomatically ( ) const
inherited

◆ computeMeasureNoiseCovarianceMatrixAutomatically() [2/2]

void usUnscentedKalmanFilter::computeMeasureNoiseCovarianceMatrixAutomatically ( bool  flag)
inherited

◆ computeProcessNoiseCovarianceMatrix()

◆ computeProcessNoiseCovarianceMatrixAutomatically() [1/2]

bool usUnscentedKalmanFilter::computeProcessNoiseCovarianceMatrixAutomatically ( ) const
inherited

◆ computeProcessNoiseCovarianceMatrixAutomatically() [2/2]

void usUnscentedKalmanFilter::computeProcessNoiseCovarianceMatrixAutomatically ( bool  flag)
inherited

◆ computePropagatedSigmaPoints()

bool usUnscentedKalmanFilter::computePropagatedSigmaPoints ( )
inherited

◆ computeSigmaMeasures()

◆ filter()

◆ generateSigmaPoints()

◆ getForceMeasureNoiseVariance()

double usTissueTranslationEstimatorUKF::getForceMeasureNoiseVariance ( ) const

Definition at line 82 of file usTissueTranslationEstimatorUKF.cpp.

References m_var_measure_f.

◆ getMeasureDimension()

int usUnscentedKalmanFilter::getMeasureDimension ( ) const
inherited

◆ getMeasureNoiseCovarianceMatrix()

vpMatrix usUnscentedKalmanFilter::getMeasureNoiseCovarianceMatrix ( ) const
inherited

◆ getMeasureNoiseDimension()

int usUnscentedKalmanFilter::getMeasureNoiseDimension ( ) const
inherited

◆ getMeasureNoiseType()

usUnscentedKalmanFilter::NoiseType usUnscentedKalmanFilter::getMeasureNoiseType ( ) const
inherited

◆ getMeasureType()

usTissueTranslationEstimatorUKF::MeasureType usTissueTranslationEstimatorUKF::getMeasureType ( ) const

Definition at line 156 of file usTissueTranslationEstimatorUKF.cpp.

References m_measureType.

◆ getPositionMeasureNoiseVariance()

double usTissueTranslationEstimatorUKF::getPositionMeasureNoiseVariance ( ) const

Definition at line 62 of file usTissueTranslationEstimatorUKF.cpp.

References m_var_measure_p.

◆ getProcessNoiseCovarianceMatrix()

vpMatrix usUnscentedKalmanFilter::getProcessNoiseCovarianceMatrix ( ) const
inherited

◆ getProcessNoiseDimension()

int usUnscentedKalmanFilter::getProcessNoiseDimension ( ) const
inherited

◆ getProcessNoiseType()

usUnscentedKalmanFilter::NoiseType usUnscentedKalmanFilter::getProcessNoiseType ( ) const
inherited

◆ getSigmaPointGenerationType()

usUnscentedKalmanFilter::SigmaPointGenerationType usUnscentedKalmanFilter::getSigmaPointGenerationType ( ) const
inherited

◆ getSigmaPointScalingFactor()

double usUnscentedKalmanFilter::getSigmaPointScalingFactor ( ) const
inherited

◆ getSigmaPointSpreadThreshold()

double usUnscentedKalmanFilter::getSigmaPointSpreadThreshold ( ) const
inherited

◆ getState()

vpColVector usUnscentedKalmanFilter::getState ( ) const
inherited

Definition at line 242 of file usUnscentedKalmanFilter.cpp.

References usUnscentedKalmanFilter::m_state.

◆ getStateCovarianceMatrix()

vpMatrix usUnscentedKalmanFilter::getStateCovarianceMatrix ( ) const
inherited

◆ getStateDimension()

int usUnscentedKalmanFilter::getStateDimension ( ) const
inherited

◆ getStateDynamicsType()

usTissueTranslationEstimatorUKF::StateDynamicsType usTissueTranslationEstimatorUKF::getStateDynamicsType ( ) const

Definition at line 122 of file usTissueTranslationEstimatorUKF.cpp.

References m_stateDynamicsType.

◆ getTipDirectionMeasureNoiseVariance()

double usTissueTranslationEstimatorUKF::getTipDirectionMeasureNoiseVariance ( ) const

Definition at line 72 of file usTissueTranslationEstimatorUKF.cpp.

References m_var_measure_d.

◆ getTissuePositionProcessNoiseVariance()

double usTissueTranslationEstimatorUKF::getTissuePositionProcessNoiseVariance ( ) const

Definition at line 102 of file usTissueTranslationEstimatorUKF.cpp.

References m_var_process_p.

◆ getTissueTranslationType()

usTissueTranslationEstimatorUKF::TissueTranslationType usTissueTranslationEstimatorUKF::getTissueTranslationType ( ) const

Definition at line 146 of file usTissueTranslationEstimatorUKF.cpp.

References m_tissueTranslationType.

◆ getTissueVelocityProcessNoiseVariance()

double usTissueTranslationEstimatorUKF::getTissueVelocityProcessNoiseVariance ( ) const

Definition at line 112 of file usTissueTranslationEstimatorUKF.cpp.

References m_var_process_v.

◆ getTorqueMeasureNoiseVariance()

double usTissueTranslationEstimatorUKF::getTorqueMeasureNoiseVariance ( ) const

Definition at line 92 of file usTissueTranslationEstimatorUKF.cpp.

References m_var_measure_t.

◆ measureLog()

vpColVector usTissueTranslationEstimatorUKF::measureLog ( const vpColVector &  measure,
const vpColVector &  measureCenter 
) const
virtual

◆ propagateSigmaPoint()

vpColVector usTissueTranslationEstimatorUKF::propagateSigmaPoint ( const vpColVector &  sigmaPoint)
virtual

◆ setCurrentNeedle()

◆ setForceMeasureNoiseVariance()

void usTissueTranslationEstimatorUKF::setForceMeasureNoiseVariance ( double  sigma)

Definition at line 87 of file usTissueTranslationEstimatorUKF.cpp.

References m_var_measure_f.

◆ setMeasureDimension()

◆ setMeasureNoiseCovarianceMatrix()

void usUnscentedKalmanFilter::setMeasureNoiseCovarianceMatrix ( const vpMatrix &  cov)
inherited

◆ setMeasureNoiseDimension()

void usUnscentedKalmanFilter::setMeasureNoiseDimension ( int  dim)
inherited

◆ setMeasureNoiseType()

void usUnscentedKalmanFilter::setMeasureNoiseType ( NoiseType  type)
inherited

◆ setMeasureType()

◆ setPositionMeasureNoiseVariance()

void usTissueTranslationEstimatorUKF::setPositionMeasureNoiseVariance ( double  sigma)

Definition at line 67 of file usTissueTranslationEstimatorUKF.cpp.

References m_var_measure_p.

◆ setProcessNoiseCovarianceMatrix()

void usUnscentedKalmanFilter::setProcessNoiseCovarianceMatrix ( const vpMatrix &  cov)
inherited

◆ setProcessNoiseDimension()

void usUnscentedKalmanFilter::setProcessNoiseDimension ( int  dim)
inherited

◆ setProcessNoiseType()

void usUnscentedKalmanFilter::setProcessNoiseType ( NoiseType  type)
inherited

◆ setPropagationTime()

void usTissueTranslationEstimatorUKF::setPropagationTime ( double  time)

Definition at line 168 of file usTissueTranslationEstimatorUKF.cpp.

References m_propagationTime.

◆ setSigmaPointGenerationType()

void usUnscentedKalmanFilter::setSigmaPointGenerationType ( usUnscentedKalmanFilter::SigmaPointGenerationType  type)
inherited

◆ setSigmaPointScalingFactor()

void usUnscentedKalmanFilter::setSigmaPointScalingFactor ( double  factor)
inherited

◆ setSigmaPointSpreadThreshold()

void usUnscentedKalmanFilter::setSigmaPointSpreadThreshold ( double  threshold)
inherited

◆ setState()

void usUnscentedKalmanFilter::setState ( const vpColVector &  state)
inherited

◆ setStateCovarianceMatrix()

void usUnscentedKalmanFilter::setStateCovarianceMatrix ( const vpMatrix &  mat)
inherited

◆ setStateDimension()

◆ setStateDynamicsType()

void usTissueTranslationEstimatorUKF::setStateDynamicsType ( usTissueTranslationEstimatorUKF::StateDynamicsType  type)

◆ setTipDirectionMeasureNoiseVariance()

void usTissueTranslationEstimatorUKF::setTipDirectionMeasureNoiseVariance ( double  sigma)

Definition at line 77 of file usTissueTranslationEstimatorUKF.cpp.

References m_var_measure_d.

◆ setTissuePositionProcessNoiseVariance()

void usTissueTranslationEstimatorUKF::setTissuePositionProcessNoiseVariance ( double  sigma)

Definition at line 107 of file usTissueTranslationEstimatorUKF.cpp.

References m_var_process_p.

◆ setTissueTranslationType()

void usTissueTranslationEstimatorUKF::setTissueTranslationType ( usTissueTranslationEstimatorUKF::TissueTranslationType  type)

Definition at line 151 of file usTissueTranslationEstimatorUKF.cpp.

References m_tissueTranslationType.

◆ setTissueVelocityProcessNoiseVariance()

void usTissueTranslationEstimatorUKF::setTissueVelocityProcessNoiseVariance ( double  sigma)

Definition at line 117 of file usTissueTranslationEstimatorUKF.cpp.

References m_var_process_v.

◆ setTorqueMeasureNoiseVariance()

void usTissueTranslationEstimatorUKF::setTorqueMeasureNoiseVariance ( double  sigma)

Definition at line 97 of file usTissueTranslationEstimatorUKF.cpp.

References m_var_measure_t.

◆ stateExp()

vpColVector usUnscentedKalmanFilter::stateExp ( const vpColVector &  state,
const vpColVector &  stateCenter 
) const
virtualinherited

Definition at line 609 of file usUnscentedKalmanFilter.cpp.

Referenced by usUnscentedKalmanFilter::updateState().

◆ stateLog()

vpColVector usUnscentedKalmanFilter::stateLog ( const vpColVector &  state,
const vpColVector &  stateCenter 
) const
virtualinherited

◆ stateNorm()

double usTissueTranslationEstimatorUKF::stateNorm ( const vpColVector &  state) const
virtual

◆ updateState()

Member Data Documentation

◆ m_computeMeasureNoiseCovarianceMatrixAutomatically

bool usUnscentedKalmanFilter::m_computeMeasureNoiseCovarianceMatrixAutomatically
protectedinherited

◆ m_computeProcessNoiseCovarianceMatrixAutomatically

bool usUnscentedKalmanFilter::m_computeProcessNoiseCovarianceMatrixAutomatically
protectedinherited

◆ m_measure

vpColVector usUnscentedKalmanFilter::m_measure
protectedinherited

◆ m_measureDimension

◆ m_measureNoiseCovarianceMatrix

◆ m_measureNoiseDimension

◆ m_measureNoiseType

◆ m_measureSigmaCovarianceMatrix

vpMatrix usUnscentedKalmanFilter::m_measureSigmaCovarianceMatrix
protectedinherited

◆ m_measureSigmaMean

vpColVector usUnscentedKalmanFilter::m_measureSigmaMean
protectedinherited

◆ m_measureType

◆ m_needle

◆ m_processNoiseCovarianceMatrix

◆ m_processNoiseDimension

◆ m_processNoiseType

◆ m_propagationTime

double usTissueTranslationEstimatorUKF::m_propagationTime

◆ m_sigmaPointsCovarianceWeights

vpColVector usUnscentedKalmanFilter::m_sigmaPointsCovarianceWeights
protectedinherited

◆ m_sigmaPointsGenerationType

◆ m_sigmaPointsInit

vpMatrix usUnscentedKalmanFilter::m_sigmaPointsInit
protectedinherited

◆ m_sigmaPointsMeanWeights

vpColVector usUnscentedKalmanFilter::m_sigmaPointsMeanWeights
protectedinherited

◆ m_sigmaPointsMeasure

vpMatrix usUnscentedKalmanFilter::m_sigmaPointsMeasure
protectedinherited

◆ m_sigmaPointsPropagated

◆ m_sigmaPointsScalingFactor

double usUnscentedKalmanFilter::m_sigmaPointsScalingFactor
protectedinherited

◆ m_sigmaPointsSpreadThreshold

double usUnscentedKalmanFilter::m_sigmaPointsSpreadThreshold
protectedinherited

◆ m_state

◆ m_stateCovarianceMatrix

◆ m_stateDimension

◆ m_stateDynamicsType

StateDynamicsType usTissueTranslationEstimatorUKF::m_stateDynamicsType

◆ m_stateMeasureSigmaCovarianceMatrix

◆ m_stateSigmaCovarianceMatrix

vpMatrix usUnscentedKalmanFilter::m_stateSigmaCovarianceMatrix
protectedinherited

◆ m_stateSigmaMean

vpColVector usUnscentedKalmanFilter::m_stateSigmaMean
protectedinherited

◆ m_tissueTranslationType

TissueTranslationType usTissueTranslationEstimatorUKF::m_tissueTranslationType

◆ m_var_measure_d

double usTissueTranslationEstimatorUKF::m_var_measure_d

◆ m_var_measure_f

double usTissueTranslationEstimatorUKF::m_var_measure_f

◆ m_var_measure_p

double usTissueTranslationEstimatorUKF::m_var_measure_p

◆ m_var_measure_t

double usTissueTranslationEstimatorUKF::m_var_measure_t

◆ m_var_process_p

double usTissueTranslationEstimatorUKF::m_var_process_p

◆ m_var_process_v

double usTissueTranslationEstimatorUKF::m_var_process_v