RTK  2.5.0
Reconstruction Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType > Class Template Reference

#include <rtkSpectralForwardModelImageFilter.h>

+ Inheritance diagram for rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >:
+ Collaboration diagram for rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >:

Public Types

using ConstPointer = itk::SmartPointer< const Self >
 
using DetectorResponseType = vnl_matrix< double >
 
using InputImageType = MeasuredProjectionsType
 
using MaterialAttenuationsType = vnl_matrix< double >
 
using OutputImageType = MeasuredProjectionsType
 
using Pointer = itk::SmartPointer< Self >
 
using Self = SpectralForwardModelImageFilter
 
using Superclass = itk::ImageToImageFilter< MeasuredProjectionsType, MeasuredProjectionsType >
 
using ThresholdsType = itk::VariableLengthVector< double >
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother () const
 
virtual bool GetComputeVariances ()
 
virtual bool GetIsSpectralCT ()
 
virtual unsigned int GetNumberOfEnergies ()
 
virtual unsigned int GetNumberOfMaterials ()
 
virtual unsigned int GetNumberOfSpectralBins ()
 
virtual ThresholdsType GetThresholds ()
 
virtual void SetComputeVariances (bool _arg)
 
virtual void SetIsSpectralCT (bool _arg)
 
virtual void SetNumberOfEnergies (unsigned int _arg)
 
virtual void SetNumberOfMaterials (unsigned int _arg)
 
virtual void SetNumberOfSpectralBins (unsigned int _arg)
 
virtual void SetThresholds (ThresholdsType _arg)
 
virtual const char * GetNameOfClass () const
 
void SetInputIncidentSpectrum (const IncidentSpectrumImageType *IncidentSpectrum)
 
void SetInputSecondIncidentSpectrum (const IncidentSpectrumImageType *SecondIncidentSpectrum)
 
IncidentSpectrumImageType::ConstPointer GetInputIncidentSpectrum ()
 
IncidentSpectrumImageType::ConstPointer GetInputSecondIncidentSpectrum ()
 
void SetInputDecomposedProjections (const DecomposedProjectionsType *DecomposedProjections)
 
DecomposedProjectionsType::ConstPointer GetInputDecomposedProjections ()
 
void SetInputMeasuredProjections (const MeasuredProjectionsType *SpectralProjections)
 
MeasuredProjectionsType::ConstPointer GetInputMeasuredProjections ()
 
void SetDetectorResponse (const DetectorResponseImageType *DetectorResponse)
 
DetectorResponseImageType::ConstPointer GetDetectorResponse ()
 
void SetMaterialAttenuations (const MaterialAttenuationsImageType *MaterialAttenuations)
 
MaterialAttenuationsImageType::ConstPointer GetMaterialAttenuations ()
 

Static Public Member Functions

static Pointer New ()
 

Protected Types

using DataObjectPointerArraySizeType = itk::ProcessObject::DataObjectPointerArraySizeType
 

Protected Member Functions

void BeforeThreadedGenerateData () override
 
void DynamicThreadedGenerateData (const typename OutputImageType::RegionType &outputRegionForThread) override
 
void GenerateInputRequestedRegion () override
 
void GenerateOutputInformation () override
 
itk::DataObject::Pointer MakeOutput (DataObjectPointerArraySizeType idx) override
 
 SpectralForwardModelImageFilter ()
 
void VerifyInputInformation () const override
 
 ~SpectralForwardModelImageFilter () override=default
 

Protected Attributes

bool m_ComputeVariances
 
DetectorResponseType m_DetectorResponse
 
bool m_IsSpectralCT
 
MaterialAttenuationsType m_MaterialAttenuations
 
unsigned int m_NumberOfEnergies
 
unsigned int m_NumberOfIterations
 
unsigned int m_NumberOfMaterials
 
unsigned int m_NumberOfSpectralBins
 
bool m_OptimizeWithRestarts
 
ThresholdsType m_Thresholds
 

Detailed Description

template<typename DecomposedProjectionsType, typename MeasuredProjectionsType, typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
class rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >

Forward model for the decomposition of spectral projection images into material projections.

Computes the photon counts from the decomposed projections, the incident spectrum, the detector response and the material attenuation curves. See the reference paper: "Experimental feasibility of multi-energy photon-counting K-edge imaging in pre-clinical computed tomography", Schlomka et al, PMB 2008

Author
Cyril Mory

Definition at line 47 of file rtkSpectralForwardModelImageFilter.h.

Member Typedef Documentation

◆ ConstPointer

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
using rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::ConstPointer = itk::SmartPointer<const Self>

Definition at line 57 of file rtkSpectralForwardModelImageFilter.h.

◆ DataObjectPointerArraySizeType

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
using rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::DataObjectPointerArraySizeType = itk::ProcessObject::DataObjectPointerArraySizeType
protected

Create the Output

Definition at line 141 of file rtkSpectralForwardModelImageFilter.h.

◆ DetectorResponseType

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
using rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::DetectorResponseType = vnl_matrix<double>

Definition at line 65 of file rtkSpectralForwardModelImageFilter.h.

◆ InputImageType

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
using rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::InputImageType = MeasuredProjectionsType

Some convenient type alias.

Definition at line 60 of file rtkSpectralForwardModelImageFilter.h.

◆ MaterialAttenuationsType

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
using rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::MaterialAttenuationsType = vnl_matrix<double>

Definition at line 66 of file rtkSpectralForwardModelImageFilter.h.

◆ OutputImageType

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
using rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::OutputImageType = MeasuredProjectionsType

Definition at line 61 of file rtkSpectralForwardModelImageFilter.h.

◆ Pointer

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
using rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::Pointer = itk::SmartPointer<Self>

Definition at line 56 of file rtkSpectralForwardModelImageFilter.h.

◆ Self

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
using rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::Self = SpectralForwardModelImageFilter

Standard class type alias.

Definition at line 54 of file rtkSpectralForwardModelImageFilter.h.

◆ Superclass

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
using rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::Superclass = itk::ImageToImageFilter<MeasuredProjectionsType, MeasuredProjectionsType>

Definition at line 55 of file rtkSpectralForwardModelImageFilter.h.

◆ ThresholdsType

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
using rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::ThresholdsType = itk::VariableLengthVector<double>

Convenient information

Definition at line 64 of file rtkSpectralForwardModelImageFilter.h.

Constructor & Destructor Documentation

◆ SpectralForwardModelImageFilter()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::SpectralForwardModelImageFilter ( )
protected

◆ ~SpectralForwardModelImageFilter()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::~SpectralForwardModelImageFilter ( )
overrideprotecteddefault

Member Function Documentation

◆ BeforeThreadedGenerateData()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::BeforeThreadedGenerateData ( )
overrideprotectedvirtual

Reimplemented from itk::ImageSource< TOutputImage >.

◆ CreateAnother()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
virtual::itk::LightObject::Pointer rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::CreateAnother ( ) const
virtual

Reimplemented from itk::Object.

◆ DynamicThreadedGenerateData()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::DynamicThreadedGenerateData ( const typename OutputImageType::RegionType outputRegionForThread)
overrideprotectedvirtual

Reimplemented from itk::ImageSource< TOutputImage >.

◆ GenerateInputRequestedRegion()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::GenerateInputRequestedRegion ( )
overrideprotectedvirtual

◆ GenerateOutputInformation()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::GenerateOutputInformation ( )
overrideprotectedvirtual

Reimplemented from itk::ProcessObject.

◆ GetComputeVariances()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
virtual bool rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::GetComputeVariances ( )
virtual

◆ GetDetectorResponse()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
DetectorResponseImageType::ConstPointer rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::GetDetectorResponse ( )

Set/Get the detector response as an image

◆ GetInputDecomposedProjections()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
DecomposedProjectionsType::ConstPointer rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::GetInputDecomposedProjections ( )

Set/Get the input material-decomposed stack of projections (only used for initialization)

◆ GetInputIncidentSpectrum()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
IncidentSpectrumImageType::ConstPointer rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::GetInputIncidentSpectrum ( )

Set/Get the incident spectrum input images

◆ GetInputMeasuredProjections()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
MeasuredProjectionsType::ConstPointer rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::GetInputMeasuredProjections ( )

Set/Get the input stack of measured projections (to be decomposed in materials)

◆ GetInputSecondIncidentSpectrum()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
IncidentSpectrumImageType::ConstPointer rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::GetInputSecondIncidentSpectrum ( )

Set/Get the incident spectrum input images

◆ GetIsSpectralCT()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
virtual bool rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::GetIsSpectralCT ( )
virtual

◆ GetMaterialAttenuations()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
MaterialAttenuationsImageType::ConstPointer rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::GetMaterialAttenuations ( )

Set/Get the material attenuations as an image

◆ GetNameOfClass()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
virtual const char* rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::GetNameOfClass ( ) const
virtual

Runtime information support.

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

◆ GetNumberOfEnergies()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
virtual unsigned int rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::GetNumberOfEnergies ( )
virtual

◆ GetNumberOfMaterials()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
virtual unsigned int rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::GetNumberOfMaterials ( )
virtual

◆ GetNumberOfSpectralBins()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
virtual unsigned int rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::GetNumberOfSpectralBins ( )
virtual

◆ GetThresholds()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
virtual ThresholdsType rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::GetThresholds ( )
virtual

◆ MakeOutput()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
itk::DataObject::Pointer rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::MakeOutput ( DataObjectPointerArraySizeType  idx)
overrideprotectedvirtual

Reimplemented from itk::ImageSource< TOutputImage >.

◆ New()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
static Pointer rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::New ( )
static

Standard New method.

◆ SetComputeVariances()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
virtual void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::SetComputeVariances ( bool  _arg)
virtual

◆ SetDetectorResponse()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::SetDetectorResponse ( const DetectorResponseImageType *  DetectorResponse)

Set/Get the detector response as an image

◆ SetInputDecomposedProjections()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::SetInputDecomposedProjections ( const DecomposedProjectionsType *  DecomposedProjections)

Set/Get the input material-decomposed stack of projections (only used for initialization)

◆ SetInputIncidentSpectrum()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::SetInputIncidentSpectrum ( const IncidentSpectrumImageType *  IncidentSpectrum)

Set/Get the incident spectrum input images

◆ SetInputMeasuredProjections()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::SetInputMeasuredProjections ( const MeasuredProjectionsType *  SpectralProjections)

Set/Get the input stack of measured projections (to be decomposed in materials)

◆ SetInputSecondIncidentSpectrum()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::SetInputSecondIncidentSpectrum ( const IncidentSpectrumImageType *  SecondIncidentSpectrum)

Set/Get the incident spectrum input images

◆ SetIsSpectralCT()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
virtual void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::SetIsSpectralCT ( bool  _arg)
virtual

◆ SetMaterialAttenuations()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::SetMaterialAttenuations ( const MaterialAttenuationsImageType *  MaterialAttenuations)

Set/Get the material attenuations as an image

◆ SetNumberOfEnergies()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
virtual void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::SetNumberOfEnergies ( unsigned int  _arg)
virtual

◆ SetNumberOfMaterials()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
virtual void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::SetNumberOfMaterials ( unsigned int  _arg)
virtual

◆ SetNumberOfSpectralBins()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
virtual void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::SetNumberOfSpectralBins ( unsigned int  _arg)
virtual

◆ SetThresholds()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
virtual void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::SetThresholds ( ThresholdsType  _arg)
virtual

◆ VerifyInputInformation()

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
void rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::VerifyInputInformation ( ) const
inlineoverrideprotected

The inputs should not be in the same space so there is nothing to verify.

Definition at line 160 of file rtkSpectralForwardModelImageFilter.h.

Member Data Documentation

◆ m_ComputeVariances

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
bool rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::m_ComputeVariances
protected

Definition at line 175 of file rtkSpectralForwardModelImageFilter.h.

◆ m_DetectorResponse

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
DetectorResponseType rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::m_DetectorResponse
protected

Definition at line 167 of file rtkSpectralForwardModelImageFilter.h.

◆ m_IsSpectralCT

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
bool rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::m_IsSpectralCT
protected

Definition at line 174 of file rtkSpectralForwardModelImageFilter.h.

◆ m_MaterialAttenuations

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
MaterialAttenuationsType rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::m_MaterialAttenuations
protected

Definition at line 166 of file rtkSpectralForwardModelImageFilter.h.

◆ m_NumberOfEnergies

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
unsigned int rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::m_NumberOfEnergies
protected

Definition at line 168 of file rtkSpectralForwardModelImageFilter.h.

◆ m_NumberOfIterations

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
unsigned int rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::m_NumberOfIterations
protected

Parameters

Definition at line 171 of file rtkSpectralForwardModelImageFilter.h.

◆ m_NumberOfMaterials

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
unsigned int rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::m_NumberOfMaterials
protected

Definition at line 172 of file rtkSpectralForwardModelImageFilter.h.

◆ m_NumberOfSpectralBins

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
unsigned int rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::m_NumberOfSpectralBins
protected

Definition at line 164 of file rtkSpectralForwardModelImageFilter.h.

◆ m_OptimizeWithRestarts

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
bool rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::m_OptimizeWithRestarts
protected

Definition at line 173 of file rtkSpectralForwardModelImageFilter.h.

◆ m_Thresholds

template<typename DecomposedProjectionsType , typename MeasuredProjectionsType , typename IncidentSpectrumImageType = itk::VectorImage<float, 2>, typename DetectorResponseImageType = itk::Image<float, 2>, typename MaterialAttenuationsImageType = itk::Image<float, 2>>
ThresholdsType rtk::SpectralForwardModelImageFilter< DecomposedProjectionsType, MeasuredProjectionsType, IncidentSpectrumImageType, DetectorResponseImageType, MaterialAttenuationsImageType >::m_Thresholds
protected

Definition at line 163 of file rtkSpectralForwardModelImageFilter.h.


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