RTK  2.7.0
Reconstruction Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
rtk::LaplacianImageFilter< TOutputImage > Class Template Reference

#include <rtkLaplacianImageFilter.h>

+ Inheritance diagram for rtk::LaplacianImageFilter< TOutputImage >:
+ Collaboration diagram for rtk::LaplacianImageFilter< TOutputImage >:

Public Types

using CPUImageType = itk::Image< typename TOutputImage::PixelType, TOutputImage::ImageDimension >
 
using DivergenceFilterType = rtk::BackwardDifferenceDivergenceImageFilter< GradientImageType, TOutputImage >
 
using GradientFilterType = rtk::ForwardDifferenceGradientImageFilter< TOutputImage, typename TOutputImage::ValueType, typename TOutputImage::ValueType, GradientImageType >
 
typedef std::conditional< std::is_same< TOutputImage, CPUImageType >::value, itk::Image< VectorPixelType, TOutputImage::ImageDimension >, itk::CudaImage< VectorPixelType, TOutputImage::ImageDimension > >::type GradientImageType
 
using MultiplyImageFilterType = itk::MultiplyImageFilter< GradientImageType, TOutputImage >
 
using OutputImagePointer = typename TOutputImage::Pointer
 
using Pointer = itk::SmartPointer< Self >
 
using Self = LaplacianImageFilter
 
using Superclass = itk::ImageToImageFilter< TOutputImage, TOutputImage >
 
using VectorPixelType = itk::CovariantVector< typename TOutputImage::ValueType, TOutputImage::ImageDimension >
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother () const
 
const char * GetNameOfClass () const override
 
TOutputImage::ConstPointer GetWeights ()
 
void SetWeights (const TOutputImage *weights)
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

void GenerateData () override
 
void GenerateOutputInformation () override
 
 LaplacianImageFilter ()
 
 ~LaplacianImageFilter () override=default
 

Protected Attributes

DivergenceFilterType::Pointer m_Divergence
 
GradientFilterType::Pointer m_Gradient
 
MultiplyImageFilterType::Pointer m_Multiply
 

Detailed Description

template<typename TOutputImage>
class rtk::LaplacianImageFilter< TOutputImage >

Computes the laplacian of the input image.

Computes the gradient of the input image, then the divergence of this gradient. The exact definition of the gradient and divergence filters 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. The border conditions are described there.

Definition at line 46 of file rtkLaplacianImageFilter.h.

Member Typedef Documentation

◆ CPUImageType

template<typename TOutputImage >
using rtk::LaplacianImageFilter< TOutputImage >::CPUImageType = itk::Image<typename TOutputImage::PixelType, TOutputImage::ImageDimension>

Definition at line 56 of file rtkLaplacianImageFilter.h.

◆ DivergenceFilterType

template<typename TOutputImage >
using rtk::LaplacianImageFilter< TOutputImage >::DivergenceFilterType = rtk::BackwardDifferenceDivergenceImageFilter<GradientImageType, TOutputImage>

Definition at line 71 of file rtkLaplacianImageFilter.h.

◆ GradientFilterType

template<typename TOutputImage >
using rtk::LaplacianImageFilter< TOutputImage >::GradientFilterType = rtk::ForwardDifferenceGradientImageFilter<TOutputImage, typename TOutputImage::ValueType, typename TOutputImage::ValueType, GradientImageType>

Definition at line 70 of file rtkLaplacianImageFilter.h.

◆ GradientImageType

template<typename TOutputImage >
typedef std::conditional<std::is_same<TOutputImage, CPUImageType>::value, itk::Image<VectorPixelType, TOutputImage::ImageDimension>, itk::CudaImage<VectorPixelType, TOutputImage::ImageDimension> >::type rtk::LaplacianImageFilter< TOutputImage >::GradientImageType

Definition at line 63 of file rtkLaplacianImageFilter.h.

◆ MultiplyImageFilterType

template<typename TOutputImage >
using rtk::LaplacianImageFilter< TOutputImage >::MultiplyImageFilterType = itk::MultiplyImageFilter<GradientImageType, TOutputImage>

Definition at line 72 of file rtkLaplacianImageFilter.h.

◆ OutputImagePointer

template<typename TOutputImage >
using rtk::LaplacianImageFilter< TOutputImage >::OutputImagePointer = typename TOutputImage::Pointer

Definition at line 55 of file rtkLaplacianImageFilter.h.

◆ Pointer

template<typename TOutputImage >
using rtk::LaplacianImageFilter< TOutputImage >::Pointer = itk::SmartPointer<Self>

Definition at line 54 of file rtkLaplacianImageFilter.h.

◆ Self

template<typename TOutputImage >
using rtk::LaplacianImageFilter< TOutputImage >::Self = LaplacianImageFilter

Standard class type alias.

Definition at line 52 of file rtkLaplacianImageFilter.h.

◆ Superclass

template<typename TOutputImage >
using rtk::LaplacianImageFilter< TOutputImage >::Superclass = itk::ImageToImageFilter<TOutputImage, TOutputImage>

Definition at line 53 of file rtkLaplacianImageFilter.h.

◆ VectorPixelType

template<typename TOutputImage >
using rtk::LaplacianImageFilter< TOutputImage >::VectorPixelType = itk::CovariantVector<typename TOutputImage::ValueType, TOutputImage::ImageDimension>

Definition at line 57 of file rtkLaplacianImageFilter.h.

Constructor & Destructor Documentation

◆ LaplacianImageFilter()

template<typename TOutputImage >
rtk::LaplacianImageFilter< TOutputImage >::LaplacianImageFilter ( )
protected

◆ ~LaplacianImageFilter()

template<typename TOutputImage >
rtk::LaplacianImageFilter< TOutputImage >::~LaplacianImageFilter ( )
overrideprotecteddefault

Member Function Documentation

◆ CreateAnother()

template<typename TOutputImage >
virtual::itk::LightObject::Pointer rtk::LaplacianImageFilter< TOutputImage >::CreateAnother ( ) const
virtual

Reimplemented from itk::Object.

◆ GenerateData()

template<typename TOutputImage >
void rtk::LaplacianImageFilter< TOutputImage >::GenerateData ( )
overrideprotectedvirtual

Does the real work.

Reimplemented from itk::ProcessObject.

◆ GenerateOutputInformation()

template<typename TOutputImage >
void rtk::LaplacianImageFilter< TOutputImage >::GenerateOutputInformation ( )
overrideprotectedvirtual

Handle regions

Reimplemented from itk::ProcessObject.

◆ GetNameOfClass()

template<typename TOutputImage >
const char* rtk::LaplacianImageFilter< TOutputImage >::GetNameOfClass ( ) const
overridevirtual

Run-time type information (and related methods).

Reimplemented from itk::ProcessObject.

◆ GetWeights()

template<typename TOutputImage >
TOutputImage::ConstPointer rtk::LaplacianImageFilter< TOutputImage >::GetWeights ( )

◆ New()

template<typename TOutputImage >
static Pointer rtk::LaplacianImageFilter< TOutputImage >::New ( )
static

Method for creation through the object factory.

◆ SetWeights()

template<typename TOutputImage >
void rtk::LaplacianImageFilter< TOutputImage >::SetWeights ( const TOutputImage *  weights)

Member Data Documentation

◆ m_Divergence

template<typename TOutputImage >
DivergenceFilterType::Pointer rtk::LaplacianImageFilter< TOutputImage >::m_Divergence
protected

Definition at line 98 of file rtkLaplacianImageFilter.h.

◆ m_Gradient

template<typename TOutputImage >
GradientFilterType::Pointer rtk::LaplacianImageFilter< TOutputImage >::m_Gradient
protected

Definition at line 97 of file rtkLaplacianImageFilter.h.

◆ m_Multiply

template<typename TOutputImage >
MultiplyImageFilterType::Pointer rtk::LaplacianImageFilter< TOutputImage >::m_Multiply
protected

Definition at line 99 of file rtkLaplacianImageFilter.h.


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