#include <elxRandomSampler.h>
An interpolator based on the itk::ImageRandomSampler.
This image sampler randomly samples 'NumberOfSamples' voxels in the InputImageRegion. Voxels may be selected multiple times. If a mask is given, the sampler tries to find samples within the mask. If the mask is very sparse, this may take some time. In this case, consider using the RandomSparseMask image sampler.
This sampler is suitable to used in combination with the NewSamplesEveryIteration parameter (defined in the elx::OptimizerBase).
The parameters used in this class are:
ImageSampler: Select this image sampler as follows:
(ImageSampler "Random")
NumberOfSpatialSamples: The number of image voxels used for computing the metric value and its derivative in each iteration. Must be given for each resolution.
example: (NumberOfSpatialSamples 2048 2048 4000)
The default is 5000.
Definition at line 52 of file elxRandomSampler.h.
Public Member Functions | |
void | BeforeEachResolution () override |
elxClassNameMacro ("Random") | |
virtual const char * | GetClassName () const |
ITK_DISALLOW_COPY_AND_MOVE (RandomSampler) | |
itkStaticConstMacro (InputImageDimension, unsigned int, Superclass1::InputImageDimension) | |
Public Member Functions inherited from itk::ImageRandomSampler< TInputImage > | |
ITK_DISALLOW_COPY_AND_MOVE (ImageRandomSampler) | |
itkStaticConstMacro (InputImageDimension, unsigned int, Superclass::InputImageDimension) | |
Public Member Functions inherited from itk::ImageRandomSamplerBase< TInputImage > | |
std::optional< SeedIntegerType > | GetOptionalSeed () const |
ITK_DISALLOW_COPY_AND_MOVE (ImageRandomSamplerBase) | |
itkStaticConstMacro (InputImageDimension, unsigned int, Superclass::InputImageDimension) | |
void | SetOptionalSeed (const std::optional< SeedIntegerType > arg) |
void | SetSeed (const SeedIntegerType arg) |
Public Member Functions inherited from itk::ImageSamplerBase< TInputImage > | |
virtual const InputImageRegionType & | GetCroppedInputImageRegion () |
const InputImageType * | GetInput () |
const InputImageType * | GetInput (unsigned int idx) |
virtual const InputImageRegionType & | GetInputImageRegion () const |
virtual const InputImageRegionType & | GetInputImageRegion (unsigned int pos) const |
virtual const MaskType * | GetMask () const |
virtual const MaskType * | GetMask (unsigned int pos) const |
virtual unsigned int | GetNumberOfInputImageRegions () const |
virtual unsigned int | GetNumberOfMasks () const |
virtual unsigned long | GetNumberOfSamples () const |
OutputVectorContainerType * | GetOutput () |
ITK_DISALLOW_COPY_AND_MOVE (ImageSamplerBase) | |
itkStaticConstMacro (InputImageDimension, unsigned int, InputImageType::ImageDimension) | |
DataObject::Pointer | MakeOutput (ProcessObject::DataObjectPointerArraySizeType idx) override |
virtual bool | SelectingNewSamplesOnUpdateSupported () const |
virtual bool | SelectNewSamplesOnUpdate () |
void | SetInput (const InputImageType *input) |
void | SetInput (unsigned int idx, const InputImageType *input) |
virtual void | SetInputImageRegion (const InputImageRegionType _arg) |
virtual void | SetInputImageRegion (const InputImageRegionType _arg, unsigned int pos) |
virtual void | SetMask (const MaskType *_arg) |
virtual void | SetMask (const MaskType *_arg, unsigned int pos) |
virtual void | SetNumberOfInputImageRegions (const unsigned int _arg) |
virtual void | SetNumberOfMasks (const unsigned int _arg) |
virtual void | SetNumberOfSamples (unsigned long _arg) |
virtual void | SetUseMultiThread (bool _arg) |
Public Member Functions inherited from itk::VectorContainerSource< VectorDataContainer< std::vcl_size_t, ImageSample< TInputImage > > > | |
OutputVectorContainerType * | GetOutput () |
OutputVectorContainerType * | GetOutput (unsigned int idx) |
virtual void | GraftNthOutput (unsigned int idx, DataObject *output) |
virtual void | GraftOutput (DataObject *output) |
ITK_DISALLOW_COPY_AND_MOVE (VectorContainerSource) | |
DataObjectPointer | MakeOutput (ProcessObject::DataObjectPointerArraySizeType idx) override |
Public Member Functions inherited from itk::ImageSamplerBase< TElastix > | |
virtual const InputImageRegionType & | GetCroppedInputImageRegion () |
const InputImageType * | GetInput () |
const InputImageType * | GetInput (unsigned int idx) |
virtual const InputImageRegionType & | GetInputImageRegion () const |
virtual const InputImageRegionType & | GetInputImageRegion (unsigned int pos) const |
virtual const MaskType * | GetMask () const |
virtual const MaskType * | GetMask (unsigned int pos) const |
virtual unsigned int | GetNumberOfInputImageRegions () const |
virtual unsigned int | GetNumberOfMasks () const |
virtual unsigned long | GetNumberOfSamples () const |
OutputVectorContainerType * | GetOutput () |
ITK_DISALLOW_COPY_AND_MOVE (ImageSamplerBase) | |
itkStaticConstMacro (InputImageDimension, unsigned int, InputImageType::ImageDimension) | |
DataObject::Pointer | MakeOutput (ProcessObject::DataObjectPointerArraySizeType idx) override |
virtual bool | SelectingNewSamplesOnUpdateSupported () const |
virtual bool | SelectNewSamplesOnUpdate () |
void | SetInput (const InputImageType *input) |
void | SetInput (unsigned int idx, const InputImageType *input) |
virtual void | SetInputImageRegion (const InputImageRegionType _arg) |
virtual void | SetInputImageRegion (const InputImageRegionType _arg, unsigned int pos) |
virtual void | SetMask (const MaskType *_arg) |
virtual void | SetMask (const MaskType *_arg, unsigned int pos) |
virtual void | SetNumberOfInputImageRegions (const unsigned int _arg) |
virtual void | SetNumberOfMasks (const unsigned int _arg) |
virtual void | SetNumberOfSamples (unsigned long _arg) |
virtual void | SetUseMultiThread (bool _arg) |
Public Member Functions inherited from itk::VectorContainerSource< VectorDataContainer< std::vcl_size_t, ImageSample< TElastix > > > | |
OutputVectorContainerType * | GetOutput () |
OutputVectorContainerType * | GetOutput (unsigned int idx) |
virtual void | GraftNthOutput (unsigned int idx, DataObject *output) |
virtual void | GraftOutput (DataObject *output) |
ITK_DISALLOW_COPY_AND_MOVE (VectorContainerSource) | |
DataObjectPointer | MakeOutput (ProcessObject::DataObjectPointerArraySizeType idx) override |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::ImageRandomSampler< TInputImage > | |
static Pointer | New () |
Static Public Member Functions inherited from itk::ImageRandomSamplerBase< TInputImage > | |
static Pointer | New () |
Static Public Member Functions inherited from itk::ImageSamplerBase< TInputImage > | |
static Pointer | New () |
Static Public Member Functions inherited from itk::VectorContainerSource< VectorDataContainer< std::vcl_size_t, ImageSample< TInputImage > > > | |
static Pointer | New () |
Static Public Member Functions inherited from itk::ImageSamplerBase< TElastix > | |
static Pointer | New () |
Static Public Member Functions inherited from itk::VectorContainerSource< VectorDataContainer< std::vcl_size_t, ImageSample< TElastix > > > | |
static Pointer | New () |
Protected Member Functions | |
RandomSampler ()=default | |
~RandomSampler () override=default | |
Protected Member Functions inherited from itk::ImageRandomSampler< TInputImage > | |
void | GenerateData () override |
ImageRandomSampler ()=default | |
~ImageRandomSampler () override=default | |
Protected Member Functions inherited from itk::ImageRandomSamplerBase< TInputImage > | |
void | GenerateRandomNumberList () |
ImageRandomSamplerBase () | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
~ImageRandomSamplerBase () override=default | |
Protected Member Functions inherited from itk::ImageSamplerBase< TInputImage > | |
virtual bool | CheckInputImageRegions () |
void | CropInputImageRegion () |
void | GenerateInputRequestedRegion () override |
ImageSamplerBase () | |
virtual bool | IsInsideAllMasks (const InputImagePointType &point) const |
void | PrintSelf (std::ostream &os, Indent indent) const override |
virtual void | UpdateAllMasks () |
~ImageSamplerBase () override=default | |
Protected Member Functions inherited from itk::VectorContainerSource< VectorDataContainer< std::vcl_size_t, ImageSample< TInputImage > > > | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
VectorContainerSource () | |
~VectorContainerSource () override=default | |
Protected Member Functions inherited from itk::ImageSamplerBase< TElastix > | |
virtual bool | CheckInputImageRegions () |
void | CropInputImageRegion () |
void | GenerateInputRequestedRegion () override |
ImageSamplerBase () | |
virtual bool | IsInsideAllMasks (const InputImagePointType &point) const |
void | PrintSelf (std::ostream &os, Indent indent) const override |
virtual void | UpdateAllMasks () |
~ImageSamplerBase () override=default | |
Protected Member Functions inherited from itk::VectorContainerSource< VectorDataContainer< std::vcl_size_t, ImageSample< TElastix > > > | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
VectorContainerSource () | |
~VectorContainerSource () override=default | |
Private Attributes | |
elxOverrideGetSelfMacro | |
Additional Inherited Members | |
Static Protected Member Functions inherited from itk::ImageSamplerBase< TInputImage > | |
static std::vector< InputImageRegionType > | SplitRegion (const InputImageRegionType &inputRegion, const vcl_size_t requestedNumberOfSubregions) |
Static Protected Member Functions inherited from itk::ImageSamplerBase< TElastix > | |
static std::vector< InputImageRegionType > | SplitRegion (const InputImageRegionType &inputRegion, const vcl_size_t requestedNumberOfSubregions) |
Protected Attributes inherited from itk::ImageRandomSamplerBase< TInputImage > | |
std::vector< double > | m_RandomNumberList {} |
Protected Attributes inherited from itk::ImageSamplerBase< TInputImage > | |
unsigned long | m_NumberOfSamples { 0 } |
bool | m_UseMultiThread { true } |
Protected Attributes inherited from itk::ImageSamplerBase< TElastix > | |
unsigned long | m_NumberOfSamples |
bool | m_UseMultiThread |
using elastix::RandomSampler< TElastix >::ConstPointer = itk::SmartPointer<const Self> |
Definition at line 64 of file elxRandomSampler.h.
using itk::ImageRandomSampler< TInputImage >::InputImageIndexType |
Other typedefs.
Definition at line 76 of file itkImageRandomSampler.h.
using itk::ImageRandomSampler< TInputImage >::InputImagePointType |
Definition at line 77 of file itkImageRandomSampler.h.
using elastix::RandomSampler< TElastix >::ITKBaseType = typename Superclass2::ITKBaseType |
Definition at line 99 of file elxRandomSampler.h.
using elastix::RandomSampler< TElastix >::Pointer = itk::SmartPointer<Self> |
Definition at line 63 of file elxRandomSampler.h.
using elastix::RandomSampler< TElastix >::Self = RandomSampler |
Standard ITK-stuff.
Definition at line 60 of file elxRandomSampler.h.
using elastix::RandomSampler< TElastix >::Superclass1 = itk::ImageRandomSampler<typename elx::ImageSamplerBase<TElastix>::InputImageType> |
Definition at line 61 of file elxRandomSampler.h.
using elastix::RandomSampler< TElastix >::Superclass2 = elx::ImageSamplerBase<TElastix> |
Definition at line 62 of file elxRandomSampler.h.
|
protecteddefault |
The constructor.
|
overrideprotecteddefault |
The destructor.
|
override |
Execute stuff before each resolution:
elastix::RandomSampler< TElastix >::elxClassNameMacro | ( | "Random" | ) |
Name of this class. Use this name in the parameter file to select this specific interpolator.
example: (ImageSampler "Random")
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::ImageRandomSampler< TInputImage >.
elastix::RandomSampler< TElastix >::ITK_DISALLOW_COPY_AND_MOVE | ( | RandomSampler< TElastix > | ) |
elastix::RandomSampler< TElastix >::itkStaticConstMacro | ( | InputImageDimension | , |
unsigned int | , | ||
Superclass1::InputImageDimension | ) |
The input image dimension.
|
static |
Method for creation through the object factory.
|
private |
Definition at line 114 of file elxRandomSampler.h.
Generated on 2024-07-17 for elastix by 1.11.0 (9b424b03c9833626cd435af22a444888fbbb192d) |