3 #include <itkVectorImage.h> 8 #include "AnimaTractographyExport.h" 26 void SetKappaPolynomialCoefficients(std::vector <double> &coefs);
28 itkSetMacro(FAThreshold,
double)
29 itkSetMacro(ThresholdForProlateTensor,
double)
35 double GetKappaFromFA(
double FA);
36 void GetDTIPrincipalDirection(
const VectorType &modelValue, Vector3DType &resVec,
bool is2d);
37 void GetDTIMinorDirection(VectorType &modelValue, Vector3DType &resVec);
39 virtual Vector3DType ProposeNewDirection(Vector3DType &oldDirection, VectorType &modelValue,
40 Vector3DType &sampling_direction,
double &log_prior,
41 double &log_proposal, std::mt19937 &random_generator,
42 unsigned int threadId) ITK_OVERRIDE;
44 virtual double ComputeLogWeightUpdate(
double b0Value,
double noiseValue, Vector3DType &newDirection, VectorType &modelValue,
45 double &log_prior,
double &log_proposal,
unsigned int threadId) ITK_OVERRIDE;
47 virtual void ComputeModelValue(InterpolatorPointer &modelInterpolator, ContinuousIndexType &index, VectorType &modelValue) ITK_OVERRIDE;
49 virtual Vector3DType InitializeFirstIterationFromModel(Vector3DType &colinearDir,
50 VectorType &modelValue,
unsigned int threadId) ITK_OVERRIDE;
51 virtual bool CheckModelProperties(
double estimatedB0Value,
double estimatedNoiseValue,
52 VectorType &modelValue,
unsigned int threadId) ITK_OVERRIDE;
54 double GetLinearCoefficient(VectorType &modelValue);
55 double GetFractionalAnisotropy(VectorType &modelValue);
56 void GetEigenValueCombinations(VectorType &modelValue,
double &meanLambda,
double &perpLambda);
58 void ComputeAdditionalScalarMaps() ITK_OVERRIDE;
63 double m_ThresholdForProlateTensor;
66 std::vector <
double> m_KappaPolynomialCoefficients;
DTIProbabilisticTractographyImageFilter Self
BaseProbabilisticTractographyImageFilter< itk::VectorImage< double, 3 > > Superclass
itk::SmartPointer< Self > Pointer
itk::SmartPointer< const Self > ConstPointer