# Deformation To Displacement

Matt McCormick
2011-08-23
Rename ITKDeformationField module to ITKDisplacementField. This patch uses the term 'Displacement' consistently, when appropriate, and as a precise replacement for the more ambiguous term 'Deformation'. For the distinction, see the class documentation of DeformationFieldJacobianDeterminant and DisplacementFieldJacobianDeterminant, or the following from Wikipedia:

"Deformation in continuum mechanics is the transformation of a body from a reference configuration to a current configuration.[1] A configuration is a set containing the positions of all particles of the body. Contrary to the common definition of deformation, which implies distortion or change in shape, the continuum mechanics definition includes rigid body motions where shape changes do not take place [... deformation can mean strains, rigid body motion, or displacements. Displacement is ] the vector joining the positions of a particle P in the undeformed configuration and deformed configuration is called the displacement vector u(X,t) = uiei in the Lagrangian description, or U(x,t) = UJEJ in the Eulerian description.

This brings the terminology in line with that found in any mechanics textbook.
typedef itk::Image&amp;lt; VectorPixelType, Dimension &gt; DeformationFieldType; typedef itk::ImageFileReader&amp;lt; DeformationFieldType &gt; FieldReaderType; DeformationFieldType::ConstPointer deformationField = fieldReader-&gt;GetOutput(); DeformationFieldType &gt; FilterType; filter-&gt;SetDeformationField( deformationField );
typedef itk::Image&amp;lt; VectorPixelType, Dimension &gt; DisplacementFieldType; typedef itk::ImageFileReader&amp;lt; DisplacementFieldType &gt; FieldReaderType; DisplacementFieldType::ConstPointer deformationField = fieldReader-&gt;GetOutput(); DisplacementFieldType &gt; FilterType; filter-&gt;SetDisplacementField( deformationField );
typedef itk::Image&amp;lt; VectorPixelType, Dimension &gt; DeformationFieldType; DeformationFieldType, itk::FastSymmetricForcesDemonsRegistrationFunction&amp;lt;InternalImageType,InternalImageType,DeformationFieldType&gt; &gt; RegistrationFilterType; typedef itk::Image&amp;lt; VectorPixelType, Dimension &gt; DeformationFieldType; DeformationFieldType, itk::FastSymmetricForcesDemonsRegistrationFunction&amp;lt;InternalImageType,InternalImageType,DeformationFieldType&gt; &gt; RegistrationFilterType; DeformationFieldType &gt; MultiResRegistrationFilterType; DeformationFieldType &gt; WarperType; warper-&gt;SetDeformationField( multires-&gt;GetOutput() ); typedef itk::ImageFileWriter&amp;lt; DeformationFieldType &gt; FieldWriterType;
typedef itk::Image&amp;lt; VectorPixelType, Dimension &gt; DisplacementFieldType; DisplacementFieldType, itk::FastSymmetricForcesDemonsRegistrationFunction&amp;lt;InternalImageType,InternalImageType,DisplacementFieldType&gt; &gt; RegistrationFilterType; typedef itk::Image&amp;lt; VectorPixelType, Dimension &gt; DisplacementFieldType; DisplacementFieldType, itk::FastSymmetricForcesDemonsRegistrationFunction&amp;lt;InternalImageType,InternalImageType,DisplacementFieldType&gt; &gt; RegistrationFilterType; DisplacementFieldType &gt; MultiResRegistrationFilterType; DisplacementFieldType &gt; WarperType; warper-&gt;SetDisplacementField( multires-&gt;GetOutput() ); typedef itk::ImageFileWriter&amp;lt; DisplacementFieldType &gt; FieldWriterType;
typedef itk::Image&amp;lt; VectorPixelType, 2 &gt; DeformationFieldType; InternalImageType, DeformationFieldType&gt; RegistrationFilterType; typedef itk::Image&amp;lt; VectorPixelType, Dimension &gt; DeformationFieldType; DeformationFieldType&gt; RegistrationFilterType; DeformationFieldType &gt; MultiResRegistrationFilterType; typedef itk::WarpImageFilter&amp;lt; ImageType, ImageType, DeformationFieldType &gt; WarperType; warper-&gt;SetDeformationField( multires-&gt;GetOutput() ); typedef itk::ImageFileWriter&amp;lt; DeformationFieldType &gt; DeformationWriterType;
typedef itk::Image&amp;lt; VectorPixelType, 2 &gt; DisplacementFieldType; InternalImageType, DisplacementFieldType&gt; RegistrationFilterType; typedef itk::Image&amp;lt; VectorPixelType, Dimension &gt; DisplacementFieldType; DisplacementFieldType&gt; RegistrationFilterType; DisplacementFieldType &gt; MultiResRegistrationFilterType; typedef itk::WarpImageFilter&amp;lt; ImageType, ImageType, DisplacementFieldType &gt; WarperType; warper-&gt;SetDisplacementField( multires-&gt;GetOutput() ); typedef itk::ImageFileWriter&amp;lt; DisplacementFieldType &gt; DeformationWriterType;
#include &quot;itkDeformationFieldSource.h&quot; typedef itk::Image&amp;lt; VectorType, Dimension &gt; DeformationFieldType; typedef itk::DeformationFieldSource&amp;lt; DeformationFieldType &gt; DeformationSourceType; DeformationSourceType::Pointer deformer = DeformationSourceType::New(); typedef DeformationSourceType::LandmarkContainerPointer LandmarkContainerPointer; typedef DeformationSourceType::LandmarkContainer LandmarkContainerType; typedef DeformationSourceType::LandmarkPointType LandmarkPointType; DeformationFieldType::ConstPointer deformationField = deformer-&gt;GetOutput(); DeformationFieldType &gt; FilterType; warper-&gt;SetOutputSpacing( deformationField-&gt;GetSpacing() ); warper-&gt;SetOutputOrigin( deformationField-&gt;GetOrigin() ); warper-&gt;SetDeformationField( deformationField );

#include &quot;itkLandmarkDisplacementFieldSource.h&quot; typedef itk::Image&amp;lt; VectorType, Dimension &gt; DisplacementFieldType; typedef itk::LandmarkDisplacementFieldSource&amp;lt; DisplacementFieldType &gt; DisplacementSourceType; DisplacementSourceType::Pointer deformer = DisplacementSourceType::New(); typedef DisplacementSourceType::LandmarkContainerPointer LandmarkContainerPointer; typedef DisplacementSourceType::LandmarkContainer LandmarkContainerType; typedef DisplacementSourceType::LandmarkPointType LandmarkPointType; DisplacementFieldType::ConstPointer displacementField = deformer-&gt;GetOutput(); DisplacementFieldType &gt; FilterType; warper-&gt;SetOutputSpacing( displacementField-&gt;GetSpacing() ); warper-&gt;SetOutputOrigin( displacementField-&gt;GetOrigin() ); warper-&gt;SetDisplacementField( displacementField );
If77d4ac31e2cac791efa98a8e9d660092fe15298
Documentation/Migration/BSplineRegistrationRefactoring.xml Documentation/Migration/RemoveConstantOperationFilters.xml Examples/Filtering/WarpImageFilter1.cxx Examples/Registration/BSplineWarping1.cxx Examples/Registration/BSplineWarping2.cxx Examples/Registration/CMakeLists.txt Examples/Registration/DeformableRegistration10.cxx Examples/Registration/DeformableRegistration12.cxx Examples/Registration/DeformableRegistration13.cxx Examples/Registration/DeformableRegistration14.cxx Examples/Registration/DeformableRegistration15.cxx Examples/Registration/DeformableRegistration16.cxx Examples/Registration/DeformableRegistration17.cxx Examples/Registration/DeformableRegistration2.cxx Examples/Registration/DeformableRegistration3.cxx Examples/Registration/DeformableRegistration4.cxx Examples/Registration/DeformableRegistration5.cxx Examples/Registration/DeformableRegistration6.cxx Examples/Registration/DeformableRegistration7.cxx Examples/Registration/DeformableRegistration8.cxx Examples/Registration/DeformableRegistration9.cxx Examples/Registration/DeformationFieldInitialization.cxx Examples/Registration/DisplacementFieldInitialization.cxx Examples/Registration/LandmarkWarping2.cxx Examples/Registration/ThinPlateSplineWarp.cxx Examples/Registration/test/CMakeLists.txt Modules/Core/Mesh/include/itkWarpMeshFilter.h Modules/Core/Mesh/include/itkWarpMeshFilter.hxx Modules/Core/Mesh/test/itkWarpMeshFilterTest.cxx Modules/Filtering/DeformationField/CMakeLists.txt Modules/Filtering/DeformationField/include/itkDeformationFieldJacobianDeterminantFilter.h Modules/Filtering/DeformationField/include/itkDeformationFieldJacobianDeterminantFilter.hxx Modules/Filtering/DeformationField/include/itkDeformationFieldSource.h Modules/Filtering/DeformationField/include/itkDeformationFieldSource.hxx Modules/Filtering/DeformationField/include/itkDisplacementFieldJacobianDeterminantFilter.h Modules/Filtering/DeformationField/include/itkDisplacementFieldJacobianDeterminantFilter.hxx Modules/Filtering/DeformationField/include/itkInverseDeformationFieldImageFilter.h Modules/Filtering/DeformationField/include/itkInverseDeformationFieldImageFilter.hxx Modules/Filtering/DeformationField/include/itkIterativeInverseDeformationFieldImageFilter.h Modules/Filtering/DeformationField/include/itkIterativeInverseDeformationFieldImageFilter.hxx Modules/Filtering/DeformationField/itk-module.cmake Modules/Filtering/DeformationField/test/CMakeLists.txt Modules/Filtering/DeformationField/test/itkDeformationFieldJacobianDeterminantFilterTest.cxx Modules/Filtering/DeformationField/test/itkDeformationFieldSourceTest.cxx Modules/Filtering/DeformationField/test/itkDisplacementFieldJacobianDeterminantFilterTest.cxx Modules/Filtering/DeformationField/test/itkInverseDeformationFieldImageFilterTest.cxx Modules/Filtering/DeformationField/test/itkIterativeInverseDeformationFieldImageFilterTest.cxx Modules/Filtering/DisplacementField/CMakeLists.txt Modules/Filtering/DisplacementField/include/itkDeformationFieldJacobianDeterminantFilter.h Modules/Filtering/DisplacementField/include/itkDeformationFieldJacobianDeterminantFilter.hxx Modules/Filtering/DisplacementField/include/itkDisplacementFieldJacobianDeterminantFilter.h Modules/Filtering/DisplacementField/include/itkDisplacementFieldJacobianDeterminantFilter.hxx Modules/Filtering/DisplacementField/include/itkInverseDisplacementFieldImageFilter.h Modules/Filtering/DisplacementField/include/itkInverseDisplacementFieldImageFilter.hxx Modules/Filtering/DisplacementField/include/itkIterativeInverseDisplacementFieldImageFilter.h Modules/Filtering/DisplacementField/include/itkIterativeInverseDisplacementFieldImageFilter.hxx Modules/Filtering/DisplacementField/include/itkLandmarkDisplacementFieldSource.h Modules/Filtering/DisplacementField/include/itkLandmarkDisplacementFieldSource.hxx Modules/Filtering/DisplacementField/itk-module.cmake Modules/Filtering/DisplacementField/test/CMakeLists.txt Modules/Filtering/DisplacementField/test/itkDeformationFieldJacobianDeterminantFilterTest.cxx Modules/Filtering/DisplacementField/test/itkDisplacementFieldJacobianDeterminantFilterTest.cxx Modules/Filtering/DisplacementField/test/itkInverseDisplacementFieldImageFilterTest.cxx Modules/Filtering/DisplacementField/test/itkIterativeInverseDisplacementFieldImageFilterTest.cxx Modules/Filtering/DisplacementField/test/itkLandmarkDisplacementFieldSourceTest.cxx Modules/Filtering/ImageGrid/include/itkWarpImageFilter.h Modules/Filtering/ImageGrid/include/itkWarpImageFilter.hxx Modules/Filtering/ImageGrid/include/itkWarpVectorImageFilter.h Modules/Filtering/ImageGrid/include/itkWarpVectorImageFilter.hxx Modules/Filtering/ImageGrid/test/itkWarpImageFilterTest.cxx Modules/Filtering/ImageGrid/test/itkWarpImageFilterTest2.cxx Modules/Filtering/ImageGrid/test/itkWarpVectorImageFilterTest.cxx Modules/Nonunit/Deprecated/itk-module.cmake Modules/Nonunit/Deprecated/src/CMakeLists.txt Modules/Nonunit/IntegratedTest/itk-module.cmake Modules/Nonunit/Review/include/itkDiffeomorphicDemonsRegistrationFilter.h Modules/Nonunit/Review/include/itkDiffeomorphicDemonsRegistrationFilter.hxx Modules/Nonunit/Review/include/itkESMDemonsRegistrationFunction.h Modules/Nonunit/Review/include/itkESMDemonsRegistrationFunction.hxx Modules/Nonunit/Review/include/itkExponentialDeformationFieldImageFilter.h Modules/Nonunit/Review/include/itkExponentialDeformationFieldImageFilter.hxx Modules/Nonunit/Review/include/itkExponentialDisplacementFieldImageFilter.h Modules/Nonunit/Review/include/itkExponentialDisplacementFieldImageFilter.hxx Modules/Nonunit/Review/include/itkFastSymmetricForcesDemonsRegistrationFilter.h Modules/Nonunit/Review/include/itkFastSymmetricForcesDemonsRegistrationFilter.hxx Modules/Nonunit/Review/include/itkGridForwardWarpImageFilter.h Modules/Nonunit/Review/include/itkGridForwardWarpImageFilter.hxx Modules/Nonunit/Review/include/itkTransformToDeformationFieldSource.h Modules/Nonunit/Review/include/itkTransformToDeformationFieldSource.hxx Modules/Nonunit/Review/include/itkTransformToDisplacementFieldSource.h Modules/Nonunit/Review/include/itkTransformToDisplacementFieldSource.hxx Modules/Nonunit/Review/itk-module.cmake Modules/Nonunit/Review/src/CMakeLists.txt Modules/Nonunit/Review/test/CMakeLists.txt Modules/Nonunit/Review/test/itkDiffeomorphicDemonsRegistrationFilterTest.cxx Modules/Nonunit/Review/test/itkDiffeomorphicDemonsRegistrationFilterTest2.cxx Modules/Nonunit/Review/test/itkExponentialDeformationFieldImageFilterTest.cxx Modules/Nonunit/Review/test/itkExponentialDisplacementFieldImageFilterTest.cxx Modules/Nonunit/Review/test/itkFastSymmetricForcesDemonsRegistrationFilterTest.cxx Modules/Nonunit/Review/test/itkGridForwardWarpImageFilterTest.cxx Modules/Nonunit/Review/test/itkTransformToDeformationFieldSourceTest.cxx Modules/Nonunit/Review/test/itkTransformToDeformationFieldSourceTest1.cxx Modules/Nonunit/Review/test/itkTransformToDisplacementFieldSourceTest.cxx Modules/Nonunit/Review/test/itkTransformToDisplacementFieldSourceTest1.cxx Modules/Nonunit/Review/test/itkWarpHarmonicEnergyCalculatorTest.cxx Modules/Nonunit/Review/test/itkWarpJacobianDeterminantFilterTest.cxx Modules/Registration/Common/include/itkMeanSquareRegistrationFunction.h Modules/Registration/Common/include/itkMeanSquareRegistrationFunction.hxx Modules/Registration/Common/include/itkPDEDeformableRegistrationFunction.h Modules/Registration/FEM/include/itkFEMFiniteDifferenceFunctionLoad.h Modules/Registration/FEM/include/itkFEMFiniteDifferenceFunctionLoad.hxx Modules/Registration/FEM/include/itkFEMRegistrationFilter.h Modules/Registration/FEM/include/itkFEMRegistrationFilter.hxx Modules/Registration/FEM/include/itkMIRegistrationFunction.h Modules/Registration/FEM/include/itkMIRegistrationFunction.hxx Modules/Registration/FEM/include/itkNCCRegistrationFunction.h Modules/Registration/FEM/include/itkNCCRegistrationFunction.hxx Modules/Registration/FEM/test/itkMIRegistrationFunctionTest.cxx Modules/Registration/PDEDeformable/include/itkCurvatureRegistrationFilter.h Modules/Registration/PDEDeformable/include/itkCurvatureRegistrationFilter.hxx Modules/Registration/PDEDeformable/include/itkDemonsRegistrationFilter.h Modules/Registration/PDEDeformable/include/itkDemonsRegistrationFilter.hxx Modules/Registration/PDEDeformable/include/itkDemonsRegistrationFunction.h Modules/Registration/PDEDeformable/include/itkDemonsRegistrationFunction.hxx Modules/Registration/PDEDeformable/include/itkFastSymmetricForcesDemonsRegistrationFunction.h Modules/Registration/PDEDeformable/include/itkFastSymmetricForcesDemonsRegistrationFunction.hxx Modules/Registration/PDEDeformable/include/itkLevelSetMotionRegistrationFilter.h Modules/Registration/PDEDeformable/include/itkLevelSetMotionRegistrationFilter.hxx Modules/Registration/PDEDeformable/include/itkLevelSetMotionRegistrationFunction.h Modules/Registration/PDEDeformable/include/itkLevelSetMotionRegistrationFunction.hxx Modules/Registration/PDEDeformable/include/itkMultiResolutionPDEDeformableRegistration.h Modules/Registration/PDEDeformable/include/itkMultiResolutionPDEDeformableRegistration.hxx Modules/Registration/PDEDeformable/include/itkPDEDeformableRegistrationFilter.h Modules/Registration/PDEDeformable/include/itkPDEDeformableRegistrationFilter.hxx Modules/Registration/PDEDeformable/include/itkSymmetricForcesDemonsRegistrationFilter.h Modules/Registration/PDEDeformable/include/itkSymmetricForcesDemonsRegistrationFilter.hxx Modules/Registration/PDEDeformable/include/itkSymmetricForcesDemonsRegistrationFunction.h Modules/Registration/PDEDeformable/include/itkSymmetricForcesDemonsRegistrationFunction.hxx Modules/Registration/PDEDeformable/test/itkCurvatureRegistrationFilterTest.cxx Modules/Registration/PDEDeformable/test/itkDemonsRegistrationFilterTest.cxx Modules/Registration/PDEDeformable/test/itkLevelSetMotionRegistrationFilterTest.cxx Modules/Registration/PDEDeformable/test/itkMultiResolutionPDEDeformableRegistrationTest.cxx Modules/Registration/PDEDeformable/test/itkSymmetricForcesDemonsRegistrationFilterTest.cxx Utilities/KWStyle/ITKFiles.txt.in Wrapping/WrapITK/Libraries/CMakeLists.txt Wrapping/WrapITK/Libraries/ITKDeformationField/CMakeLists.txt Wrapping/WrapITK/Libraries/ITKDeformationField/itkDeformationFieldJacobianDeterminantFilter.wrap Wrapping/WrapITK/Libraries/ITKDeformationField/itkDisplacementFieldJacobianDeterminantFilter.wrap Wrapping/WrapITK/Libraries/ITKDisplacementField/CMakeLists.txt Wrapping/WrapITK/Libraries/ITKDisplacementField/itkDeformationFieldJacobianDeterminantFilter.wrap Wrapping/WrapITK/Libraries/ITKDisplacementField/itkDisplacementFieldJacobianDeterminantFilter.wrap Wrapping/WrapITK/Libraries/ITKReview/CMakeLists.txt Wrapping/WrapITK/Libraries/ITKReview/itkExponentialDeformationFieldImageFilter.wrap Wrapping/WrapITK/Libraries/ITKTestKernel/CMakeLists.txt
DeformationField
DisplacementField