![]() |
RTK
2.6.0
Reconstruction Toolkit
|
#include <rtkLagCorrectionImageFilter.h>
Public Types | |
using | ConstPointer = itk::SmartPointer< const Self > |
using | FloatVectorType = typename std::vector< float > |
using | ImageRegionType = typename TImage::RegionType |
using | ImageSizeType = typename TImage::SizeType |
using | IndexType = typename TImage::IndexType |
using | OutputImageRegionType = typename TImage::RegionType |
using | PixelType = typename TImage::PixelType |
using | Pointer = itk::SmartPointer< Self > |
using | Self = LagCorrectionImageFilter |
using | Superclass = itk::InPlaceImageFilter< TImage, TImage > |
using | VectorType = typename itk::Vector< float, VModelOrder > |
Public Member Functions | |
virtual ::itk::LightObject::Pointer | CreateAnother () const |
const char * | GetNameOfClass () const override |
virtual VectorType | GetA () |
virtual VectorType | GetB () |
virtual void | SetCoefficients (const VectorType A, const VectorType B) |
Static Public Member Functions | |
static Pointer | New () |
Protected Member Functions | |
void | GenerateInputRequestedRegion () override |
void | GenerateOutputInformation () override |
LagCorrectionImageFilter () | |
void | ThreadedGenerateData (const ImageRegionType &thRegion, itk::ThreadIdType threadId) override |
~LagCorrectionImageFilter () override=default | |
unsigned int | SplitRequestedRegion (unsigned int i, unsigned int num, OutputImageRegionType &splitRegion) override |
virtual int | SplitRequestedRegion (int i, int num, OutputImageRegionType &splitRegion) |
Protected Attributes | |
VectorType | m_A |
VectorType | m_B |
VectorType | m_ExpmA |
FloatVectorType | m_S |
float | m_SumB |
Private Attributes | |
bool | m_NewParamJustReceived |
IndexType | m_StartIdx |
Classical Linear Time Invariant Lag correction.
Recursive correction algorithm for detector decay characteristics. Based on [Hsieh, Proceedings of SPIE, 2000]
The IRF (Impulse Response Function) is given by: \(h(k)=b_0 \delta(k) + \sum_{n=1}^N b_n e^{-a_n k}\) where \(k\) is the discrete time, \(N\) is the model order (number of exponentials), \(\delta(k)\) is the impulse function and the \({a_n, b_n}_{n=1:N}\) parameters are respectively the exponential rates and lag coefficients to be provided. The sum of all $b_n$ must be normalized such that h(0) equals 1.
The parameters are typically estimated from either RSRF (Rising Step RF) or FSRF (Falling Step RF) response functions.
Definition at line 55 of file rtkLagCorrectionImageFilter.h.
using rtk::LagCorrectionImageFilter< TImage, VModelOrder >::ConstPointer = itk::SmartPointer<const Self> |
Definition at line 64 of file rtkLagCorrectionImageFilter.h.
using rtk::LagCorrectionImageFilter< TImage, VModelOrder >::FloatVectorType = typename std::vector<float> |
Definition at line 77 of file rtkLagCorrectionImageFilter.h.
using rtk::LagCorrectionImageFilter< TImage, VModelOrder >::ImageRegionType = typename TImage::RegionType |
Definition at line 72 of file rtkLagCorrectionImageFilter.h.
using rtk::LagCorrectionImageFilter< TImage, VModelOrder >::ImageSizeType = typename TImage::SizeType |
Definition at line 73 of file rtkLagCorrectionImageFilter.h.
using rtk::LagCorrectionImageFilter< TImage, VModelOrder >::IndexType = typename TImage::IndexType |
Definition at line 75 of file rtkLagCorrectionImageFilter.h.
using rtk::LagCorrectionImageFilter< TImage, VModelOrder >::OutputImageRegionType = typename TImage::RegionType |
Definition at line 78 of file rtkLagCorrectionImageFilter.h.
using rtk::LagCorrectionImageFilter< TImage, VModelOrder >::PixelType = typename TImage::PixelType |
Definition at line 74 of file rtkLagCorrectionImageFilter.h.
using rtk::LagCorrectionImageFilter< TImage, VModelOrder >::Pointer = itk::SmartPointer<Self> |
Definition at line 63 of file rtkLagCorrectionImageFilter.h.
using rtk::LagCorrectionImageFilter< TImage, VModelOrder >::Self = LagCorrectionImageFilter |
Standard class type alias.
Definition at line 61 of file rtkLagCorrectionImageFilter.h.
using rtk::LagCorrectionImageFilter< TImage, VModelOrder >::Superclass = itk::InPlaceImageFilter<TImage, TImage> |
Definition at line 62 of file rtkLagCorrectionImageFilter.h.
using rtk::LagCorrectionImageFilter< TImage, VModelOrder >::VectorType = typename itk::Vector<float, VModelOrder> |
Definition at line 76 of file rtkLagCorrectionImageFilter.h.
|
protected |
|
overrideprotecteddefault |
|
virtual |
Reimplemented from itk::Object.
|
overrideprotectedvirtual |
Reimplemented from itk::ImageToImageFilter< typename TInputImage, typename TOutputImage >.
|
overrideprotectedvirtual |
Reimplemented from itk::ProcessObject.
|
virtual |
Get / Set the model parameters A and B
|
virtual |
Get / Set the model parameters A and B
|
overridevirtual |
Run-time type information (and related methods).
Reimplemented from itk::ImageToImageFilter< typename TInputImage, typename TOutputImage >.
|
static |
Method for creation through the object factory.
|
inlinevirtual |
Get / Set the model parameters A and B
Definition at line 84 of file rtkLagCorrectionImageFilter.h.
|
overrideprotectedvirtual |
The correction is applied along the third (stack) dimension. Therefore, we must avoid splitting along the stack. The split is done along the second dimension.
Reimplemented from itk::ImageSource< typename TOutputImage >.
|
protectedvirtual |
The correction is applied along the third (stack) dimension. Therefore, we must avoid splitting along the stack. The split is done along the second dimension.
|
overrideprotected |
|
protected |
Definition at line 121 of file rtkLagCorrectionImageFilter.h.
|
protected |
Definition at line 122 of file rtkLagCorrectionImageFilter.h.
|
protected |
Definition at line 123 of file rtkLagCorrectionImageFilter.h.
|
private |
Definition at line 130 of file rtkLagCorrectionImageFilter.h.
|
protected |
Definition at line 127 of file rtkLagCorrectionImageFilter.h.
|
private |
Definition at line 131 of file rtkLagCorrectionImageFilter.h.
|
protected |
Definition at line 124 of file rtkLagCorrectionImageFilter.h.