|
void | GenerateData () override |
|
void | GenerateInputRequestedRegion () override |
|
void | Init () |
|
| JosephBackAttenuatedProjectionImageFilter () |
|
void | VerifyInputInformation () const override |
|
| ~JosephBackAttenuatedProjectionImageFilter () override=default |
|
OutputPixelType | BilinearInterpolation (const double stepLengthInVoxel, const InputPixelType *pxiyi, const InputPixelType *pxsyi, const InputPixelType *pxiys, const InputPixelType *pxsys, const double x, const double y, const int ox, const int oy) |
|
OutputPixelType | BilinearInterpolationOnBorders (const double stepLengthInVoxel, const InputPixelType *pxiyi, const InputPixelType *pxsyi, const InputPixelType *pxiys, const InputPixelType *pxsys, const double x, const double y, const int ox, const int oy, const double minx, const double miny, const double maxx, const double maxy) |
|
void | BilinearSplat (const InputPixelType &rayValue, const double stepLengthInVoxel, const double voxelSize, OutputPixelType *pxiyi, OutputPixelType *pxsyi, OutputPixelType *pxiys, OutputPixelType *pxsys, const double x, const double y, const int ox, const int oy) |
|
void | BilinearSplatOnBorders (const InputPixelType &rayValue, const double stepLengthInVoxel, const double voxelSize, OutputPixelType *pxiyi, OutputPixelType *pxsyi, OutputPixelType *pxiys, OutputPixelType *pxsys, const double x, const double y, const int ox, const int oy, const CoordRepType minx, const CoordRepType miny, const CoordRepType maxx, const CoordRepType maxy) |
|
void | GenerateData () override |
|
| JosephBackProjectionImageFilter () |
|
void | VerifyInputInformation () const override |
|
| ~JosephBackProjectionImageFilter () override=default |
|
| BackProjectionImageFilter () |
|
void | BeforeThreadedGenerateData () override |
|
virtual void | CylindricalDetectorCenteredOnSourceBackprojection (const OutputImageRegionType ®ion, const ProjectionMatrixType &volIndexToProjPP, const itk::Matrix< double, TInputImage::ImageDimension, TInputImage::ImageDimension > &projPPToProjIndex, const ProjectionImagePointer projection) |
|
void | DynamicThreadedGenerateData (const OutputImageRegionType &outputRegionForThread) override |
|
ProjectionMatrixType | GetIndexToIndexProjectionMatrix (const unsigned int iProj) |
|
template<class TProjectionImage > |
TProjectionImage::Pointer | GetProjection (const unsigned int iProj) |
|
itk::Matrix< double, TInputImage::ImageDimension, TInputImage::ImageDimension > | GetProjectionPhysicalPointToProjectionIndexMatrix (const unsigned int iProj) |
|
ProjectionMatrixType | GetVolumeIndexToProjectionPhysicalPointMatrix (const unsigned int iProj) |
|
virtual void | OptimizedBackprojectionX (const OutputImageRegionType ®ion, const ProjectionMatrixType &matrix, const ProjectionImagePointer projection) |
|
virtual void | OptimizedBackprojectionY (const OutputImageRegionType ®ion, const ProjectionMatrixType &matrix, const ProjectionImagePointer projection) |
|
void | VerifyPreconditions () const override |
|
| ~BackProjectionImageFilter () override=default |
|
template<class TInputImage, class TOutputImage, class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
class rtk::JosephBackAttenuatedProjectionImageFilter< TInputImage, TOutputImage, TInterpolationWeightMultiplication, TSplatWeightMultiplication, TSumAlongRay >
Attenuated Joseph back projection.
Performs a attenuated back projection, i.e. smearing of ray value along its path, using [Joseph, IEEE TMI, 1982] and [Gullberg, Phys. Med. Biol., 1985]. The back projector is the adjoint operator of the forward attenuated projector
- Test:
- rtkbackprojectiontest.cxx
- Author
- Antoine Robert
Definition at line 207 of file rtkJosephBackAttenuatedProjectionImageFilter.h.
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>
template<class TInputImage , class TOutputImage , class TInterpolationWeightMultiplication = Functor::InterpolationWeightMultiplicationAttenuatedBackProjection< typename TInputImage::PixelType, typename itk::PixelTraits<typename TInputImage::PixelType>::ValueType>, class TSplatWeightMultiplication = Functor:: SplatWeightMultiplicationAttenuated<typename TInputImage::PixelType, double, typename TOutputImage::PixelType>, class TSumAlongRay = Functor::ComputeAttenuationCorrectionBackProjection<typename TInputImage::PixelType, typename TOutputImage::PixelType>>