32 #ifndef _itk_ResidualImageFilter_h_
33 #define _itk_ResidualImageFilter_h_
35 #include "itkImageToImageFilter.h"
36 #include <itkDiffusionTensor3D.h>
42 template <
class TInputScalarType,
class TOutputScalarType>
44 :
public ImageToImageFilter<itk::VectorImage<TInputScalarType,3>, itk::Image<TOutputScalarType,3> >
60 typedef ImageToImageFilter<InputImageType, OutputImageType>
Superclass;
66 typedef itk::VectorContainer<
unsigned int,
75 OutputImageType::ImageDimension);
77 itkFactorylessNewMacro(Self)
82 m_SecondDiffusionImage = diffImage;
103 return m_PercentagesOfOutliers;
108 return m_OutliersPerSlice;
118 m_BaseLineImage = baseline;
123 m_B0Threshold = threshold;
126 itkSetMacro(B0Index,
int)
132 m_B0Threshold = 30.0;
138 Superclass::PrintSelf (os, indent);
147 void operator=(
const Self&);
151 std::vector<double> m_Means, m_Q1, m_Q3, m_PercentagesOfOutliers;
156 std::vector< std::vector<double> > m_OutliersPerSlice;
158 GradientDirectionContainerType* m_Gradients;
162 InputScalarType m_B0Threshold;
172 #ifndef ITK_MANUAL_INSTANTIATION
void SetGradients(GradientDirectionContainerType *grads)
std::vector< double > GetQ3()
itk::SmartPointer< Self > Pointer
TInputScalarType InputScalarType
itk::VectorImage< InputScalarType, 3 > InputImageType
itk::Image< OutputScalarType, 3 > OutputImageType
void SetBaseLineImage(BaselineImageType *baseline)
OutputImageType::PixelType OutputPixelType
itk::VectorContainer< unsigned int, GradientDirectionType > GradientDirectionContainerType
ImageToImageFilter< InputImageType, OutputImageType > Superclass
TOutputScalarType OutputScalarType
std::vector< std::vector< double > > GetOutliersPerSlice()
itk::Image< InputScalarType, 3 > BaselineImageType
InputImageType::RegionType InputImageRegionType
std::vector< double > GetMeans()
itkStaticConstMacro(ImageDimension, unsigned int, OutputImageType::ImageDimension)
std::vector< double > GetPercentagesOfOutliers()
SmartPointer< const Self > ConstPointer
InputImageType::PixelType InputPixelType
void PrintSelf(std::ostream &os, Indent indent) const
std::vector< double > GetQ1()
SmartPointer< Self > Pointer
void SetSecondDiffusionImage(typename InputImageType::Pointer diffImage)
vnl_vector_fixed< double, 3 > GradientDirectionType
OutputImageType::RegionType OutputImageRegionType
void SetB0Threshold(InputScalarType threshold)