Medical Imaging Interaction Toolkit
2016.11.0
Medical Imaging Interaction Toolkit
|
This class takes as input one or more reference image (acquired in the absence of diffusion sensitizing gradients) and 'n' diffusion weighted images and their gradient directions and computes an image of orientation distribution function coefficients in a spherical harmonic basis. More...
#include <itkAnalyticalDiffusionQballReconstructionImageFilter.h>
Public Types | |
enum | Normalization { QBAR_STANDARD, QBAR_B_ZERO_B_VALUE, QBAR_B_ZERO, QBAR_NONE, QBAR_ADC_ONLY, QBAR_RAW_SIGNAL, QBAR_SOLID_ANGLE, QBAR_NONNEG_SOLID_ANGLE } |
typedef AnalyticalDiffusionQballReconstructionImageFilter | Self |
typedef SmartPointer< Self > | Pointer |
typedef SmartPointer< const Self > | ConstPointer |
typedef ImageToImageFilter< Image< TReferenceImagePixelType, 3 >, Image< Vector< TOdfPixelType, NrOdfDirections >, 3 > > | Superclass |
typedef TReferenceImagePixelType | ReferencePixelType |
typedef TGradientImagePixelType | GradientPixelType |
typedef Vector< TOdfPixelType, NrOdfDirections > | OdfPixelType |
typedef TOdfPixelType | BZeroPixelType |
typedef Superclass::InputImageType | ReferenceImageType |
typedef Image< OdfPixelType, 3 > | OdfImageType |
typedef OdfImageType | OutputImageType |
typedef Image< Vector< TOdfPixelType,(NOrderL *NOrderL+NOrderL+2)/2+NOrderL >, 3 > | CoefficientImageType |
typedef Image< BZeroPixelType, 3 > | BZeroImageType |
typedef Superclass::OutputImageRegionType | OutputImageRegionType |
typedef Image< GradientPixelType, 3 > | GradientImageType |
typedef VectorImage< GradientPixelType, 3 > | GradientImagesType |
typedef vnl_matrix< TOdfPixelType > * | OdfReconstructionMatrixType |
typedef vnl_matrix< double > | CoefficientMatrixType |
typedef vnl_vector_fixed< double, 3 > | GradientDirectionType |
typedef VectorContainer< unsigned int, GradientDirectionType > | GradientDirectionContainerType |
typedef Image< float, 3 > | FloatImageType |
Public Member Functions | |
Pointer | Clone () const |
virtual const char * | GetClassName () const |
void | SetGradientImage (const GradientDirectionContainerType *, const GradientImagesType *image) |
virtual ReferenceImageType * | GetReferenceImage () |
virtual GradientDirectionType | GetGradientDirection (unsigned int idx) const |
double | Legendre0 (int l) |
OdfPixelType | Normalize (OdfPixelType odf, typename NumericTraits< ReferencePixelType >::AccumulateType b0) |
vnl_vector< TOdfPixelType > | PreNormalize (vnl_vector< TOdfPixelType > vec, typename NumericTraits< ReferencePixelType >::AccumulateType b0) |
virtual void | SetThreshold (ReferencePixelType _arg) |
virtual ReferencePixelType | GetThreshold () |
virtual void | SetNormalizationMethod (Normalization _arg) |
virtual Normalization | GetNormalizationMethod () |
virtual BZeroImageType::Pointer | GetBZeroImage () |
virtual FloatImageType::Pointer | GetODFSumImage () |
virtual CoefficientImageType::Pointer | GetCoefficientImage () |
virtual void | SetBValue (TOdfPixelType _arg) |
virtual const TOdfPixelType & | GetBValue () |
virtual void | SetLambda (double _arg) |
virtual double | GetLambda () |
virtual void | SetUseMrtrixBasis (bool _arg) |
Static Public Member Functions | |
static Pointer | New () |
static void | tofile2 (vnl_matrix< double > *A, std::string fname) |
static void | Cart2Sph (double x, double y, double z, double *cart) |
static double | Yj (int m, int k, double theta, double phi, bool useMRtrixBasis=false) |
Protected Member Functions | |
AnalyticalDiffusionQballReconstructionImageFilter () | |
~AnalyticalDiffusionQballReconstructionImageFilter () | |
void | PrintSelf (std::ostream &os, Indent indent) const |
void | ComputeReconstructionMatrix () |
void | BeforeThreadedGenerateData () |
void | ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, ThreadIdType) |
This class takes as input one or more reference image (acquired in the absence of diffusion sensitizing gradients) and 'n' diffusion weighted images and their gradient directions and computes an image of orientation distribution function coefficients in a spherical harmonic basis.
Definition at line 91 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef Image< BZeroPixelType, 3 > itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::BZeroImageType |
Definition at line 140 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef TOdfPixelType itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::BZeroPixelType |
Definition at line 128 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef Image< Vector< TOdfPixelType, (NOrderL*NOrderL + NOrderL + 2)/2 + NOrderL >, 3 > itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::CoefficientImageType |
Definition at line 138 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef vnl_matrix< double > itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::CoefficientMatrixType |
Definition at line 158 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef SmartPointer<const Self> itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::ConstPointer |
Definition at line 111 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef Image<float, 3> itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::FloatImageType |
Definition at line 205 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef VectorContainer< unsigned int, GradientDirectionType > itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::GradientDirectionContainerType |
Container to hold gradient directions of the 'n' DW measurements
Definition at line 165 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef vnl_vector_fixed< double, 3 > itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::GradientDirectionType |
Holds each magnetic field gradient used to acquire one DWImage
Definition at line 161 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef VectorImage< GradientPixelType, 3 > itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::GradientImagesType |
An alternative typedef defining one (of the many) gradient images. It will be assumed that the vectorImage has the same dimension as the Reference image and a vector length parameter of n
(number of gradient directions)
Definition at line 152 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef Image< GradientPixelType, 3 > itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::GradientImageType |
Typedef defining one (of the many) gradient images.
Definition at line 146 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef TGradientImagePixelType itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::GradientPixelType |
Definition at line 124 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef Image< OdfPixelType, 3 > itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::OdfImageType |
Definition at line 134 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef Vector< TOdfPixelType, NrOdfDirections > itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::OdfPixelType |
Definition at line 126 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef vnl_matrix< TOdfPixelType >* itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::OdfReconstructionMatrixType |
Holds the ODF reconstruction matrix
Definition at line 156 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef Superclass::OutputImageRegionType itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::OutputImageRegionType |
Definition at line 143 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef OdfImageType itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::OutputImageType |
Definition at line 136 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef SmartPointer<Self> itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::Pointer |
Definition at line 110 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef Superclass::InputImageType itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::ReferenceImageType |
Reference image data, This image is aquired in the absence of a diffusion sensitizing field gradient
Definition at line 132 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef TReferenceImagePixelType itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::ReferencePixelType |
Definition at line 122 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef AnalyticalDiffusionQballReconstructionImageFilter itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::Self |
Definition at line 109 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
typedef ImageToImageFilter< Image< TReferenceImagePixelType, 3>, Image< Vector< TOdfPixelType, NrOdfDirections >, 3 > > itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::Superclass |
Definition at line 113 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
enum itk::AnalyticalDiffusionQballReconstructionImageFilter::Normalization |
Enumerator | |
---|---|
QBAR_STANDARD | |
QBAR_B_ZERO_B_VALUE | |
QBAR_B_ZERO | |
QBAR_NONE | |
QBAR_ADC_ONLY | |
QBAR_RAW_SIGNAL | |
QBAR_SOLID_ANGLE | |
QBAR_NONNEG_SOLID_ANGLE |
Definition at line 98 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
|
protected |
Definition at line 46 of file itkAnalyticalDiffusionQballReconstructionImageFilter.cpp.
|
inlineprotected |
Definition at line 242 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
|
protected |
Definition at line 243 of file itkAnalyticalDiffusionQballReconstructionImageFilter.cpp.
References mitk::New().
|
static |
Definition at line 456 of file itkAnalyticalDiffusionQballReconstructionImageFilter.cpp.
Pointer itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::Clone | ( | ) | const |
|
protected |
Definition at line 524 of file itkAnalyticalDiffusionQballReconstructionImageFilter.cpp.
References QBALL_ANAL_RECON_PI.
|
virtual |
|
virtual |
|
virtual |
Runtime information support.
|
virtual |
|
inlinevirtual |
Return the gradient direction. idx is 0 based
Definition at line 181 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
|
virtual |
|
virtual |
|
virtual |
|
inlinevirtual |
Get reference image
Definition at line 177 of file itkAnalyticalDiffusionQballReconstructionImageFilter.h.
|
virtual |
double itk::AnalyticalDiffusionQballReconstructionImageFilter< T, TG, TO, L, NODF >::Legendre0 | ( | int | l | ) |
Definition at line 506 of file itkAnalyticalDiffusionQballReconstructionImageFilter.cpp.
|
static |
Method for creation through the object factory.
itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::OdfPixelType itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::Normalize | ( | OdfPixelType | odf, |
typename NumericTraits< ReferencePixelType >::AccumulateType | b0 | ||
) |
Definition at line 76 of file itkAnalyticalDiffusionQballReconstructionImageFilter.cpp.
References QBALL_ANAL_RECON_PI.
vnl_vector< TOdfPixelType > itk::AnalyticalDiffusionQballReconstructionImageFilter< TReferenceImagePixelType, TGradientImagePixelType, TOdfPixelType, NOrderL, NrOdfDirections >::PreNormalize | ( | vnl_vector< TOdfPixelType > | vec, |
typename NumericTraits< ReferencePixelType >::AccumulateType | b0 | ||
) |
Definition at line 156 of file itkAnalyticalDiffusionQballReconstructionImageFilter.cpp.
|
protected |
Definition at line 801 of file itkAnalyticalDiffusionQballReconstructionImageFilter.cpp.
|
virtual |
void itk::AnalyticalDiffusionQballReconstructionImageFilter< T, TG, TO, L, NODF >::SetGradientImage | ( | const GradientDirectionContainerType * | gradientDirection, |
const GradientImagesType * | image | ||
) |
set method to add gradient directions and its corresponding image. The image here is a VectorImage. The user is expected to pass the gradient directions in a container. The ith element of the container corresponds to the gradient direction of the ith component image the VectorImage. For the baseline image, a vector of all zeros should be set.
Definition at line 757 of file itkAnalyticalDiffusionQballReconstructionImageFilter.cpp.
References mitk::New().
|
virtual |
|
virtual |
|
virtual |
Threshold on the reference image data. The output ODF will be a null pdf for pixels in the reference image that have a value less than this threshold.
|
virtual |
|
protected |
this would be the place to implement a non-negative solver for quadratic programming problem: min .5*|| Bc-s ||^2 subject to -CLPc <= 4*pi*ones (refer to MICCAI 2009 Goh et al. "Estimating ODFs with PDF constraints") .5*|| Bc-s ||^2 == .5*c'B'Bc - x'B's + .5*s's
Definition at line 302 of file itkAnalyticalDiffusionQballReconstructionImageFilter.cpp.
References Normalize(), and QBALL_ANAL_RECON_PI.
|
static |
Definition at line 429 of file itkAnalyticalDiffusionQballReconstructionImageFilter.cpp.
|
static |
Definition at line 478 of file itkAnalyticalDiffusionQballReconstructionImageFilter.cpp.
References M_PI.