ANIMA
4.0
|
Implements multi-peak T2 relaxometry estimation (with or without regularization) More...
#include <animaMultiT2RelaxometryEstimationImageFilter.h>
Public Types | |
typedef itk::SmartPointer< const Self > | ConstPointer |
typedef NNLSOptimizerType::MatrixType | DataMatrixType |
typedef InputImageType::IndexType | IndexType |
typedef InputImageType::Pointer | InputImagePointer |
typedef Superclass::InputImageRegionType | InputImageRegionType |
typedef TInputImage | InputImageType |
typedef Superclass::MaskImageType | MaskImageType |
typedef NNLSOptimizerType::Pointer | NNLSOptimizerPointer |
typedef anima::NNLSOptimizer | NNLSOptimizerType |
typedef OutputImageType::Pointer | OutputImagePointer |
typedef Superclass::OutputImageRegionType | OutputImageRegionType |
typedef TOutputImage | OutputImageType |
typedef VectorOutputImageType::PixelType | OutputVectorType |
typedef anima::NonLocalT2DistributionPatchSearcher< VectorOutputImageType, InputImageType > | PatchSearcherType |
typedef itk::SmartPointer< Self > | Pointer |
typedef MultiT2RelaxometryEstimationImageFilter | Self |
typedef anima::MaskedImageToImageFilter< TInputImage, TOutputImage > | Superclass |
typedef NNLSOptimizerType::ParametersType | T2VectorType |
typedef itk::Image< TPixelScalarType, 3 > | TInputImage |
typedef itk::Image< TPixelScalarType, 3 > | TOutputImage |
typedef VectorOutputImageType::Pointer | VectorOutputImagePointer |
typedef itk::VectorImage< TPixelScalarType, 3 > | VectorOutputImageType |
Public Types inherited from anima::MaskedImageToImageFilter< itk::Image< TPixelScalarType, 3 >, itk::Image< TPixelScalarType, 3 > > | |
typedef itk::SmartPointer< const Self > | ConstPointer |
typedef Superclass::InputImageRegionType | InputImageRegionType |
typedef MaskImageType::Pointer | MaskImagePointer |
typedef itk::Image< unsigned char, itk::Image< TPixelScalarType, 3 > ::ImageDimension > | MaskImageType |
typedef MaskImageType::IndexType | MaskIndexType |
typedef MaskImageType::RegionType | MaskRegionType |
typedef MaskImageType::SizeType | MaskSizeType |
typedef Superclass::OutputImageRegionType | OutputImageRegionType |
typedef itk::SmartPointer< Self > | Pointer |
typedef MaskedImageToImageFilter | Self |
typedef anima::NumberedThreadImageToImageFilter< itk::Image< TPixelScalarType, 3 >, itk::Image< TPixelScalarType, 3 > > | Superclass |
typedef itk::ImageSource< itk::Image< TPixelScalarType, 3 > >::ThreadStruct | ThreadStruct |
Public Types inherited from anima::NumberedThreadImageToImageFilter< itk::Image< TPixelScalarType, 3 >, itk::Image< TPixelScalarType, 3 > > | |
typedef itk::SmartPointer< const Self > | ConstPointer |
typedef Superclass::OutputImageRegionType | OutputImageRegionType |
typedef itk::SmartPointer< Self > | Pointer |
typedef NumberedThreadImageToImageFilter | Self |
typedef itk::ImageToImageFilter< itk::Image< TPixelScalarType, 3 >, itk::Image< TPixelScalarType, 3 > > | Superclass |
typedef itk::ImageSource< itk::Image< TPixelScalarType, 3 > >::ThreadStruct | ThreadStruct |
Public Member Functions | |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
InputImageType * | GetB1OutputImage () |
InputImageType * | GetCostOutputImage () |
InputImageType * | GetM0OutputImage () |
InputImageType * | GetMWFOutputImage () |
virtual const char * | GetNameOfClass () const |
InputImageType * | GetT1Map () |
VectorOutputImageType * | GetT2OutputImage () |
virtual void | SetAverageSignalThreshold (double _arg) |
virtual void | SetB1MaximumOptimizerIterations (unsigned int _arg) |
virtual void | SetB1OptimizerInitialStep (double _arg) |
virtual void | SetB1OptimizerStopCondition (double _arg) |
virtual void | SetB1Tolerance (double _arg) |
virtual void | SetBetaParameter (double _arg) |
virtual void | SetEchoSpacing (double _arg) |
virtual void | SetInitialB1Map (InputImageType *_arg) |
virtual void | SetInitialM0Map (InputImageType *_arg) |
virtual void | SetInitialT2Map (VectorOutputImageType *_arg) |
virtual void | SetLowerT2Bound (double _arg) |
virtual void | SetMeanMinThreshold (double _arg) |
virtual void | SetMyelinThreshold (double _arg) |
virtual void | SetNLEstimation (bool _arg) |
virtual void | SetNumberOfT2Compartments (unsigned int _arg) |
virtual void | SetPatchHalfSize (unsigned int _arg) |
virtual void | SetRegularizationIntensity (double _arg) |
virtual void | SetSearchNeighborhood (unsigned int _arg) |
virtual void | SetSearchStepSize (unsigned int _arg) |
void | SetT1Map (InputImageType *map) |
virtual void | SetT2ExcitationFlipAngle (double _arg) |
void | SetT2FlipAngles (std::vector< double > &flipAngles) |
void | SetT2FlipAngles (double singleAngle, unsigned int numAngles) |
virtual void | SetUpperT2Bound (double _arg) |
virtual void | SetVarMinThreshold (double _arg) |
virtual void | SetWeightThreshold (double _arg) |
Public Member Functions inherited from anima::MaskedImageToImageFilter< itk::Image< TPixelScalarType, 3 >, itk::Image< TPixelScalarType, 3 > > | |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
virtual MaskImageType * | GetComputationMask () |
virtual void | SetComputationMask (MaskImagePointer _arg) |
Public Member Functions inherited from anima::NumberedThreadImageToImageFilter< itk::Image< TPixelScalarType, 3 >, itk::Image< TPixelScalarType, 3 > > | |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
virtual OutputImageRegionType | GetComputationRegion () |
virtual void | SetComputationRegion (OutputImageRegionType _arg) |
virtual void | SetNumberOfPointsToProcess (unsigned int _arg) |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from anima::MaskedImageToImageFilter< itk::Image< TPixelScalarType, 3 >, itk::Image< TPixelScalarType, 3 > > | |
static Pointer | New () |
Static Public Member Functions inherited from anima::NumberedThreadImageToImageFilter< itk::Image< TPixelScalarType, 3 >, itk::Image< TPixelScalarType, 3 > > | |
static Pointer | New () |
Protected Member Functions | |
void | BeforeThreadedGenerateData () ITK_OVERRIDE |
void | CheckComputationMask () ITK_OVERRIDE |
void | ComputeTikhonovPrior (const IndexType &refIndex, OutputVectorType &refDistribution, PatchSearcherType &nlPatchSearcher, T2VectorType &priorDistribution, std::vector< double > &workDataWeights, std::vector< OutputVectorType > &workDataSamples) |
double | ComputeTikhonovRegularizedSolution (anima::NNLSOptimizer *nnlsOpt, DataMatrixType &AMatrix, T2VectorType &signalValues, double lambdaSq, T2VectorType &priorDistribution, T2VectorType &t2OptimizedWeights) |
void | DynamicThreadedGenerateData (const OutputImageRegionType &outputRegionForThread) ITK_OVERRIDE |
MultiT2RelaxometryEstimationImageFilter () | |
void | PrepareNLPatchSearchers () |
virtual | ~MultiT2RelaxometryEstimationImageFilter () |
Protected Member Functions inherited from anima::MaskedImageToImageFilter< itk::Image< TPixelScalarType, 3 >, itk::Image< TPixelScalarType, 3 > > | |
void | InitializeComputationRegionFromMask () |
MaskedImageToImageFilter () | |
virtual | ~MaskedImageToImageFilter () |
Protected Member Functions inherited from anima::NumberedThreadImageToImageFilter< itk::Image< TPixelScalarType, 3 >, itk::Image< TPixelScalarType, 3 > > | |
virtual void | GenerateData () ITK_OVERRIDE |
unsigned int | GetSafeThreadId () |
void | IncrementNumberOfProcessedPoints () |
void | InitializeZeroPixel (itk::Image< TPixelScalarType, 3 > *image, itk::VariableLengthVector< ScalarRealType > &zeroPixel) |
Utility function to initialize output images pixel to zero for vector images. More... | |
void | InitializeZeroPixel (itk::Image< TPixelScalarType, 3 > *, PixelType &zeroPixel) |
Utility function to initialize output images pixel to zero for all images except vector images. More... | |
NumberedThreadImageToImageFilter () | |
void | SafeReleaseThreadId (unsigned int threadId) |
virtual void | ThreadProcessSlices () |
virtual | ~NumberedThreadImageToImageFilter () |
Additional Inherited Members | |
Static Public Attributes inherited from anima::NumberedThreadImageToImageFilter< itk::Image< TPixelScalarType, 3 >, itk::Image< TPixelScalarType, 3 > > | |
static constexpr unsigned int | OutputImageDimension |
Static Protected Member Functions inherited from anima::NumberedThreadImageToImageFilter< itk::Image< TPixelScalarType, 3 >, itk::Image< TPixelScalarType, 3 > > | |
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | ThreaderMultiSplitCallback (void *arg) |
Implements multi-peak T2 relaxometry estimation (with or without regularization)
Multi-peak estimation is performed as discussed in several papers: Layton et al. Modelling and estimation of multicomponent T2 distributions. IEEE TMI, 32(8):1423-1434. 2013. Prasloski et al. Applications of stimulated echo correction to multicomponent T2 analysis. MRM, 67(6):1803-1814. 2012. Yoo et al. Non-local spatial regularization of MRI T2 relaxa- tion images for myelin water quantification. MICCAI, pp 614-621. 2013.
Definition at line 23 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef itk::SmartPointer<const Self> anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::ConstPointer |
Definition at line 33 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef NNLSOptimizerType::MatrixType anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::DataMatrixType |
Definition at line 58 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef InputImageType::IndexType anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::IndexType |
Definition at line 43 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef InputImageType::Pointer anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::InputImagePointer |
Definition at line 47 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef Superclass::InputImageRegionType anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::InputImageRegionType |
Definition at line 53 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef TInputImage anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::InputImageType |
Image typedef support
Definition at line 42 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef Superclass::MaskImageType anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::MaskImageType |
Superclass typedefs.
Definition at line 52 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef NNLSOptimizerType::Pointer anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::NNLSOptimizerPointer |
Definition at line 57 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef anima::NNLSOptimizer anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::NNLSOptimizerType |
Definition at line 56 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef OutputImageType::Pointer anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::OutputImagePointer |
Definition at line 48 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef Superclass::OutputImageRegionType anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::OutputImageRegionType |
Definition at line 54 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef TOutputImage anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::OutputImageType |
Definition at line 44 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef VectorOutputImageType::PixelType anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::OutputVectorType |
Definition at line 46 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef anima::NonLocalT2DistributionPatchSearcher<VectorOutputImageType,InputImageType> anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::PatchSearcherType |
Definition at line 61 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef itk::SmartPointer<Self> anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::Pointer |
Definition at line 32 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef MultiT2RelaxometryEstimationImageFilter anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::Self |
Standard class typedefs.
Definition at line 28 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef anima::MaskedImageToImageFilter< TInputImage, TOutputImage > anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::Superclass |
Definition at line 31 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef NNLSOptimizerType::ParametersType anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::T2VectorType |
Definition at line 59 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef itk::Image<TPixelScalarType, 3> anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::TInputImage |
Definition at line 29 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef itk::Image<TPixelScalarType, 3> anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::TOutputImage |
Definition at line 30 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef VectorOutputImageType::Pointer anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::VectorOutputImagePointer |
Definition at line 49 of file animaMultiT2RelaxometryEstimationImageFilter.h.
typedef itk::VectorImage<TPixelScalarType, 3> anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::VectorOutputImageType |
Definition at line 45 of file animaMultiT2RelaxometryEstimationImageFilter.h.
|
inlineprotected |
Definition at line 103 of file animaMultiT2RelaxometryEstimationImageFilter.h.
Referenced by anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::~MultiT2RelaxometryEstimationImageFilter().
|
inlineprotectedvirtual |
Definition at line 139 of file animaMultiT2RelaxometryEstimationImageFilter.h.
References anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::BeforeThreadedGenerateData(), anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::CheckComputationMask(), anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::ComputeTikhonovPrior(), anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::ComputeTikhonovRegularizedSolution(), anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::DynamicThreadedGenerateData(), anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::MultiT2RelaxometryEstimationImageFilter(), and anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::PrepareNLPatchSearchers().
|
protectedvirtual |
Reimplemented from anima::MaskedImageToImageFilter< itk::Image< TPixelScalarType, 3 >, itk::Image< TPixelScalarType, 3 > >.
Definition at line 18 of file animaMultiT2RelaxometryEstimationImageFilter.hxx.
Referenced by anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::~MultiT2RelaxometryEstimationImageFilter().
|
protectedvirtual |
Reimplemented from anima::MaskedImageToImageFilter< itk::Image< TPixelScalarType, 3 >, itk::Image< TPixelScalarType, 3 > >.
Definition at line 82 of file animaMultiT2RelaxometryEstimationImageFilter.hxx.
Referenced by anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::~MultiT2RelaxometryEstimationImageFilter().
|
protected |
Definition at line 496 of file animaMultiT2RelaxometryEstimationImageFilter.hxx.
References anima::NonLocalPatchBaseSearcher< ImageType >::GetDatabaseSamples(), anima::NonLocalPatchBaseSearcher< ImageType >::GetDatabaseWeights(), and anima::NonLocalPatchBaseSearcher< ImageType >::UpdateAtPosition().
Referenced by anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::~MultiT2RelaxometryEstimationImageFilter().
|
protected |
Definition at line 546 of file animaMultiT2RelaxometryEstimationImageFilter.hxx.
References anima::NNLSOptimizer::GetCurrentResidual(), anima::NNLSOptimizer::SetDataMatrix(), anima::NNLSOptimizer::SetPoints(), and anima::NNLSOptimizer::StartOptimization().
Referenced by anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::~MultiT2RelaxometryEstimationImageFilter().
virtual::itk::LightObject::Pointer anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::CreateAnother | ( | void | ) | const |
|
protected |
Definition at line 130 of file animaMultiT2RelaxometryEstimationImageFilter.hxx.
References anima::EPGSignalSimulator::GetValue(), anima::EPGSignalSimulator::SetEchoSpacing(), anima::EPGSignalSimulator::SetExcitationFlipAngle(), and anima::EPGSignalSimulator::SetNumberOfEchoes().
Referenced by anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::~MultiT2RelaxometryEstimationImageFilter().
|
inline |
Definition at line 89 of file animaMultiT2RelaxometryEstimationImageFilter.h.
|
inline |
Definition at line 90 of file animaMultiT2RelaxometryEstimationImageFilter.h.
|
inline |
Definition at line 87 of file animaMultiT2RelaxometryEstimationImageFilter.h.
|
inline |
Definition at line 88 of file animaMultiT2RelaxometryEstimationImageFilter.h.
|
virtual |
Run-time type information (and related methods)
Reimplemented from anima::MaskedImageToImageFilter< itk::Image< TPixelScalarType, 3 >, itk::Image< TPixelScalarType, 3 > >.
|
inline |
Definition at line 71 of file animaMultiT2RelaxometryEstimationImageFilter.h.
|
inline |
Definition at line 91 of file animaMultiT2RelaxometryEstimationImageFilter.h.
|
static |
Method for creation through the object factory.
|
protected |
Definition at line 391 of file animaMultiT2RelaxometryEstimationImageFilter.hxx.
Referenced by anima::MultiT2RelaxometryEstimationImageFilter< TPixelScalarType >::~MultiT2RelaxometryEstimationImageFilter().
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
inline |
Definition at line 70 of file animaMultiT2RelaxometryEstimationImageFilter.h.
|
virtual |
|
inline |
Definition at line 99 of file animaMultiT2RelaxometryEstimationImageFilter.h.
|
inline |
Definition at line 100 of file animaMultiT2RelaxometryEstimationImageFilter.h.
|
virtual |
|
virtual |
|
virtual |