ITK  5.4.0
Insight Toolkit
itkDirectFourierReconstructionImageToImageFilter.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright NumFOCUS
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * https://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18#ifndef itkDirectFourierReconstructionImageToImageFilter_h
19#define itkDirectFourierReconstructionImageToImageFilter_h
20
22#include "itkImage.h"
23
26
29
31
32#include <cmath>
33
34namespace itk
35{
50template <typename TInputImage, typename TOutputImage = TInputImage>
52 : public ImageToImageFilter<TInputImage, TOutputImage>
53{
54public:
55 ITK_DISALLOW_COPY_AND_MOVE(DirectFourierReconstructionImageToImageFilter);
56
59
60 using InputImageType = TInputImage;
61 using InputPixelType = typename InputImageType::PixelType;
62 using OutputImageType = TOutputImage;
63 using OutputPixelType = typename OutputImageType::PixelType;
64
67
70
73
74 itkNewMacro(Self);
75 itkOverrideGetNameOfClassMacro(DirectFourierReconstructionImageToImageFilter);
76
79
82
85
88
90 using SpacingType = typename InputImageType::SpacingType;
91
94
97
100
101 itkSetMacro(ZeroPadding, unsigned short);
102 itkGetConstMacro(ZeroPadding, unsigned short);
103
104 itkSetMacro(OverSampling, unsigned short);
105 itkGetConstMacro(OverSampling, unsigned short);
106
107 itkSetMacro(Cutoff, double);
108 itkGetConstMacro(Cutoff, double);
109
110 itkSetMacro(AlphaRange, double);
111 itkGetConstMacro(AlphaRange, double);
112
113 itkSetMacro(AlphaDirection, unsigned short);
114 itkGetConstMacro(AlphaDirection, unsigned short);
115
116 itkSetMacro(ZDirection, unsigned short);
117 itkGetConstMacro(ZDirection, unsigned short);
118
119 itkSetMacro(RDirection, unsigned short);
120 itkGetConstMacro(RDirection, unsigned short);
121
122 itkSetMacro(RadialSplineOrder, unsigned short);
123 itkGetConstMacro(RadialSplineOrder, unsigned short);
124
125protected:
128
131
133 void
134 PrintSelf(std::ostream & os, Indent indent) const override;
135
137 void
139
141 void
143
145 void
146 GenerateData() override;
147
148private:
151
155
158
161
164
167
171
174
177
180
183
208};
209} // namespace itk
210
211#ifndef ITK_MANUAL_INSTANTIATION
212# include "itkDirectFourierReconstructionImageToImageFilter.hxx"
213#endif
214
215#endif /* itkDirectFourierReconstructionImageToImageFilter_h */
Complex wrapper around BSplineInterpolateImageFunction.
Direct fourier reconstruction filter of a tomographic volume.
void PrintSelf(std::ostream &os, Indent indent) const override
A multi-dimensional iterator templated over image type that walks pixels within a region and is speci...
Multi-dimensional image iterator which only walks a region.
Base class for filters that take an image as input and produce an image as output.
Templated n-dimensional image class.
Definition: itkImage.h:89
Control indentation during Print() invocation.
Definition: itkIndent.h:50
Light weight base class for most itk classes.
VNL based forward Fast Fourier Transform.
VNL-based reverse Fast Fourier Transform.
SmartPointer< const Self > ConstPointer
SmartPointer< Self > Pointer
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....