18#ifndef __itkMultiBSplineDeformableTransformWithNormal_h
19#define __itkMultiBSplineDeformableTransformWithNormal_h
22#include "itkNearestNeighborInterpolateImageFunction.h"
40unsigned int NDimensions = 3,
41unsigned int VSplineOrder = 3 >
95 itkGetStaticConstMacro( SpaceDimension ),
171 typedef typename ParametersType::ValueType PixelType;
172 typedef Image< PixelType,
196 typedef ImageRegion< itkGetStaticConstMacro( SpaceDimension ) >
RegionType;
226 typedef Image<
unsigned char,
230 typedef itk::NearestNeighborInterpolateImageFunction<
247 itkGetConstMacro( NbLabels,
unsigned char );
262 itkExceptionMacro( <<
"Method not applicable for deformable transform." );
272 itkExceptionMacro( <<
"Method not applicable for deformable transform. " );
283 itkExceptionMacro( <<
"Method not applicable for deformable transform. " );
297 return m_Trans[ 0 ]->GetValidRegion();
306 bool IsLinear(
void )
const override {
return false; }
311 return m_Trans[ 0 ]->m_WeightsFunction->GetNumberOfWeights();
317 return m_Trans[ 0 ]->m_WeightsFunction->GetNumberOfWeights();
323 return m_Trans[ 0 ]->m_WeightsFunction->GetNumberOfWeights() * SpaceDimension;
393 itkExceptionMacro( <<
"ERROR: GetJacobianOfSpatialHessian() not yet implemented "
394 <<
"in the MultiBSplineDeformableTransformWithNormal class." );
407 void PrintSelf( std::ostream & os, Indent indent )
const override;
483 itkGetStaticConstMacro( SpaceDimension ),
490 std::vector< typename TransformType::Pointer >
m_Trans;
508#ifndef ITK_MANUAL_INSTANTIATION
509#include "itkMultiBSplineDeformableTransformWithNormal.hxx"
Returns the weights over the support region used for B-spline interpolation/reconstruction.
Superclass::WeightsType WeightsType