SIRF  3.5.0
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
sirf::NiftyResampler< dataType > Class Template Reference

Resampling class based on nifty resample. More...

#include "NiftyResample.h"

Inheritance diagram for sirf::NiftyResampler< dataType >:
sirf::Resampler< dataType > sirf::Resampler< dataType >

Public Member Functions

 NiftyResampler ()
 Constructor.
 
virtual ~NiftyResampler ()
 Destructor.
 
virtual void process ()
 Process. Equivalent of calling forward(floating_image). Use get_output to get resampled image.
 
virtual std::shared_ptr< ImageDataforward (const std::shared_ptr< const ImageData > input_sptr)
 Do the forward transformation.
 
virtual void forward (std::shared_ptr< ImageData > output_sptr, const std::shared_ptr< const ImageData > input_sptr)
 Do the forward transformation.
 
virtual std::shared_ptr< ImageDataadjoint (const std::shared_ptr< const ImageData > input_sptr)
 Do the adjoint transformation.
 
virtual void adjoint (std::shared_ptr< ImageData > output_sptr, const std::shared_ptr< const ImageData > input_sptr)
 Do the adjoint transformation.
 
std::shared_ptr< const ImageDatareference_image_sptr () const
 
virtual float norm (int num_iter, int verb) const
 
 NiftyResampler ()
 Constructor.
 
virtual ~NiftyResampler ()
 Destructor.
 
virtual void process ()
 Process. Equivalent of calling forward(floating_image). Use get_output to get resampled image.
 
virtual std::shared_ptr< ImageDataforward (const std::shared_ptr< const ImageData > input_sptr)
 Do the forward transformation.
 
virtual void forward (std::shared_ptr< ImageData > output_sptr, const std::shared_ptr< const ImageData > input_sptr)
 Do the forward transformation.
 
virtual std::shared_ptr< ImageDataadjoint (const std::shared_ptr< const ImageData > input_sptr)
 Do the adjoint transformation.
 
virtual void adjoint (std::shared_ptr< ImageData > output_sptr, const std::shared_ptr< const ImageData > input_sptr)
 Do the adjoint transformation.
 
virtual float norm (int num_iter, int verb) const
 
- Public Member Functions inherited from sirf::Resampler< dataType >
 Resampler ()
 Constructor.
 
virtual ~Resampler ()
 Destructor.
 
virtual void set_reference_image (const std::shared_ptr< const ImageData > reference_image_sptr)
 Set reference image. This is the image that would be the reference if you were doing a forward transformation. More...
 
virtual void set_floating_image (const std::shared_ptr< const ImageData > floating_image_sptr)
 Set floating image. This is the image that would be the floating if you were doing a forward transformation. More...
 
virtual void add_transformation (const std::shared_ptr< const Transformation< dataType > > transformation_sptr)
 Add transformation.
 
void clear_transformations ()
 Clear transformations.
 
virtual void set_interpolation_type (const enum InterpolationType type)
 Set interpolation type (0=nearest neighbour, 1=linear, 3=cubic, 4=sinc)
 
void set_interpolation_type_to_nearest_neighbour ()
 Set interpolation type to nearest neighbour.
 
void set_interpolation_type_to_linear ()
 Set interpolation type to linear.
 
void set_interpolation_type_to_cubic_spline ()
 Set interpolation type to cubic spline.
 
void set_interpolation_type_to_sinc ()
 Set interpolation type to sinc.
 
const InterpolationType get_interpolation_type () const
 Get interpolation type.
 
void set_padding_value (const float padding_value)
 Set padding value.
 
const std::shared_ptr< const ImageDataget_output_sptr () const
 Get output.
 
virtual std::shared_ptr< ImageDatabackward (const std::shared_ptr< const ImageData > input_sptr)
 Backward. Alias for Adjoint.
 
virtual void backward (std::shared_ptr< ImageData > output_sptr, const std::shared_ptr< const ImageData > input_sptr)
 Backward. Alias for Adjoint.
 
std::shared_ptr< const ImageDatareference_image_sptr () const
 
std::shared_ptr< const ImageDatafloating_image_sptr () const
 
std::vector< std::shared_ptr< const Transformation< dataType > > > transformations_sptr () const
 

Protected Member Functions

virtual void set_up ()
 Set up.
 
virtual void set_up_forward ()
 Set up forward.
 
virtual void set_up_adjoint ()
 Set up adjoint.
 
void set_up_input_images ()
 Set up the input images (convert from ImageData to NiftiImageData if necessary)
 
virtual void set_up ()
 Set up.
 
virtual void set_up_forward ()
 Set up forward.
 
virtual void set_up_adjoint ()
 Set up adjoint.
 
void set_up_input_images ()
 Set up the input images (convert from ImageData to NiftiImageData if necessary)
 
- Protected Member Functions inherited from sirf::Resampler< dataType >
virtual void check_parameters ()
 Check parameters.
 

Protected Attributes

detail::ComplexNiftiImageData< dataType > _reference_image_niftis
 Reference image as a NiftiImageData.
 
detail::ComplexNiftiImageData< dataType > _floating_image_niftis
 Floating image as a NiftiImageData.
 
detail::ComplexNiftiImageData< dataType > _output_image_forward_niftis
 Forward resampled image as a NiftiImageData.
 
detail::ComplexNiftiImageData< dataType > _output_image_adjoint_niftis
 Adjoint resampled image as a NiftiImageData.
 
std::shared_ptr< NiftiImageData3DDeformation< dataType > > _deformation_sptr
 Deformation.
 
std::shared_ptr< NiftyMoMo::BSplineTransformation_adjoint_transformer_sptr
 Needed for the adjoint transformation.
 
std::shared_ptr< NiftiImageData< dataType > > _adjoint_input_weights_sptr
 Adjoint reference weights. Vector as may be complex.
 
std::shared_ptr< NiftiImageData< dataType > > _adjoint_output_weights_sptr
 Adjoint output weights. Vector as may be complex.
 
- Protected Attributes inherited from sirf::Resampler< dataType >
std::shared_ptr< const ImageData_reference_image_sptr
 Reference image.
 
std::shared_ptr< const ImageData_floating_image_sptr
 Floating image.
 
std::vector< std::shared_ptr< const Transformation< dataType > > > _transformations
 Transformations (could be mixture of affine, displacements, deformations).
 
InterpolationType _interpolation_type
 Interpolation type.
 
std::shared_ptr< ImageData_output_image_sptr
 Output image.
 
float _padding_value = 0
 Padding value.
 
bool _need_to_set_up = true
 
bool _need_to_set_up_forward = true
 
bool _need_to_set_up_adjoint = true
 

Additional Inherited Members

- Public Types inherited from sirf::Resampler< dataType >
enum  InterpolationType {
  NOTSET = -1 , NEARESTNEIGHBOUR = 0 , LINEAR = 1 , CUBICSPLINE = 3 ,
  SINC = 4
}
 Interpolation type.
 

Detailed Description

template<class dataType>
class sirf::NiftyResampler< dataType >

Resampling class based on nifty resample.

The reference image and floating image can have nt and/or nu != 1.

Author
Richard Brown
SyneRBI

The documentation for this class was generated from the following files: