]> Creatis software - clitk.git/blobdiff - registration/clitkOptNormalizedCorrelationImageToImageMetricFor3DBLUTFFD.txx
Merge branch 'master' of git.creatis.insa-lyon.fr:clitk
[clitk.git] / registration / clitkOptNormalizedCorrelationImageToImageMetricFor3DBLUTFFD.txx
index 1d2b8cc81b108f9a487b83406f9d22164d0c0e89..d7c777742981f51e1b2234cf3004bcc49ecfbffe 100644 (file)
@@ -3,7 +3,7 @@
 
   Authors belong to:
   - University of LYON              http://www.universite-lyon.fr/
-  - Léon Bérard cancer center       http://oncora1.lyon.fnclcc.fr
+  - Léon Bérard cancer center       http://www.centreleonberard.fr
   - CREATIS CNRS laboratory         http://www.creatis.insa-lyon.fr
 
   This software is distributed WITHOUT ANY WARRANTY; without even
@@ -14,7 +14,7 @@
 
   - BSD        See included LICENSE.txt file
   - CeCILL-B   http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
-======================================================================-====*/
+===========================================================================**/
 
 #ifndef __clitkOptNormalizedCorrelationImageToImageMetricFor3DBLUTFFD_txx
 #define __clitkOptNormalizedCorrelationImageToImageMetricFor3DBLUTFFD_txx
@@ -219,7 +219,9 @@ NormalizedCorrelationImageToImageMetricFor3DBLUTFFD<TFixedImage,TMovingImage>
 
   // Set up the parameters in the transform
   this->m_Transform->SetParameters( parameters );
+#if ITK_VERSION_MAJOR < 4
   this->m_Parameters = parameters;
+#endif
 
   // MUST BE CALLED TO INITIATE PROCESSING
   this->GetValueMultiThreadedInitiate();
@@ -294,7 +296,9 @@ NormalizedCorrelationImageToImageMetricFor3DBLUTFFD<TFixedImage,TMovingImage>
 
   // Set up the parameters in the transform
   this->m_Transform->SetParameters( parameters );
+#if ITK_VERSION_MAJOR < 4
   this->m_Parameters = parameters;
+#endif
 
   // MUST BE CALLED TO INITIATE PROCESSING
   this->GetValueMultiThreadedInitiate();
@@ -381,7 +385,12 @@ NormalizedCorrelationImageToImageMetricFor3DBLUTFFD<TFixedImage,TMovingImage>
   }
 
   // Jacobian should be evaluated at the unmapped (fixed image) point.
+#if ITK_VERSION_MAJOR >= 4
+  TransformJacobianType jacobian;
+  transform->ComputeJacobianWithRespectToParameters( fixedImagePoint, jacobian );
+#else
   const TransformJacobianType & jacobian = transform->GetJacobian( fixedImagePoint );
+#endif
 
 //          for(unsigned int par=0; par<this->m_NumberOfParameters; par++)
 //            {
@@ -446,7 +455,9 @@ NormalizedCorrelationImageToImageMetricFor3DBLUTFFD<TFixedImage,TMovingImage>
 
   // Set up the parameters in the transform
   this->m_Transform->SetParameters( parameters );
+#if ITK_VERSION_MAJOR < 4
   this->m_Parameters = parameters;
+#endif
 
   //We need the sums and the value to be calculated first
   value=this->ComputeSums(parameters);
@@ -457,16 +468,16 @@ NormalizedCorrelationImageToImageMetricFor3DBLUTFFD<TFixedImage,TMovingImage>
   }
   memset( derivative.data_block(),
           0,
-          this->m_NumberOfParameters * sizeof(ITK_TYPENAME DerivativeType::ValueType) );
+          this->m_NumberOfParameters * sizeof(typename DerivativeType::ValueType) );
 
   for( unsigned int threadID = 0; threadID<this->m_NumberOfThreads; threadID++ ) {
     memset( m_ThreaderDerivativeF[threadID].data_block(),
             0,
-            this->m_NumberOfParameters * sizeof(ITK_TYPENAME DerivativeType::ValueType) );
+            this->m_NumberOfParameters * sizeof(typename DerivativeType::ValueType) );
 
     memset( m_ThreaderDerivativeM[threadID].data_block(),
             0,
-            this->m_NumberOfParameters * sizeof(ITK_TYPENAME DerivativeType::ValueType) );
+            this->m_NumberOfParameters * sizeof(typename DerivativeType::ValueType) );
   }
 
   // MUST BE CALLED TO INITIATE PROCESSING