ITK  4.2.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
itk::OrientImageFilter< TInputImage, TOutputImage > Class Template Reference

#include <itkOrientImageFilter.h>

+ Inheritance diagram for itk::OrientImageFilter< TInputImage, TOutputImage >:
+ Collaboration diagram for itk::OrientImageFilter< TInputImage, TOutputImage >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef
SpatialOrientation::ValidCoordinateOrientationFlags 
CoordinateOrientationCode
typedef
FlipperType::FlipAxesArrayType 
FlipAxesArrayType
typedef FlipImageFilter
< TInputImage > 
FlipperType
typedef
InputImageType::ConstPointer 
InputImageConstPointer
typedef InputImageType::PixelType InputImagePixelType
typedef InputImageType::Pointer InputImagePointer
typedef InputImageType::RegionType InputImageRegionType
typedef TInputImage InputImageType
typedef
OutputImageType::ConstPointer 
OutputImageConstPointer
typedef OutputImageType::PixelType OutputImagePixelType
typedef OutputImageType::Pointer OutputImagePointer
typedef OutputImageType::RegionType OutputImageRegionType
typedef TOutputImage OutputImageType
typedef
PermuterType::PermuteOrderArrayType 
PermuteOrderArrayType
typedef PermuteAxesImageFilter
< TInputImage > 
PermuterType
typedef SmartPointer< SelfPointer
typedef OrientImageFilter Self
typedef ImageToImageFilter
< TInputImage, TOutputImage > 
Superclass
- Public Types inherited from itk::ImageToImageFilter< TInputImage, TOutputImage >
- Public Types inherited from itk::ImageSource< TOutputImage >
typedef
Superclass::DataObjectIdentifierType 
DataObjectIdentifierType
typedef DataObject::Pointer DataObjectPointer
typedef
Superclass::DataObjectPointerArraySizeType 
DataObjectPointerArraySizeType
- Public Types inherited from itk::ProcessObject
typedef std::vector
< DataObjectPointer
DataObjectPointerArray
typedef std::vector
< DataObjectIdentifierType
NameArray
- Public Types inherited from itk::Object
- Public Types inherited from itk::LightObject

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual void GenerateOutputInformation ()
virtual CoordinateOrientationCode GetDesiredCoordinateOrientation () const
virtual const FlipAxesArrayTypeGetFlipAxes ()
virtual const char * GetNameOfClass () const
virtual const
PermuteOrderArrayType
GetPermuteOrder ()
void SetDesiredCoordinateDirection (const typename TOutputImage::DirectionType &DesiredDirection)
void SetDesiredCoordinateOrientation (CoordinateOrientationCode newCode)
void SetDesiredCoordinateOrientationToAxial ()
void SetDesiredCoordinateOrientationToCoronal ()
void SetDesiredCoordinateOrientationToSagittal ()
void SetGivenCoordinateDirection (const typename TInputImage::DirectionType &GivenDirection)
 typedef (Concept::Convertible< InputImagePixelType, OutputImagePixelType >) InputConvertibleToOutput
 typedef (Concept::SameDimension< itkGetStaticConstMacro(InputImageDimension), itkGetStaticConstMacro(OutputImageDimension) >) SameDimension
 typedef (Concept::SameDimension< itkGetStaticConstMacro(InputImageDimension), 3 >) DimensionShouldBe3
virtual CoordinateOrientationCode GetGivenCoordinateOrientation () const
void SetGivenCoordinateOrientation (CoordinateOrientationCode newCode)
virtual void UseImageDirectionOn ()
virtual void UseImageDirectionOff ()
virtual bool GetUseImageDirection () const
virtual void SetUseImageDirection (bool _arg)
- Public Member Functions inherited from itk::ImageToImageFilter< TInputImage, TOutputImage >
const InputImageTypeGetInput (void) const
const InputImageTypeGetInput (unsigned int idx) const
virtual void PopBackInput ()
virtual void PopFrontInput ()
virtual void PushBackInput (const InputImageType *image)
virtual void PushFrontInput (const InputImageType *image)
virtual void SetInput (const InputImageType *image)
virtual void SetInput (unsigned int, const TInputImage *image)
- Public Member Functions inherited from itk::ImageSource< TOutputImage >
OutputImageTypeGetOutput (unsigned int idx)
virtual void GraftNthOutput (unsigned int idx, DataObject *output)
virtual void GraftOutput (DataObject *output)
virtual void GraftOutput (const DataObjectIdentifierType &key, DataObject *output)
OutputImageTypeGetOutput (void)
const OutputImageTypeGetOutput (void) const
virtual
ProcessObject::DataObjectPointer 
MakeOutput (ProcessObject::DataObjectPointerArraySizeType idx)
- Public Member Functions inherited from itk::ProcessObject
virtual void AbortGenerateDataOff ()
virtual void AbortGenerateDataOn ()
virtual const bool & GetAbortGenerateData ()
NameArray GetInputNames () const
MultiThreader * GetMultiThreader () const
DataObjectPointerArraySizeType GetNumberOfIndexedInputs () const
DataObjectPointerArraySizeType GetNumberOfInputs () const
DataObjectPointerArraySizeType GetNumberOfOutputs () const
virtual
DataObjectPointerArraySizeType 
GetNumberOfValidRequiredInputs () const
NameArray GetOutputNames () const
virtual const float & GetProgress ()
NameArray GetRequiredInputNames () const
bool HasInput (const DataObjectIdentifierType &key) const
bool HasOutput (const DataObjectIdentifierType &key) const
virtual DataObjectPointer MakeOutput (const DataObjectIdentifierType &)
virtual void PrepareOutputs ()
virtual void PropagateRequestedRegion (DataObject *output)
virtual void ResetPipeline ()
virtual void SetAbortGenerateData (bool _arg)
virtual void SetProgress (float _arg)
virtual void Update ()
virtual void UpdateLargestPossibleRegion ()
virtual void UpdateOutputData (DataObject *output)
virtual void UpdateOutputInformation ()
void UpdateProgress (float amount)
DataObjectPointerArray GetInputs ()
DataObjectPointerArray GetOutputs ()
DataObjectPointerArray GetIndexedInputs ()
DataObjectPointerArray GetIndexedOutputs ()
DataObjectPointerArraySizeType GetNumberOfIndexedOutputs () const
virtual void SetReleaseDataFlag (bool flag)
virtual bool GetReleaseDataFlag () const
void ReleaseDataFlagOn ()
void ReleaseDataFlagOff ()
virtual void SetReleaseDataBeforeUpdateFlag (bool _arg)
virtual const bool & GetReleaseDataBeforeUpdateFlag ()
virtual void ReleaseDataBeforeUpdateFlagOn ()
virtual void ReleaseDataBeforeUpdateFlagOff ()
virtual void SetNumberOfThreads (ThreadIdType _arg)
virtual const ThreadIdTypeGetNumberOfThreads ()
- Public Member Functions inherited from itk::Object
unsigned long AddObserver (const EventObject &event, Command *)
unsigned long AddObserver (const EventObject &event, Command *) const
virtual void DebugOff () const
virtual void DebugOn () const
CommandGetCommand (unsigned long tag)
bool GetDebug () const
MetaDataDictionaryGetMetaDataDictionary (void)
const MetaDataDictionaryGetMetaDataDictionary (void) const
virtual unsigned long GetMTime () const
virtual const TimeStampGetTimeStamp () const
bool HasObserver (const EventObject &event) const
void InvokeEvent (const EventObject &)
void InvokeEvent (const EventObject &) const
virtual void Modified () const
virtual void Register () const
void RemoveAllObservers ()
void RemoveObserver (unsigned long tag)
void SetDebug (bool debugFlag) const
void SetMetaDataDictionary (const MetaDataDictionary &rhs)
virtual void SetReferenceCount (int)
virtual void UnRegister () const
- Public Member Functions inherited from itk::LightObject
virtual void Delete ()
virtual int GetReferenceCount () const
 itkCloneMacro (Self)
void Print (std::ostream &os, Indent indent=0) const

Static Public Member Functions

static Pointer New ()

Static Public Attributes

static const unsigned int InputImageDimension = TInputImage::ImageDimension
static const unsigned int OutputImageDimension = TOutputImage::ImageDimension
- Static Public Attributes inherited from itk::ImageToImageFilter< TInputImage, TOutputImage >
- Static Public Attributes inherited from itk::ImageSource< TOutputImage >

Protected Member Functions

void DeterminePermutationsAndFlips (const SpatialOrientation::ValidCoordinateOrientationFlags fixed_orient, const SpatialOrientation::ValidCoordinateOrientationFlags moving_orient)
void EnlargeOutputRequestedRegion (DataObject *)
void GenerateData ()
void GenerateInputRequestedRegion ()
bool NeedToFlip ()
bool NeedToPermute ()
 OrientImageFilter ()
 ~OrientImageFilter ()
void PrintSelf (std::ostream &os, Indent indent) const
- Protected Member Functions inherited from itk::ImageToImageFilter< TInputImage, TOutputImage >
virtual void CallCopyInputRegionToOutputRegion (OutputImageRegionType &destRegion, const InputImageRegionType &srcRegion)
virtual void CallCopyOutputRegionToInputRegion (InputImageRegionType &destRegion, const OutputImageRegionType &srcRegion)
 ImageToImageFilter ()
virtual void VerifyInputInformation ()
 ~ImageToImageFilter ()
void PushBackInput (const DataObject *input)
void PushFrontInput (const DataObject *input)
- Protected Member Functions inherited from itk::ImageSource< TOutputImage >
virtual void AfterThreadedGenerateData ()
virtual void AllocateOutputs ()
virtual void BeforeThreadedGenerateData ()
 ImageSource ()
virtual unsigned int SplitRequestedRegion (unsigned int i, unsigned int num, OutputImageRegionType &splitRegion)
virtual void ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, ThreadIdType threadId)
virtual ~ImageSource ()
- Protected Member Functions inherited from itk::ProcessObject
virtual void AddInput (DataObject *input)
virtual void AddOutput (DataObject *output)
bool AddRequiredInputName (const DataObjectIdentifierType &)
virtual void CacheInputReleaseDataFlags ()
virtual void GenerateOutputRequestedRegion (DataObject *output)
virtual const
DataObjectPointerArraySizeType
GetNumberOfRequiredInputs ()
virtual const
DataObjectPointerArraySizeType
GetNumberOfRequiredOutputs ()
bool IsIndexedName (const DataObjectIdentifierType &) const
bool IsRequiredInputName (const DataObjectIdentifierType &) const
 itkLegacyMacro (virtual void RemoveInput(DataObject *input))
 itkLegacyMacro (virtual void RemoveOutput(DataObject *output))
 itkLegacyMacro (void SetNumberOfInputs(DataObjectPointerArraySizeType num))
 itkLegacyMacro (void SetNumberOfOutputs(DataObjectPointerArraySizeType num))
DataObjectPointerArraySizeType MakeIndexFromName (const DataObjectIdentifierType &) const
DataObjectIdentifierType MakeNameFromIndex (DataObjectPointerArraySizeType) const
 ProcessObject ()
virtual void PropagateResetPipeline ()
virtual void ReleaseInputs ()
virtual void RemoveInput (const DataObjectIdentifierType &key)
virtual void RemoveInput (DataObjectPointerArraySizeType)
virtual void RemoveOutput (const DataObjectIdentifierType &key)
virtual void RemoveOutput (DataObjectPointerArraySizeType idx)
bool RemoveRequiredInputName (const DataObjectIdentifierType &)
virtual void RestoreInputReleaseDataFlags ()
virtual void SetInput (const DataObjectIdentifierType &key, DataObject *input)
virtual void SetNthInput (DataObjectPointerArraySizeType num, DataObject *input)
virtual void SetNthOutput (DataObjectPointerArraySizeType num, DataObject *output)
void SetNumberOfIndexedInputs (DataObjectPointerArraySizeType num)
void SetNumberOfIndexedOutputs (DataObjectPointerArraySizeType num)
virtual void SetNumberOfRequiredInputs (DataObjectPointerArraySizeType)
virtual void SetNumberOfRequiredOutputs (DataObjectPointerArraySizeType _arg)
virtual void SetOutput (const DataObjectIdentifierType &key, DataObject *output)
virtual void SetPrimaryInput (DataObject *input)
virtual void SetPrimaryOutput (DataObject *output)
void SetRequiredInputNames (const NameArray &)
virtual void VerifyPreconditions ()
 ~ProcessObject ()
DataObjectGetInput (const DataObjectIdentifierType &key)
const DataObjectGetInput (const DataObjectIdentifierType &key) const
DataObjectGetInput (DataObjectPointerArraySizeType)
const DataObjectGetInput (DataObjectPointerArraySizeType idx) const
DataObjectGetPrimaryInput ()
const DataObjectGetPrimaryInput () const
DataObjectGetOutput (const DataObjectIdentifierType &key)
const DataObjectGetOutput (const DataObjectIdentifierType &key) const
DataObjectGetOutput (DataObjectPointerArraySizeType idx)
const DataObjectGetOutput (DataObjectPointerArraySizeType idx) const
DataObjectGetPrimaryOutput ()
const DataObjectGetPrimaryOutput () const
- Protected Member Functions inherited from itk::Object
 Object ()
bool PrintObservers (std::ostream &os, Indent indent) const
virtual void SetTimeStamp (const TimeStamp &time)
virtual ~Object ()
- Protected Member Functions inherited from itk::LightObject
virtual LightObject::Pointer InternalClone () const
 LightObject ()
virtual void PrintHeader (std::ostream &os, Indent indent) const
virtual void PrintTrailer (std::ostream &os, Indent indent) const
virtual ~LightObject ()

Private Member Functions

std::string GetMajorAxisFromPatientRelativeDirectionCosine (double x, double y, double z)
void operator= (const Self &)
 OrientImageFilter (const Self &)

Private Attributes

std::map
< CoordinateOrientationCode,
std::string > 
m_CodeToString
CoordinateOrientationCode m_DesiredCoordinateOrientation
FlipAxesArrayType m_FlipAxes
CoordinateOrientationCode m_GivenCoordinateOrientation
PermuteOrderArrayType m_PermuteOrder
std::map< std::string,
CoordinateOrientationCode
m_StringToCode
bool m_UseImageDirection

Additional Inherited Members

- Protected Types inherited from itk::ImageToImageFilter< TInputImage, TOutputImage >
typedef
ImageToImageFilterDetail::ImageRegionCopier
< itkGetStaticConstMacro(OutputImageDimension),
itkGetStaticConstMacro(InputImageDimension) > 
InputToOutputRegionCopierType
typedef
ImageToImageFilterDetail::ImageRegionCopier
< itkGetStaticConstMacro(InputImageDimension),
itkGetStaticConstMacro(OutputImageDimension) > 
OutputToInputRegionCopierType

Detailed Description

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

Permute axes and then flip images as needed to obtain agreement in coordinateOrientation codes.

This class satisfies a common requirement in medical imaging, which is to properly orient a 3 dimensional image with respect to anatomical features. Due to the wide variety of hardware used to generate 3D images of human anatomy, and the even wider variety of image processing software, it is often necessary to re-orient image volume data.

OrientImageFilter depends on a set of constants that describe all possible labeled according to the following scheme: Directions are labeled in terms of following pairs:

The initials of these directions are used in a 3 letter code in the enumerated type itk::SpatialOrientation::ValidCoordinateOrientationFlags. The initials are given fastest moving index first, second fastest second, third fastest third. Examples:

In order to use this filter, you need to supply an input image, the current orientation of the input image (set with SetGivenCoordinateOrientation) and the desired orientation. (set with SetDesiredCoordinateOrientation). You may explicitly set the DesiredOrientation with SetDesiredCoordinateOrientation (if UseImageDirection is "off") or you can use the image's direction cosines to set the DesiredOrientation (if UseImageDirection is "on"). When reading image files that define the coordinate orientation of the image, the current orientation is stored in the MetadataDictionary for the itk::Image object and the Image.Direction direction cosine matrix created from the file.

As an example, if you wished to keep all images within your program in the orientation corresponding to the Analyze file format's 'CORONAL' orientation you could do something like the following

// DEPRECATED -- using metadata for orientation is no longer supported
//
#include "itkImage.h"
typedef itk::Image<unsigned char,3> ImageType;
typedef itk::ImageFileReader< TstImageType > ImageReaderType;
ImageType::Pointer ReadAnalyzeFile(const char *path)
{
ImageReaderType::Pointer fileReader = ImageReaderType::New();
fileReader->SetImageIO(io);
fileReader->SetFileName(path);
fileReader->Update();
ImageType::Pointer rval = fileReader->GetOutput();
Deprecated -- use direction cosines
itk::ExposeMetaData<itk::SpatialOrientation::ValidCoordinateOrientationFlags>
(rval->GetMetaDataDictionary(),itk::ITK_CoordinateOrientation,fileOrientation);
orienter->SetGivenCoordinateOrientation(fileOrientation); // deprecated
orienter->SetDesiredCoordinateOrientation(itk::SpatialOrientation::ITK_COORDINATE_ORIENTATION_RIP);
orienter->SetInput(rval);
orienter->Update();
rval = orienter->GetOutput();
return rval;
}

Or, using the direction cosines of the image,

#include "itkImage.h"
typedef itk::Image<unsigned char,3> ImageType;
typedef itk::ImageFileReader< TstImageType > ImageReaderType;
ImageType::Pointer ReadAnalyzeFile(const char *path)
{
ImageReaderType::Pointer fileReader = ImageReaderType::New();
fileReader->SetImageIO(io);
fileReader->SetFileName(path);
fileReader->Update();
ImageType::Pointer rval = fileReader->GetOutput();
orienter->UseImageDirectionOn();
orienter->SetDesiredCoordinateOrientation(itk::SpatialOrientation::ITK_COORDINATE_ORIENTATION_RIP);
orienter->SetInput(rval);
orienter->Update();
rval = orienter->GetOutput();
return rval;
}

Definition at line 140 of file itkOrientImageFilter.h.


Member Typedef Documentation

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

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

Definition at line 148 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef SpatialOrientation::ValidCoordinateOrientationFlags itk::OrientImageFilter< TInputImage, TOutputImage >::CoordinateOrientationCode

Definition at line 162 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef FlipperType::FlipAxesArrayType itk::OrientImageFilter< TInputImage, TOutputImage >::FlipAxesArrayType

Definition at line 170 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef FlipImageFilter< TInputImage > itk::OrientImageFilter< TInputImage, TOutputImage >::FlipperType

Axes flipper type.

Definition at line 169 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef InputImageType::ConstPointer itk::OrientImageFilter< TInputImage, TOutputImage >::InputImageConstPointer

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

Definition at line 153 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef InputImageType::PixelType itk::OrientImageFilter< TInputImage, TOutputImage >::InputImagePixelType

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

Definition at line 155 of file itkOrientImageFilter.h.

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

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

Definition at line 152 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef InputImageType::RegionType itk::OrientImageFilter< TInputImage, TOutputImage >::InputImageRegionType

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

Definition at line 154 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef TInputImage itk::OrientImageFilter< TInputImage, TOutputImage >::InputImageType

Some convenient typedefs.

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

Definition at line 151 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef OutputImageType::ConstPointer itk::OrientImageFilter< TInputImage, TOutputImage >::OutputImageConstPointer

Definition at line 158 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef OutputImageType::PixelType itk::OrientImageFilter< TInputImage, TOutputImage >::OutputImagePixelType

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

Definition at line 160 of file itkOrientImageFilter.h.

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

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 157 of file itkOrientImageFilter.h.

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

Superclass typedefs.

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

Definition at line 159 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef TOutputImage itk::OrientImageFilter< TInputImage, TOutputImage >::OutputImageType

Some convenient typedefs.

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 156 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef PermuterType::PermuteOrderArrayType itk::OrientImageFilter< TInputImage, TOutputImage >::PermuteOrderArrayType

Definition at line 166 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef PermuteAxesImageFilter< TInputImage > itk::OrientImageFilter< TInputImage, TOutputImage >::PermuterType

Axes permuter type.

Definition at line 165 of file itkOrientImageFilter.h.

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

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

Definition at line 147 of file itkOrientImageFilter.h.

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

Standard class typedefs.

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

Definition at line 145 of file itkOrientImageFilter.h.

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

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

Definition at line 146 of file itkOrientImageFilter.h.


Constructor & Destructor Documentation

template<class TInputImage , class TOutputImage >
itk::OrientImageFilter< TInputImage, TOutputImage >::OrientImageFilter ( )
protected

End concept checking

template<class TInputImage , class TOutputImage >
itk::OrientImageFilter< TInputImage, TOutputImage >::~OrientImageFilter ( )
inlineprotected

End concept checking

Definition at line 274 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
itk::OrientImageFilter< TInputImage, TOutputImage >::OrientImageFilter ( const Self )
private

Member Function Documentation

template<class TInputImage , class TOutputImage >
virtual::itk::LightObject::Pointer itk::OrientImageFilter< TInputImage, TOutputImage >::CreateAnother ( void  ) const
virtual

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::Object.

template<class TInputImage , class TOutputImage >
void itk::OrientImageFilter< TInputImage, TOutputImage >::DeterminePermutationsAndFlips ( const SpatialOrientation::ValidCoordinateOrientationFlags  fixed_orient,
const SpatialOrientation::ValidCoordinateOrientationFlags  moving_orient 
)
protected
template<class TInputImage , class TOutputImage >
void itk::OrientImageFilter< TInputImage, TOutputImage >::EnlargeOutputRequestedRegion ( DataObject )
protectedvirtual

OrientImageFilter will produce the entire output.

Reimplemented from itk::ProcessObject.

template<class TInputImage , class TOutputImage >
void itk::OrientImageFilter< TInputImage, TOutputImage >::GenerateData ( )
protectedvirtual

Single-threaded version of GenerateData. This filter delegates to PermuteAxesImageFilter and FlipImageFilter.

Reimplemented from itk::ImageSource< TOutputImage >.

template<class TInputImage , class TOutputImage >
void itk::OrientImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion ( )
protectedvirtual

OrientImageFilter needs the entire input be available. Thus, it needs to provide an implementation of GenerateInputRequestedRegion().

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

template<class TInputImage , class TOutputImage >
virtual void itk::OrientImageFilter< TInputImage, TOutputImage >::GenerateOutputInformation ( )
virtual

OrientImageFilter produces an image which is a different dimensionality than its input image, in general. As such, OrientImageFilter needs to provide an implementation for GenerateOutputInformation() 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 CoordinateOrientationCode itk::OrientImageFilter< TInputImage, TOutputImage >::GetDesiredCoordinateOrientation ( ) const
virtual
template<class TInputImage , class TOutputImage >
virtual const FlipAxesArrayType& itk::OrientImageFilter< TInputImage, TOutputImage >::GetFlipAxes ( )
virtual

Get flip axes.

template<class TInputImage , class TOutputImage >
virtual CoordinateOrientationCode itk::OrientImageFilter< TInputImage, TOutputImage >::GetGivenCoordinateOrientation ( ) const
virtual

Set/Get the orientation codes to define the coordinate transform.

template<class TInputImage , class TOutputImage >
std::string itk::OrientImageFilter< TInputImage, TOutputImage >::GetMajorAxisFromPatientRelativeDirectionCosine ( double  x,
double  y,
double  z 
)
private
template<class TInputImage , class TOutputImage >
virtual const char* itk::OrientImageFilter< TInputImage, TOutputImage >::GetNameOfClass ( ) const
virtual

Runtime information support.

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

template<class TInputImage , class TOutputImage >
virtual const PermuteOrderArrayType& itk::OrientImageFilter< TInputImage, TOutputImage >::GetPermuteOrder ( )
virtual

Get axes permute order.

template<class TInputImage , class TOutputImage >
virtual bool itk::OrientImageFilter< TInputImage, TOutputImage >::GetUseImageDirection ( ) const
virtual

Controls how the GivenCoordinateOrientation is determined. If "on", the direction cosines determine the coordinate orientation. If "off", the user must use the SetGivenCoordinateOrientation method to establish the orientation. For compatbility with the original API, the default if "off".

template<class TInputImage , class TOutputImage >
bool itk::OrientImageFilter< TInputImage, TOutputImage >::NeedToFlip ( )
protected
template<class TInputImage , class TOutputImage >
bool itk::OrientImageFilter< TInputImage, TOutputImage >::NeedToPermute ( )
protected
template<class TInputImage , class TOutputImage >
static Pointer itk::OrientImageFilter< TInputImage, TOutputImage >::New ( )
static

Standard New method.

Reimplemented from itk::Object.

template<class TInputImage , class TOutputImage >
void itk::OrientImageFilter< TInputImage, TOutputImage >::operator= ( const Self )
private

PushBackInput(), PushFronInput() in the public section force the input to be the type expected by an ImageToImageFilter. However, these methods end of "hiding" the versions from the superclass (ProcessObject) whose arguments are DataObjects. Here, we re-expose the versions from ProcessObject to avoid warnings about hiding methods from the superclass.

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

template<class TInputImage , class TOutputImage >
void itk::OrientImageFilter< TInputImage, TOutputImage >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
protectedvirtual

End concept checking

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

template<class TInputImage , class TOutputImage >
void itk::OrientImageFilter< TInputImage, TOutputImage >::SetDesiredCoordinateDirection ( const typename TOutputImage::DirectionType &  DesiredDirection)
inline

Definition at line 199 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
void itk::OrientImageFilter< TInputImage, TOutputImage >::SetDesiredCoordinateOrientation ( CoordinateOrientationCode  newCode)
template<class TInputImage , class TOutputImage >
void itk::OrientImageFilter< TInputImage, TOutputImage >::SetDesiredCoordinateOrientationToAxial ( )
inline

Convenience methods to set desired slice orientation These methods allow a limited selection of slice orientations without having to specify the SpatialOrientation.

SetDesiredCoordinateOrientationToAxial is equivalent to SetDesiredCoordinateOrientation (ITK_COORDINATE_ORIENTATION_RAI).

SetDesiredCoordinateOrientationToCoronal is equivalent to SetDesiredCoordinateOrientation (ITK_COORDINATE_ORIENTATION_RSA).

SetDesiredCoordinateOrientationToSagittal is equivalent to SetDesiredCoordinateOrientation (ITK_COORDINATE_ORIENTATION_ASL).

Definition at line 236 of file itkOrientImageFilter.h.

References itk::SpatialOrientation::ITK_COORDINATE_ORIENTATION_RAI.

template<class TInputImage , class TOutputImage >
void itk::OrientImageFilter< TInputImage, TOutputImage >::SetDesiredCoordinateOrientationToCoronal ( )
inline
template<class TInputImage , class TOutputImage >
void itk::OrientImageFilter< TInputImage, TOutputImage >::SetDesiredCoordinateOrientationToSagittal ( )
inline
template<class TInputImage , class TOutputImage >
void itk::OrientImageFilter< TInputImage, TOutputImage >::SetGivenCoordinateDirection ( const typename TInputImage::DirectionType &  GivenDirection)
inline

Definition at line 190 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
void itk::OrientImageFilter< TInputImage, TOutputImage >::SetGivenCoordinateOrientation ( CoordinateOrientationCode  newCode)

Set/Get the orientation codes to define the coordinate transform.

template<class TInputImage , class TOutputImage >
virtual void itk::OrientImageFilter< TInputImage, TOutputImage >::SetUseImageDirection ( bool  _arg)
virtual

Controls how the GivenCoordinateOrientation is determined. If "on", the direction cosines determine the coordinate orientation. If "off", the user must use the SetGivenCoordinateOrientation method to establish the orientation. For compatbility with the original API, the default if "off".

template<class TInputImage , class TOutputImage >
itk::OrientImageFilter< TInputImage, TOutputImage >::typedef ( Concept::Convertible< InputImagePixelType, OutputImagePixelType )

Begin concept checking This class requires InputConvertibleToOutput in the form of ( Concept::Convertible< InputImagePixelType, OutputImagePixelType > )

template<class TInputImage , class TOutputImage >
itk::OrientImageFilter< TInputImage, TOutputImage >::typedef ( Concept::SameDimension< itkGetStaticConstMacro(InputImageDimension), itkGetStaticConstMacro(OutputImageDimension) >  )

This class requires SameDimension in the form of ( Concept::SameDimension< itkGetStaticConstMacro(InputImageDimension), itkGetStaticConstMacro(OutputImageDimension) > )

template<class TInputImage , class TOutputImage >
itk::OrientImageFilter< TInputImage, TOutputImage >::typedef ( Concept::SameDimension< itkGetStaticConstMacro(InputImageDimension), 3 >  )

This class requires DimensionShouldBe3 in the form of ( Concept::SameDimension< itkGetStaticConstMacro(InputImageDimension), 3 > )

template<class TInputImage , class TOutputImage >
virtual void itk::OrientImageFilter< TInputImage, TOutputImage >::UseImageDirectionOff ( )
virtual

Controls how the GivenCoordinateOrientation is determined. If "on", the direction cosines determine the coordinate orientation. If "off", the user must use the SetGivenCoordinateOrientation method to establish the orientation. For compatbility with the original API, the default if "off".

template<class TInputImage , class TOutputImage >
virtual void itk::OrientImageFilter< TInputImage, TOutputImage >::UseImageDirectionOn ( )
virtual

Controls how the GivenCoordinateOrientation is determined. If "on", the direction cosines determine the coordinate orientation. If "off", the user must use the SetGivenCoordinateOrientation method to establish the orientation. For compatbility with the original API, the default if "off".


Member Data Documentation

template<class TInputImage , class TOutputImage >
const unsigned int itk::OrientImageFilter< TInputImage, TOutputImage >::InputImageDimension = TInputImage::ImageDimension
static

ImageDimension constants

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

Definition at line 174 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
std::map< CoordinateOrientationCode, std::string > itk::OrientImageFilter< TInputImage, TOutputImage >::m_CodeToString
private

Definition at line 312 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
CoordinateOrientationCode itk::OrientImageFilter< TInputImage, TOutputImage >::m_DesiredCoordinateOrientation
private

Definition at line 305 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
FlipAxesArrayType itk::OrientImageFilter< TInputImage, TOutputImage >::m_FlipAxes
private

Definition at line 309 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
CoordinateOrientationCode itk::OrientImageFilter< TInputImage, TOutputImage >::m_GivenCoordinateOrientation
private

Definition at line 304 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
PermuteOrderArrayType itk::OrientImageFilter< TInputImage, TOutputImage >::m_PermuteOrder
private

Definition at line 308 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
std::map< std::string, CoordinateOrientationCode > itk::OrientImageFilter< TInputImage, TOutputImage >::m_StringToCode
private

Definition at line 311 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
bool itk::OrientImageFilter< TInputImage, TOutputImage >::m_UseImageDirection
private

Definition at line 306 of file itkOrientImageFilter.h.

template<class TInputImage , class TOutputImage >
const unsigned int itk::OrientImageFilter< TInputImage, TOutputImage >::OutputImageDimension = TOutputImage::ImageDimension
static

ImageDimension constants

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

Definition at line 176 of file itkOrientImageFilter.h.


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