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

#include <rtkSingularValueThresholdImageFilter.h>

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

Public Types

using ConstPointer = itk::SmartPointer< const Self >
 
using InputImagePointer = typename InputImageType::Pointer
 
using InputImageType = TInputImage
 
using InputPixelType = typename TInputImage::PixelType
 
using OutputImagePointer = typename OutputImageType::Pointer
 
using OutputImageRegionType = typename Superclass::OutputImageRegionType
 
using OutputImageType = TOutputImage
 
using OutputPixelType = typename TOutputImage::PixelType
 
using Pointer = itk::SmartPointer< Self >
 
using RealType = TRealType
 
using RealVectorImageType = itk::Image< RealVectorType, TInputImage::ImageDimension >
 
using RealVectorType = itk::Vector< TRealType, InputPixelType::Dimension >
 
using Self = SingularValueThresholdImageFilter
 
using Superclass = itk::ImageToImageFilter< TInputImage, TOutputImage >
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother () const
 
virtual const char * GetNameOfClass () const
 
virtual TRealType GetThreshold ()
 
virtual void SetThreshold (TRealType _arg)
 

Static Public Member Functions

static Pointer New ()
 

Static Public Attributes

static constexpr unsigned int ImageDimension = TOutputImage::ImageDimension
 
static constexpr unsigned int VectorDimension = InputPixelType::Dimension
 

Protected Member Functions

const itk::ImageRegionSplitterBaseGetImageRegionSplitter () const override
 
 SingularValueThresholdImageFilter ()
 
void ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, itk::ThreadIdType threadId) override
 
 ~SingularValueThresholdImageFilter () override=default
 

Protected Attributes

itk::ImageRegionSplitterDirection::Pointer m_Splitter
 

Private Attributes

TRealType m_Threshold
 

Detailed Description

template<typename TInputImage, typename TRealType = float, typename TOutputImage = TInputImage>
class rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >

Performs thresholding on the singular values.

The image is assumed to be of dimension N+1, and to contain itk::CovariantVector of length N. The last dimension is assumed to be the channel dimension (color, or time, or materials in spectral CT), of size L. The input image must contain the spatial gradient of each channel.

The filter walks the pixels of a single channel. For each of these pixels, it constructs a matrix by concatenating the gradient vectors of the L channels. The matrix is decomposed using SVD, its singular values are thresholded, and then reconstructed. The resulting matrix is then cut back into L gradient vectors, which are written in output.

Author
Cyril Mory

Definition at line 50 of file rtkSingularValueThresholdImageFilter.h.

Member Typedef Documentation

◆ ConstPointer

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
using rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::ConstPointer = itk::SmartPointer<const Self>

Definition at line 59 of file rtkSingularValueThresholdImageFilter.h.

◆ InputImagePointer

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
using rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::InputImagePointer = typename InputImageType::Pointer

Definition at line 75 of file rtkSingularValueThresholdImageFilter.h.

◆ InputImageType

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
using rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::InputImageType = TInputImage

Image type alias support

Definition at line 73 of file rtkSingularValueThresholdImageFilter.h.

◆ InputPixelType

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
using rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::InputPixelType = typename TInputImage::PixelType

Definition at line 70 of file rtkSingularValueThresholdImageFilter.h.

◆ OutputImagePointer

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
using rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::OutputImagePointer = typename OutputImageType::Pointer

Definition at line 76 of file rtkSingularValueThresholdImageFilter.h.

◆ OutputImageRegionType

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
using rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::OutputImageRegionType = typename Superclass::OutputImageRegionType

Superclass type alias.

Definition at line 90 of file rtkSingularValueThresholdImageFilter.h.

◆ OutputImageType

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
using rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::OutputImageType = TOutputImage

Definition at line 74 of file rtkSingularValueThresholdImageFilter.h.

◆ OutputPixelType

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
using rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::OutputPixelType = typename TOutputImage::PixelType

Extract some information from the image types. Dimensionality of the two images is assumed to be the same.

Definition at line 69 of file rtkSingularValueThresholdImageFilter.h.

◆ Pointer

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
using rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::Pointer = itk::SmartPointer<Self>

Definition at line 58 of file rtkSingularValueThresholdImageFilter.h.

◆ RealType

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
using rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::RealType = TRealType

Define the data type and the vector of data type used in calculations.

Definition at line 85 of file rtkSingularValueThresholdImageFilter.h.

◆ RealVectorImageType

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
using rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::RealVectorImageType = itk::Image<RealVectorType, TInputImage::ImageDimension>

Definition at line 87 of file rtkSingularValueThresholdImageFilter.h.

◆ RealVectorType

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
using rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::RealVectorType = itk::Vector<TRealType, InputPixelType::Dimension>

Definition at line 86 of file rtkSingularValueThresholdImageFilter.h.

◆ Self

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
using rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::Self = SingularValueThresholdImageFilter

Standard class type alias.

Definition at line 56 of file rtkSingularValueThresholdImageFilter.h.

◆ Superclass

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
using rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::Superclass = itk::ImageToImageFilter<TInputImage, TOutputImage>

Definition at line 57 of file rtkSingularValueThresholdImageFilter.h.

Constructor & Destructor Documentation

◆ SingularValueThresholdImageFilter()

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::SingularValueThresholdImageFilter ( )
protected

◆ ~SingularValueThresholdImageFilter()

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::~SingularValueThresholdImageFilter ( )
overrideprotecteddefault

Member Function Documentation

◆ CreateAnother()

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
virtual::itk::LightObject::Pointer rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::CreateAnother ( ) const
virtual

Reimplemented from itk::Object.

◆ GetImageRegionSplitter()

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
const itk::ImageRegionSplitterBase* rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::GetImageRegionSplitter ( ) const
overrideprotectedvirtual

Splits the OutputRequestedRegion along the first direction, not the last

Reimplemented from itk::ImageSource< TOutputImage >.

◆ GetNameOfClass()

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
virtual const char* rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods)

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

◆ GetThreshold()

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
virtual TRealType rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::GetThreshold ( )
virtual

Begin concept checking End concept checking

◆ New()

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
static Pointer rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::New ( )
static

Method for creation through the object factory.

◆ SetThreshold()

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
virtual void rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::SetThreshold ( TRealType  _arg)
virtual

◆ ThreadedGenerateData()

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
void rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::ThreadedGenerateData ( const OutputImageRegionType outputRegionForThread,
itk::ThreadIdType  threadId 
)
overrideprotectedvirtual

Reimplemented from itk::ImageSource< TOutputImage >.

Member Data Documentation

◆ ImageDimension

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
constexpr unsigned int rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::ImageDimension = TOutputImage::ImageDimension
static

The dimensionality of the input and output images.

Definition at line 79 of file rtkSingularValueThresholdImageFilter.h.

◆ m_Splitter

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
itk::ImageRegionSplitterDirection::Pointer rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::m_Splitter
protected

Definition at line 113 of file rtkSingularValueThresholdImageFilter.h.

◆ m_Threshold

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
TRealType rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::m_Threshold
private

Definition at line 116 of file rtkSingularValueThresholdImageFilter.h.

◆ VectorDimension

template<typename TInputImage , typename TRealType = float, typename TOutputImage = TInputImage>
constexpr unsigned int rtk::SingularValueThresholdImageFilter< TInputImage, TRealType, TOutputImage >::VectorDimension = InputPixelType::Dimension
static

Length of the vector pixel type of the input image.

Definition at line 82 of file rtkSingularValueThresholdImageFilter.h.


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