RTK  1.4.0
Reconstruction Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
rtk::AmsterdamShroudImageFilter< TInputImage > Class Template Reference

#include <rtkAmsterdamShroudImageFilter.h>

+ Inheritance diagram for rtk::AmsterdamShroudImageFilter< TInputImage >:
+ Collaboration diagram for rtk::AmsterdamShroudImageFilter< TInputImage >:

Public Types

typedef itk::SmartPointer< const SelfConstPointer
 
typedef GeometryType::Pointer GeometryPointer
 
typedef rtk::ThreeDCircularProjectionGeometry GeometryType
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::Point< double, 3 > PointType
 
typedef AmsterdamShroudImageFilter Self
 
typedef itk::ImageToImageFilter< TInputImage, itk::Image< double, TInputImage::ImageDimension-1 > > Superclass
 
typedef itk::Image< double, TInputImage::ImageDimension-1 > TOutputImage
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother () const
 
virtual unsigned int GetUnsharpMaskSize ()
 
virtual void SetUnsharpMaskSize (unsigned int _arg)
 
virtual GeometryTypeGetModifiableGeometry ()
 
virtual const GeometryTypeGetGeometry () const
 
virtual void SetGeometry (GeometryType *_arg)
 
virtual PointType GetCorner1 ()
 
virtual void SetCorner1 (PointType _arg)
 
virtual PointType GetCorner2 ()
 
virtual void SetCorner2 (PointType _arg)
 

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 const unsigned int ImageDimension = TOutputImage::ImageDimension
 

Protected Member Functions

virtual void CropOutsideProjectedBox ()
 
void GenerateData () override
 
void GenerateInputRequestedRegion () override
 
void GenerateOutputInformation () override
 
void UpdateUnsharpMaskKernel ()
 

Private Types

typedef itk::ConvolutionImageFilter< TOutputImage, TOutputImageConvolutionType
 
typedef itk::RecursiveGaussianImageFilter< TInputImage, TInputImage > DerivativeType
 
typedef itk::MultiplyImageFilter< TInputImage, TInputImage, TInputImage > NegativeType
 
typedef itk::PermuteAxesImageFilter< TOutputImagePermuteType
 
typedef itk::SubtractImageFilter< TOutputImage, TOutputImageSubtractType
 
typedef itk::SumProjectionImageFilter< TInputImage, TOutputImageSumType
 
typedef itk::ThresholdImageFilter< TInputImage > ThresholdType
 

Private Member Functions

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

Private Attributes

ConvolutionType::Pointer m_ConvolutionFilter
 
PointType m_Corner1
 
PointType m_Corner2
 
DerivativeType::Pointer m_DerivativeFilter
 
GeometryPointer m_Geometry
 
NegativeType::Pointer m_NegativeFilter
 
PermuteType::Pointer m_PermuteFilter
 
SubtractType::Pointer m_SubtractFilter
 
SumType::Pointer m_SumFilter
 
ThresholdType::Pointer m_ThresholdFilter
 
unsigned int m_UnsharpMaskSize
 
virtual const char * GetNameOfClass () const
 
 AmsterdamShroudImageFilter ()
 
virtual ~AmsterdamShroudImageFilter () override
 

Detailed Description

template<class TInputImage>
class rtk::AmsterdamShroudImageFilter< TInputImage >

Compute the Amsterdam shroud image for respiratory signal extraction.

The Amsterdam shroud is an image that is used to extract a respiratory signal from cone-beam projection images. The Y-axis is time and the X-axis is the cranio-caudal position. More information is available in [Zijp, ICCR, 2004], [Sonke, Med Phys, 2005] and [Rit, IJROBP, 2012].

The following mini-pipeline of ITK filters is used for its RTK implementation:

dot_inline_dotgraph_5.png
Test:
rtkamsterdamshroudtest.cxx
Author
Simon Rit

Definition at line 81 of file rtkAmsterdamShroudImageFilter.h.

Member Typedef Documentation

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

Definition at line 90 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
typedef itk::ConvolutionImageFilter< TOutputImage, TOutputImage > rtk::AmsterdamShroudImageFilter< TInputImage >::ConvolutionType
private

Definition at line 160 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
typedef itk::RecursiveGaussianImageFilter< TInputImage, TInputImage > rtk::AmsterdamShroudImageFilter< TInputImage >::DerivativeType
private

Definition at line 156 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
typedef GeometryType::Pointer rtk::AmsterdamShroudImageFilter< TInputImage >::GeometryPointer

Definition at line 96 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
typedef rtk::ThreeDCircularProjectionGeometry rtk::AmsterdamShroudImageFilter< TInputImage >::GeometryType

Definition at line 95 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
typedef itk::MultiplyImageFilter< TInputImage, TInputImage, TInputImage > rtk::AmsterdamShroudImageFilter< TInputImage >::NegativeType
private

Definition at line 157 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
typedef itk::PermuteAxesImageFilter< TOutputImage > rtk::AmsterdamShroudImageFilter< TInputImage >::PermuteType
private

Definition at line 162 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
typedef itk::SmartPointer<Self> rtk::AmsterdamShroudImageFilter< TInputImage >::Pointer

Definition at line 89 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
typedef itk::Point<double, 3> rtk::AmsterdamShroudImageFilter< TInputImage >::PointType

Definition at line 94 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
typedef AmsterdamShroudImageFilter rtk::AmsterdamShroudImageFilter< TInputImage >::Self

Standard class typedefs.

Definition at line 86 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
typedef itk::SubtractImageFilter< TOutputImage, TOutputImage > rtk::AmsterdamShroudImageFilter< TInputImage >::SubtractType
private

Definition at line 161 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
typedef itk::SumProjectionImageFilter< TInputImage, TOutputImage > rtk::AmsterdamShroudImageFilter< TInputImage >::SumType
private

Definition at line 159 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
typedef itk::ImageToImageFilter<TInputImage, itk::Image<double, TInputImage::ImageDimension-1> > rtk::AmsterdamShroudImageFilter< TInputImage >::Superclass

Definition at line 88 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
typedef itk::ThresholdImageFilter< TInputImage > rtk::AmsterdamShroudImageFilter< TInputImage >::ThresholdType
private

Definition at line 158 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
typedef itk::Image<double, TInputImage::ImageDimension-1> rtk::AmsterdamShroudImageFilter< TInputImage >::TOutputImage

Convenient typedefs.

Definition at line 93 of file rtkAmsterdamShroudImageFilter.h.

Constructor & Destructor Documentation

template<class TInputImage >
rtk::AmsterdamShroudImageFilter< TInputImage >::AmsterdamShroudImageFilter ( )
protected

Runtime information support.

template<class TInputImage >
virtual rtk::AmsterdamShroudImageFilter< TInputImage >::~AmsterdamShroudImageFilter ( )
inlineoverrideprotectedvirtual

Runtime information support.

Definition at line 137 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
rtk::AmsterdamShroudImageFilter< TInputImage >::AmsterdamShroudImageFilter ( const Self )
private

Member Function Documentation

template<class TInputImage >
virtual::itk::LightObject::Pointer rtk::AmsterdamShroudImageFilter< TInputImage >::CreateAnother ( ) const
template<class TInputImage >
virtual void rtk::AmsterdamShroudImageFilter< TInputImage >::CropOutsideProjectedBox ( )
protectedvirtual

Function that actually projects the 3D box defined by m_Corner1 and m_Corner2 and set everything outside to 0.

template<class TInputImage >
void rtk::AmsterdamShroudImageFilter< TInputImage >::GenerateData ( )
overrideprotected

Single-threaded version of GenerateData. This filter delegates to other filters.

template<class TInputImage >
void rtk::AmsterdamShroudImageFilter< TInputImage >::GenerateInputRequestedRegion ( )
overrideprotected
template<class TInputImage >
void rtk::AmsterdamShroudImageFilter< TInputImage >::GenerateOutputInformation ( )
overrideprotected
template<class TInputImage >
virtual PointType rtk::AmsterdamShroudImageFilter< TInputImage >::GetCorner1 ( )
virtual

3D clipbox corners for selecting part of the projections. Each corner is projected and rounded to the nearest 2D pixel and only those pixels within the two pixels are kept.

template<class TInputImage >
virtual PointType rtk::AmsterdamShroudImageFilter< TInputImage >::GetCorner2 ( )
virtual

3D clipbox corners for selecting part of the projections. Each corner is projected and rounded to the nearest 2D pixel and only those pixels within the two pixels are kept.

template<class TInputImage >
virtual const GeometryType* rtk::AmsterdamShroudImageFilter< TInputImage >::GetGeometry ( ) const
virtual

Get / Set the object pointer to projection geometry

template<class TInputImage >
virtual GeometryType* rtk::AmsterdamShroudImageFilter< TInputImage >::GetModifiableGeometry ( )
virtual

Get / Set the object pointer to projection geometry

template<class TInputImage >
virtual const char* rtk::AmsterdamShroudImageFilter< TInputImage >::GetNameOfClass ( ) const
virtual

Runtime information support.

Reimplemented from itk::ImageSource< TOutputImage >.

template<class TInputImage >
virtual unsigned int rtk::AmsterdamShroudImageFilter< TInputImage >::GetUnsharpMaskSize ( )
virtual

Size parameter of the unsharp mask. This is the number of pixels along the time direction (X) along which it averages. The unsharp mask allows after computation of the shroud to enhance fast varying motions, e.g., breathing, and remove slow varying motions, e.g., rotation around the table. The default value is 17 pixels.

template<class TInputImage >
static Pointer rtk::AmsterdamShroudImageFilter< TInputImage >::New ( )
static

Standard New method.

template<class TInputImage >
void rtk::AmsterdamShroudImageFilter< TInputImage >::operator= ( const Self )
private
template<class TInputImage >
virtual void rtk::AmsterdamShroudImageFilter< TInputImage >::SetCorner1 ( PointType  _arg)
virtual

3D clipbox corners for selecting part of the projections. Each corner is projected and rounded to the nearest 2D pixel and only those pixels within the two pixels are kept.

template<class TInputImage >
virtual void rtk::AmsterdamShroudImageFilter< TInputImage >::SetCorner2 ( PointType  _arg)
virtual

3D clipbox corners for selecting part of the projections. Each corner is projected and rounded to the nearest 2D pixel and only those pixels within the two pixels are kept.

template<class TInputImage >
virtual void rtk::AmsterdamShroudImageFilter< TInputImage >::SetGeometry ( GeometryType _arg)
virtual

Get / Set the object pointer to projection geometry

template<class TInputImage >
virtual void rtk::AmsterdamShroudImageFilter< TInputImage >::SetUnsharpMaskSize ( unsigned int  _arg)
virtual

Size parameter of the unsharp mask. This is the number of pixels along the time direction (X) along which it averages. The unsharp mask allows after computation of the shroud to enhance fast varying motions, e.g., breathing, and remove slow varying motions, e.g., rotation around the table. The default value is 17 pixels.

template<class TInputImage >
void rtk::AmsterdamShroudImageFilter< TInputImage >::UpdateUnsharpMaskKernel ( )
protected

Member Data Documentation

template<class TInputImage >
const unsigned int rtk::AmsterdamShroudImageFilter< TInputImage >::ImageDimension = TOutputImage::ImageDimension
static

ImageDimension constants

Definition at line 104 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
const unsigned int rtk::AmsterdamShroudImageFilter< TInputImage >::InputImageDimension = TInputImage::ImageDimension
static

ImageDimension constants

Definition at line 100 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
ConvolutionType::Pointer rtk::AmsterdamShroudImageFilter< TInputImage >::m_ConvolutionFilter
private

Definition at line 168 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
PointType rtk::AmsterdamShroudImageFilter< TInputImage >::m_Corner1
private

Definition at line 173 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
PointType rtk::AmsterdamShroudImageFilter< TInputImage >::m_Corner2
private

Definition at line 174 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
DerivativeType::Pointer rtk::AmsterdamShroudImageFilter< TInputImage >::m_DerivativeFilter
private

Definition at line 164 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
GeometryPointer rtk::AmsterdamShroudImageFilter< TInputImage >::m_Geometry
private

Definition at line 172 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
NegativeType::Pointer rtk::AmsterdamShroudImageFilter< TInputImage >::m_NegativeFilter
private

Definition at line 165 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
PermuteType::Pointer rtk::AmsterdamShroudImageFilter< TInputImage >::m_PermuteFilter
private

Definition at line 170 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
SubtractType::Pointer rtk::AmsterdamShroudImageFilter< TInputImage >::m_SubtractFilter
private

Definition at line 169 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
SumType::Pointer rtk::AmsterdamShroudImageFilter< TInputImage >::m_SumFilter
private

Definition at line 167 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
ThresholdType::Pointer rtk::AmsterdamShroudImageFilter< TInputImage >::m_ThresholdFilter
private

Definition at line 166 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
unsigned int rtk::AmsterdamShroudImageFilter< TInputImage >::m_UnsharpMaskSize
private

Definition at line 171 of file rtkAmsterdamShroudImageFilter.h.

template<class TInputImage >
const unsigned int rtk::AmsterdamShroudImageFilter< TInputImage >::OutputImageDimension = TOutputImage::ImageDimension
static

ImageDimension constants

Definition at line 102 of file rtkAmsterdamShroudImageFilter.h.


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