go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
itk::ImageGridSampler< TInputImage > Class Template Reference

#include <itkImageGridSampler.h>

Detailed Description

template<class TInputImage>
class itk::ImageGridSampler< TInputImage >

Samples image voxels on a regular grid.

This ImageSampler samples voxels that lie on a regular grid. The grid can be specified by an integer downsampling factor for each dimension.

Parameters:
SampleGridSpacing: This parameter controls the spacing of the uniform grid in all dimensions. This should be given in index coordinates.
example: (SampleGridSpacing 4 4 4)
Default is 2 in each dimension.

Definition at line 44 of file itkImageGridSampler.h.

+ Inheritance diagram for itk::ImageGridSampler< TInputImage >:

Public Types

typedef SmartPointer< const SelfConstPointer
 
typedef Superclass::DataObjectPointer DataObjectPointer
 
typedef Superclass::ImageSampleContainerPointer ImageSampleContainerPointer
 
typedef Superclass::ImageSampleContainerType ImageSampleContainerType
 
typedef Superclass::ImageSampleType ImageSampleType
 
typedef Superclass::InputImageConstPointer InputImageConstPointer
 
typedef Superclass::InputImageIndexType InputImageIndexType
 
typedef Superclass::InputImagePixelType InputImagePixelType
 
typedef Superclass::InputImagePointer InputImagePointer
 
typedef Superclass::InputImagePointType InputImagePointType
 
typedef Superclass::InputImageRegionType InputImageRegionType
 
typedef InputImageType::SizeType InputImageSizeType
 
typedef Superclass::InputImageType InputImageType
 
typedef Superclass::MaskType MaskType
 
typedef Superclass::OutputVectorContainerPointer OutputVectorContainerPointer
 
typedef Superclass::OutputVectorContainerType OutputVectorContainerType
 
typedef SmartPointer< SelfPointer
 
typedef InputImageIndexType SampleGridIndexType
 
typedef InputImageType::SizeType SampleGridSizeType
 
typedef InputImageType::OffsetType SampleGridSpacingType
 
typedef SampleGridSpacingType::OffsetValueType SampleGridSpacingValueType
 
typedef ImageGridSampler Self
 
typedef ImageSamplerBase< TInputImage > Superclass
 
- Public Types inherited from itk::ImageSamplerBase< TInputImage >
typedef SmartPointer< const SelfConstPointer
 
typedef Superclass::DataObjectPointer DataObjectPointer
 
typedef ImageSampleContainerType::Pointer ImageSampleContainerPointer
 
typedef VectorDataContainer< std::vcl_size_t, ImageSampleTypeImageSampleContainerType
 
typedef ImageSample< InputImageTypeImageSampleType
 
typedef ImageSampleType::RealType ImageSampleValueType
 
typedef Superclass::InputImageConstPointer InputImageConstPointer
 
typedef InputImageType::IndexType InputImageIndexType
 
typedef Superclass::InputImagePixelType InputImagePixelType
 
typedef Superclass::InputImagePointer InputImagePointer
 
typedef InputImageType::PointType InputImagePointType
 
typedef InputImagePointType::ValueType InputImagePointValueType
 
typedef Superclass::InputImageRegionType InputImageRegionType
 
typedef std::vector< InputImageRegionTypeInputImageRegionVectorType
 
typedef InputImageType::SizeType InputImageSizeType
 
typedef Superclass::InputImageType InputImageType
 
typedef MaskType::ConstPointer MaskConstPointer
 
typedef MaskType::Pointer MaskPointer
 
typedef SpatialObject< Self::InputImageDimension > MaskType
 
typedef std::vector< MaskConstPointerMaskVectorType
 
typedef Superclass::OutputVectorContainerPointer OutputVectorContainerPointer
 
typedef Superclass::OutputVectorContainerType OutputVectorContainerType
 
typedef SmartPointer< SelfPointer
 
typedef ImageSamplerBase Self
 
typedef ImageToVectorContainerFilter< TInputImage, VectorDataContainer< std::vcl_size_t, ImageSample< TInputImage > > > Superclass
 
- Public Types inherited from itk::ImageToVectorContainerFilter< TInputImage, VectorDataContainer< std::vcl_size_t, ImageSample< TInputImage > > >
typedef SmartPointer< const SelfConstPointer
 
typedef Superclass::DataObjectPointer DataObjectPointer
 
typedef InputImageType::ConstPointer InputImageConstPointer
 
typedef InputImageType::PixelType InputImagePixelType
 
typedef InputImageType::Pointer InputImagePointer
 
typedef InputImageType::RegionType InputImageRegionType
 
typedef TInputImage InputImageType
 
typedef Superclass::OutputVectorContainerPointer OutputVectorContainerPointer
 
typedef Superclass::OutputVectorContainerType OutputVectorContainerType
 
typedef SmartPointer< SelfPointer
 
typedef ImageToVectorContainerFilter Self
 
typedef VectorContainerSource< VectorDataContainer< std::vcl_size_t, ImageSample< TInputImage > > > Superclass
 
- Public Types inherited from itk::VectorContainerSource< VectorDataContainer< std::vcl_size_t, ImageSample< TInputImage > > >
typedef SmartPointer< const SelfConstPointer
 
typedef Superclass::DataObjectPointer DataObjectPointer
 
typedef OutputVectorContainerType::Pointer OutputVectorContainerPointer
 
typedef VectorDataContainer< std::vcl_size_t, ImageSample< TInputImage > > OutputVectorContainerType
 
typedef SmartPointer< SelfPointer
 
typedef VectorContainerSource Self
 
typedef ProcessObject Superclass
 

Public Member Functions

virtual const char * GetClassName () const
 
virtual const SampleGridSpacingTypeGetSampleGridSpacing ()
 
 itkStaticConstMacro (InputImageDimension, unsigned int, Superclass::InputImageDimension)
 
bool SelectingNewSamplesOnUpdateSupported (void) const override
 
bool SelectNewSamplesOnUpdate (void) override
 
void SetNumberOfSamples (unsigned long nrofsamples) override
 
void SetSampleGridSpacing (const SampleGridSpacingType &arg)
 
- Public Member Functions inherited from itk::ImageSamplerBase< TInputImage >
virtual const char * GetClassName () const
 
virtual const InputImageRegionTypeGetCroppedInputImageRegion ()
 
virtual const InputImageRegionTypeGetInputImageRegion (unsigned int pos) const
 
virtual const InputImageRegionTypeGetInputImageRegion (void) const
 
virtual const MaskTypeGetMask (unsigned int pos) const
 
virtual const MaskTypeGetMask (void) const
 
virtual unsigned int GetNumberOfInputImageRegions () const
 
virtual unsigned int GetNumberOfMasks () const
 
virtual unsigned long GetNumberOfSamples () const
 
 itkStaticConstMacro (InputImageDimension, unsigned int, InputImageType::ImageDimension)
 
virtual bool SelectingNewSamplesOnUpdateSupported (void) const
 
virtual bool SelectNewSamplesOnUpdate (void)
 
virtual void SetInputImageRegion (const InputImageRegionType _arg)
 
virtual void SetInputImageRegion (const InputImageRegionType _arg, unsigned int pos)
 
virtual void SetMask (const MaskType *_arg)
 
virtual void SetMask (const MaskType *_arg, unsigned int pos)
 
virtual void SetNumberOfInputImageRegions (const unsigned int _arg)
 
virtual void SetNumberOfMasks (const unsigned int _arg)
 
virtual void SetNumberOfSamples (unsigned long _arg)
 
virtual void SetUseMultiThread (bool _arg)
 
- Public Member Functions inherited from itk::ImageToVectorContainerFilter< TInputImage, VectorDataContainer< std::vcl_size_t, ImageSample< TInputImage > > >
virtual void AfterThreadedGenerateData (void)
 
virtual void BeforeThreadedGenerateData (void)
 
void GenerateData (void) override
 
virtual const char * GetClassName () const
 
const InputImageTypeGetInput (unsigned int idx)
 
const InputImageTypeGetInput (void)
 
OutputVectorContainerTypeGetOutput (void)
 
DataObject::Pointer MakeOutput (unsigned int idx) override
 
void SetInput (const InputImageType *input)
 
void SetInput (unsigned int idx, const InputImageType *input)
 
virtual unsigned int SplitRequestedRegion (const ThreadIdType &threadId, const ThreadIdType &numberOfSplits, InputImageRegionType &splitRegion)
 
virtual void ThreadedGenerateData (const InputImageRegionType &inputRegionForThread, ThreadIdType threadId)
 
- Public Member Functions inherited from itk::VectorContainerSource< VectorDataContainer< std::vcl_size_t, ImageSample< TInputImage > > >
virtual const char * GetClassName () const
 
OutputVectorContainerTypeGetOutput (unsigned int idx)
 
OutputVectorContainerTypeGetOutput (void)
 
virtual void GraftNthOutput (unsigned int idx, DataObject *output)
 
virtual void GraftOutput (DataObject *output)
 
virtual DataObjectPointer MakeOutput (unsigned int idx)
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::ImageSamplerBase< TInputImage >
static Pointer New ()
 
- Static Public Member Functions inherited from itk::ImageToVectorContainerFilter< TInputImage, VectorDataContainer< std::vcl_size_t, ImageSample< TInputImage > > >
static Pointer New ()
 
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION ThreaderCallback (void *arg)
 
- Static Public Member Functions inherited from itk::VectorContainerSource< VectorDataContainer< std::vcl_size_t, ImageSample< TInputImage > > >
static Pointer New ()
 

Protected Member Functions

void GenerateData (void) override
 
 ImageGridSampler ()
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
 ~ImageGridSampler () override
 
- Protected Member Functions inherited from itk::ImageSamplerBase< TInputImage >
void AfterThreadedGenerateData (void) override
 
void BeforeThreadedGenerateData (void) override
 
virtual bool CheckInputImageRegions (void)
 
void CropInputImageRegion (void)
 
void GenerateInputRequestedRegion (void) override
 
 ImageSamplerBase ()
 
virtual bool IsInsideAllMasks (const InputImagePointType &point) const
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
virtual void UpdateAllMasks (void)
 
 ~ImageSamplerBase () override
 
- Protected Member Functions inherited from itk::ImageToVectorContainerFilter< TInputImage, VectorDataContainer< std::vcl_size_t, ImageSample< TInputImage > > >
 ImageToVectorContainerFilter ()
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
 ~ImageToVectorContainerFilter () override
 
- Protected Member Functions inherited from itk::VectorContainerSource< VectorDataContainer< std::vcl_size_t, ImageSample< TInputImage > > >
void PrintSelf (std::ostream &os, Indent indent) const override
 
 VectorContainerSource ()
 
 ~VectorContainerSource () override
 

Protected Attributes

unsigned long m_RequestedNumberOfSamples
 
SampleGridSpacingType m_SampleGridSpacing
 
- Protected Attributes inherited from itk::ImageSamplerBase< TInputImage >
unsigned long m_NumberOfSamples
 
std::vector< ImageSampleContainerPointerm_ThreaderSampleContainer
 
bool m_UseMultiThread
 

Private Member Functions

 ImageGridSampler (const Self &)
 
void operator= (const Self &)
 

Member Typedef Documentation

◆ ConstPointer

template<class TInputImage >
typedef SmartPointer< const Self > itk::ImageGridSampler< TInputImage >::ConstPointer

Definition at line 53 of file itkImageGridSampler.h.

◆ DataObjectPointer

template<class TInputImage >
typedef Superclass::DataObjectPointer itk::ImageGridSampler< TInputImage >::DataObjectPointer

Typedefs inherited from the superclass.

Definition at line 62 of file itkImageGridSampler.h.

◆ ImageSampleContainerPointer

template<class TInputImage >
typedef Superclass::ImageSampleContainerPointer itk::ImageGridSampler< TInputImage >::ImageSampleContainerPointer

Definition at line 72 of file itkImageGridSampler.h.

◆ ImageSampleContainerType

template<class TInputImage >
typedef Superclass::ImageSampleContainerType itk::ImageGridSampler< TInputImage >::ImageSampleContainerType

Definition at line 71 of file itkImageGridSampler.h.

◆ ImageSampleType

template<class TInputImage >
typedef Superclass::ImageSampleType itk::ImageGridSampler< TInputImage >::ImageSampleType

Definition at line 70 of file itkImageGridSampler.h.

◆ InputImageConstPointer

template<class TInputImage >
typedef Superclass::InputImageConstPointer itk::ImageGridSampler< TInputImage >::InputImageConstPointer

Definition at line 67 of file itkImageGridSampler.h.

◆ InputImageIndexType

template<class TInputImage >
typedef Superclass::InputImageIndexType itk::ImageGridSampler< TInputImage >::InputImageIndexType

Other typdefs.

Definition at line 80 of file itkImageGridSampler.h.

◆ InputImagePixelType

template<class TInputImage >
typedef Superclass::InputImagePixelType itk::ImageGridSampler< TInputImage >::InputImagePixelType

Definition at line 69 of file itkImageGridSampler.h.

◆ InputImagePointer

template<class TInputImage >
typedef Superclass::InputImagePointer itk::ImageGridSampler< TInputImage >::InputImagePointer

Definition at line 66 of file itkImageGridSampler.h.

◆ InputImagePointType

template<class TInputImage >
typedef Superclass::InputImagePointType itk::ImageGridSampler< TInputImage >::InputImagePointType

Definition at line 82 of file itkImageGridSampler.h.

◆ InputImageRegionType

template<class TInputImage >
typedef Superclass::InputImageRegionType itk::ImageGridSampler< TInputImage >::InputImageRegionType

Definition at line 68 of file itkImageGridSampler.h.

◆ InputImageSizeType

template<class TInputImage >
typedef InputImageType::SizeType itk::ImageGridSampler< TInputImage >::InputImageSizeType

Definition at line 89 of file itkImageGridSampler.h.

◆ InputImageType

template<class TInputImage >
typedef Superclass::InputImageType itk::ImageGridSampler< TInputImage >::InputImageType

Definition at line 65 of file itkImageGridSampler.h.

◆ MaskType

template<class TInputImage >
typedef Superclass::MaskType itk::ImageGridSampler< TInputImage >::MaskType

Definition at line 73 of file itkImageGridSampler.h.

◆ OutputVectorContainerPointer

template<class TInputImage >
typedef Superclass::OutputVectorContainerPointer itk::ImageGridSampler< TInputImage >::OutputVectorContainerPointer

Definition at line 64 of file itkImageGridSampler.h.

◆ OutputVectorContainerType

template<class TInputImage >
typedef Superclass::OutputVectorContainerType itk::ImageGridSampler< TInputImage >::OutputVectorContainerType

Definition at line 63 of file itkImageGridSampler.h.

◆ Pointer

template<class TInputImage >
typedef SmartPointer< Self > itk::ImageGridSampler< TInputImage >::Pointer

Definition at line 52 of file itkImageGridSampler.h.

◆ SampleGridIndexType

template<class TInputImage >
typedef InputImageIndexType itk::ImageGridSampler< TInputImage >::SampleGridIndexType

Definition at line 88 of file itkImageGridSampler.h.

◆ SampleGridSizeType

template<class TInputImage >
typedef InputImageType::SizeType itk::ImageGridSampler< TInputImage >::SampleGridSizeType

Definition at line 87 of file itkImageGridSampler.h.

◆ SampleGridSpacingType

template<class TInputImage >
typedef InputImageType::OffsetType itk::ImageGridSampler< TInputImage >::SampleGridSpacingType

Typedefs for support of user defined grid spacing for the spatial samples.

Definition at line 85 of file itkImageGridSampler.h.

◆ SampleGridSpacingValueType

template<class TInputImage >
typedef SampleGridSpacingType::OffsetValueType itk::ImageGridSampler< TInputImage >::SampleGridSpacingValueType

Definition at line 86 of file itkImageGridSampler.h.

◆ Self

template<class TInputImage >
typedef ImageGridSampler itk::ImageGridSampler< TInputImage >::Self

Standard ITK-stuff.

Definition at line 50 of file itkImageGridSampler.h.

◆ Superclass

template<class TInputImage >
typedef ImageSamplerBase< TInputImage > itk::ImageGridSampler< TInputImage >::Superclass

Definition at line 51 of file itkImageGridSampler.h.

Constructor & Destructor Documentation

◆ ImageGridSampler() [1/2]

template<class TInputImage >
itk::ImageGridSampler< TInputImage >::ImageGridSampler ( )
protected

The constructor.

◆ ~ImageGridSampler()

template<class TInputImage >
itk::ImageGridSampler< TInputImage >::~ImageGridSampler ( )
inlineoverrideprotected

The destructor.

Definition at line 140 of file itkImageGridSampler.h.

◆ ImageGridSampler() [2/2]

template<class TInputImage >
itk::ImageGridSampler< TInputImage >::ImageGridSampler ( const Self )
private

The private constructor.

Member Function Documentation

◆ GenerateData()

template<class TInputImage >
void itk::ImageGridSampler< TInputImage >::GenerateData ( void  )
overrideprotected

Function that does the work.

◆ GetClassName()

template<class TInputImage >
virtual const char * itk::ImageGridSampler< TInputImage >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::ImageSamplerBase< TInputImage >.

Reimplemented in elastix::GridSampler< TElastix >.

◆ GetSampleGridSpacing()

template<class TInputImage >
virtual const SampleGridSpacingType & itk::ImageGridSampler< TInputImage >::GetSampleGridSpacing ( )
virtual

◆ itkStaticConstMacro()

template<class TInputImage >
itk::ImageGridSampler< TInputImage >::itkStaticConstMacro ( InputImageDimension  ,
unsigned int  ,
Superclass::InputImageDimension   
)

The input image dimension.

◆ New()

template<class TInputImage >
static Pointer itk::ImageGridSampler< TInputImage >::New ( )
static

Method for creation through the object factory.

◆ operator=()

template<class TInputImage >
void itk::ImageGridSampler< TInputImage >::operator= ( const Self )
private

The private copy constructor.

◆ PrintSelf()

template<class TInputImage >
void itk::ImageGridSampler< TInputImage >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
overrideprotected

PrintSelf.

◆ SelectingNewSamplesOnUpdateSupported()

template<class TInputImage >
bool itk::ImageGridSampler< TInputImage >::SelectingNewSamplesOnUpdateSupported ( void  ) const
inlineoverridevirtual

Returns whether the sampler supports SelectNewSamplesOnUpdate()

Reimplemented from itk::ImageSamplerBase< TInputImage >.

Definition at line 128 of file itkImageGridSampler.h.

◆ SelectNewSamplesOnUpdate()

template<class TInputImage >
bool itk::ImageGridSampler< TInputImage >::SelectNewSamplesOnUpdate ( void  )
inlineoverridevirtual

Selecting new samples makes no sense if nothing changed. The same samples would be selected anyway.

Reimplemented from itk::ImageSamplerBase< TInputImage >.

Definition at line 121 of file itkImageGridSampler.h.

◆ SetNumberOfSamples()

template<class TInputImage >
void itk::ImageGridSampler< TInputImage >::SetNumberOfSamples ( unsigned long  nrofsamples)
overridevirtual

Define an isotropic SampleGridSpacing such that the desired number of samples is approximately realized. The following formula is used:

spacing = max[ 1, round( (availablevoxels / nrofsamples)^(1/dimension) ) ], with availablevoxels = nr of voxels in bounding box of the mask.

The InputImageRegion needs to be specified beforehand. However, the sample grid spacing is recomputed in the update phase, when the bounding box of the mask is known. Supplying nrofsamples=0 turns off the (re)computation of the SampleGridSpacing. Once nrofsamples=0 has been given, the last computed SampleGridSpacing is simply considered as a user parameter, which is not modified automatically anymore.

This function overrules any previous calls to SetSampleGridSpacing.

Reimplemented from itk::ImageSamplerBase< TInputImage >.

◆ SetSampleGridSpacing()

template<class TInputImage >
void itk::ImageGridSampler< TInputImage >::SetSampleGridSpacing ( const SampleGridSpacingType arg)

Set/Get the sample grid spacing for each dimension (only integer factors) This function overrules previous calls to SetNumberOfSamples. Moreover, it calls SetNumberOfSamples(0) (see below), to make sure that the user-set sample grid spacing is never overruled.

Field Documentation

◆ m_RequestedNumberOfSamples

template<class TInputImage >
unsigned long itk::ImageGridSampler< TInputImage >::m_RequestedNumberOfSamples
protected

The number of samples entered in the SetNumberOfSamples method

Definition at line 152 of file itkImageGridSampler.h.

◆ m_SampleGridSpacing

template<class TInputImage >
SampleGridSpacingType itk::ImageGridSampler< TInputImage >::m_SampleGridSpacing
protected

An array of integer spacing factors

Definition at line 149 of file itkImageGridSampler.h.



Generated on 1667476801 for elastix by doxygen 1.9.4 elastix logo