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

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

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

#include <itkVectorExpandImageFilter.h>

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

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

Collaboration graph
[legend]
List of all members.

Public Types

typedef VectorExpandImageFilter Self
typedef ImageToImageFilter<
TInputImage, TOutputImage > 
Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef TInputImage::Pointer InputImagePointer
typedef TOutputImage::Pointer OutputImagePointer
typedef TOutputImage::RegionType OutputImageRegionType
typedef Superclass::InputImageType InputImageType
typedef Superclass::OutputImageType OutputImageType
typedef OutputImageType::PixelType OutputPixelType
typedef OutputPixelType::ValueType OutputValueType
typedef InputImageType::PixelType InputPixelType
typedef InputPixelType::ValueType InputValueType
typedef float ExpandFactorsType
typedef double CoordRepType
typedef VectorInterpolateImageFunction<
InputImageType, CoordRepType
InterpolatorType
typedef InterpolatorType::Pointer InterpolatorPointer
typedef VectorLinearInterpolateImageFunction<
InputImageType, CoordRepType
DefaultInterpolatorType
enum  { VectorDimension = InputPixelType::Dimension }

Public Member Functions

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

Static Public Member Functions

Pointer New ()

Protected Member Functions

 VectorExpandImageFilter ()
 ~VectorExpandImageFilter ()
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::VectorExpandImageFilter< TInputImage, TOutputImage >

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

VectorExpandImageFilter 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 VectorLinearInterpolateImageFunction. The user can specified a particular interpolation function via SetInterpolator(). Note that the input interpolator must derive from base class VectorInterpolateImageFunction.

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 pixel types base on itk::Vectors. For scalar pixel images use ExpandImageFilter.
This filter assumes that the input and output image has the same number of dimensions, and that the input and output pixel types have the same vector dimension.

See also:
Vector

VectorInterpolateImageFunction

VectorLinearInterpolationImageFunction

ExpandImageFilter

Definition at line 80 of file itkVectorExpandImageFilter.h.


Member Typedef Documentation

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

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

Definition at line 88 of file itkVectorExpandImageFilter.h.

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

Typedef support for the interpolation function Definition at line 122 of file itkVectorExpandImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef VectorLinearInterpolateImageFunction<InputImageType,CoordRepType> itk::VectorExpandImageFilter< TInputImage, TOutputImage >::DefaultInterpolatorType
 

Definition at line 127 of file itkVectorExpandImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef float itk::VectorExpandImageFilter< TInputImage, TOutputImage >::ExpandFactorsType
 

The type of the expand factors representation Definition at line 119 of file itkVectorExpandImageFilter.h.

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

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

Typedef to describe the output image region type.

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

Definition at line 94 of file itkVectorExpandImageFilter.h.

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

Inherit some types from superclass

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

Definition at line 106 of file itkVectorExpandImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef InputImageType::PixelType itk::VectorExpandImageFilter< TInputImage, TOutputImage >::InputPixelType
 

Definition at line 112 of file itkVectorExpandImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef InputPixelType::ValueType itk::VectorExpandImageFilter< TInputImage, TOutputImage >::InputValueType
 

Definition at line 113 of file itkVectorExpandImageFilter.h.

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

Definition at line 125 of file itkVectorExpandImageFilter.h.

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

template<class TInputImage, class TOutputImage>
typedef VectorInterpolateImageFunction<InputImageType,CoordRepType> itk::VectorExpandImageFilter< TInputImage, TOutputImage >::InterpolatorType
 

Definition at line 124 of file itkVectorExpandImageFilter.h.

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

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 95 of file itkVectorExpandImageFilter.h.

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

Superclass typedefs.

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

Definition at line 96 of file itkVectorExpandImageFilter.h.

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

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

Some convenient typedefs.

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 107 of file itkVectorExpandImageFilter.h.

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

Input/output vector types. Definition at line 110 of file itkVectorExpandImageFilter.h.

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

template<class TInputImage, class TOutputImage>
typedef OutputPixelType::ValueType itk::VectorExpandImageFilter< TInputImage, TOutputImage >::OutputValueType
 

Definition at line 111 of file itkVectorExpandImageFilter.h.

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

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

Definition at line 87 of file itkVectorExpandImageFilter.h.

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

Standard class typedefs.

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

Definition at line 85 of file itkVectorExpandImageFilter.h.

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

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

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

Definition at line 86 of file itkVectorExpandImageFilter.h.


Member Enumeration Documentation

template<class TInputImage, class TOutputImage>
anonymous enum
 

Determine the vector dimension.

Enumeration values:
VectorDimension 
Definition at line 116 of file itkVectorExpandImageFilter.h.


Constructor & Destructor Documentation

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

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

Definition at line 171 of file itkVectorExpandImageFilter.h.

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


Member Function Documentation

template<class TInputImage, class TOutputImage>
virtual void itk::VectorExpandImageFilter< 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::VectorExpandImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion  )  [virtual]
 

VectorExpandImageFilter 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::VectorExpandImageFilter< TInputImage, TOutputImage >::GenerateOutputInformation  )  [virtual]
 

VectorExpandImageFilter produces an image which is a different resolution and with a different pixel spacing than its input image. As such, VectorExpandImageFilter 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::VectorExpandImageFilter< TInputImage, TOutputImage >::GetClassName  )  const [virtual]
 

Run-time type information (and related methods).

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

template<class TInputImage, class TOutputImage>
virtual const OutputPixelType& itk::VectorExpandImageFilter< TInputImage, TOutputImage >::GetEdgePaddingValue  )  [inline, virtual]
 

Get the edge padding value. Definition at line 150 of file itkVectorExpandImageFilter.h.

template<class TInputImage, class TOutputImage>
const ExpandFactorsType* itk::VectorExpandImageFilter< TInputImage, TOutputImage >::GetExpandFactors  )  const [inline]
 

Get the expand factors. Definition at line 143 of file itkVectorExpandImageFilter.h.

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

Get a pointer to the interpolator function.

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

ImageDimension enumeration

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

Method for creation through the object factory.

Reimplemented from itk::Object.

template<class TInputImage, class TOutputImage>
void itk::VectorExpandImageFilter< 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::VectorExpandImageFilter< TInputImage, TOutputImage >::SetEdgePaddingValue const OutputPixelType value  )  [virtual]
 

Set the edge padding value. The default is a vector of zero.

template<class TInputImage, class TOutputImage>
virtual void itk::VectorExpandImageFilter< 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::VectorExpandImageFilter< TInputImage, TOutputImage >::SetExpandFactors const ExpandFactorsType  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::VectorExpandImageFilter< TInputImage, TOutputImage >::SetExpandFactors const ExpandFactorsType  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::VectorExpandImageFilter< TInputImage, TOutputImage >::SetInterpolator InterpolatorType _arg  )  [virtual]
 

Set the interpolator function.

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

VectorExpandImageFilter 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 Sat Mar 31 02:50:17 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000