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

#include <rtkBackwardDifferenceDivergenceImageFilter.h>

+ Inheritance diagram for rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >:
+ Collaboration diagram for rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >:

Public Types

using ConstPointer = itk::SmartPointer< const Self >
 
using CovariantVectorType = itk::CovariantVector< InputPixelType, InputImageDimension >
 
using InputImageRegionType = typename InputImageType::RegionType
 
using InputImageType = TInputImage
 
using InputPixelType = typename InputImageType::PixelType
 
using InputSizeType = typename InputImageType::SizeType
 
using Pointer = itk::SmartPointer< Self >
 
using Self = BackwardDifferenceDivergenceImageFilter
 
using Superclass = itk::ImageToImageFilter< InputImageType, TOutputImage >
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother () const
 
virtual const char * GetNameOfClass () const
 
void OverrideBoundaryCondition (itk::ImageBoundaryCondition< TInputImage > *boundaryCondition)
 
void SetDimensionsProcessed (bool *DimensionsProcessed)
 
void SetUseImageSpacingOff ()
 
void SetUseImageSpacingOn ()
 
virtual void SetUseImageSpacing (bool _arg)
 
virtual bool GetUseImageSpacing () const
 

Static Public Member Functions

static Pointer New ()
 

Static Public Attributes

static const unsigned int InputImageDimension = TInputImage::ImageDimension
 

Protected Member Functions

void AfterThreadedGenerateData () override
 
 BackwardDifferenceDivergenceImageFilter ()
 
void BeforeThreadedGenerateData () override
 
void GenerateInputRequestedRegion () override
 
void ThreadedGenerateData (const typename InputImageType::RegionType &outputRegionForThread, itk::ThreadIdType) override
 
 ~BackwardDifferenceDivergenceImageFilter () override
 

Private Attributes

itk::ImageBoundaryCondition< TInputImage, TInputImage > * m_BoundaryCondition
 
bool m_DimensionsProcessed [TInputImage::ImageDimension]
 
TInputImage::SpacingType m_InvSpacingCoeffs
 
bool m_IsBoundaryConditionOverriden
 
bool m_UseImageSpacing
 

Detailed Description

template<typename TInputImage, typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
class rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >

Computes the backward differences divergence (adjoint of the forward differences gradient) of the input image.

The exact definition of the desired divergence filter can be found in Chambolle, Antonin. "An Algorithm for Total Variation Minimization and Applications." J. Math. Imaging Vis. 20, no. 1-2 (January 2004): 89-97.

Definition at line 40 of file rtkBackwardDifferenceDivergenceImageFilter.h.

Member Typedef Documentation

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
using rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::ConstPointer = itk::SmartPointer<const Self>

Definition at line 57 of file rtkBackwardDifferenceDivergenceImageFilter.h.

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
using rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::CovariantVectorType = itk::CovariantVector< InputPixelType, InputImageDimension >

Definition at line 92 of file rtkBackwardDifferenceDivergenceImageFilter.h.

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
using rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::InputImageRegionType = typename InputImageType::RegionType

Definition at line 90 of file rtkBackwardDifferenceDivergenceImageFilter.h.

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
using rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::InputImageType = TInputImage

Convenient type alias for simplifying declarations.

Definition at line 51 of file rtkBackwardDifferenceDivergenceImageFilter.h.

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
using rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::InputPixelType = typename InputImageType::PixelType

Image type alias support.

Definition at line 89 of file rtkBackwardDifferenceDivergenceImageFilter.h.

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
using rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::InputSizeType = typename InputImageType::SizeType

Definition at line 91 of file rtkBackwardDifferenceDivergenceImageFilter.h.

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
using rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::Pointer = itk::SmartPointer<Self>

Definition at line 56 of file rtkBackwardDifferenceDivergenceImageFilter.h.

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
using rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::Self = BackwardDifferenceDivergenceImageFilter

Standard class type alias.

Definition at line 54 of file rtkBackwardDifferenceDivergenceImageFilter.h.

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
using rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::Superclass = itk::ImageToImageFilter< InputImageType, TOutputImage>

Definition at line 55 of file rtkBackwardDifferenceDivergenceImageFilter.h.

Constructor & Destructor Documentation

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::BackwardDifferenceDivergenceImageFilter ( )
protected
template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::~BackwardDifferenceDivergenceImageFilter ( )
overrideprotected

Member Function Documentation

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
void rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::AfterThreadedGenerateData ( )
overrideprotectedvirtual

Reimplemented from itk::ImageSource< TOutputImage >.

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
void rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::BeforeThreadedGenerateData ( )
overrideprotectedvirtual

Reimplemented from itk::ImageSource< TOutputImage >.

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
virtual::itk::LightObject::Pointer rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::CreateAnother ( ) const
virtual

Reimplemented from itk::Object.

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
void rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion ( )
overrideprotectedvirtual
template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
virtual const char* rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

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

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
virtual bool rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::GetUseImageSpacing ( ) const
virtual

Set/Get whether or not the filter will use the spacing of the input image in its calculations

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
static Pointer rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::New ( )
static

Method for creation through the object factory.

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
void rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::OverrideBoundaryCondition ( itk::ImageBoundaryCondition< TInputImage > *  boundaryCondition)
template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
void rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::SetDimensionsProcessed ( bool *  DimensionsProcessed)

Set along which dimensions the gradient computation should be performed. The vector components at unprocessed dimensions are ignored

Referenced by rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::SetUseImageSpacingOff().

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
virtual void rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::SetUseImageSpacing ( bool  _arg)
virtual
template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
void rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::SetUseImageSpacingOff ( )
inline
template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
void rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::SetUseImageSpacingOn ( )
inline

Use the image spacing information in calculations. Use this option if you want derivatives in physical space. Default is UseImageSpacingOn.

Definition at line 67 of file rtkBackwardDifferenceDivergenceImageFilter.h.

References rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::SetUseImageSpacing().

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
void rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::ThreadedGenerateData ( const typename InputImageType::RegionType outputRegionForThread,
itk::ThreadIdType   
)
overrideprotected

Member Data Documentation

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
const unsigned int rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::InputImageDimension = TInputImage::ImageDimension
static

Extract dimension from input and output image.

Definition at line 48 of file rtkBackwardDifferenceDivergenceImageFilter.h.

template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
itk::ImageBoundaryCondition< TInputImage, TInputImage >* rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::m_BoundaryCondition
private
template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
bool rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::m_DimensionsProcessed[TInputImage::ImageDimension]
private
template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
TInputImage::SpacingType rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::m_InvSpacingCoeffs
private
template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
bool rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::m_IsBoundaryConditionOverriden
private
template<typename TInputImage , typename TOutputImage = itk::Image< float, TInputImage::ImageDimension >>
bool rtk::BackwardDifferenceDivergenceImageFilter< TInputImage, TOutputImage >::m_UseImageSpacing
private

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