19 #ifndef rtkTotalVariationDenoiseSequenceImageFilter_h 20 #define rtkTotalVariationDenoiseSequenceImageFilter_h 78 template <
typename TImageSequence>
97 itkGetMacro(Gamma,
double);
101 itkGetMacro(NumberOfIterations,
int);
105 SetDimensionsProcessed(
bool * arg);
109 using ImageType =
typename TImageSequence::template RebindImageType<
typename TImageSequence::PixelType,
110 TImageSequence::ImageDimension - 1>;
112 using TVDenoisingFilterType =
typename std::conditional_t<std::is_same_v<TImageSequence, CPUImageSequenceType>,
129 GenerateData()
override;
132 GenerateOutputInformation()
override;
134 GenerateInputRequestedRegion()
override;
147 double m_Gamma{ 1. };
148 int m_NumberOfIterations{ 1 };
149 bool m_DimensionsProcessed[ImageType::ImageDimension];
154 #ifndef ITK_MANUAL_INSTANTIATION 155 # include "rtkTotalVariationDenoiseSequenceImageFilter.hxx" PasteFilterType::Pointer m_PasteFilter
Implements the TotalVariationDenoisingBPDQImageFilter on GPU.
Generate an n-dimensional image with constant pixel values.
ConstantImageSourceType::Pointer m_ConstantSource
Applies 3D total variation denoising to a 3D + time sequence of images.
Applies a total variation denoising, only alm_SingularValueThresholdFilterong the dimensions specifie...
typename std::conditional_t< std::is_same_v< TImageSequence, CPUImageSequenceType >, TotalVariationDenoisingBPDQImageFilter< ImageType >, CudaTotalVariationDenoisingBPDQImageFilter > TVDenoisingFilterType
#define itkSetMacro(name, type)
typename itk::Image< typename TImageSequence::PixelType, TImageSequence::ImageDimension > CPUImageSequenceType
TImageSequence::RegionType m_ExtractAndPasteRegion
TVDenoisingFilterType::Pointer m_TVDenoisingFilter
typename TImageSequence::template RebindImageType< typename TImageSequence::PixelType, TImageSequence::ImageDimension - 1 > ImageType
CastFilterType::Pointer m_CastFilter
ExtractFilterType::Pointer m_ExtractFilter