go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkKernelTransform2.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 /*=========================================================================
19 
20 Program: Insight Segmentation & Registration Toolkit
21 Module: $RCSfile: itkKernelTransform2.h,v $
22 Language: C++
23 Date: $Date: 2006-11-28 14:22:18 $
24 Version: $Revision: 1.1 $
25 
26 Copyright (c) Insight Software Consortium. All rights reserved.
27 See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
28 
29 This software is distributed WITHOUT ANY WARRANTY; without even
30 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
31 PURPOSE. See the above copyright notices for more information.
32 
33 =========================================================================*/
34 #ifndef __itkKernelTransform2_h
35 #define __itkKernelTransform2_h
36 
37 #include "itkAdvancedTransform.h"
38 #include "itkPoint.h"
39 #include "itkVector.h"
40 #include "itkMatrix.h"
41 #include "itkPointSet.h"
42 #include <deque>
43 #include <math.h>
44 #include "vnl/vnl_matrix_fixed.h"
45 #include "vnl/vnl_matrix.h"
46 #include "vnl/vnl_vector.h"
47 #include "vnl/vnl_vector_fixed.h"
48 #include "vnl/vnl_sample.h"
49 #include "vnl/algo/vnl_svd.h"
50 #include "vnl/algo/vnl_qr.h"
51 
52 namespace itk
53 {
54 
94 template< class TScalarType, // probably only float and double make sense here
95 unsigned int NDimensions >
96 // Number of dimensions
98  public AdvancedTransform< TScalarType, NDimensions, NDimensions >
99 {
100 public:
101 
104  typedef AdvancedTransform<
105  TScalarType, NDimensions, NDimensions > Superclass;
107  typedef SmartPointer< const Self > ConstPointer;
108 
111 
113  itkNewMacro( Self );
114 
116  itkStaticConstMacro( SpaceDimension, unsigned int, NDimensions );
117 
131 
133  typedef typename Superclass
136  typedef typename Superclass
139  typedef typename Superclass
142 
146  typedef DefaultStaticMeshTraits< TScalarType,
147  NDimensions, NDimensions, TScalarType, TScalarType > PointSetTraitsType;
148  typedef PointSet< InputPointType, NDimensions,
150  typedef typename PointSetType::Pointer PointSetPointer;
151  typedef typename PointSetType::PointsContainer PointsContainer;
152  typedef typename PointSetType::PointsContainerIterator PointsIterator;
153  typedef typename PointSetType::PointsContainerConstIterator PointsConstIterator;
154 
156  typedef VectorContainer< unsigned long, InputVectorType > VectorSetType;
157  typedef typename VectorSetType::Pointer VectorSetPointer;
158 
161 
164  {
165  return ( this->m_SourceLandmarks->GetNumberOfPoints() * SpaceDimension );
166  }
167 
168 
170  itkGetObjectMacro( SourceLandmarks, PointSetType );
171 
173  virtual void SetSourceLandmarks( PointSetType * );
174 
176  itkGetObjectMacro( TargetLandmarks, PointSetType );
177 
179  virtual void SetTargetLandmarks( PointSetType * );
180 
184  itkGetObjectMacro( Displacements, VectorSetType );
185 
187  void ComputeWMatrix( void );
188 
190  void ComputeLInverse( void );
191 
193  virtual OutputPointType TransformPoint( const InputPointType & thisPoint ) const;
194 
197  {
198  itkExceptionMacro(
199  << "TransformVector(const InputVectorType &) is not implemented "
200  << "for KernelTransform" );
201  }
202 
203 
205  {
206  itkExceptionMacro(
207  << "TransformVector(const InputVnlVectorType &) is not implemented "
208  << "for KernelTransform" );
209  }
210 
211 
213  {
214  itkExceptionMacro(
215  << "TransformCovariantVector(const InputCovariantVectorType &) is not implemented "
216  << "for KernelTransform" );
217  }
218 
219 
221  virtual void GetJacobian(
222  const InputPointType &,
223  JacobianType &,
224  NonZeroJacobianIndicesType & ) const;
225 
227  virtual void SetIdentity( void );
228 
234  virtual void SetParameters( const ParametersType & );
235 
241  virtual void SetFixedParameters( const ParametersType & );
242 
244  virtual void UpdateParameters( void );
245 
247  virtual const ParametersType & GetParameters( void ) const;
248 
250  virtual const ParametersType & GetFixedParameters( void ) const;
251 
262  virtual void SetStiffness( double stiffness )
263  {
264  this->m_Stiffness = stiffness > 0 ? stiffness : 0.0;
265  this->m_LMatrixComputed = false;
266  this->m_LInverseComputed = false;
267  this->m_WMatrixComputed = false;
268  }
269 
270 
271  itkGetMacro( Stiffness, double );
272 
279  virtual void SetAlpha( TScalarType itkNotUsed( Alpha ) ) {}
280  virtual TScalarType GetAlpha( void ) const { return -1.0; }
281 
288  itkSetMacro( PoissonRatio, TScalarType );
289  virtual const TScalarType GetPoissonRatio( void ) const
290  {
291  return this->m_PoissonRatio;
292  }
293 
294 
296  itkSetMacro( MatrixInversionMethod, std::string );
297  itkGetConstReferenceMacro( MatrixInversionMethod, std::string );
298 
300  virtual void GetSpatialJacobian(
301  const InputPointType & ipp, SpatialJacobianType & sj ) const
302  {
303  itkExceptionMacro( << "Not implemented for KernelTransform2" );
304  }
305 
306 
307  virtual void GetSpatialHessian(
308  const InputPointType & ipp, SpatialHessianType & sh ) const
309  {
310  itkExceptionMacro( << "Not implemented for KernelTransform2" );
311  }
312 
313 
316  NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const
317  {
318  itkExceptionMacro( << "Not implemented for KernelTransform2" );
319  }
320 
321 
323  const InputPointType & ipp, SpatialJacobianType & sj,
325  NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const
326  {
327  itkExceptionMacro( << "Not implemented for KernelTransform2" );
328  }
329 
330 
332  const InputPointType & ipp, JacobianOfSpatialHessianType & jsh,
333  NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const
334  {
335  itkExceptionMacro( << "Not implemented for KernelTransform2" );
336  }
337 
338 
340  const InputPointType & ipp, SpatialHessianType & sh,
342  NonZeroJacobianIndicesType & nonZeroJacobianIndices ) const
343  {
344  itkExceptionMacro( << "Not implemented for KernelTransform2" );
345  }
346 
347 
348 protected:
349 
351  virtual ~KernelTransform2();
352  void PrintSelf( std::ostream & os, Indent indent ) const;
353 
354 public:
355 
358 
361 
364 
367 
370 
373 
376 
379 
382 
384  typedef vnl_matrix_fixed< TScalarType, 1, NDimensions > RowMatrixType;
385 
387  typedef vnl_matrix_fixed< TScalarType, NDimensions, 1 > ColumnMatrixType;
388 
391 
394 
395 protected:
396 
404  virtual void ComputeG( const InputVectorType & landmarkVector,
405  GMatrixType & GMatrix ) const;
406 
414  virtual void ComputeReflexiveG( PointsIterator, GMatrixType & GMatrix ) const;
415 
420  const InputPointType & inputPoint,
421  OutputPointType & result ) const;
422 
424  void ComputeK( void );
425 
427  void ComputeL( void );
428 
430  void ComputeP( void );
431 
433  void ComputeY( void );
434 
436  void ComputeD( void );
437 
442  void ReorganizeW( void );
443 
445  double m_Stiffness;
446 
451 
454 
457 
460 
463 
466 
469 
476 
479 
482 
488  //GMatrixType m_GMatrix;
489 
498 
505  typedef vnl_svd< ScalarType > SVDDecompositionType;
506  typedef vnl_qr< ScalarType > QRDecompositionType;
507 
510 
513 
516 
519 
524 
525 private:
526 
527  KernelTransform2( const Self & ); // purposely not implemented
528  void operator=( const Self & ); // purposely not implemented
529 
531 
534 
535 };
536 
537 } // end namespace itk
538 
539 #ifndef ITK_MANUAL_INSTANTIATION
540 #include "itkKernelTransform2.hxx"
541 #endif
542 
543 #endif // __itkKernelTransform2_h
itk::KernelTransform2::YMatrixType
vnl_matrix< TScalarType > YMatrixType
Definition: itkKernelTransform2.h:369
itk::KernelTransform2::SetAlpha
virtual void SetAlpha(TScalarType)
Definition: itkKernelTransform2.h:279
itk::KernelTransform2::m_BVector
BMatrixType m_BVector
Definition: itkKernelTransform2.h:481
itk::KernelTransform2::GetPoissonRatio
virtual const TScalarType GetPoissonRatio(void) const
Definition: itkKernelTransform2.h:289
itk::KernelTransform2::OutputVnlVectorType
Superclass::OutputVnlVectorType OutputVnlVectorType
Definition: itkKernelTransform2.h:130
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::OutputPointType
Superclass::OutputPointType OutputPointType
Definition: itkAdvancedTransform.h:125
itk::KernelTransform2::VectorSetPointer
VectorSetType::Pointer VectorSetPointer
Definition: itkKernelTransform2.h:157
itk::KernelTransform2::itkStaticConstMacro
itkStaticConstMacro(SpaceDimension, unsigned int, NDimensions)
itk::KernelTransform2::m_NonZeroJacobianIndices
NonZeroJacobianIndicesType m_NonZeroJacobianIndices
Definition: itkKernelTransform2.h:515
itk::KernelTransform2::m_TargetLandmarks
PointSetPointer m_TargetLandmarks
Definition: itkKernelTransform2.h:393
itk::KernelTransform2::m_I
IMatrixType m_I
Definition: itkKernelTransform2.h:512
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::SpatialJacobianType
Matrix< ScalarType, OutputSpaceDimension, InputSpaceDimension > SpatialJacobianType
Definition: itkAdvancedTransform.h:143
itk::KernelTransform2::m_WMatrix
WMatrixType m_WMatrix
Definition: itkKernelTransform2.h:468
itkAdvancedTransform.h
itk::KernelTransform2::OutputVectorType
Superclass::OutputVectorType OutputVectorType
Definition: itkKernelTransform2.h:126
itk::KernelTransform2::ComputeG
virtual void ComputeG(const InputVectorType &landmarkVector, GMatrixType &GMatrix) const
itk::KernelTransform2::PointSetTraitsType
DefaultStaticMeshTraits< TScalarType, NDimensions, NDimensions, TScalarType, TScalarType > PointSetTraitsType
Definition: itkKernelTransform2.h:147
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::InputCovariantVectorType
Superclass ::InputCovariantVectorType InputCovariantVectorType
Definition: itkAdvancedTransform.h:119
itk::KernelTransform2::ScalarType
Superclass::ScalarType ScalarType
Definition: itkKernelTransform2.h:119
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::InputPointType
Superclass::InputPointType InputPointType
Definition: itkAdvancedTransform.h:124
SmartPointer< Self >
itk::KernelTransform2::RowMatrixType
vnl_matrix_fixed< TScalarType, 1, NDimensions > RowMatrixType
Definition: itkKernelTransform2.h:384
itk::KernelTransform2::OutputPointType
Superclass::OutputPointType OutputPointType
Definition: itkKernelTransform2.h:124
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::InputVnlVectorType
Superclass::InputVnlVectorType InputVnlVectorType
Definition: itkAdvancedTransform.h:122
itk::KernelTransform2::ComputeP
void ComputeP(void)
itk::KernelTransform2::SVDDecompositionType
vnl_svd< ScalarType > SVDDecompositionType
Definition: itkKernelTransform2.h:505
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::JacobianOfSpatialHessianType
std::vector< SpatialHessianType > JacobianOfSpatialHessianType
Definition: itkAdvancedTransform.h:150
itk::KernelTransform2::GetJacobianOfSpatialJacobian
virtual void GetJacobianOfSpatialJacobian(const InputPointType &ipp, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
Definition: itkKernelTransform2.h:314
itk::KernelTransform2::m_NonZeroJacobianIndicesTemp
NonZeroJacobianIndicesType m_NonZeroJacobianIndicesTemp
Definition: itkKernelTransform2.h:518
itk::KernelTransform2::SpatialJacobianType
Superclass::SpatialJacobianType SpatialJacobianType
Definition: itkKernelTransform2.h:135
itk::KernelTransform2
Definition: itkKernelTransform2.h:99
itk::KernelTransform2::PointSetType
PointSet< InputPointType, NDimensions, PointSetTraitsType > PointSetType
Definition: itkKernelTransform2.h:149
itk::KernelTransform2::Self
KernelTransform2 Self
Definition: itkKernelTransform2.h:103
itk::KernelTransform2::m_PoissonRatio
TScalarType m_PoissonRatio
Definition: itkKernelTransform2.h:530
itk::KernelTransform2::ComputeDeformationContribution
virtual void ComputeDeformationContribution(const InputPointType &inputPoint, OutputPointType &result) const
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::ScalarType
Superclass::ScalarType ScalarType
Definition: itkAdvancedTransform.h:109
itk::KernelTransform2::PointsConstIterator
PointSetType::PointsContainerConstIterator PointsConstIterator
Definition: itkKernelTransform2.h:153
itk::KernelTransform2::m_AMatrix
AMatrixType m_AMatrix
Definition: itkKernelTransform2.h:478
itk::KernelTransform2::NumberOfParametersType
Superclass::NumberOfParametersType NumberOfParametersType
Definition: itkKernelTransform2.h:121
itk::KernelTransform2::m_PMatrix
PMatrixType m_PMatrix
Definition: itkKernelTransform2.h:462
itk::KernelTransform2::m_LMatrix
LMatrixType m_LMatrix
Definition: itkKernelTransform2.h:453
itk::KernelTransform2::UpdateParameters
virtual void UpdateParameters(void)
itk::KernelTransform2::PointSetPointer
PointSetType::Pointer PointSetPointer
Definition: itkKernelTransform2.h:150
itk::KernelTransform2::InputVnlVectorType
Superclass::InputVnlVectorType InputVnlVectorType
Definition: itkKernelTransform2.h:129
itk::KernelTransform2::operator=
void operator=(const Self &)
itk::KernelTransform2::GetNumberOfParameters
virtual NumberOfParametersType GetNumberOfParameters(void) const
Definition: itkKernelTransform2.h:163
itk::KernelTransform2::DMatrixType
vnl_matrix< TScalarType > DMatrixType
Definition: itkKernelTransform2.h:375
itk::KernelTransform2::ComputeWMatrix
void ComputeWMatrix(void)
itk::KernelTransform2::NonZeroJacobianIndicesType
Superclass ::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
Definition: itkKernelTransform2.h:134
itk::KernelTransform2::m_MatrixInversionMethod
std::string m_MatrixInversionMethod
Definition: itkKernelTransform2.h:533
itk::KernelTransform2::m_LMatrixInverse
LMatrixType m_LMatrixInverse
Definition: itkKernelTransform2.h:456
itk::KernelTransform2::KernelTransform2
KernelTransform2(const Self &)
itk::KernelTransform2::QRDecompositionType
vnl_qr< ScalarType > QRDecompositionType
Definition: itkKernelTransform2.h:506
itk::KernelTransform2::m_Displacements
VectorSetPointer m_Displacements
Definition: itkKernelTransform2.h:450
itk::KernelTransform2::InputVectorType
Superclass::InputVectorType InputVectorType
Definition: itkKernelTransform2.h:125
itk::KernelTransform2::m_KMatrix
KMatrixType m_KMatrix
Definition: itkKernelTransform2.h:459
itk::KernelTransform2::GetJacobianOfSpatialJacobian
virtual void GetJacobianOfSpatialJacobian(const InputPointType &ipp, SpatialJacobianType &sj, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
Definition: itkKernelTransform2.h:322
itk::KernelTransform2::GMatrixType
vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > GMatrixType
Definition: itkKernelTransform2.h:357
vnl_vector_fixed< TScalarType, NDimensions >
itk::KernelTransform2::SetFixedParameters
virtual void SetFixedParameters(const ParametersType &)
itk::KernelTransform2::KMatrixType
vnl_matrix< TScalarType > KMatrixType
Definition: itkKernelTransform2.h:363
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::JacobianType
Superclass::JacobianType JacobianType
Definition: itkAdvancedTransform.h:115
itk::KernelTransform2::SetParameters
virtual void SetParameters(const ParametersType &)
itk::KernelTransform2::TransformCovariantVector
virtual OutputCovariantVectorType TransformCovariantVector(const InputCovariantVectorType &) const
Definition: itkKernelTransform2.h:212
itk::KernelTransform2::SetSourceLandmarks
virtual void SetSourceLandmarks(PointSetType *)
itk::AdvancedTransform
Transform maps points, vectors and covariant vectors from an input space to an output space.
Definition: itkAdvancedTransform.h:87
itk::KernelTransform2::KernelTransform2
KernelTransform2()
itk::KernelTransform2::SpatialHessianType
Superclass::SpatialHessianType SpatialHessianType
Definition: itkKernelTransform2.h:138
itk::KernelTransform2::WMatrixType
vnl_matrix< TScalarType > WMatrixType
Definition: itkKernelTransform2.h:372
itk::KernelTransform2::ReorganizeW
void ReorganizeW(void)
itk::KernelTransform2::GetSpatialJacobian
virtual void GetSpatialJacobian(const InputPointType &ipp, SpatialJacobianType &sj) const
Definition: itkKernelTransform2.h:300
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::InternalMatrixType
SpatialJacobianType::InternalMatrixType InternalMatrixType
Definition: itkAdvancedTransform.h:151
itk::KernelTransform2::SetTargetLandmarks
virtual void SetTargetLandmarks(PointSetType *)
itk::KernelTransform2::JacobianType
Superclass::JacobianType JacobianType
Definition: itkKernelTransform2.h:122
itk::KernelTransform2::JacobianOfSpatialHessianType
Superclass ::JacobianOfSpatialHessianType JacobianOfSpatialHessianType
Definition: itkKernelTransform2.h:140
itk::KernelTransform2::ComputeY
void ComputeY(void)
itk::KernelTransform2::PointsIterator
PointSetType::PointsContainerIterator PointsIterator
Definition: itkKernelTransform2.h:152
itk::KernelTransform2::ComputeD
void ComputeD(void)
itk::KernelTransform2::InputPointType
Superclass::InputPointType InputPointType
Definition: itkKernelTransform2.h:123
itk::KernelTransform2::AMatrixType
vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > AMatrixType
Definition: itkKernelTransform2.h:378
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::SpatialHessianType
FixedArray< Matrix< ScalarType, InputSpaceDimension, InputSpaceDimension >, OutputSpaceDimension > SpatialHessianType
Definition: itkAdvancedTransform.h:149
itk::KernelTransform2::GetAlpha
virtual TScalarType GetAlpha(void) const
Definition: itkKernelTransform2.h:280
itk::KernelTransform2::PointsContainer
PointSetType::PointsContainer PointsContainer
Definition: itkKernelTransform2.h:151
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::InputVectorType
Superclass::InputVectorType InputVectorType
Definition: itkAdvancedTransform.h:116
itk::KernelTransform2::ComputeLInverse
void ComputeLInverse(void)
itk::KernelTransform2::m_LMatrixComputed
bool m_LMatrixComputed
Definition: itkKernelTransform2.h:493
itk::KernelTransform2::BMatrixType
vnl_vector_fixed< TScalarType, NDimensions > BMatrixType
Definition: itkKernelTransform2.h:381
itk::KernelTransform2::GetFixedParameters
virtual const ParametersType & GetFixedParameters(void) const
itk::KernelTransform2::m_WMatrixComputed
bool m_WMatrixComputed
Definition: itkKernelTransform2.h:491
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::JacobianOfSpatialJacobianType
std::vector< SpatialJacobianType > JacobianOfSpatialJacobianType
Definition: itkAdvancedTransform.h:144
itk::KernelTransform2::Pointer
SmartPointer< Self > Pointer
Definition: itkKernelTransform2.h:106
itk::KernelTransform2::GetJacobianOfSpatialHessian
virtual void GetJacobianOfSpatialHessian(const InputPointType &ipp, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
Definition: itkKernelTransform2.h:331
itk::KernelTransform2::GetJacobian
virtual void GetJacobian(const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const
itk::KernelTransform2::PMatrixType
vnl_matrix< TScalarType > PMatrixType
Definition: itkKernelTransform2.h:366
itk::KernelTransform2::TransformVector
virtual OutputVectorType TransformVector(const InputVectorType &) const
Definition: itkKernelTransform2.h:196
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::NonZeroJacobianIndicesType
std::vector< unsigned long > NonZeroJacobianIndicesType
Definition: itkAdvancedTransform.h:141
vnl_matrix_fixed< TScalarType, NDimensions, NDimensions >
itk::KernelTransform2::m_LMatrixDecompositionQR
QRDecompositionType * m_LMatrixDecompositionQR
Definition: itkKernelTransform2.h:509
itk::KernelTransform2::ComputeReflexiveG
virtual void ComputeReflexiveG(PointsIterator, GMatrixType &GMatrix) const
itk::KernelTransform2::SetIdentity
virtual void SetIdentity(void)
itk::KernelTransform2::SetStiffness
virtual void SetStiffness(double stiffness)
Definition: itkKernelTransform2.h:262
itk
Definition: itkAdvancedImageToImageMetric.h:40
itk::KernelTransform2::InternalMatrixType
Superclass::InternalMatrixType InternalMatrixType
Definition: itkKernelTransform2.h:141
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::OutputVectorType
Superclass::OutputVectorType OutputVectorType
Definition: itkAdvancedTransform.h:117
itk::KernelTransform2::GetSpatialHessian
virtual void GetSpatialHessian(const InputPointType &ipp, SpatialHessianType &sh) const
Definition: itkKernelTransform2.h:307
itk::KernelTransform2::ComputeK
void ComputeK(void)
itk::KernelTransform2::LMatrixType
vnl_matrix< TScalarType > LMatrixType
Definition: itkKernelTransform2.h:360
itk::KernelTransform2::JacobianOfSpatialJacobianType
Superclass ::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType
Definition: itkKernelTransform2.h:137
itk::KernelTransform2::~KernelTransform2
virtual ~KernelTransform2()
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::NumberOfParametersType
Superclass::NumberOfParametersType NumberOfParametersType
Definition: itkAdvancedTransform.h:113
itk::KernelTransform2::GetParameters
virtual const ParametersType & GetParameters(void) const
itk::KernelTransform2::m_LInverseComputed
bool m_LInverseComputed
Definition: itkKernelTransform2.h:495
itk::KernelTransform2::VectorSetType
VectorContainer< unsigned long, InputVectorType > VectorSetType
Definition: itkKernelTransform2.h:156
itk::KernelTransform2::m_LMatrixDecompositionSVD
SVDDecompositionType * m_LMatrixDecompositionSVD
Definition: itkKernelTransform2.h:508
itk::KernelTransform2::PrintSelf
void PrintSelf(std::ostream &os, Indent indent) const
itk::KernelTransform2::ColumnMatrixType
vnl_matrix_fixed< TScalarType, NDimensions, 1 > ColumnMatrixType
Definition: itkKernelTransform2.h:387
TScalarType
itk::KernelTransform2::InputCovariantVectorType
Superclass::InputCovariantVectorType InputCovariantVectorType
Definition: itkKernelTransform2.h:127
itk::KernelTransform2::m_Stiffness
double m_Stiffness
Definition: itkKernelTransform2.h:445
itk::KernelTransform2::ParametersType
Superclass::ParametersType ParametersType
Definition: itkKernelTransform2.h:120
itk::KernelTransform2::m_SourceLandmarks
PointSetPointer m_SourceLandmarks
Definition: itkKernelTransform2.h:390
itk::KernelTransform2::GetJacobianOfSpatialHessian
virtual void GetJacobianOfSpatialHessian(const InputPointType &ipp, SpatialHessianType &sh, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
Definition: itkKernelTransform2.h:339
itk::KernelTransform2::IMatrixType
vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > IMatrixType
Definition: itkKernelTransform2.h:160
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::ParametersType
Superclass::ParametersType ParametersType
Definition: itkAdvancedTransform.h:110
itk::KernelTransform2::TransformVector
virtual OutputVnlVectorType TransformVector(const InputVnlVectorType &) const
Definition: itkKernelTransform2.h:204
itk::KernelTransform2::TransformPoint
virtual OutputPointType TransformPoint(const InputPointType &thisPoint) const
itk::KernelTransform2::m_DMatrix
DMatrixType m_DMatrix
Definition: itkKernelTransform2.h:475
vnl_matrix< TScalarType >
itk::KernelTransform2::ConstPointer
SmartPointer< const Self > ConstPointer
Definition: itkKernelTransform2.h:107
itk::KernelTransform2::m_YMatrix
YMatrixType m_YMatrix
Definition: itkKernelTransform2.h:465
itk::KernelTransform2::Superclass
AdvancedTransform< TScalarType, NDimensions, NDimensions > Superclass
Definition: itkKernelTransform2.h:105
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::OutputVnlVectorType
Superclass::OutputVnlVectorType OutputVnlVectorType
Definition: itkAdvancedTransform.h:123
itk::KernelTransform2::m_FastComputationPossible
bool m_FastComputationPossible
Definition: itkKernelTransform2.h:523
itk::KernelTransform2::ComputeL
void ComputeL(void)
itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >::OutputCovariantVectorType
Superclass ::OutputCovariantVectorType OutputCovariantVectorType
Definition: itkAdvancedTransform.h:121
itk::KernelTransform2::m_LMatrixDecompositionComputed
bool m_LMatrixDecompositionComputed
Definition: itkKernelTransform2.h:497
itk::KernelTransform2::OutputCovariantVectorType
Superclass::OutputCovariantVectorType OutputCovariantVectorType
Definition: itkKernelTransform2.h:128


Generated on OURCE_DATE_EPOCH for elastix by doxygen 1.8.18 elastix logo