![]() |
RTK
2.7.0
Reconstruction Toolkit
|
#include <rtkBoellaardScatterCorrectionImageFilter.h>
Public Types | |
using | ConstPointer = itk::SmartPointer< const Self > |
using | InputImageType = TInputImage |
using | OutputImageRegionType = typename OutputImageType::RegionType |
using | OutputImageType = TOutputImage |
using | Pointer = itk::SmartPointer< Self > |
using | Self = BoellaardScatterCorrectionImageFilter |
using | Superclass = itk::ImageToImageFilter< TInputImage, TOutputImage > |
Public Member Functions | |
virtual ::itk::LightObject::Pointer | CreateAnother () const |
const char * | GetNameOfClass () const override |
virtual double | GetAirThreshold () |
virtual void | SetAirThreshold (double _arg) |
virtual double | GetScatterToPrimaryRatio () |
virtual void | SetScatterToPrimaryRatio (double _arg) |
virtual double | GetNonNegativityConstraintThreshold () |
virtual void | SetNonNegativityConstraintThreshold (double _arg) |
Static Public Member Functions | |
static Pointer | New () |
Protected Member Functions | |
BoellaardScatterCorrectionImageFilter () | |
~BoellaardScatterCorrectionImageFilter () override=default | |
void | EnlargeOutputRequestedRegion (itk::DataObject *) override |
void | ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, ThreadIdType threadId) override |
unsigned int | SplitRequestedRegion (unsigned int i, unsigned int num, OutputImageRegionType &splitRegion) override |
virtual int | SplitRequestedRegion (int i, int num, OutputImageRegionType &splitRegion) |
Private Attributes | |
double | m_AirThreshold { 32000 } |
double | m_NonNegativityConstraintThreshold { 20 } |
double | m_ScatterToPrimaryRatio { 0. } |
Scatter correction for cone-beam CT reconstruction.
The scatter correction algorithm is based on the work of [Boellaard, Med Phys, 1997] which has been used to implement the first scatter correction algorithm of Elekta's cone-beam CT reconstruction software developed at the Netherlands cancer institute by Marcel van Herk's group. The algorithm is applied to raw projections, before computing the log. The algorithm assumes that scatter adds a constant to all pixels of each projection. It does the following steps for each projection:
Definition at line 47 of file rtkBoellaardScatterCorrectionImageFilter.h.
using rtk::BoellaardScatterCorrectionImageFilter< TInputImage, TOutputImage >::ConstPointer = itk::SmartPointer<const Self> |
Definition at line 57 of file rtkBoellaardScatterCorrectionImageFilter.h.
using rtk::BoellaardScatterCorrectionImageFilter< TInputImage, TOutputImage >::InputImageType = TInputImage |
Some convenient type alias.
Definition at line 60 of file rtkBoellaardScatterCorrectionImageFilter.h.
using rtk::BoellaardScatterCorrectionImageFilter< TInputImage, TOutputImage >::OutputImageRegionType = typename OutputImageType::RegionType |
Definition at line 62 of file rtkBoellaardScatterCorrectionImageFilter.h.
using rtk::BoellaardScatterCorrectionImageFilter< TInputImage, TOutputImage >::OutputImageType = TOutputImage |
Definition at line 61 of file rtkBoellaardScatterCorrectionImageFilter.h.
using rtk::BoellaardScatterCorrectionImageFilter< TInputImage, TOutputImage >::Pointer = itk::SmartPointer<Self> |
Definition at line 56 of file rtkBoellaardScatterCorrectionImageFilter.h.
using rtk::BoellaardScatterCorrectionImageFilter< TInputImage, TOutputImage >::Self = BoellaardScatterCorrectionImageFilter |
Standard class type alias.
Definition at line 54 of file rtkBoellaardScatterCorrectionImageFilter.h.
using rtk::BoellaardScatterCorrectionImageFilter< TInputImage, TOutputImage >::Superclass = itk::ImageToImageFilter<TInputImage, TOutputImage> |
Definition at line 55 of file rtkBoellaardScatterCorrectionImageFilter.h.
|
protected |
|
overrideprotecteddefault |
|
virtual |
Reimplemented from itk::Object.
|
overrideprotectedvirtual |
Requires full projection images to estimate scatter
Reimplemented from itk::ProcessObject.
|
virtual |
Get / Set the air threshold on projection images. The threshold is used to evaluate which part of the x-rays have traversed the patient.
|
overridevirtual |
Runtime information support.
Reimplemented from itk::ProcessObject.
|
virtual |
Get / Set the non-negativity constraint threshold. The pixels values will no be alowed below this signal to avoid nan when computing the log.
|
virtual |
Get / Set the scatter-to-primary ratio on projection images. This is used to measure the scatter level on the projection image from the total measure signal.
|
static |
Standard New method.
|
virtual |
Get / Set the air threshold on projection images. The threshold is used to evaluate which part of the x-rays have traversed the patient.
|
virtual |
Get / Set the non-negativity constraint threshold. The pixels values will no be alowed below this signal to avoid nan when computing the log.
|
virtual |
Get / Set the scatter-to-primary ratio on projection images. This is used to measure the scatter level on the projection image from the total measure signal.
|
overrideprotected |
Split the output's RequestedRegion into "num" pieces, returning region "i" as "splitRegion". Reimplemented from ImageSource to ensure that each thread covers entire projections.
|
protectedvirtual |
Split the output's RequestedRegion into "num" pieces, returning region "i" as "splitRegion". Reimplemented from ImageSource to ensure that each thread covers entire projections.
|
overrideprotected |
Requires full projection images to estimate scatter
|
private |
Air threshold on projection images.
Definition at line 111 of file rtkBoellaardScatterCorrectionImageFilter.h.
|
private |
Non-negativity constraint threshold
Definition at line 117 of file rtkBoellaardScatterCorrectionImageFilter.h.
|
private |
Scatter to primary ratio
Definition at line 114 of file rtkBoellaardScatterCorrectionImageFilter.h.