shapeworks::DisentangledCorrespondenceFunction
#include <DisentangledCorrespondenceFunction.h>
Inherits from shapeworks::VectorFunction, itk::LightObject
Public Types
Name | |
---|---|
typedef DisentangledCorrespondenceFunction | Self |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer< const Self > | ConstPointer |
typedef VectorFunction | Superclass |
typedef LegacyShapeMatrix | ShapeMatrixType |
typedef ShapeMatrixType::DataType | DataType |
typedef Superclass::VectorType | VectorType |
typedef ParticleSystem::PointType | PointType |
typedef vnl_vector< DataType > | vnl_vector_type |
typedef vnl_matrix< DataType > | vnl_matrix_type |
typedef std::shared_ptr< std::vector< vnl_matrix_type > > | shared_vnl_matrix_array_type |
Public Functions
Name | |
---|---|
itkTypeMacro(DisentangledCorrespondenceFunction , VectorFunction ) | |
itkNewMacro(Self ) | |
itkStaticConstMacro(Dimension , unsigned int , VDimension ) | |
virtual VectorType | Evaluate(unsigned int , unsigned int , const ParticleSystem * , double & , double & ) const |
virtual VectorType | Evaluate(unsigned int , unsigned int , const ParticleSystem * , double & maxtimestep) const |
virtual double | Energy(unsigned int a, unsigned int b, const ParticleSystem * c) const |
void | WriteModes(const std::string & , int ) const |
void | SetShapeMatrix(ShapeMatrixType * s) |
ShapeMatrixType * | GetShapeMatrix() |
const ShapeMatrixType * | GetShapeMatrix() const |
virtual void | BeforeIteration() |
virtual void | AfterIteration() |
void | SetMinimumVariance(double d) |
double | GetMinimumVariance() const |
void | SetMinimumVarianceDecay(double initial_value, double final_value, double time_period) |
bool | GetMinimumVarianceDecayConstant() const |
void | PrintShapeMatrix() |
void | UseMeanEnergy() |
void | UseEntropy() |
bool | GetHoldMinimumVariance() const |
void | SetHoldMinimumVariance(bool b) |
void | SetRecomputeCovarianceInterval(int i) |
int | GetRecomputeCovarianceInterval() const |
virtual VectorFunction::Pointer | Clone() |
Protected Functions
Name | |
---|---|
DisentangledCorrespondenceFunction() | |
virtual | ~DisentangledCorrespondenceFunction() |
void | operator=(const DisentangledCorrespondenceFunction & ) |
DisentangledCorrespondenceFunction(const DisentangledCorrespondenceFunction & ) | |
virtual void | ComputeCovarianceMatrices() |
void | Initialize() |
Public Attributes
Name | |
---|---|
constexpr static unsigned int | VDimension |
Protected Attributes
Name | |
---|---|
ShapeMatrixType::Pointer | m_ShapeMatrix |
double | m_MinimumVariance |
double | m_MinimumEigenValue |
std::vector< double > | m_MinimumEigenValue_time_cohort |
std::vector< double > | m_MinimumEigenValue_shape_cohort |
double | m_CurrentEnergy |
bool | m_HoldMinimumVariance |
double | m_MinimumVarianceDecayConstant |
int | m_RecomputeCovarianceInterval |
int | m_Counter |
bool | m_UseMeanEnergy |
std::shared_ptr< std::vector< Eigen::MatrixXd > > | m_InverseCovMatrices_time_cohort |
std::shared_ptr< std::vector< Eigen::MatrixXd > > | m_InverseCovMatrices_shape_cohort |
shared_vnl_matrix_array_type | m_points_mean_time_cohort |
shared_vnl_matrix_array_type | m_points_mean_shape_cohort |
shared_vnl_matrix_array_type | m_Time_PointsUpdate |
shared_vnl_matrix_array_type | m_Shape_PointsUpdate |
Additional inherited members
Public Functions inherited from shapeworks::VectorFunction
Name | |
---|---|
virtual void | ResetBuffers() |
virtual void | BeforeEvaluate(unsigned int , unsigned int , const ParticleSystem * ) |
virtual void | SetParticleSystem(ParticleSystem * p) |
virtual ParticleSystem * | GetParticleSystem() const |
virtual void | SetDomainNumber(unsigned int i) |
virtual int | GetDomainNumber() const |
virtual double | GetRelativeEnergyScaling() const |
virtual void | SetRelativeEnergyScaling(double r) |
Protected Functions inherited from shapeworks::VectorFunction
Name | |
---|---|
VectorFunction() | |
virtual | ~VectorFunction() |
VectorFunction(const VectorFunction & ) |
Protected Attributes inherited from shapeworks::VectorFunction
Name | |
---|---|
ParticleSystem * | m_ParticleSystem |
unsigned int | m_DomainNumber |
Detailed Description
class shapeworks::DisentangledCorrespondenceFunction;
This class implements the Correspondence Term where the entropy computation is disentangled across time and shape domain, and builds a Sapatiotemporal SSM.
Public Types Documentation
typedef Self
typedef DisentangledCorrespondenceFunction shapeworks::DisentangledCorrespondenceFunction::Self;
Standard class typedefs.
typedef Pointer
typedef itk::SmartPointer<Self> shapeworks::DisentangledCorrespondenceFunction::Pointer;
typedef ConstPointer
typedef itk::SmartPointer<const Self> shapeworks::DisentangledCorrespondenceFunction::ConstPointer;
typedef Superclass
typedef VectorFunction shapeworks::DisentangledCorrespondenceFunction::Superclass;
typedef ShapeMatrixType
typedef LegacyShapeMatrix shapeworks::DisentangledCorrespondenceFunction::ShapeMatrixType;
typedef DataType
typedef ShapeMatrixType::DataType shapeworks::DisentangledCorrespondenceFunction::DataType;
typedef VectorType
typedef Superclass::VectorType shapeworks::DisentangledCorrespondenceFunction::VectorType;
Vector & Point types.
typedef PointType
typedef ParticleSystem::PointType shapeworks::DisentangledCorrespondenceFunction::PointType;
typedef vnl_vector_type
typedef vnl_vector<DataType> shapeworks::DisentangledCorrespondenceFunction::vnl_vector_type;
typedef vnl_matrix_type
typedef vnl_matrix<DataType> shapeworks::DisentangledCorrespondenceFunction::vnl_matrix_type;
typedef shared_vnl_matrix_array_type
typedef std::shared_ptr<std::vector<vnl_matrix_type> > shapeworks::DisentangledCorrespondenceFunction::shared_vnl_matrix_array_type;
Public Functions Documentation
function itkTypeMacro
itkTypeMacro(
DisentangledCorrespondenceFunction ,
VectorFunction
)
function itkNewMacro
itkNewMacro(
Self
)
Method for creation through the object factory.
function itkStaticConstMacro
itkStaticConstMacro(
Dimension ,
unsigned int ,
VDimension
)
Dimensionality of the domain of the particle system.
function Evaluate
virtual VectorType Evaluate(
unsigned int ,
unsigned int ,
const ParticleSystem * ,
double & ,
double &
) const
Reimplements: shapeworks::VectorFunction::Evaluate
The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain.
function Evaluate
inline virtual VectorType Evaluate(
unsigned int ,
unsigned int ,
const ParticleSystem * ,
double & maxtimestep
) const
Reimplements: shapeworks::VectorFunction::Evaluate
The first argument is a pointer to the particle system. The second argument is the index of the domain within that particle system. The third argument is the index of the particle location within the given domain.
function Energy
inline virtual double Energy(
unsigned int a,
unsigned int b,
const ParticleSystem * c
) const
Reimplements: shapeworks::VectorFunction::Energy
function WriteModes
void WriteModes(
const std::string & ,
int
) const
Write the first n modes to +- 3 std dev and the mean of the model described by the covariance matrix. The string argument is a prefix to the file names.
function SetShapeMatrix
inline void SetShapeMatrix(
ShapeMatrixType * s
)
Access the shape matrix.
function GetShapeMatrix
inline ShapeMatrixType * GetShapeMatrix()
function GetShapeMatrix
inline const ShapeMatrixType * GetShapeMatrix() const
function BeforeIteration
inline virtual void BeforeIteration()
Reimplements: shapeworks::VectorFunction::BeforeIteration
Called before each iteration of a solver.
function AfterIteration
inline virtual void AfterIteration()
Reimplements: shapeworks::VectorFunction::AfterIteration
Called after each iteration of the solver.
function SetMinimumVariance
inline void SetMinimumVariance(
double d
)
function GetMinimumVariance
inline double GetMinimumVariance() const
function SetMinimumVarianceDecay
inline void SetMinimumVarianceDecay(
double initial_value,
double final_value,
double time_period
)
function GetMinimumVarianceDecayConstant
inline bool GetMinimumVarianceDecayConstant() const
function PrintShapeMatrix
inline void PrintShapeMatrix()
function UseMeanEnergy
inline void UseMeanEnergy()
function UseEntropy
inline void UseEntropy()
function GetHoldMinimumVariance
inline bool GetHoldMinimumVariance() const
function SetHoldMinimumVariance
inline void SetHoldMinimumVariance(
bool b
)
function SetRecomputeCovarianceInterval
inline void SetRecomputeCovarianceInterval(
int i
)
function GetRecomputeCovarianceInterval
inline int GetRecomputeCovarianceInterval() const
function Clone
inline virtual VectorFunction::Pointer Clone()
Reimplements: shapeworks::VectorFunction::Clone
Protected Functions Documentation
function DisentangledCorrespondenceFunction
inline DisentangledCorrespondenceFunction()
function ~DisentangledCorrespondenceFunction
inline virtual ~DisentangledCorrespondenceFunction()
function operator=
void operator=(
const DisentangledCorrespondenceFunction &
)
function DisentangledCorrespondenceFunction
DisentangledCorrespondenceFunction(
const DisentangledCorrespondenceFunction &
)
function ComputeCovarianceMatrices
virtual void ComputeCovarianceMatrices()
function Initialize
inline void Initialize()
Public Attributes Documentation
variable VDimension
static constexpr static unsigned int VDimension = 3;
Protected Attributes Documentation
variable m_ShapeMatrix
ShapeMatrixType::Pointer m_ShapeMatrix;
variable m_MinimumVariance
double m_MinimumVariance;
variable m_MinimumEigenValue
double m_MinimumEigenValue;
variable m_MinimumEigenValue_time_cohort
std::vector< double > m_MinimumEigenValue_time_cohort;
variable m_MinimumEigenValue_shape_cohort
std::vector< double > m_MinimumEigenValue_shape_cohort;
variable m_CurrentEnergy
double m_CurrentEnergy;
variable m_HoldMinimumVariance
bool m_HoldMinimumVariance;
variable m_MinimumVarianceDecayConstant
double m_MinimumVarianceDecayConstant;
variable m_RecomputeCovarianceInterval
int m_RecomputeCovarianceInterval;
variable m_Counter
int m_Counter;
variable m_UseMeanEnergy
bool m_UseMeanEnergy;
variable m_InverseCovMatrices_time_cohort
std::shared_ptr< std::vector< Eigen::MatrixXd > > m_InverseCovMatrices_time_cohort;
variable m_InverseCovMatrices_shape_cohort
std::shared_ptr< std::vector< Eigen::MatrixXd > > m_InverseCovMatrices_shape_cohort;
variable m_points_mean_time_cohort
shared_vnl_matrix_array_type m_points_mean_time_cohort;
variable m_points_mean_shape_cohort
shared_vnl_matrix_array_type m_points_mean_shape_cohort;
variable m_Time_PointsUpdate
shared_vnl_matrix_array_type m_Time_PointsUpdate;
variable m_Shape_PointsUpdate
shared_vnl_matrix_array_type m_Shape_PointsUpdate;
Updated on 2024-03-17 at 12:58:44 -0600