18 #ifndef __itkComputeDisplacementDistribution_h 19 #define __itkComputeDisplacementDistribution_h 27 #include "itkMultiThreader.h" 45 template<
class TFixedImage,
class TTransform >
78 TFixedImage::ImageDimension );
85 itkSetConstObjectMacro( FixedImage, FixedImageType );
88 itkSetObjectMacro( Transform, TransformType );
91 itkSetObjectMacro( FixedImageMask, FixedImageMaskType );
92 itkSetConstObjectMacro( FixedImageMask, FixedImageMaskType );
93 itkGetConstObjectMacro( FixedImageMask, FixedImageMaskType );
96 itkSetMacro( NumberOfJacobianMeasurements, SizeValueType );
109 itkGetConstReferenceMacro( FixedImageRegion, FixedImageRegionType );
112 virtual void Compute(
const ParametersType & mu,
113 double & jacg,
double & maxJJ, std::string method );
117 double & jacg,
double & maxJJ, std::string method );
120 double & jacg,
double & maxJJ, std::string methods );
125 this->
m_Threader->SetNumberOfThreads( numberOfThreads );
182 ImageSampleContainerPointer & sampleContainer );
215 PaddedComputePerThreadStruct );
217 AlignedComputePerThreadStruct );
235 #ifndef ITK_MANUAL_INSTANTIATION 236 #include "itkComputeDisplacementDistribution.hxx" 239 #endif // end #ifndef __itkComputeDisplacementDistribution_h double st_DisplacementSquared
virtual void ComputeSingleThreaded(const ParametersType &mu, double &jacg, double &maxJJ, std::string method)
ScaledSingleValuedNonLinearOptimizer Superclass
virtual void InitializeThreadingParameters(void)
static ITK_THREAD_RETURN_TYPE ComputeThreaderCallback(void *arg)
ComputeDisplacementDistribution()
ThreaderType::ThreadInfoStruct ThreadInfoType
ComputeDisplacementDistribution Self
Superclass::ParametersType ParametersType
Superclass::ParametersType ParametersType
virtual void Compute(const ParametersType &mu, double &jacg, double &maxJJ, std::string method)
void LaunchComputeThreaderCallback(void) const
ImageGridSamplerType::Pointer ImageGridSamplerPointer
itkPadStruct(ITK_CACHE_LINE_ALIGNMENT, ComputePerThreadStruct, PaddedComputePerThreadStruct)
TFixedImage FixedImageType
virtual void AfterThreadedCompute(double &jacg, double &maxJJ)
FixedImageType::ConstPointer m_FixedImage
FixedImageType::PointType FixedImagePointType
itkAlignedTypedef(ITK_CACHE_LINE_ALIGNMENT, PaddedComputePerThreadStruct, AlignedComputePerThreadStruct)
Samples all voxels in the InputImageRegion.
ImageSampleContainerPointer m_SampleContainer
TransformType::Pointer TransformPointer
ImageRandomSamplerBase< FixedImageType > ImageRandomSamplerBaseType
FixedImageType::IndexType FixedImageIndexType
itkStaticConstMacro(FixedImageDimension, unsigned int, TFixedImage::ImageDimension)
Superclass::DerivativeType DerivativeType
SizeValueType m_NumberOfJacobianMeasurements
ImageFullSamplerType::Pointer ImageFullSamplerPointer
virtual void SampleFixedImageForJacobianTerms(ImageSampleContainerPointer &sampleContainer)
virtual ~ComputeDisplacementDistribution()
ScaledSingleValuedCostFunction::Pointer m_CostFunction
This class is a base class for any image sampler.
Superclass::DerivativeType DerivativeType
TransformType::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
ImageGridSamplerType ::ImageSampleContainerType ImageSampleContainerType
virtual void BeforeThreadedCompute(const ParametersType &mu)
SizeValueType m_NumberOfParameters
ImageFullSampler< FixedImageType > ImageFullSamplerType
Superclass::ImageSampleContainerType ImageSampleContainerType
SmartPointer< Self > Pointer
virtual void ComputeUsingSearchDirection(const ParametersType &mu, double &jacg, double &maxJJ, std::string methods)
FixedImageMaskType::Pointer FixedImageMaskPointer
void SetFixedImageRegion(const FixedImageRegionType ®ion)
itk::MultiThreader ThreaderType
JacobianType::ValueType JacobianValueType
ThreadIdType m_ComputePerThreadVariablesSize
TransformPointer m_Transform
FixedImageMaskType::ConstPointer FixedImageMaskConstPointer
NonLinearOptimizer::ScalesType ScalesType
virtual void ThreadedCompute(ThreadIdType threadID)
ImageSampleContainerType::Pointer ImageSampleContainerPointer
void operator=(const Self &)
ThreaderType::Pointer m_Threader
TransformType::ScalarType CoordinateRepresentationType
ImageRandomSamplerBaseType::Pointer ImageRandomSamplerBasePointer
JacobianType TransformJacobianType
FixedImageType::PixelType FixedImagePixelType
SmartPointer< const Self > ConstPointer
This is a helper class for the automatic parameter estimation of the ASGD optimizer.
AlignedComputePerThreadStruct * m_ComputePerThreadVariables
SizeValueType m_NumberOfPixelsCounted
void SetNumberOfThreads(ThreadIdType numberOfThreads)
SpatialObject< itkGetStaticConstMacro(FixedImageDimension) > FixedImageMaskType
ImageSamplerBaseType::Pointer ImageSamplerBasePointer
ImageSamplerBase< FixedImageType > ImageSamplerBaseType
FixedImageType::RegionType FixedImageRegionType
ImageGridSampler< FixedImageType > ImageGridSamplerType
FixedImageRegionType m_FixedImageRegion
This class is a base class for any image sampler that randomly picks samples.
TransformType::JacobianType JacobianType
SizeValueType st_NumberOfPixelsCounted
FixedImageMaskConstPointer m_FixedImageMask
Superclass::ScalesType ScalesType
MultiThreaderParameterType m_ThreaderParameters
DerivativeType m_ExactGradient
Samples image voxels on a regular grid.
TransformType::NumberOfParametersType NumberOfParametersType