|
typedef
Superclass2::ConfigurationPointer | ConfigurationPointer |
|
typedef
Superclass2::ConfigurationType | ConfigurationType |
|
typedef itk::SmartPointer
< const Self > | ConstPointer |
|
typedef Superclass1::CoordRepType | CoordRepType |
|
typedef
Superclass1::DataObjectPointer | DataObjectPointer |
|
typedef
Superclass1::DefaultInterpolatorType | DefaultInterpolatorType |
|
typedef Superclass2::ElastixPointer | ElastixPointer |
|
typedef Superclass2::ElastixType | ElastixType |
|
typedef
Superclass1::ImageSampleContainerType | ImageSampleContainerType |
|
typedef
Superclass1::ImageSampleType | ImageSampleType |
|
typedef
Superclass1::ImageSampleValueType | ImageSampleValueType |
|
typedef
Superclass1::InputImageConstPointer | InputImageConstPointer |
|
typedef
Superclass1::InputImageIndexType | InputImageIndexType |
|
typedef
Superclass1::InputImagePixelType | InputImagePixelType |
|
typedef
Superclass1::InputImagePointer | InputImagePointer |
|
typedef
Superclass1::InputImagePointType | InputImagePointType |
|
typedef
Superclass1::InputImagePointValueType | InputImagePointValueType |
|
typedef
Superclass1::InputImageRegionType | InputImageRegionType |
|
typedef
Superclass1::InputImageSizeType | InputImageSizeType |
|
typedef
Superclass1::InputImageSpacingType | InputImageSpacingType |
|
typedef Superclass1::InputImageType | InputImageType |
|
typedef
Superclass1::InterpolatorType | InterpolatorType |
|
typedef Superclass2::ITKBaseType | ITKBaseType |
|
typedef Superclass1::MaskType | MaskType |
|
typedef
Superclass1::OutputVectorContainerPointer | OutputVectorContainerPointer |
|
typedef
Superclass1::OutputVectorContainerType | OutputVectorContainerType |
|
typedef itk::SmartPointer< Self > | Pointer |
|
typedef
Superclass2::RegistrationPointer | RegistrationPointer |
|
typedef
Superclass2::RegistrationType | RegistrationType |
|
typedef RandomCoordinateSampler | Self |
|
typedef
itk::ImageRandomCoordinateSampler
< typename
elx::ImageSamplerBase
< TElastix >::InputImageType > | Superclass1 |
|
typedef elx::ImageSamplerBase
< TElastix > | Superclass2 |
|
Public Types inherited from itk::ImageRandomCoordinateSampler< elx::ImageSamplerBase< TElastix >::InputImageType > |
typedef SmartPointer< const Self > | ConstPointer |
|
typedef double | CoordRepType |
|
typedef
Superclass::DataObjectPointer | DataObjectPointer |
|
typedef
BSplineInterpolateImageFunction
< InputImageType, CoordRepType,
double > | DefaultInterpolatorType |
|
typedef
Superclass::ImageSampleContainerPointer | ImageSampleContainerPointer |
|
typedef
Superclass::ImageSampleContainerType | ImageSampleContainerType |
|
typedef Superclass::ImageSampleType | ImageSampleType |
|
typedef
Superclass::ImageSampleValueType | ImageSampleValueType |
|
typedef
Superclass::InputImageConstPointer | InputImageConstPointer |
|
typedef
Superclass::InputImageIndexType | InputImageIndexType |
|
typedef
Superclass::InputImagePixelType | InputImagePixelType |
|
typedef
Superclass::InputImagePointer | InputImagePointer |
|
typedef
Superclass::InputImagePointType | InputImagePointType |
|
typedef
Superclass::InputImagePointValueType | InputImagePointValueType |
|
typedef
Superclass::InputImageRegionType | InputImageRegionType |
|
typedef
Superclass::InputImageSizeType | InputImageSizeType |
|
typedef InputImageType::SpacingType | InputImageSpacingType |
|
typedef Superclass::InputImageType | InputImageType |
|
typedef InterpolatorType::Pointer | InterpolatorPointer |
|
typedef
InterpolateImageFunction
< InputImageType, CoordRepType > | InterpolatorType |
|
typedef Superclass::MaskType | MaskType |
|
typedef
Superclass::OutputVectorContainerPointer | OutputVectorContainerPointer |
|
typedef
Superclass::OutputVectorContainerType | OutputVectorContainerType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef
RandomGeneratorType::Pointer | RandomGeneratorPointer |
|
typedef
itk::Statistics::MersenneTwisterRandomVariateGenerator | RandomGeneratorType |
|
typedef
ImageRandomCoordinateSampler | Self |
|
typedef ImageRandomSamplerBase
< elx::ImageSamplerBase
< TElastix >::InputImageType > | Superclass |
|
Public Types inherited from itk::ImageRandomSamplerBase< elx::ImageSamplerBase< TElastix >::InputImageType > |
typedef SmartPointer< const Self > | ConstPointer |
|
typedef
Superclass::DataObjectPointer | DataObjectPointer |
|
typedef
Superclass::ImageSampleContainerPointer | ImageSampleContainerPointer |
|
typedef
Superclass::ImageSampleContainerType | ImageSampleContainerType |
|
typedef Superclass::ImageSampleType | ImageSampleType |
|
typedef
Superclass::InputImageConstPointer | InputImageConstPointer |
|
typedef
Superclass::InputImagePixelType | InputImagePixelType |
|
typedef
Superclass::InputImagePointer | InputImagePointer |
|
typedef
Superclass::InputImageRegionType | InputImageRegionType |
|
typedef Superclass::InputImageType | InputImageType |
|
typedef Superclass::MaskType | MaskType |
|
typedef
Superclass::OutputVectorContainerPointer | OutputVectorContainerPointer |
|
typedef
Superclass::OutputVectorContainerType | OutputVectorContainerType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef ImageRandomSamplerBase | Self |
|
typedef ImageSamplerBase
< elx::ImageSamplerBase
< TElastix >::InputImageType > | Superclass |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef
Superclass::DataObjectPointer | DataObjectPointer |
|
typedef
ImageSampleContainerType::Pointer | ImageSampleContainerPointer |
|
typedef VectorDataContainer
< unsigned long,
ImageSampleType > | ImageSampleContainerType |
|
typedef ImageSample
< InputImageType > | ImageSampleType |
|
typedef ImageSampleType::RealType | ImageSampleValueType |
|
typedef
Superclass::InputImageConstPointer | InputImageConstPointer |
|
typedef InputImageType::IndexType | InputImageIndexType |
|
typedef
Superclass::InputImagePixelType | InputImagePixelType |
|
typedef
Superclass::InputImagePointer | InputImagePointer |
|
typedef InputImageType::PointType | InputImagePointType |
|
typedef
InputImagePointType::ValueType | InputImagePointValueType |
|
typedef
Superclass::InputImageRegionType | InputImageRegionType |
|
typedef std::vector
< InputImageRegionType > | InputImageRegionVectorType |
|
typedef InputImageType::SizeType | InputImageSizeType |
|
typedef Superclass::InputImageType | InputImageType |
|
typedef MaskType::ConstPointer | MaskConstPointer |
|
typedef MaskType::Pointer | MaskPointer |
|
typedef SpatialObject
< Self::InputImageDimension > | MaskType |
|
typedef std::vector
< MaskConstPointer > | MaskVectorType |
|
typedef
Superclass::OutputVectorContainerPointer | OutputVectorContainerPointer |
|
typedef
Superclass::OutputVectorContainerType | OutputVectorContainerType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef ImageSamplerBase | Self |
|
typedef
ImageToVectorContainerFilter
< elx::ImageSamplerBase
< TElastix >::InputImageType,
VectorDataContainer< unsigned
long, ImageSample
< elx::ImageSamplerBase
< TElastix >::InputImageType > > > | Superclass |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef
Superclass::DataObjectPointer | DataObjectPointer |
|
typedef
InputImageType::ConstPointer | InputImageConstPointer |
|
typedef InputImageType::PixelType | InputImagePixelType |
|
typedef InputImageType::Pointer | InputImagePointer |
|
typedef InputImageType::RegionType | InputImageRegionType |
|
typedef elx::ImageSamplerBase
< TElastix >::InputImageType | InputImageType |
|
typedef
Superclass::OutputVectorContainerPointer | OutputVectorContainerPointer |
|
typedef
Superclass::OutputVectorContainerType | OutputVectorContainerType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef
ImageToVectorContainerFilter | Self |
|
typedef VectorContainerSource
< VectorDataContainer
< unsigned long, ImageSample
< elx::ImageSamplerBase
< TElastix >::InputImageType > > > | Superclass |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef
Superclass::DataObjectPointer | DataObjectPointer |
|
typedef
OutputVectorContainerType::Pointer | OutputVectorContainerPointer |
|
typedef VectorDataContainer
< unsigned long, ImageSample
< elx::ImageSamplerBase
< TElastix >::InputImageType > > | OutputVectorContainerType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef VectorContainerSource | Self |
|
typedef ProcessObject | Superclass |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef
Superclass::DataObjectPointer | DataObjectPointer |
|
typedef
ImageSampleContainerType::Pointer | ImageSampleContainerPointer |
|
typedef VectorDataContainer
< unsigned long,
ImageSampleType > | ImageSampleContainerType |
|
typedef ImageSample
< InputImageType > | ImageSampleType |
|
typedef ImageSampleType::RealType | ImageSampleValueType |
|
typedef
Superclass::InputImageConstPointer | InputImageConstPointer |
|
typedef InputImageType::IndexType | InputImageIndexType |
|
typedef
Superclass::InputImagePixelType | InputImagePixelType |
|
typedef
Superclass::InputImagePointer | InputImagePointer |
|
typedef InputImageType::PointType | InputImagePointType |
|
typedef
InputImagePointType::ValueType | InputImagePointValueType |
|
typedef
Superclass::InputImageRegionType | InputImageRegionType |
|
typedef std::vector
< InputImageRegionType > | InputImageRegionVectorType |
|
typedef InputImageType::SizeType | InputImageSizeType |
|
typedef Superclass::InputImageType | InputImageType |
|
typedef MaskType::ConstPointer | MaskConstPointer |
|
typedef MaskType::Pointer | MaskPointer |
|
typedef SpatialObject
< Self::InputImageDimension > | MaskType |
|
typedef std::vector
< MaskConstPointer > | MaskVectorType |
|
typedef
Superclass::OutputVectorContainerPointer | OutputVectorContainerPointer |
|
typedef
Superclass::OutputVectorContainerType | OutputVectorContainerType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef ImageSamplerBase | Self |
|
typedef
ImageToVectorContainerFilter
< TElastix,
VectorDataContainer< unsigned
long, ImageSample< TElastix > > > | Superclass |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef
Superclass::DataObjectPointer | DataObjectPointer |
|
typedef
InputImageType::ConstPointer | InputImageConstPointer |
|
typedef InputImageType::PixelType | InputImagePixelType |
|
typedef InputImageType::Pointer | InputImagePointer |
|
typedef InputImageType::RegionType | InputImageRegionType |
|
typedef TElastix | InputImageType |
|
typedef
Superclass::OutputVectorContainerPointer | OutputVectorContainerPointer |
|
typedef
Superclass::OutputVectorContainerType | OutputVectorContainerType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef
ImageToVectorContainerFilter | Self |
|
typedef VectorContainerSource
< VectorDataContainer
< unsigned long, ImageSample
< TElastix > > > | Superclass |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef
Superclass::DataObjectPointer | DataObjectPointer |
|
typedef
OutputVectorContainerType::Pointer | OutputVectorContainerPointer |
|
typedef VectorDataContainer
< unsigned long, ImageSample
< TElastix > > | OutputVectorContainerType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef VectorContainerSource | Self |
|
typedef ProcessObject | Superclass |
|
|
virtual void | BeforeEachResolution (void) |
|
| elxClassNameMacro ("RandomCoordinate") |
|
virtual const char * | GetClassName () const |
|
| itkStaticConstMacro (InputImageDimension, unsigned int, Superclass1::InputImageDimension) |
|
Public Member Functions inherited from itk::ImageRandomCoordinateSampler< elx::ImageSamplerBase< TElastix >::InputImageType > |
virtual InterpolatorType * | GetInterpolator () |
|
virtual const
InputImageSpacingType & | GetSampleRegionSize () |
|
virtual bool | GetUseRandomSampleRegion () const |
|
| itkStaticConstMacro (InputImageDimension, unsigned int, Superclass::InputImageDimension) |
|
virtual void | SetInterpolator (InterpolatorType *_arg) |
|
virtual void | SetSampleRegionSize (InputImageSpacingType _arg) |
|
virtual void | SetUseRandomSampleRegion (bool _arg) |
|
Public Member Functions inherited from itk::ImageRandomSamplerBase< elx::ImageSamplerBase< TElastix >::InputImageType > |
| itkStaticConstMacro (InputImageDimension, unsigned int, Superclass::InputImageDimension) |
|
virtual void | SetNumberOfSamples (unsigned long _arg) |
|
virtual const
InputImageRegionType & | GetCroppedInputImageRegion () |
|
virtual const
InputImageRegionType & | GetInputImageRegion (unsigned int pos) const |
|
virtual const
InputImageRegionType & | GetInputImageRegion (void) const |
|
virtual const MaskType * | GetMask (unsigned int pos) const |
|
virtual const MaskType * | GetMask (void) const |
|
virtual unsigned int | GetNumberOfInputImageRegions () const |
|
virtual unsigned int | GetNumberOfMasks () const |
|
virtual unsigned long | GetNumberOfSamples () const |
|
| itkStaticConstMacro (InputImageDimension, unsigned int, InputImageType::ImageDimension) |
|
virtual bool | SelectingNewSamplesOnUpdateSupported (void) const |
|
virtual bool | SelectNewSamplesOnUpdate (void) |
|
virtual void | SetInputImageRegion (const InputImageRegionType _arg, unsigned int pos) |
|
virtual void | SetInputImageRegion (const InputImageRegionType _arg) |
|
virtual void | SetMask (const MaskType *_arg, unsigned int pos) |
|
virtual void | SetMask (const MaskType *_arg) |
|
virtual void | SetNumberOfInputImageRegions (const unsigned int _arg) |
|
virtual void | SetNumberOfMasks (const unsigned int _arg) |
|
virtual void | SetUseMultiThread (bool _arg) |
|
const InputImageType * | GetInput (void) |
|
const InputImageType * | GetInput (unsigned int idx) |
|
OutputVectorContainerType * | GetOutput (void) |
|
DataObject::Pointer | MakeOutput (unsigned int idx) |
|
void | SetInput (unsigned int idx, const InputImageType *input) |
|
void | SetInput (const InputImageType *input) |
|
virtual unsigned int | SplitRequestedRegion (const ThreadIdType &threadId, const ThreadIdType &numberOfSplits, InputImageRegionType &splitRegion) |
|
virtual void | ThreadedGenerateData (const InputImageRegionType &inputRegionForThread, ThreadIdType threadId) |
|
OutputVectorContainerType * | GetOutput (void) |
|
OutputVectorContainerType * | GetOutput (unsigned int idx) |
|
virtual void | GraftNthOutput (unsigned int idx, DataObject *output) |
|
virtual void | GraftOutput (DataObject *output) |
|
virtual const
InputImageRegionType & | GetCroppedInputImageRegion () |
|
virtual const
InputImageRegionType & | GetInputImageRegion (unsigned int pos) const |
|
virtual const
InputImageRegionType & | GetInputImageRegion (void) const |
|
virtual const MaskType * | GetMask (unsigned int pos) const |
|
virtual const MaskType * | GetMask (void) const |
|
virtual unsigned int | GetNumberOfInputImageRegions () const |
|
virtual unsigned int | GetNumberOfMasks () const |
|
virtual unsigned long | GetNumberOfSamples () const |
|
| itkStaticConstMacro (InputImageDimension, unsigned int, InputImageType::ImageDimension) |
|
virtual bool | SelectingNewSamplesOnUpdateSupported (void) const |
|
virtual bool | SelectNewSamplesOnUpdate (void) |
|
virtual void | SetInputImageRegion (const InputImageRegionType _arg, unsigned int pos) |
|
virtual void | SetInputImageRegion (const InputImageRegionType _arg) |
|
virtual void | SetMask (const MaskType *_arg, unsigned int pos) |
|
virtual void | SetMask (const MaskType *_arg) |
|
virtual void | SetNumberOfInputImageRegions (const unsigned int _arg) |
|
virtual void | SetNumberOfMasks (const unsigned int _arg) |
|
virtual void | SetUseMultiThread (bool _arg) |
|
virtual void | GenerateData (void) |
|
const InputImageType * | GetInput (void) |
|
const InputImageType * | GetInput (unsigned int idx) |
|
OutputVectorContainerType * | GetOutput (void) |
|
DataObject::Pointer | MakeOutput (unsigned int idx) |
|
void | SetInput (unsigned int idx, const InputImageType *input) |
|
void | SetInput (const InputImageType *input) |
|
virtual unsigned int | SplitRequestedRegion (const ThreadIdType &threadId, const ThreadIdType &numberOfSplits, InputImageRegionType &splitRegion) |
|
virtual void | ThreadedGenerateData (const InputImageRegionType &inputRegionForThread, ThreadIdType threadId) |
|
OutputVectorContainerType * | GetOutput (void) |
|
OutputVectorContainerType * | GetOutput (unsigned int idx) |
|
virtual void | GraftNthOutput (unsigned int idx, DataObject *output) |
|
virtual void | GraftOutput (DataObject *output) |
|
|
| RandomCoordinateSampler () |
|
virtual | ~RandomCoordinateSampler () |
|
Protected Member Functions inherited from itk::ImageRandomCoordinateSampler< elx::ImageSamplerBase< TElastix >::InputImageType > |
virtual void | BeforeThreadedGenerateData (void) |
|
virtual void | GenerateData (void) |
|
virtual void | GenerateRandomCoordinate (const InputImageContinuousIndexType &smallestContIndex, const InputImageContinuousIndexType &largestContIndex, InputImageContinuousIndexType &randomContIndex) |
|
virtual void | GenerateSampleRegion (const InputImageContinuousIndexType &smallestImageContIndex, const InputImageContinuousIndexType &largestImageContIndex, InputImageContinuousIndexType &smallestContIndex, InputImageContinuousIndexType &largestContIndex) |
|
| ImageRandomCoordinateSampler () |
|
void | PrintSelf (std::ostream &os, Indent indent) const |
|
virtual void | ThreadedGenerateData (const InputImageRegionType &inputRegionForThread, ThreadIdType threadId) |
|
virtual | ~ImageRandomCoordinateSampler () |
|
Protected Member Functions inherited from itk::ImageRandomSamplerBase< elx::ImageSamplerBase< TElastix >::InputImageType > |
| ImageRandomSamplerBase () |
|
void | PrintSelf (std::ostream &os, Indent indent) const |
|
virtual | ~ImageRandomSamplerBase () |
|
virtual void | AfterThreadedGenerateData (void) |
|
virtual bool | CheckInputImageRegions (void) |
|
void | CropInputImageRegion (void) |
|
virtual void | GenerateInputRequestedRegion (void) |
|
| ImageSamplerBase () |
|
virtual bool | IsInsideAllMasks (const InputImagePointType &point) const |
|
void | PrintSelf (std::ostream &os, Indent indent) const |
|
virtual void | UpdateAllMasks (void) |
|
virtual | ~ImageSamplerBase () |
|
| ImageToVectorContainerFilter () |
|
void | PrintSelf (std::ostream &os, Indent indent) const |
|
virtual | ~ImageToVectorContainerFilter () |
|
void | PrintSelf (std::ostream &os, Indent indent) const |
|
| VectorContainerSource () |
|
virtual | ~VectorContainerSource () |
|
virtual void | AfterThreadedGenerateData (void) |
|
virtual void | BeforeThreadedGenerateData (void) |
|
virtual bool | CheckInputImageRegions (void) |
|
void | CropInputImageRegion (void) |
|
virtual void | GenerateInputRequestedRegion (void) |
|
| ImageSamplerBase () |
|
virtual bool | IsInsideAllMasks (const InputImagePointType &point) const |
|
void | PrintSelf (std::ostream &os, Indent indent) const |
|
virtual void | UpdateAllMasks (void) |
|
virtual | ~ImageSamplerBase () |
|
| ImageToVectorContainerFilter () |
|
void | PrintSelf (std::ostream &os, Indent indent) const |
|
virtual | ~ImageToVectorContainerFilter () |
|
void | PrintSelf (std::ostream &os, Indent indent) const |
|
| VectorContainerSource () |
|
virtual | ~VectorContainerSource () |
|
template<class TElastix>
class elastix::RandomCoordinateSampler< TElastix >
An interpolator based on the itk::ImageRandomCoordinateSampler.
This image sampler randomly samples 'NumberOfSamples' coordinates in the InputImageRegion. 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. The RandomCoordinate sampler samples not only positions that correspond to voxels, but also positions between voxels. An interpolator for the fixed image is thus required. A B-spline interpolator is used, the order of which can be specified by the user. Typically, the RandomCoordinate gives a smoother cost function, because the so-called 'grid-effect' is avoided.
This sampler is suitable to used in combination with the NewSamplesEveryIteration parameter (defined in the elx::OptimizerBase).
The parameters used in this class are:
- Parameters:
ImageSampler: Select this image sampler as follows:
(ImageSampler "RandomCoordinate")
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.
UseRandomSampleRegion: Defines whether to randomly select a subregion of the image in each iteration. When set to "true", also specify the SampleRegionSize. By setting this option to "true", in combination with the NewSamplesEveryIteration parameter, a "localised" similarity measure is obtained. This can give better performance in case of the presence of large inhomogeneities in the image, for example.
example: (UseRandomSampleRegion "true")
Default: false.
SampleRegionSize: the size of the subregions that are selected when using the UseRandomSampleRegion option. The size should be specified in mm, for each dimension. As a rule of thumb, you may try a value ~1/3 of the image size.
example: (SampleRegionSize 50.0 50.0 50.0)
You can also specify one number, which will be used for all dimensions. Also, you can specify different values for each resolution:
example: (SampleRegionSize 50.0 50.0 50.0 30.0 30.0 30.0)
In this example, in the first resolution 50mm is used for each of the 3 dimensions, and in the second resolution 30mm.
Default: sampleRegionSize[i] = min ( fixedImageSize[i], max_i ( fixedImageSize[i]/3 ) ), with fixedImageSize in mm. So, approximately 1/3 of the fixed image size.
FixedImageBSplineInterpolationOrder: When using a RandomCoordinate sampler, the fixed image needs to be interpolated. This is done using a B-spline interpolator. With this option you can specify the order of interpolation.
example: (FixedImageBSplineInterpolationOrder 0 0 1)
Default value: 1. The parameter can be specified for each resolution.
Definition at line 74 of file elxRandomCoordinateSampler.h.