go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxRandomCoordinateSampler.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright UMC Utrecht and contributors
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 * http://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 elxRandomCoordinateSampler_h
19#define elxRandomCoordinateSampler_h
20
21#include "elxIncludes.h" // include first to avoid MSVS warning
23
24namespace elastix
25{
26
77template <class TElastix>
78class ITK_TEMPLATE_EXPORT RandomCoordinateSampler
79 : public itk::ImageRandomCoordinateSampler<typename elx::ImageSamplerBase<TElastix>::InputImageType>
80 , public elx::ImageSamplerBase<TElastix>
81{
82public:
84
89 using Pointer = itk::SmartPointer<Self>;
90 using ConstPointer = itk::SmartPointer<const Self>;
91
93 itkNewMacro(Self);
94
97
102 elxClassNameMacro("RandomCoordinate");
103
105 using typename Superclass1::DataObjectPointer;
108 using typename Superclass1::InputImageType;
109 using typename Superclass1::InputImagePointer;
113 using typename Superclass1::ImageSampleType;
115 using typename Superclass1::MaskType;
118 using typename Superclass1::InputImageSizeType;
122
125 using typename Superclass1::CoordRepType;
126 using typename Superclass1::InterpolatorType;
128
130 itkStaticConstMacro(InputImageDimension, unsigned int, Superclass1::InputImageDimension);
131
133 using typename Superclass2::ElastixType;
134 using typename Superclass2::RegistrationType;
135 using ITKBaseType = typename Superclass2::ITKBaseType;
136
142 void
144
145protected:
149 ~RandomCoordinateSampler() override = default;
150
151private:
153};
154
155} // end namespace elastix
156
157#ifndef ITK_MANUAL_INSTANTIATION
158# include "elxRandomCoordinateSampler.hxx"
159#endif
160
161#endif // end #ifndef elxRandomCoordinateSampler_h
An interpolator based on the itk::ImageRandomCoordinateSampler.
typename Superclass2::ITKBaseType ITKBaseType
void BeforeEachResolution() override
~RandomCoordinateSampler() override=default
itkStaticConstMacro(InputImageDimension, unsigned int, Superclass1::InputImageDimension)
elxClassNameMacro("RandomCoordinate")
ITK_DISALLOW_COPY_AND_MOVE(RandomCoordinateSampler)
itk::SmartPointer< const Self > ConstPointer
Samples an image by randomly composing a set of physical coordinates.
BSplineInterpolateImageFunction< InputImageType, CoordRepType, double > DefaultInterpolatorType
typename InputImageType::SpacingType InputImageSpacingType
InterpolateImageFunction< InputImageType, CoordRepType > InterpolatorType
A class that defines an image sample, which is the coordinates of a point and its value.
This class is a base class for any image sampler.
typename InputImageType::PointType InputImagePointType
typename InputImageType::SizeType InputImageSizeType
typename InputImagePointType::ValueType InputImagePointValueType
SpatialObject< Self::InputImageDimension > MaskType
typename ImageSampleType::RealType ImageSampleValueType
typename InputImageType::IndexType InputImageIndexType
TOutputVectorContainer OutputVectorContainerType
typename OutputVectorContainerType::Pointer OutputVectorContainerPointer
Define a front-end to the STL "vector" container that conforms to the IndexedContainerInterface.


Generated on 2023-01-13 for elastix by doxygen 1.9.6 elastix logo