FREE::ImageROIBase< VImageDimension > Class Template Reference

Base class for region of interests within f.r.e.e. More...

#include <freROI.h>

Inheritance diagram for FREE::ImageROIBase< VImageDimension >:

Inheritance graph
FREE::ImageMaskedROI\< VImageDimension \>
[legend]

List of all members.

Public Types

typedef ImageROIBase Self
typedef itk::LightObject Superclass
typedef
itk::SmartPointer
< Self
Pointer
typedef
itk::SmartPointer
< const Self
ConstPointer
typedef ImageTypes
< VImageDimension >
::PointType 
PointType
typedef ImageTypes
< VImageDimension >
::InternalImageType 
ImageType
typedef
ImageType::Pointer 
ImagePointer
typedef
ImageType::RegionType 
RegionType
typedef
ImageType::SpacingType 
SpacingType
typedef
itk::SpatialObject
< VImageDimension > 
SpatialObjectType
typedef
SpatialObjectType::Pointer 
SpatialObjectPointer

Public Member Functions

 itkTypeMacro (ImageROIBase, itk::LightObject)
 itkNewMacro (Self)
ScalarType GetOriginPoint (const unsigned int &iDimension) const
void SetOriginPoint (const ScalarType &dPoint, const unsigned int &iDimension)
ScalarType GetSize (const unsigned int &iDimension) const
void SetSize (const ScalarType &dSize, const unsigned int &iDimension)
virtual void Reset ()
virtual
SpatialObjectPointer 
GetSpatialObject (const ImageType *pImage)
RegionType GetITKImageRegion (const SpacingType &rSpacing)
ImagePointer ExtractImageByROI (const ImageType *pImage)
template<class TImage>
void ExtractImageByROI (const TImage *pImage, typename TImage::Pointer &rExtractedImage)
virtual ImagePointer ReadyImageByROI (const ImageType *pImage)
virtual bool PointWithinROI (PointType point)
virtual ~ImageROIBase ()

Static Public Member Functions

static unsigned int GetImageDimension ()

Protected Member Functions

 ImageROIBase ()

Protected Attributes

ScalarType m_dSize [VImageDimension]
ScalarType m_dOrigin [VImageDimension]


Detailed Description

template<unsigned int VImageDimension>
class FREE::ImageROIBase< VImageDimension >

Base class for region of interests within f.r.e.e.

This is the base class for a region of interest (ROI) within f.r.e.e.. It is able to contain the origin and size of the ROI class in real world coordinates and to transform theese in an itk::ImageRegion by a given spacing.

Definition at line 48 of file freROI.h.


Member Typedef Documentation

template<unsigned int VImageDimension>
typedef ImageROIBase FREE::ImageROIBase< VImageDimension >::Self

Standard typedefs

Reimplemented in FREE::ImageMaskedROI< VImageDimension >.

Definition at line 52 of file freROI.h.

template<unsigned int VImageDimension>
typedef itk::LightObject FREE::ImageROIBase< VImageDimension >::Superclass

Reimplemented in FREE::ImageMaskedROI< VImageDimension >.

Definition at line 53 of file freROI.h.

template<unsigned int VImageDimension>
typedef itk::SmartPointer<Self> FREE::ImageROIBase< VImageDimension >::Pointer

Reimplemented in FREE::ImageMaskedROI< VImageDimension >.

Definition at line 54 of file freROI.h.

template<unsigned int VImageDimension>
typedef itk::SmartPointer<const Self> FREE::ImageROIBase< VImageDimension >::ConstPointer

Reimplemented in FREE::ImageMaskedROI< VImageDimension >.

Definition at line 55 of file freROI.h.

template<unsigned int VImageDimension>
typedef ImageTypes<VImageDimension>::PointType FREE::ImageROIBase< VImageDimension >::PointType

Reimplemented in FREE::ImageMaskedROI< VImageDimension >.

Definition at line 57 of file freROI.h.

template<unsigned int VImageDimension>
typedef ImageTypes<VImageDimension>::InternalImageType FREE::ImageROIBase< VImageDimension >::ImageType

Reimplemented in FREE::ImageMaskedROI< VImageDimension >.

Definition at line 58 of file freROI.h.

template<unsigned int VImageDimension>
typedef ImageType::Pointer FREE::ImageROIBase< VImageDimension >::ImagePointer

Reimplemented in FREE::ImageMaskedROI< VImageDimension >.

Definition at line 59 of file freROI.h.

template<unsigned int VImageDimension>
typedef ImageType::RegionType FREE::ImageROIBase< VImageDimension >::RegionType

Reimplemented in FREE::ImageMaskedROI< VImageDimension >.

Definition at line 60 of file freROI.h.

template<unsigned int VImageDimension>
typedef ImageType::SpacingType FREE::ImageROIBase< VImageDimension >::SpacingType

Reimplemented in FREE::ImageMaskedROI< VImageDimension >.

Definition at line 61 of file freROI.h.

template<unsigned int VImageDimension>
typedef itk::SpatialObject<VImageDimension> FREE::ImageROIBase< VImageDimension >::SpatialObjectType

Reimplemented in FREE::ImageMaskedROI< VImageDimension >.

Definition at line 63 of file freROI.h.

template<unsigned int VImageDimension>
typedef SpatialObjectType::Pointer FREE::ImageROIBase< VImageDimension >::SpatialObjectPointer

Reimplemented in FREE::ImageMaskedROI< VImageDimension >.

Definition at line 64 of file freROI.h.


Constructor & Destructor Documentation

template<unsigned int VImageDimension>
virtual FREE::ImageROIBase< VImageDimension >::~ImageROIBase (  )  [inline, virtual]

Definition at line 255 of file freROI.h.

template<unsigned int VImageDimension>
FREE::ImageROIBase< VImageDimension >::ImageROIBase (  )  [inline, protected]

Definition at line 260 of file freROI.h.

References FREE::ImageROIBase< VImageDimension >::Reset().

Here is the call graph for this function:

FREE::ImageROIBase::Reset


Member Function Documentation

template<unsigned int VImageDimension>
FREE::ImageROIBase< VImageDimension >::itkTypeMacro ( ImageROIBase< VImageDimension >  ,
itk::LightObject   
)

Run-time type information (and related methods).

template<unsigned int VImageDimension>
FREE::ImageROIBase< VImageDimension >::itkNewMacro ( Self   ) 

Reimplemented in FREE::ImageMaskedROI< VImageDimension >.

template<unsigned int VImageDimension>
static unsigned int FREE::ImageROIBase< VImageDimension >::GetImageDimension (  )  [inline, static]

Definition at line 70 of file freROI.h.

template<unsigned int VImageDimension>
ScalarType FREE::ImageROIBase< VImageDimension >::GetOriginPoint ( const unsigned int &  iDimension  )  const [inline]

Function to access the coordinate of a region origin in the moving image.

Parameters:
[in] iDimension Indicates the coordinate, which should be changed. If it is out of bound the return will be 0.0.
Returns:
The coordinate of the region origin.

Definition at line 79 of file freROI.h.

References FREE::ImageROIBase< VImageDimension >::m_dOrigin.

Referenced by FREE::ImageROIBase< VImageDimension >::GetITKImageRegion().

template<unsigned int VImageDimension>
void FREE::ImageROIBase< VImageDimension >::SetOriginPoint ( const ScalarType dPoint,
const unsigned int &  iDimension 
) [inline]

Function to set the coordinate of the region origin of the moving image in one dimension.

Parameters:
[in] dPoint The new value of the coordinate.
[in] iDimension Indicates the coordinate, which should be changed. If it is out of bound nothing will be changed.

Definition at line 92 of file freROI.h.

References FREE::ImageROIBase< VImageDimension >::m_dOrigin.

Referenced by FREE::ROIControllerBase< FREE::ImageROIBase< 3 > >::ActualizeMainComponent().

template<unsigned int VImageDimension>
ScalarType FREE::ImageROIBase< VImageDimension >::GetSize ( const unsigned int &  iDimension  )  const [inline]

Function to access the size of one dimension of the region.

Parameters:
[in] iDimension Indicates the coordinate, which should be changed. If it is out of bound the return will be 0.0.
Returns:
The size of the chosen dimension.

Definition at line 104 of file freROI.h.

References FREE::ImageROIBase< VImageDimension >::m_dSize.

Referenced by FREE::ImageROIBase< VImageDimension >::GetITKImageRegion().

template<unsigned int VImageDimension>
void FREE::ImageROIBase< VImageDimension >::SetSize ( const ScalarType dSize,
const unsigned int &  iDimension 
) [inline]

Function to set the size of the region in one dimension.

Parameters:
[in] dSize The new value of the size.
[in] iDimension Indicates the coordinate, which should be changed. If it is out of bound nothing will be changed.

Definition at line 116 of file freROI.h.

References FREE::ImageROIBase< VImageDimension >::m_dSize.

Referenced by FREE::ROIControllerBase< FREE::ImageROIBase< 3 > >::ActualizeMainComponent().

template<unsigned int VImageDimension>
virtual void FREE::ImageROIBase< VImageDimension >::Reset (  )  [inline, virtual]

Reimplemented in FREE::ImageMaskedROI< VImageDimension >.

Definition at line 124 of file freROI.h.

References FREE::ImageROIBase< VImageDimension >::m_dOrigin, and FREE::ImageROIBase< VImageDimension >::m_dSize.

Referenced by FREE::ImageROIBase< VImageDimension >::ImageROIBase().

template<unsigned int VImageDimension>
virtual SpatialObjectPointer FREE::ImageROIBase< VImageDimension >::GetSpatialObject ( const ImageType pImage  )  [inline, virtual]

Function creates a derivate of itk::SpatialObject which represents the ROI for the passed image.

Parameters:
[in] pImage Pointer to the image for which the spatial object should be created.
Returns:
Returns the spatial object.

Definition at line 138 of file freROI.h.

References FREE::ImageROIBase< VImageDimension >::GetITKImageRegion().

Here is the call graph for this function:

FREE::ImageROIBase::GetITKImageRegionFREE::ImageROIBase::GetOriginPointFREE::ImageROIBase::GetSize

template<unsigned int VImageDimension>
RegionType FREE::ImageROIBase< VImageDimension >::GetITKImageRegion ( const SpacingType rSpacing  )  [inline]

Function creates an itk region object based on the information stored in the ROI. To map the spacing of itk::image regions (index based) to the ROI (real world coordinates) the spacing is needed. It can be directly passed with the function, or set by the SetSpacing member function.

Parameters:
[in] rSpacing The spacing of the image.
Returns:
Returns the region of interest (ROI).

Definition at line 152 of file freROI.h.

References FREE::ImageROIBase< VImageDimension >::GetOriginPoint(), and FREE::ImageROIBase< VImageDimension >::GetSize().

Referenced by FREE::ImageROIBase< VImageDimension >::ExtractImageByROI(), and FREE::ImageROIBase< VImageDimension >::GetSpatialObject().

Here is the call graph for this function:

FREE::ImageROIBase::GetOriginPointFREE::ImageROIBase::GetSize

template<unsigned int VImageDimension>
ImagePointer FREE::ImageROIBase< VImageDimension >::ExtractImageByROI ( const ImageType pImage  )  [inline]

This function extracts a part of the image, which is marked by the ROI defined in this class and returns it.

Remarks:
This funcion uses the spacing of the passed Image to generate the ROI. If the ROI is not within the largest possible region of the image, the return will be an empty image with an origin same as the ROI.
Parameters:
[in] pImage Pointer to the image from where the ROI should be extracted.
Returns:
The image volume of the ROI.

Definition at line 173 of file freROI.h.

Referenced by FREE::ImageMaskedROI< VImageDimension >::ReadyImageByROI(), and FREE::ImageROIBase< VImageDimension >::ReadyImageByROI().

template<unsigned int VImageDimension>
template<class TImage>
void FREE::ImageROIBase< VImageDimension >::ExtractImageByROI ( const TImage *  pImage,
typename TImage::Pointer &  rExtractedImage 
) [inline]

This template function extracts a part of a passed image, which is marked by the ROI defined in this class and returns it. The type of the image can be any, at least it should be a derivate of itk::image.

Remarks:
This funcion uses the spacing of the passed Image to generate the ROI. If the ROI is not within the largest possible region of the image, the return will be an empty image with an origin same as the ROI.
Parameters:
[in] pImage Pointer to the image from where the ROI should be extracted.
[in] rExtractedImage Reference to the smart pointer which should get the extracted image part.

Definition at line 189 of file freROI.h.

References FREE::ImageROIBase< VImageDimension >::GetITKImageRegion().

Here is the call graph for this function:

FREE::ImageROIBase::GetITKImageRegionFREE::ImageROIBase::GetOriginPointFREE::ImageROIBase::GetSize

template<unsigned int VImageDimension>
virtual ImagePointer FREE::ImageROIBase< VImageDimension >::ReadyImageByROI ( const ImageType pImage  )  [inline, virtual]

This function computes the image with the given information. The return of the function is an image, which is ready to be used in further image processing.
The result of the function depends on the derived classes. In this case, a part of the image will be extracted regarding the ROI.

Remarks:
This funcion uses the spacing of the passed Image to generate the ROI. If the ROI is not within the largest possible region of the image, the return will be an empty image with an origin same as the ROI.
Parameters:
[in] pImage Pointer to the image from where the ROI should be extracted.
Returns:
The computed image volume.

Definition at line 222 of file freROI.h.

References FREE::ImageROIBase< VImageDimension >::ExtractImageByROI().

Here is the call graph for this function:

FREE::ImageROIBase::ExtractImageByROI

template<unsigned int VImageDimension>
virtual bool FREE::ImageROIBase< VImageDimension >::PointWithinROI ( PointType  point  )  [inline, virtual]

This function checks, if the given point is within the ROI or not. The behavior of this function depends on the derivates and may change. The default case is a simple check if the given point is within the computes the image with the given information. The return of the function is an image, which is ready to be used in further image processing.
The result of the function depends on the derived classes. In this case, a part of the image will be extracted regarding the ROI.

Remarks:
This funcion uses the spacing of the passed Image to generate the ROI. If the ROI is not within the largest possible region of the image, the return will be an empty image with an origin same as the ROI.
Parameters:
[in] pImage Pointer to the image from where the ROI should be extracted.
Returns:
The computed image volume.

Definition at line 239 of file freROI.h.

References FREE::ImageROIBase< VImageDimension >::m_dOrigin, and FREE::ImageROIBase< VImageDimension >::m_dSize.


Member Data Documentation

template<unsigned int VImageDimension>
ScalarType FREE::ImageROIBase< VImageDimension >::m_dSize[VImageDimension] [protected]

Definition at line 263 of file freROI.h.

Referenced by FREE::ImageROIBase< VImageDimension >::GetSize(), FREE::ImageROIBase< VImageDimension >::PointWithinROI(), FREE::ImageMaskedROI< VImageDimension >::Reset(), FREE::ImageROIBase< VImageDimension >::Reset(), and FREE::ImageROIBase< VImageDimension >::SetSize().

template<unsigned int VImageDimension>
ScalarType FREE::ImageROIBase< VImageDimension >::m_dOrigin[VImageDimension] [protected]

Definition at line 266 of file freROI.h.

Referenced by FREE::ImageROIBase< VImageDimension >::GetOriginPoint(), FREE::ImageROIBase< VImageDimension >::PointWithinROI(), FREE::ImageMaskedROI< VImageDimension >::Reset(), FREE::ImageROIBase< VImageDimension >::Reset(), and FREE::ImageROIBase< VImageDimension >::SetOriginPoint().


The documentation for this class was generated from the following file:
Generated at Sat Oct 13 18:17:31 2007 for f.r.e.e. - Flexible Registration and Evaluation Engine by doxygen 1.5.3 written by Dimitri van Heesch, © 1997-2000