Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::ExpandImageFilter< TInputImage, TOutputImage > Class Template Reference

Expand the size of an image by an integer factor in each dimension. More...

#include <itkExpandImageFilter.h>

Inheritance diagram for itk::ExpandImageFilter< TInputImage, TOutputImage >:

Inheritance graph
[legend]
Collaboration diagram for itk::ExpandImageFilter< TInputImage, TOutputImage >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef ExpandImageFilter Self
typedef ImageToImageFilter<
TInputImage, TOutputImage > 
Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef TOutputImage::RegionType OutputImageRegionType
typedef Superclass::InputImageType InputImageType
typedef Superclass::OutputImageType OutputImageType
typedef OutputImageType::PixelType OutputPixelType
typedef InputImageType::Pointer InputImagePointer
typedef OutputImageType::Pointer OutputImagePointer
typedef double CoordRepType
typedef InterpolateImageFunction<
InputImageType, CoordRepType
InterpolatorType
typedef InterpolatorType::Pointer InterpolatorPointer
typedef LinearInterpolateImageFunction<
InputImageType, CoordRepType
DefaultInterpolatorType

Public Member Functions

virtual const char * GetClassName () const
 itkStaticConstMacro (ImageDimension, unsigned int, TInputImage::ImageDimension)
virtual void SetInterpolator (InterpolatorType *_arg)
virtual InterpolatorTypeGetInterpolator ()
virtual const unsigned int * GetExpandFactors () const
virtual void SetEdgePaddingValue (OutputPixelType _arg)
virtual OutputPixelType GetEdgePaddingValue ()
virtual void GenerateOutputInformation ()
virtual void GenerateInputRequestedRegion ()
virtual void SetExpandFactors (const unsigned int factors[])
virtual void SetExpandFactors (const unsigned int factor)

Static Public Member Functions

Pointer New ()

Protected Member Functions

 ExpandImageFilter ()
 ~ExpandImageFilter ()
void PrintSelf (std::ostream &os, Indent indent) const
virtual void ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, int threadId)
virtual void BeforeThreadedGenerateData ()

Detailed Description

template<class TInputImage, class TOutputImage>
class itk::ExpandImageFilter< TInputImage, TOutputImage >

Expand the size of an image by an integer factor in each dimension.

ExpandImageFilter increases the size of an image by an integer factor in each dimension using a interpolation method. The output image size in each dimension is given by:

OutputSize[j] = InputSize[j] * ExpandFactors[j]

The output values are obtained by interpolating the input image. The default interpolation type used is the LinearInterpolateImageFunction. The user can specify a particular interpolation function via SetInterpolator(). Note that the input interpolator must derive from base class InterpolateImageFunction.

When the LargestPossibleRegion is requested, the output image will contain padding at the upper edge of each dimension. The width of padding in the i'th dimension is (ExpandFactors[i] - 1). Users can specify the padding value used by setting the EdgePaddingValue.

This filter will produce an output with different pixel spacing that its input image such that:

OutputSpacing[j] = InputSpacing[j] / ExpandFactors[j]

The filter is templated over the input image type and the output image type.

This filter is implemented as a multithreaded filter and supports streaming.

Warning:
This filter only works for image with scalar pixel types. For vector images use VectorExpandImageFilter.
This filter assumes that the input and output image has the same number of dimensions.

See also:
InterpolateImageFunction

LinearInterpolationImageFunction

VectorExpandImageFilter

Definition at line 75 of file itkExpandImageFilter.h.


Member Typedef Documentation

template<class TInputImage, class TOutputImage>
typedef SmartPointer<const Self> itk::ExpandImageFilter< TInputImage, TOutputImage >::ConstPointer
 

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 83 of file itkExpandImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef double itk::ExpandImageFilter< TInputImage, TOutputImage >::CoordRepType
 

Typedef support for the interpolation function. Definition at line 106 of file itkExpandImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef LinearInterpolateImageFunction<InputImageType,CoordRepType> itk::ExpandImageFilter< TInputImage, TOutputImage >::DefaultInterpolatorType
 

Definition at line 111 of file itkExpandImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef InputImageType::Pointer itk::ExpandImageFilter< TInputImage, TOutputImage >::InputImagePointer
 

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 102 of file itkExpandImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef Superclass::InputImageType itk::ExpandImageFilter< TInputImage, TOutputImage >::InputImageType
 

Inherit some types from superclass.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 99 of file itkExpandImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef InterpolatorType::Pointer itk::ExpandImageFilter< TInputImage, TOutputImage >::InterpolatorPointer
 

Definition at line 109 of file itkExpandImageFilter.h.

Referenced by itk::ExpandImageFilter< TInputImage, TOutputImage >::~ExpandImageFilter().

template<class TInputImage, class TOutputImage>
typedef InterpolateImageFunction<InputImageType,CoordRepType> itk::ExpandImageFilter< TInputImage, TOutputImage >::InterpolatorType
 

Definition at line 108 of file itkExpandImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef OutputImageType::Pointer itk::ExpandImageFilter< TInputImage, TOutputImage >::OutputImagePointer
 

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 103 of file itkExpandImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef TOutputImage::RegionType itk::ExpandImageFilter< TInputImage, TOutputImage >::OutputImageRegionType
 

Typedef to describe the output image region type.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 92 of file itkExpandImageFilter.h.

Referenced by itk::ExpandImageFilter< TInputImage, TOutputImage >::~ExpandImageFilter().

template<class TInputImage, class TOutputImage>
typedef Superclass::OutputImageType itk::ExpandImageFilter< TInputImage, TOutputImage >::OutputImageType
 

Some convenient typedefs.

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 100 of file itkExpandImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef OutputImageType::PixelType itk::ExpandImageFilter< TInputImage, TOutputImage >::OutputPixelType
 

Definition at line 101 of file itkExpandImageFilter.h.

Referenced by itk::ExpandImageFilter< TInputImage, TOutputImage >::~ExpandImageFilter().

template<class TInputImage, class TOutputImage>
typedef SmartPointer<Self> itk::ExpandImageFilter< TInputImage, TOutputImage >::Pointer
 

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 82 of file itkExpandImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef ExpandImageFilter itk::ExpandImageFilter< TInputImage, TOutputImage >::Self
 

Standard class typedefs.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 80 of file itkExpandImageFilter.h.

Referenced by itk::ExpandImageFilter< TInputImage, TOutputImage >::~ExpandImageFilter().

template<class TInputImage, class TOutputImage>
typedef ImageToImageFilter<TInputImage,TOutputImage> itk::ExpandImageFilter< TInputImage, TOutputImage >::Superclass
 

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 81 of file itkExpandImageFilter.h.


Constructor & Destructor Documentation

template<class TInputImage, class TOutputImage>
itk::ExpandImageFilter< TInputImage, TOutputImage >::ExpandImageFilter  )  [protected]
 

template<class TInputImage, class TOutputImage>
itk::ExpandImageFilter< TInputImage, TOutputImage >::~ExpandImageFilter  )  [inline, protected]
 

Definition at line 152 of file itkExpandImageFilter.h.

References itk::ExpandImageFilter< TInputImage, TOutputImage >::InterpolatorPointer, itk::ExpandImageFilter< TInputImage, TOutputImage >::OutputImageRegionType, itk::ExpandImageFilter< TInputImage, TOutputImage >::OutputPixelType, and itk::ExpandImageFilter< TInputImage, TOutputImage >::Self.


Member Function Documentation

template<class TInputImage, class TOutputImage>
virtual void itk::ExpandImageFilter< TInputImage, TOutputImage >::BeforeThreadedGenerateData  )  [protected, virtual]
 

This method is used to set the state of the filter before multi-threading.

Reimplemented from itk::ImageSource< TOutputImage >.

template<class TInputImage, class TOutputImage>
virtual void itk::ExpandImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion  )  [virtual]
 

ExpandImageFilter needs a smaller input requested region than the output requested region. As such, ShrinkImageFilter needs to provide an implementation for GenerateInputRequestedRegion() in order to inform the pipeline execution model.

See also:
ProcessObject::GenerateInputRequestedRegion()

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

template<class TInputImage, class TOutputImage>
virtual void itk::ExpandImageFilter< TInputImage, TOutputImage >::GenerateOutputInformation  )  [virtual]
 

ExpandImageFilter produces an image which is a different resolution and with a different pixel spacing than its input image. As such, ExpandImageFilter needs to provide an implementation for UpdateOutputInformation() in order to inform the pipeline execution model. The original documentation of this method is below.

See also:
ProcessObject::GenerateOutputInformaton()

Reimplemented from itk::ProcessObject.

template<class TInputImage, class TOutputImage>
virtual const char* itk::ExpandImageFilter< TInputImage, TOutputImage >::GetClassName  )  const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

template<class TInputImage, class TOutputImage>
virtual OutputPixelType itk::ExpandImageFilter< TInputImage, TOutputImage >::GetEdgePaddingValue  )  [virtual]
 

Get the edge padding value

template<class TInputImage, class TOutputImage>
virtual const unsigned int* itk::ExpandImageFilter< TInputImage, TOutputImage >::GetExpandFactors  )  const [inline, virtual]
 

Get the expand factors. Definition at line 126 of file itkExpandImageFilter.h.

template<class TInputImage, class TOutputImage>
virtual InterpolatorType* itk::ExpandImageFilter< TInputImage, TOutputImage >::GetInterpolator  )  [virtual]
 

Get a pointer to the interpolator function.

template<class TInputImage, class TOutputImage>
itk::ExpandImageFilter< TInputImage, TOutputImage >::itkStaticConstMacro ImageDimension  ,
unsigned  int,
TInputImage::ImageDimension 
 

ImageDimension enumeration.

template<class TInputImage, class TOutputImage>
Pointer itk::ExpandImageFilter< TInputImage, TOutputImage >::New  )  [static]
 

Method for creation through the object factory.

Reimplemented from itk::Object.

template<class TInputImage, class TOutputImage>
void itk::ExpandImageFilter< TInputImage, TOutputImage >::PrintSelf std::ostream &  os,
Indent  indent
const [protected, virtual]
 

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

template<class TInputImage, class TOutputImage>
virtual void itk::ExpandImageFilter< TInputImage, TOutputImage >::SetEdgePaddingValue OutputPixelType  _arg  )  [virtual]
 

Set the edge padding value. The default is zero.

template<class TInputImage, class TOutputImage>
virtual void itk::ExpandImageFilter< TInputImage, TOutputImage >::SetExpandFactors const unsigned int  factor  )  [virtual]
 

Set the expand factors. Values are clamped to a minimum value of 1. Default is 1 for all dimensions.

template<class TInputImage, class TOutputImage>
virtual void itk::ExpandImageFilter< TInputImage, TOutputImage >::SetExpandFactors const unsigned int  factors[]  )  [virtual]
 

Set the expand factors. Values are clamped to a minimum value of 1. Default is 1 for all dimensions.

template<class TInputImage, class TOutputImage>
virtual void itk::ExpandImageFilter< TInputImage, TOutputImage >::SetInterpolator InterpolatorType _arg  )  [virtual]
 

Set the interpolator function.

template<class TInputImage, class TOutputImage>
virtual void itk::ExpandImageFilter< TInputImage, TOutputImage >::ThreadedGenerateData const OutputImageRegionType outputRegionForThread,
int  threadId
[protected, virtual]
 

ExpandImageFilter is implemented as a multithreaded filter. Therefore, this implementation provides a ThreadedGenerateData() routine which is called for each processing thread. The output image data is allocated automatically by the superclass prior to calling ThreadedGenerateData(). ThreadedGenerateData can only write to the portion of the output image specified by the parameter "outputRegionForThread"

See also:
ImageToImageFilter::ThreadedGenerateData(), ImageToImageFilter::GenerateData()

Reimplemented from itk::ImageSource< TOutputImage >.


The documentation for this class was generated from the following file:
Generated at Sun Apr 1 02:53:41 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000