X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=registration%2FclitkOptNormalizedCorrelationImageToImageMetricFor3DBLUTFFD.txx;h=959bfed1afd56d50dca9a3ec725c8f2f306873c6;hb=103778ec7e0d03e32d9ecfa1306312d32d72ad4c;hp=0ee3e6ef635a287086b9f4d9386e535c45eff332;hpb=573d80d0f7a17607d2ee883c21c940c0ba020282;p=clitk.git diff --git a/registration/clitkOptNormalizedCorrelationImageToImageMetricFor3DBLUTFFD.txx b/registration/clitkOptNormalizedCorrelationImageToImageMetricFor3DBLUTFFD.txx index 0ee3e6e..959bfed 100644 --- a/registration/clitkOptNormalizedCorrelationImageToImageMetricFor3DBLUTFFD.txx +++ b/registration/clitkOptNormalizedCorrelationImageToImageMetricFor3DBLUTFFD.txx @@ -219,7 +219,6 @@ NormalizedCorrelationImageToImageMetricFor3DBLUTFFD // Set up the parameters in the transform this->m_Transform->SetParameters( parameters ); - this->m_Parameters = parameters; // MUST BE CALLED TO INITIATE PROCESSING this->GetValueMultiThreadedInitiate(); @@ -294,7 +293,6 @@ NormalizedCorrelationImageToImageMetricFor3DBLUTFFD // Set up the parameters in the transform this->m_Transform->SetParameters( parameters ); - this->m_Parameters = parameters; // MUST BE CALLED TO INITIATE PROCESSING this->GetValueMultiThreadedInitiate(); @@ -381,7 +379,8 @@ NormalizedCorrelationImageToImageMetricFor3DBLUTFFD } // Jacobian should be evaluated at the unmapped (fixed image) point. - const TransformJacobianType & jacobian = transform->GetJacobian( fixedImagePoint ); + TransformJacobianType jacobian; + transform->ComputeJacobianWithRespectToParameters( fixedImagePoint, jacobian ); // for(unsigned int par=0; parm_NumberOfParameters; par++) // { @@ -446,7 +445,6 @@ NormalizedCorrelationImageToImageMetricFor3DBLUTFFD // Set up the parameters in the transform this->m_Transform->SetParameters( parameters ); - this->m_Parameters = parameters; //We need the sums and the value to be calculated first value=this->ComputeSums(parameters); @@ -457,16 +455,16 @@ NormalizedCorrelationImageToImageMetricFor3DBLUTFFD } 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; threadIDm_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