X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=registration%2FitkOptMattesMutualInformationImageToImageMetricFor3DBLUTFFD.txx;h=9099ca46fb72876dc3e4a120f71d65ed6ea2e82c;hb=b1a94242c6faae33b9e0908a24cacc3e3f7d4e92;hp=6d890e3e209de8817760a962f038ecabca5a7766;hpb=c18059db4f507fd31b5898667f57eced7d48c5f7;p=clitk.git diff --git a/registration/itkOptMattesMutualInformationImageToImageMetricFor3DBLUTFFD.txx b/registration/itkOptMattesMutualInformationImageToImageMetricFor3DBLUTFFD.txx index 6d890e3..9099ca4 100644 --- a/registration/itkOptMattesMutualInformationImageToImageMetricFor3DBLUTFFD.txx +++ b/registration/itkOptMattesMutualInformationImageToImageMetricFor3DBLUTFFD.txx @@ -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 -======================================================================-====*/ +===========================================================================**/ /*========================================================================= @@ -1152,8 +1152,13 @@ MattesMutualInformationImageToImageMetricFor3DBLUTFFD transform = this->m_Transform; } +#if ITK_VERSION_MAJOR >= 4 + JacobianType jacobian; + transform->ComputeJacobianWithRespectToParameters(this->m_FixedImageSamples[sampleNumber].point, jacobian); +#else const JacobianType& jacobian = transform->GetJacobian( this->m_FixedImageSamples[sampleNumber].point ); +#endif // for ( unsigned int mu = 0; mu < this->m_NumberOfParameters; mu++ ) // { @@ -1221,9 +1226,15 @@ MattesMutualInformationImageToImageMetricFor3DBLUTFFD indicesHelper = &(this->m_BSplineTransformIndices); } +#if ITK_VERSION_MAJOR >= 4 + this->m_BSplineTransform->ComputeJacobianFromBSplineWeightsWithRespectToPosition( + this->m_FixedImageSamples[sampleNumber].point, + *weightsHelper, *indicesHelper ); +#else this->m_BSplineTransform->GetJacobian( this->m_FixedImageSamples[sampleNumber].point, *weightsHelper, *indicesHelper ); +#endif } for( unsigned int dim = 0; dim < Superclass::FixedImageDimension; dim++ ) {