├── .clang-format ├── .editorconfig ├── .github └── workflows │ ├── ElastixGitHubActions.yml │ └── pre-commit.yml ├── .gitignore ├── .gitmodules ├── .pre-commit-config.yaml ├── CMake ├── FindEigen3.cmake ├── FindOpenCL.cmake ├── elastixExportTarget.cmake ├── elastixOpenCL.cmake └── elastixVersion.cmake ├── CMakeLists.txt ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── CTestConfig.cmake ├── Common ├── CMakeLists.txt ├── CostFunctions │ ├── itkAdvancedImageToImageMetric.h │ ├── itkAdvancedImageToImageMetric.hxx │ ├── itkExponentialLimiterFunction.h │ ├── itkExponentialLimiterFunction.hxx │ ├── itkHardLimiterFunction.h │ ├── itkHardLimiterFunction.hxx │ ├── itkImageToImageMetricWithFeatures.h │ ├── itkImageToImageMetricWithFeatures.hxx │ ├── itkLimiterFunctionBase.h │ ├── itkMultiInputImageToImageMetricBase.h │ ├── itkMultiInputImageToImageMetricBase.hxx │ ├── itkParzenWindowHistogramImageToImageMetric.h │ ├── itkParzenWindowHistogramImageToImageMetric.hxx │ ├── itkScaledSingleValuedCostFunction.cxx │ ├── itkScaledSingleValuedCostFunction.h │ ├── itkSingleValuedPointSetToPointSetMetric.h │ ├── itkSingleValuedPointSetToPointSetMetric.hxx │ ├── itkTransformPenaltyTerm.h │ └── itkTransformPenaltyTerm.hxx ├── GTesting │ ├── CMakeLists.txt │ ├── elxConversionGTest.cxx │ ├── elxDefaultConstructGTest.cxx │ ├── elxElastixMainGTest.cxx │ ├── elxGTestUtilities.h │ ├── elxResampleInterpolatorGTest.cxx │ ├── elxResamplerGTest.cxx │ ├── elxTransformIOGTest.cxx │ ├── itkAdvancedImageToImageMetricGTest.cxx │ ├── itkAdvancedMeanSquaresImageToImageMetricGTest.cxx │ ├── itkComputeImageExtremaFilterGTest.cxx │ ├── itkCorrespondingPointsEuclideanDistancePointMetricGTest.cxx │ ├── itkImageFullSamplerGTest.cxx │ ├── itkImageGridSamplerGTest.cxx │ ├── itkImageRandomCoordinateSamplerGTest.cxx │ ├── itkImageRandomSamplerGTest.cxx │ ├── itkImageRandomSamplerSparseMaskGTest.cxx │ ├── itkImageSamplerGTest.cxx │ └── itkParameterMapInterfaceTest.cxx ├── ImageSamplers │ ├── itkImageFullSampler.h │ ├── itkImageFullSampler.hxx │ ├── itkImageGridSampler.h │ ├── itkImageGridSampler.hxx │ ├── itkImageRandomCoordinateSampler.h │ ├── itkImageRandomCoordinateSampler.hxx │ ├── itkImageRandomSampler.h │ ├── itkImageRandomSampler.hxx │ ├── itkImageRandomSamplerBase.h │ ├── itkImageRandomSamplerBase.hxx │ ├── itkImageRandomSamplerSparseMask.h │ ├── itkImageRandomSamplerSparseMask.hxx │ ├── itkImageSample.h │ ├── itkImageSamplerBase.h │ ├── itkImageSamplerBase.hxx │ ├── itkMultiInputImageRandomCoordinateSampler.h │ ├── itkMultiInputImageRandomCoordinateSampler.hxx │ ├── itkVectorContainerSource.h │ ├── itkVectorContainerSource.hxx │ ├── itkVectorDataContainer.h │ └── itkVectorDataContainer.hxx ├── LineSearchOptimizers │ ├── itkLineSearchOptimizer.cxx │ ├── itkLineSearchOptimizer.h │ ├── itkMoreThuenteLineSearchOptimizer.cxx │ └── itkMoreThuenteLineSearchOptimizer.h ├── MevisDicomTiff │ ├── CMakeLists.txt │ ├── itkMevisDicomTiffImageIO.cxx │ ├── itkMevisDicomTiffImageIO.h │ ├── itkMevisDicomTiffImageIOFactory.cxx │ ├── itkMevisDicomTiffImageIOFactory.h │ ├── itkUseMevisDicomTiff.cxx │ └── itkUseMevisDicomTiff.h ├── OpenCL │ ├── CMakeLists.txt │ ├── Factories │ │ ├── itkGPUAdvancedBSplineDeformableTransformFactory.h │ │ ├── itkGPUAdvancedBSplineDeformableTransformFactory.hxx │ │ ├── itkGPUAdvancedCombinationTransformFactory.h │ │ ├── itkGPUAdvancedCombinationTransformFactory.hxx │ │ ├── itkGPUAdvancedEuler2DTransformFactory.h │ │ ├── itkGPUAdvancedEuler2DTransformFactory.hxx │ │ ├── itkGPUAdvancedEuler3DTransformFactory.h │ │ ├── itkGPUAdvancedEuler3DTransformFactory.hxx │ │ ├── itkGPUAdvancedMatrixOffsetTransformBaseFactory.h │ │ ├── itkGPUAdvancedMatrixOffsetTransformBaseFactory.hxx │ │ ├── itkGPUAdvancedSimilarity2DTransformFactory.h │ │ ├── itkGPUAdvancedSimilarity2DTransformFactory.hxx │ │ ├── itkGPUAdvancedSimilarity3DTransformFactory.h │ │ ├── itkGPUAdvancedSimilarity3DTransformFactory.hxx │ │ ├── itkGPUAdvancedTranslationTransformFactory.h │ │ ├── itkGPUAdvancedTranslationTransformFactory.hxx │ │ ├── itkGPUAffineTransformFactory.h │ │ ├── itkGPUAffineTransformFactory.hxx │ │ ├── itkGPUBSplineDecompositionImageFilterFactory.h │ │ ├── itkGPUBSplineDecompositionImageFilterFactory.hxx │ │ ├── itkGPUBSplineInterpolateImageFunctionFactory.h │ │ ├── itkGPUBSplineInterpolateImageFunctionFactory.hxx │ │ ├── itkGPUBSplineTransformFactory.h │ │ ├── itkGPUBSplineTransformFactory.hxx │ │ ├── itkGPUCastImageFilterFactory.h │ │ ├── itkGPUCastImageFilterFactory.hxx │ │ ├── itkGPUCompositeTransformFactory.h │ │ ├── itkGPUCompositeTransformFactory.hxx │ │ ├── itkGPUEuler2DTransformFactory.h │ │ ├── itkGPUEuler2DTransformFactory.hxx │ │ ├── itkGPUEuler3DTransformFactory.h │ │ ├── itkGPUEuler3DTransformFactory.hxx │ │ ├── itkGPUIdentityTransformFactory.h │ │ ├── itkGPUIdentityTransformFactory.hxx │ │ ├── itkGPUImageFactory.h │ │ ├── itkGPUImageFactory.hxx │ │ ├── itkGPULinearInterpolateImageFunctionFactory.h │ │ ├── itkGPULinearInterpolateImageFunctionFactory.hxx │ │ ├── itkGPUNearestNeighborInterpolateImageFunctionFactory.h │ │ ├── itkGPUNearestNeighborInterpolateImageFunctionFactory.hxx │ │ ├── itkGPUObjectFactoryBase.h │ │ ├── itkGPUObjectFactoryBase.hxx │ │ ├── itkGPURecursiveGaussianImageFilterFactory.h │ │ ├── itkGPURecursiveGaussianImageFilterFactory.hxx │ │ ├── itkGPUResampleImageFilterFactory.h │ │ ├── itkGPUResampleImageFilterFactory.hxx │ │ ├── itkGPUShrinkImageFilterFactory.h │ │ ├── itkGPUShrinkImageFilterFactory.hxx │ │ ├── itkGPUSimilarity2DTransformFactory.h │ │ ├── itkGPUSimilarity2DTransformFactory.hxx │ │ ├── itkGPUSimilarity3DTransformFactory.h │ │ ├── itkGPUSimilarity3DTransformFactory.hxx │ │ ├── itkGPUSupportedImages.h │ │ ├── itkGPUTranslationTransformFactory.h │ │ └── itkGPUTranslationTransformFactory.hxx │ ├── Filters │ │ ├── itkGPUAdvancedBSplineDeformableTransform.h │ │ ├── itkGPUAdvancedBSplineDeformableTransform.hxx │ │ ├── itkGPUAdvancedCombinationTransform.h │ │ ├── itkGPUAdvancedCombinationTransformCopier.h │ │ ├── itkGPUAdvancedCombinationTransformCopier.hxx │ │ ├── itkGPUAdvancedEuler2DTransform.h │ │ ├── itkGPUAdvancedEuler3DTransform.h │ │ ├── itkGPUAdvancedMatrixOffsetTransformBase.h │ │ ├── itkGPUAdvancedSimilarity2DTransform.h │ │ ├── itkGPUAdvancedSimilarity3DTransform.h │ │ ├── itkGPUAdvancedTranslationTransform.h │ │ ├── itkGPUAffineTransform.h │ │ ├── itkGPUBSplineBaseTransform.h │ │ ├── itkGPUBSplineBaseTransform.hxx │ │ ├── itkGPUBSplineDecompositionImageFilter.h │ │ ├── itkGPUBSplineDecompositionImageFilter.hxx │ │ ├── itkGPUBSplineInterpolateImageFunction.h │ │ ├── itkGPUBSplineInterpolateImageFunction.hxx │ │ ├── itkGPUBSplineTransform.h │ │ ├── itkGPUBSplineTransform.hxx │ │ ├── itkGPUCastImageFilter.h │ │ ├── itkGPUCastImageFilter.hxx │ │ ├── itkGPUCompositeTransform.h │ │ ├── itkGPUCompositeTransformBase.h │ │ ├── itkGPUCompositeTransformBase.hxx │ │ ├── itkGPUCompositeTransformCopier.h │ │ ├── itkGPUCompositeTransformCopier.hxx │ │ ├── itkGPUEuler2DTransform.h │ │ ├── itkGPUEuler3DTransform.h │ │ ├── itkGPUIdentityTransform.h │ │ ├── itkGPUIdentityTransform.hxx │ │ ├── itkGPUImageBase.h │ │ ├── itkGPUImageFunction.h │ │ ├── itkGPUInterpolateImageFunction.h │ │ ├── itkGPUInterpolateImageFunction.hxx │ │ ├── itkGPUInterpolatorBase.cxx │ │ ├── itkGPUInterpolatorBase.h │ │ ├── itkGPUInterpolatorCopier.h │ │ ├── itkGPUInterpolatorCopier.hxx │ │ ├── itkGPULinearInterpolateImageFunction.h │ │ ├── itkGPULinearInterpolateImageFunction.hxx │ │ ├── itkGPUMath.h │ │ ├── itkGPUMatrixOffsetTransformBase.h │ │ ├── itkGPUMatrixOffsetTransformBase.hxx │ │ ├── itkGPUNearestNeighborInterpolateImageFunction.h │ │ ├── itkGPUNearestNeighborInterpolateImageFunction.hxx │ │ ├── itkGPURecursiveGaussianImageFilter.h │ │ ├── itkGPURecursiveGaussianImageFilter.hxx │ │ ├── itkGPUResampleImageFilter.h │ │ ├── itkGPUResampleImageFilter.hxx │ │ ├── itkGPUShrinkImageFilter.h │ │ ├── itkGPUShrinkImageFilter.hxx │ │ ├── itkGPUSimilarity2DTransform.h │ │ ├── itkGPUSimilarity3DTransform.h │ │ ├── itkGPUTransformBase.cxx │ │ ├── itkGPUTransformBase.h │ │ ├── itkGPUTransformCopier.h │ │ ├── itkGPUTransformCopier.hxx │ │ ├── itkGPUTranslationTransform.h │ │ ├── itkGPUTranslationTransformBase.h │ │ └── itkGPUTranslationTransformBase.hxx │ ├── ITKimprovements │ │ ├── itkGPUDataManager.cxx │ │ ├── itkGPUDataManager.h │ │ ├── itkGPUFunctorBase.h │ │ ├── itkGPUImage.h │ │ ├── itkGPUImage.hxx │ │ ├── itkGPUImageDataManager.h │ │ ├── itkGPUImageDataManager.hxx │ │ ├── itkGPUImageToImageFilter.h │ │ ├── itkGPUImageToImageFilter.hxx │ │ ├── itkGPUInPlaceImageFilter.h │ │ ├── itkGPUInPlaceImageFilter.hxx │ │ ├── itkGPUUnaryFunctorImageFilter.h │ │ ├── itkGPUUnaryFunctorImageFilter.hxx │ │ ├── itkOpenCL.h │ │ ├── itkOpenCLBuffer.cxx │ │ ├── itkOpenCLBuffer.h │ │ ├── itkOpenCLCommandQueue.cxx │ │ ├── itkOpenCLCommandQueue.h │ │ ├── itkOpenCLContext.cxx │ │ ├── itkOpenCLContext.h │ │ ├── itkOpenCLContextScopeGuard.h │ │ ├── itkOpenCLDevice.cxx │ │ ├── itkOpenCLDevice.h │ │ ├── itkOpenCLEvent.cxx │ │ ├── itkOpenCLEvent.h │ │ ├── itkOpenCLEventList.cxx │ │ ├── itkOpenCLEventList.h │ │ ├── itkOpenCLExport.h │ │ ├── itkOpenCLExtension.h │ │ ├── itkOpenCLGlobal.h │ │ ├── itkOpenCLImage.cxx │ │ ├── itkOpenCLImage.h │ │ ├── itkOpenCLImageFormat.cxx │ │ ├── itkOpenCLImageFormat.h │ │ ├── itkOpenCLKernel.cxx │ │ ├── itkOpenCLKernel.h │ │ ├── itkOpenCLKernelManager.cxx │ │ ├── itkOpenCLKernelManager.h │ │ ├── itkOpenCLKernelToImageBridge.h │ │ ├── itkOpenCLKernelToImageBridge.hxx │ │ ├── itkOpenCLKernels.h.in │ │ ├── itkOpenCLLogger.cxx │ │ ├── itkOpenCLLogger.h │ │ ├── itkOpenCLMacro.h │ │ ├── itkOpenCLMemoryObject.cxx │ │ ├── itkOpenCLMemoryObject.h │ │ ├── itkOpenCLOstreamSupport.h │ │ ├── itkOpenCLPlatform.cxx │ │ ├── itkOpenCLPlatform.h │ │ ├── itkOpenCLProfilingTimeProbe.cxx │ │ ├── itkOpenCLProfilingTimeProbe.h │ │ ├── itkOpenCLProgram.cxx │ │ ├── itkOpenCLProgram.h │ │ ├── itkOpenCLSampler.cxx │ │ ├── itkOpenCLSampler.h │ │ ├── itkOpenCLSize.cxx │ │ ├── itkOpenCLSize.h │ │ ├── itkOpenCLStringUtils.cxx │ │ ├── itkOpenCLStringUtils.h │ │ ├── itkOpenCLUserEvent.cxx │ │ ├── itkOpenCLUserEvent.h │ │ ├── itkOpenCLUtil.cxx │ │ ├── itkOpenCLUtil.h │ │ ├── itkOpenCLVector.h │ │ ├── itkOpenCLVector.hxx │ │ ├── itkOpenCLVectorBase.cxx │ │ └── itkOpenCLVectorBase.h │ ├── Kernels │ │ ├── GPUBSplineDecompositionImageFilter.cl │ │ ├── GPUBSplineInterpolateImageFunction.cl │ │ ├── GPUBSplineTransform.cl │ │ ├── GPUCastImageFilter.cl │ │ ├── GPUIdentityTransform.cl │ │ ├── GPUImageBase.cl │ │ ├── GPUImageFunction.cl │ │ ├── GPULinearInterpolateImageFunction.cl │ │ ├── GPUMath.cl │ │ ├── GPUMatrixOffsetTransformBase.cl │ │ ├── GPUNearestNeighborInterpolateImageFunction.cl │ │ ├── GPURecursiveGaussianImageFilter.cl │ │ ├── GPUResampleImageFilter.cl │ │ ├── GPUShrinkImageFilter.cl │ │ └── GPUTranslationTransformBase.cl │ ├── itkGPUKernelManagerHelperFunctions.h │ ├── itkOpenCLSetup.cxx │ └── itkOpenCLSetup.h ├── ParameterFileParser │ ├── CMakeLists.txt │ ├── itkParameterFileParser.cxx │ ├── itkParameterFileParser.h │ ├── itkParameterMapInterface.cxx │ ├── itkParameterMapInterface.h │ └── tomlplusplus │ │ └── toml.hpp ├── Transforms │ ├── elxTransformFactoryRegistration.cxx │ ├── elxTransformFactoryRegistration.h │ ├── elxTransformIO.cxx │ ├── elxTransformIO.h │ ├── itkAdvancedBSplineDeformableTransform.h │ ├── itkAdvancedBSplineDeformableTransform.hxx │ ├── itkAdvancedBSplineDeformableTransformBase.h │ ├── itkAdvancedBSplineDeformableTransformBase.hxx │ ├── itkAdvancedCombinationTransform.h │ ├── itkAdvancedCombinationTransform.hxx │ ├── itkAdvancedEuler3DTransform.h │ ├── itkAdvancedEuler3DTransform.hxx │ ├── itkAdvancedIdentityTransform.h │ ├── itkAdvancedImageMomentsCalculator.h │ ├── itkAdvancedImageMomentsCalculator.hxx │ ├── itkAdvancedMatrixOffsetTransformBase.h │ ├── itkAdvancedMatrixOffsetTransformBase.hxx │ ├── itkAdvancedRigid2DTransform.h │ ├── itkAdvancedRigid2DTransform.hxx │ ├── itkAdvancedRigid3DTransform.h │ ├── itkAdvancedRigid3DTransform.hxx │ ├── itkAdvancedSimilarity2DTransform.h │ ├── itkAdvancedSimilarity2DTransform.hxx │ ├── itkAdvancedSimilarity3DTransform.h │ ├── itkAdvancedSimilarity3DTransform.hxx │ ├── itkAdvancedTransform.h │ ├── itkAdvancedTransform.hxx │ ├── itkAdvancedTranslationTransform.h │ ├── itkAdvancedTranslationTransform.hxx │ ├── itkAdvancedVersorRigid3DTransform.h │ ├── itkAdvancedVersorRigid3DTransform.hxx │ ├── itkAdvancedVersorTransform.h │ ├── itkAdvancedVersorTransform.hxx │ ├── itkBSplineDerivativeKernelFunction2.h │ ├── itkBSplineInterpolationDerivativeWeightFunction.h │ ├── itkBSplineInterpolationDerivativeWeightFunction.hxx │ ├── itkBSplineInterpolationSecondOrderDerivativeWeightFunction.h │ ├── itkBSplineInterpolationSecondOrderDerivativeWeightFunction.hxx │ ├── itkBSplineInterpolationWeightFunction2.h │ ├── itkBSplineInterpolationWeightFunction2.hxx │ ├── itkBSplineInterpolationWeightFunctionBase.h │ ├── itkBSplineInterpolationWeightFunctionBase.hxx │ ├── itkBSplineKernelFunction2.h │ ├── itkBSplineSecondOrderDerivativeKernelFunction2.h │ ├── itkCyclicBSplineDeformableTransform.h │ ├── itkCyclicBSplineDeformableTransform.hxx │ ├── itkCyclicGridScheduleComputer.h │ ├── itkCyclicGridScheduleComputer.hxx │ ├── itkEulerTransform.h │ ├── itkGridScheduleComputer.h │ ├── itkGridScheduleComputer.hxx │ ├── itkKernelFunctionBase2.h │ ├── itkRecursiveBSplineTransform.h │ ├── itkRecursiveBSplineTransform.hxx │ ├── itkRecursiveBSplineTransformImplementation.h │ ├── itkStackTransform.h │ ├── itkStackTransform.hxx │ ├── itkTransformToDeterminantOfSpatialJacobianSource.h │ ├── itkTransformToDeterminantOfSpatialJacobianSource.hxx │ ├── itkTransformToSpatialJacobianSource.h │ ├── itkTransformToSpatialJacobianSource.hxx │ ├── itkUpsampleBSplineParametersFilter.h │ └── itkUpsampleBSplineParametersFilter.hxx ├── TypeList.h ├── elxDefaultConstruct.h ├── elxMaskHasSameImageDomain.h ├── elxSupportedImageDimensions.h ├── itkAdvancedLinearInterpolateImageFunction.h ├── itkAdvancedLinearInterpolateImageFunction.hxx ├── itkAdvancedRayCastInterpolateImageFunction.h ├── itkAdvancedRayCastInterpolateImageFunction.hxx ├── itkComputeDisplacementDistribution.h ├── itkComputeDisplacementDistribution.hxx ├── itkComputeImageExtremaFilter.h ├── itkComputeImageExtremaFilter.hxx ├── itkComputeJacobianTerms.h ├── itkComputeJacobianTerms.hxx ├── itkComputePreconditionerUsingDisplacementDistribution.h ├── itkComputePreconditionerUsingDisplacementDistribution.hxx ├── itkErodeMaskImageFilter.h ├── itkErodeMaskImageFilter.hxx ├── itkGenericMultiResolutionPyramidImageFilter.h ├── itkGenericMultiResolutionPyramidImageFilter.hxx ├── itkImageFileCastWriter.h ├── itkImageFileCastWriter.hxx ├── itkMeshFileReaderBase.h ├── itkMeshFileReaderBase.hxx ├── itkMultiOrderBSplineDecompositionImageFilter.h ├── itkMultiOrderBSplineDecompositionImageFilter.hxx ├── itkMultiResolutionGaussianSmoothingPyramidImageFilter.h ├── itkMultiResolutionGaussianSmoothingPyramidImageFilter.hxx ├── itkMultiResolutionImageRegistrationMethod2.h ├── itkMultiResolutionImageRegistrationMethod2.hxx ├── itkMultiResolutionShrinkPyramidImageFilter.h ├── itkMultiResolutionShrinkPyramidImageFilter.hxx ├── itkNDImageBase.h ├── itkNDImageTemplate.h ├── itkNDImageTemplate.hxx ├── itkParabolicErodeDilateImageFilter.h ├── itkParabolicErodeDilateImageFilter.hxx ├── itkParabolicErodeImageFilter.h ├── itkParabolicMorphUtils.h ├── itkRecursiveBSplineInterpolationWeightFunction.h ├── itkRecursiveBSplineInterpolationWeightFunction.hxx ├── itkReducedDimensionBSplineInterpolateImageFunction.h ├── itkReducedDimensionBSplineInterpolateImageFunction.hxx ├── itkScaledSingleValuedNonLinearOptimizer.cxx ├── itkScaledSingleValuedNonLinearOptimizer.h ├── itkTransformixInputPointFileReader.h └── itkTransformixInputPointFileReader.hxx ├── Components ├── CMakeLists.txt ├── FixedImagePyramids │ ├── FixedGenericPyramid │ │ ├── CMakeLists.txt │ │ ├── elxFixedGenericPyramid.cxx │ │ ├── elxFixedGenericPyramid.h │ │ └── elxFixedGenericPyramid.hxx │ ├── FixedRecursivePyramid │ │ ├── CMakeLists.txt │ │ ├── elxFixedRecursivePyramid.cxx │ │ ├── elxFixedRecursivePyramid.h │ │ └── elxFixedRecursivePyramid.hxx │ ├── FixedShrinkingPyramid │ │ ├── CMakeLists.txt │ │ ├── elxFixedShrinkingPyramid.cxx │ │ ├── elxFixedShrinkingPyramid.h │ │ └── elxFixedShrinkingPyramid.hxx │ ├── FixedSmoothingPyramid │ │ ├── CMakeLists.txt │ │ ├── elxFixedSmoothingPyramid.cxx │ │ ├── elxFixedSmoothingPyramid.h │ │ └── elxFixedSmoothingPyramid.hxx │ └── OpenCLFixedGenericPyramid │ │ ├── CMakeLists.txt │ │ ├── elxOpenCLFixedGenericPyramid.cxx │ │ ├── elxOpenCLFixedGenericPyramid.h │ │ └── elxOpenCLFixedGenericPyramid.hxx ├── ImageSamplers │ ├── Full │ │ ├── CMakeLists.txt │ │ ├── elxFullSampler.cxx │ │ ├── elxFullSampler.h │ │ └── elxFullSampler.hxx │ ├── Grid │ │ ├── CMakeLists.txt │ │ ├── elxGridSampler.cxx │ │ ├── elxGridSampler.h │ │ └── elxGridSampler.hxx │ ├── MultInputRandomCoordinate │ │ ├── CMakeLists.txt │ │ ├── elxMultiInputRandomCoordinateSampler.cxx │ │ ├── elxMultiInputRandomCoordinateSampler.h │ │ └── elxMultiInputRandomCoordinateSampler.hxx │ ├── Random │ │ ├── CMakeLists.txt │ │ ├── elxRandomSampler.cxx │ │ ├── elxRandomSampler.h │ │ └── elxRandomSampler.hxx │ ├── RandomCoordinate │ │ ├── CMakeLists.txt │ │ ├── elxRandomCoordinateSampler.cxx │ │ ├── elxRandomCoordinateSampler.h │ │ └── elxRandomCoordinateSampler.hxx │ └── RandomSparseMask │ │ ├── CMakeLists.txt │ │ ├── elxRandomSamplerSparseMask.cxx │ │ ├── elxRandomSamplerSparseMask.h │ │ └── elxRandomSamplerSparseMask.hxx ├── Interpolators │ ├── BSplineInterpolator │ │ ├── CMakeLists.txt │ │ ├── elxBSplineInterpolator.cxx │ │ ├── elxBSplineInterpolator.h │ │ └── elxBSplineInterpolator.hxx │ ├── BSplineInterpolatorFloat │ │ ├── CMakeLists.txt │ │ ├── elxBSplineInterpolatorFloat.cxx │ │ ├── elxBSplineInterpolatorFloat.h │ │ └── elxBSplineInterpolatorFloat.hxx │ ├── LinearInterpolator │ │ ├── CMakeLists.txt │ │ ├── elxLinearInterpolator.cxx │ │ ├── elxLinearInterpolator.h │ │ └── elxLinearInterpolator.hxx │ ├── NearestNeighborInterpolator │ │ ├── CMakeLists.txt │ │ ├── elxNearestNeighborInterpolator.cxx │ │ ├── elxNearestNeighborInterpolator.h │ │ └── elxNearestNeighborInterpolator.hxx │ ├── RayCastInterpolator │ │ ├── CMakeLists.txt │ │ ├── elxRayCastInterpolator.cxx │ │ ├── elxRayCastInterpolator.h │ │ └── elxRayCastInterpolator.hxx │ └── ReducedDimensionBSplineInterpolator │ │ ├── CMakeLists.txt │ │ ├── elxReducedDimensionBSplineInterpolator.cxx │ │ ├── elxReducedDimensionBSplineInterpolator.h │ │ └── elxReducedDimensionBSplineInterpolator.hxx ├── Metrics │ ├── AdvancedKappaStatistic │ │ ├── CMakeLists.txt │ │ ├── elxAdvancedKappaStatisticMetric.cxx │ │ ├── elxAdvancedKappaStatisticMetric.h │ │ ├── elxAdvancedKappaStatisticMetric.hxx │ │ ├── itkAdvancedKappaStatisticImageToImageMetric.h │ │ └── itkAdvancedKappaStatisticImageToImageMetric.hxx │ ├── AdvancedMattesMutualInformation │ │ ├── CMakeLists.txt │ │ ├── elxAdvancedMattesMutualInformationMetric.cxx │ │ ├── elxAdvancedMattesMutualInformationMetric.h │ │ ├── elxAdvancedMattesMutualInformationMetric.hxx │ │ ├── itkParzenWindowMutualInformationImageToImageMetric.h │ │ └── itkParzenWindowMutualInformationImageToImageMetric.hxx │ ├── AdvancedMeanSquares │ │ ├── CMakeLists.txt │ │ ├── elxAdvancedMeanSquaresMetric.cxx │ │ ├── elxAdvancedMeanSquaresMetric.h │ │ ├── elxAdvancedMeanSquaresMetric.hxx │ │ ├── itkAdvancedMeanSquaresImageToImageMetric.h │ │ └── itkAdvancedMeanSquaresImageToImageMetric.hxx │ ├── AdvancedNormalizedCorrelation │ │ ├── CMakeLists.txt │ │ ├── elxAdvancedNormalizedCorrelationMetric.cxx │ │ ├── elxAdvancedNormalizedCorrelationMetric.h │ │ ├── elxAdvancedNormalizedCorrelationMetric.hxx │ │ ├── itkAdvancedNormalizedCorrelationImageToImageMetric.h │ │ └── itkAdvancedNormalizedCorrelationImageToImageMetric.hxx │ ├── BendingEnergyPenalty │ │ ├── CMakeLists.txt │ │ ├── elxTransformBendingEnergyPenaltyTerm.cxx │ │ ├── elxTransformBendingEnergyPenaltyTerm.h │ │ ├── elxTransformBendingEnergyPenaltyTerm.hxx │ │ ├── itkTransformBendingEnergyPenaltyTerm.h │ │ └── itkTransformBendingEnergyPenaltyTerm.hxx │ ├── CorrespondingPointsEuclideanDistanceMetric │ │ ├── CMakeLists.txt │ │ ├── elxCorrespondingPointsEuclideanDistanceMetric.cxx │ │ ├── elxCorrespondingPointsEuclideanDistanceMetric.h │ │ ├── elxCorrespondingPointsEuclideanDistanceMetric.hxx │ │ ├── itkCorrespondingPointsEuclideanDistancePointMetric.h │ │ └── itkCorrespondingPointsEuclideanDistancePointMetric.hxx │ ├── DisplacementMagnitudePenalty │ │ ├── CMakeLists.txt │ │ ├── elxDisplacementMagnitudePenalty.cxx │ │ ├── elxDisplacementMagnitudePenalty.h │ │ ├── elxDisplacementMagnitudePenalty.hxx │ │ ├── itkDisplacementMagnitudePenaltyTerm.h │ │ └── itkDisplacementMagnitudePenaltyTerm.hxx │ ├── DistancePreservingRigidityPenalty │ │ ├── CMakeLists.txt │ │ ├── elxDistancePreservingRigidityPenaltyTerm.cxx │ │ ├── elxDistancePreservingRigidityPenaltyTerm.h │ │ ├── elxDistancePreservingRigidityPenaltyTerm.hxx │ │ ├── itkDistancePreservingRigidityPenaltyTerm.h │ │ └── itkDistancePreservingRigidityPenaltyTerm.hxx │ ├── GradientDifference │ │ ├── CMakeLists.txt │ │ ├── elxGradientDifferenceMetric.cxx │ │ ├── elxGradientDifferenceMetric.h │ │ ├── elxGradientDifferenceMetric.hxx │ │ ├── itkGradientDifferenceImageToImageMetric2.h │ │ └── itkGradientDifferenceImageToImageMetric2.hxx │ ├── KNNGraphAlphaMutualInformation │ │ ├── CMakeLists.txt │ │ ├── KNN │ │ │ ├── CMakeLists.txt │ │ │ ├── ann_1.1 │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── Copyright.txt │ │ │ │ ├── License.txt │ │ │ │ ├── ReadMe.txt │ │ │ │ ├── include │ │ │ │ │ └── ANN │ │ │ │ │ │ ├── ANN.h.in │ │ │ │ │ │ ├── ANNperf.h │ │ │ │ │ │ └── ANNx.h │ │ │ │ └── src │ │ │ │ │ ├── ANN.cpp │ │ │ │ │ ├── bd_fix_rad_search.cpp │ │ │ │ │ ├── bd_pr_search.cpp │ │ │ │ │ ├── bd_search.cpp │ │ │ │ │ ├── bd_tree.cpp │ │ │ │ │ ├── bd_tree.h │ │ │ │ │ ├── brute.cpp │ │ │ │ │ ├── kd_dump.cpp │ │ │ │ │ ├── kd_fix_rad_search.cpp │ │ │ │ │ ├── kd_fix_rad_search.h │ │ │ │ │ ├── kd_pr_search.cpp │ │ │ │ │ ├── kd_pr_search.h │ │ │ │ │ ├── kd_search.cpp │ │ │ │ │ ├── kd_search.h │ │ │ │ │ ├── kd_split.cpp │ │ │ │ │ ├── kd_split.h │ │ │ │ │ ├── kd_tree.cpp │ │ │ │ │ ├── kd_tree.h │ │ │ │ │ ├── kd_util.cpp │ │ │ │ │ ├── kd_util.h │ │ │ │ │ ├── perf.cpp │ │ │ │ │ ├── pr_queue.h │ │ │ │ │ └── pr_queue_k.h │ │ │ ├── itkANNBinaryTreeCreator.cxx │ │ │ ├── itkANNBinaryTreeCreator.h │ │ │ ├── itkANNBruteForceTree.h │ │ │ ├── itkANNBruteForceTree.hxx │ │ │ ├── itkANNFixedRadiusTreeSearch.h │ │ │ ├── itkANNFixedRadiusTreeSearch.hxx │ │ │ ├── itkANNPriorityTreeSearch.h │ │ │ ├── itkANNPriorityTreeSearch.hxx │ │ │ ├── itkANNStandardTreeSearch.h │ │ │ ├── itkANNStandardTreeSearch.hxx │ │ │ ├── itkANNbdTree.h │ │ │ ├── itkANNbdTree.hxx │ │ │ ├── itkANNkDTree.h │ │ │ ├── itkANNkDTree.hxx │ │ │ ├── itkBinaryANNTreeBase.h │ │ │ ├── itkBinaryANNTreeBase.hxx │ │ │ ├── itkBinaryANNTreeSearchBase.h │ │ │ ├── itkBinaryANNTreeSearchBase.hxx │ │ │ ├── itkBinaryTreeBase.h │ │ │ ├── itkBinaryTreeBase.hxx │ │ │ ├── itkBinaryTreeSearchBase.h │ │ │ ├── itkBinaryTreeSearchBase.hxx │ │ │ ├── itkListSampleCArray.h │ │ │ └── itkListSampleCArray.hxx │ │ ├── elxKNNGraphAlphaMutualInformationMetric.cxx │ │ ├── elxKNNGraphAlphaMutualInformationMetric.h │ │ ├── elxKNNGraphAlphaMutualInformationMetric.hxx │ │ ├── itkKNNGraphAlphaMutualInformationImageToImageMetric.h │ │ └── itkKNNGraphAlphaMutualInformationImageToImageMetric.hxx │ ├── MissingStructurePenalty │ │ ├── CMakeLists.txt │ │ ├── elxMissingStructurePenalty.cxx │ │ ├── elxMissingStructurePenalty.h │ │ ├── elxMissingStructurePenalty.hxx │ │ ├── itkMissingStructurePenalty.h │ │ ├── itkMissingStructurePenalty.hxx │ │ └── vnl_adjugate_fixed.h │ ├── NormalizedGradientCorrelation │ │ ├── CMakeLists.txt │ │ ├── elxNormalizedGradientCorrelationMetric.cxx │ │ ├── elxNormalizedGradientCorrelationMetric.h │ │ ├── elxNormalizedGradientCorrelationMetric.hxx │ │ ├── itkNormalizedGradientCorrelationImageToImageMetric.h │ │ └── itkNormalizedGradientCorrelationImageToImageMetric.hxx │ ├── NormalizedMutualInformation │ │ ├── CMakeLists.txt │ │ ├── elxNormalizedMutualInformationMetric.cxx │ │ ├── elxNormalizedMutualInformationMetric.h │ │ ├── elxNormalizedMutualInformationMetric.hxx │ │ ├── itkParzenWindowNormalizedMutualInformationImageToImageMetric.h │ │ └── itkParzenWindowNormalizedMutualInformationImageToImageMetric.hxx │ ├── PCAMetric │ │ ├── CMakeLists.txt │ │ ├── elxPCAMetric.cxx │ │ ├── elxPCAMetric.h │ │ ├── elxPCAMetric.hxx │ │ ├── itkPCAMetric.h │ │ └── itkPCAMetric.hxx │ ├── PCAMetric2 │ │ ├── CMakeLists.txt │ │ ├── elxPCAMetric2.cxx │ │ ├── elxPCAMetric2.h │ │ ├── elxPCAMetric2.hxx │ │ ├── itkPCAMetric2.h │ │ └── itkPCAMetric2.hxx │ ├── PatternIntensity │ │ ├── CMakeLists.txt │ │ ├── elxPatternIntensityMetric.cxx │ │ ├── elxPatternIntensityMetric.h │ │ ├── elxPatternIntensityMetric.hxx │ │ ├── itkPatternIntensityImageToImageMetric.h │ │ └── itkPatternIntensityImageToImageMetric.hxx │ ├── PolydataDummyPenalty │ │ ├── CMakeLists.txt │ │ ├── elxPolydataDummyPenalty.cxx │ │ ├── elxPolydataDummyPenalty.h │ │ ├── elxPolydataDummyPenalty.hxx │ │ ├── itkPolydataDummyPenalty.h │ │ └── itkPolydataDummyPenalty.hxx │ ├── RigidityPenalty │ │ ├── CMakeLists.txt │ │ ├── elxTransformRigidityPenaltyTerm.cxx │ │ ├── elxTransformRigidityPenaltyTerm.h │ │ ├── elxTransformRigidityPenaltyTerm.hxx │ │ ├── itkTransformRigidityPenaltyTerm.h │ │ └── itkTransformRigidityPenaltyTerm.hxx │ ├── StatisticalShapePenalty │ │ ├── CMakeLists.txt │ │ ├── elxStatisticalShapePenalty.cxx │ │ ├── elxStatisticalShapePenalty.h │ │ ├── elxStatisticalShapePenalty.hxx │ │ ├── itkStatisticalShapePointPenalty.h │ │ └── itkStatisticalShapePointPenalty.hxx │ ├── SumOfPairwiseCorrelationsMetric │ │ ├── CMakeLists.txt │ │ ├── elxSumOfPairwiseCorrelationCoefficientsMetric.cxx │ │ ├── elxSumOfPairwiseCorrelationCoefficientsMetric.h │ │ ├── elxSumOfPairwiseCorrelationCoefficientsMetric.hxx │ │ ├── itkSumOfPairwiseCorrelationCoefficientsMetric.h │ │ └── itkSumOfPairwiseCorrelationCoefficientsMetric.hxx │ ├── SumSquaredTissueVolumeDifferenceMetric │ │ ├── CMakeLists.txt │ │ ├── elxSumSquaredTissueVolumeDifferenceMetric.cxx │ │ ├── elxSumSquaredTissueVolumeDifferenceMetric.h │ │ ├── elxSumSquaredTissueVolumeDifferenceMetric.hxx │ │ ├── itkSumSquaredTissueVolumeDifferenceImageToImageMetric.h │ │ └── itkSumSquaredTissueVolumeDifferenceImageToImageMetric.hxx │ └── VarianceOverLastDimension │ │ ├── CMakeLists.txt │ │ ├── elxVarianceOverLastDimensionMetric.cxx │ │ ├── elxVarianceOverLastDimensionMetric.h │ │ ├── elxVarianceOverLastDimensionMetric.hxx │ │ ├── itkVarianceOverLastDimensionImageMetric.h │ │ └── itkVarianceOverLastDimensionImageMetric.hxx ├── MovingImagePyramids │ ├── MovingGenericPyramid │ │ ├── CMakeLists.txt │ │ ├── elxMovingGenericPyramid.cxx │ │ ├── elxMovingGenericPyramid.h │ │ └── elxMovingGenericPyramid.hxx │ ├── MovingRecursivePyramid │ │ ├── CMakeLists.txt │ │ ├── elxMovingRecursivePyramid.cxx │ │ ├── elxMovingRecursivePyramid.h │ │ └── elxMovingRecursivePyramid.hxx │ ├── MovingShrinkingPyramid │ │ ├── CMakeLists.txt │ │ ├── elxMovingShrinkingPyramid.cxx │ │ ├── elxMovingShrinkingPyramid.h │ │ └── elxMovingShrinkingPyramid.hxx │ ├── MovingSmoothingPyramid │ │ ├── CMakeLists.txt │ │ ├── elxMovingSmoothingPyramid.cxx │ │ ├── elxMovingSmoothingPyramid.h │ │ └── elxMovingSmoothingPyramid.hxx │ └── OpenCLMovingGenericPyramid │ │ ├── CMakeLists.txt │ │ ├── elxOpenCLMovingGenericPyramid.cxx │ │ ├── elxOpenCLMovingGenericPyramid.h │ │ └── elxOpenCLMovingGenericPyramid.hxx ├── Optimizers │ ├── AdaGrad │ │ ├── CMakeLists.txt │ │ ├── elxAdaGrad.cxx │ │ ├── elxAdaGrad.h │ │ ├── elxAdaGrad.hxx │ │ ├── itkAdaptiveStepsizeOptimizer.cxx │ │ └── itkAdaptiveStepsizeOptimizer.h │ ├── AdaptiveStochasticGradientDescent │ │ ├── CMakeLists.txt │ │ ├── elxAdaptiveStochasticGradientDescent.cxx │ │ ├── elxAdaptiveStochasticGradientDescent.h │ │ ├── elxAdaptiveStochasticGradientDescent.hxx │ │ ├── itkAdaptiveStochasticGradientDescentOptimizer.cxx │ │ └── itkAdaptiveStochasticGradientDescentOptimizer.h │ ├── AdaptiveStochasticLBFGS │ │ ├── CMakeLists.txt │ │ ├── elxAdaptiveStochasticLBFGS.cxx │ │ ├── elxAdaptiveStochasticLBFGS.h │ │ ├── elxAdaptiveStochasticLBFGS.hxx │ │ ├── itkAdaptiveStochasticLBFGSOptimizer.cxx │ │ └── itkAdaptiveStochasticLBFGSOptimizer.h │ ├── AdaptiveStochasticVarianceReducedGradient │ │ ├── CMakeLists.txt │ │ ├── elxAdaptiveStochasticVarianceReducedGradient.cxx │ │ ├── elxAdaptiveStochasticVarianceReducedGradient.h │ │ ├── elxAdaptiveStochasticVarianceReducedGradient.hxx │ │ ├── itkAdaptiveStochasticVarianceReducedGradientOptimizer.cxx │ │ ├── itkAdaptiveStochasticVarianceReducedGradientOptimizer.h │ │ ├── itkStandardStochasticVarianceReducedGradientDescentOptimizer.cxx │ │ ├── itkStandardStochasticVarianceReducedGradientDescentOptimizer.h │ │ ├── itkStochasticVarianceReducedGradientDescentOptimizer.cxx │ │ └── itkStochasticVarianceReducedGradientDescentOptimizer.h │ ├── CMAEvolutionStrategy │ │ ├── CMakeLists.txt │ │ ├── elxCMAEvolutionStrategy.cxx │ │ ├── elxCMAEvolutionStrategy.h │ │ ├── elxCMAEvolutionStrategy.hxx │ │ ├── itkCMAEvolutionStrategyOptimizer.cxx │ │ └── itkCMAEvolutionStrategyOptimizer.h │ ├── ConjugateGradient │ │ ├── CMakeLists.txt │ │ ├── elxConjugateGradient.cxx │ │ ├── elxConjugateGradient.h │ │ ├── elxConjugateGradient.hxx │ │ ├── itkGenericConjugateGradientOptimizer.cxx │ │ └── itkGenericConjugateGradientOptimizer.h │ ├── ConjugateGradientFRPR │ │ ├── CMakeLists.txt │ │ ├── elxConjugateGradientFRPR.cxx │ │ ├── elxConjugateGradientFRPR.h │ │ └── elxConjugateGradientFRPR.hxx │ ├── FiniteDifferenceGradientDescent │ │ ├── CMakeLists.txt │ │ ├── elxFiniteDifferenceGradientDescent.cxx │ │ ├── elxFiniteDifferenceGradientDescent.h │ │ ├── elxFiniteDifferenceGradientDescent.hxx │ │ ├── itkFiniteDifferenceGradientDescentOptimizer.cxx │ │ └── itkFiniteDifferenceGradientDescentOptimizer.h │ ├── FullSearch │ │ ├── CMakeLists.txt │ │ ├── elxFullSearchOptimizer.cxx │ │ ├── elxFullSearchOptimizer.h │ │ ├── elxFullSearchOptimizer.hxx │ │ ├── itkFullSearchOptimizer.cxx │ │ └── itkFullSearchOptimizer.h │ ├── Powell │ │ ├── CMakeLists.txt │ │ ├── elxPowell.cxx │ │ ├── elxPowell.h │ │ └── elxPowell.hxx │ ├── PreconditionedStochasticGradientDescent │ │ ├── CMakeLists.txt │ │ ├── elxPreconditionedStochasticGradientDescent.cxx │ │ ├── elxPreconditionedStochasticGradientDescent.h │ │ ├── elxPreconditionedStochasticGradientDescent.hxx │ │ ├── itkPreconditionedASGDOptimizer.cxx │ │ └── itkPreconditionedASGDOptimizer.h │ ├── QuasiNewtonLBFGS │ │ ├── CMakeLists.txt │ │ ├── elxQuasiNewtonLBFGS.cxx │ │ ├── elxQuasiNewtonLBFGS.h │ │ ├── elxQuasiNewtonLBFGS.hxx │ │ ├── itkQuasiNewtonLBFGSOptimizer.cxx │ │ └── itkQuasiNewtonLBFGSOptimizer.h │ ├── RSGDEachParameterApart │ │ ├── CMakeLists.txt │ │ ├── elxRSGDEachParameterApart.cxx │ │ ├── elxRSGDEachParameterApart.h │ │ ├── elxRSGDEachParameterApart.hxx │ │ ├── itkRSGDEachParameterApartBaseOptimizer.cxx │ │ ├── itkRSGDEachParameterApartBaseOptimizer.h │ │ ├── itkRSGDEachParameterApartOptimizer.cxx │ │ └── itkRSGDEachParameterApartOptimizer.h │ ├── RegularStepGradientDescent │ │ ├── CMakeLists.txt │ │ ├── elxRegularStepGradientDescent.cxx │ │ ├── elxRegularStepGradientDescent.h │ │ └── elxRegularStepGradientDescent.hxx │ ├── Simplex │ │ ├── CMakeLists.txt │ │ ├── elxSimplex.cxx │ │ ├── elxSimplex.h │ │ └── elxSimplex.hxx │ ├── SimultaneousPerturbation │ │ ├── CMakeLists.txt │ │ ├── elxSimultaneousPerturbation.cxx │ │ ├── elxSimultaneousPerturbation.h │ │ └── elxSimultaneousPerturbation.hxx │ ├── StandardGradientDescent │ │ ├── CMakeLists.txt │ │ ├── elxStandardGradientDescent.cxx │ │ ├── elxStandardGradientDescent.h │ │ ├── elxStandardGradientDescent.hxx │ │ ├── itkGradientDescentOptimizer2.cxx │ │ ├── itkGradientDescentOptimizer2.h │ │ ├── itkStandardGradientDescentOptimizer.cxx │ │ └── itkStandardGradientDescentOptimizer.h │ └── StandardStochasticGradientDescent │ │ ├── itkStandardStochasticGradientDescentOptimizer.cxx │ │ ├── itkStandardStochasticGradientDescentOptimizer.h │ │ ├── itkStochasticGradientDescentOptimizer.cxx │ │ └── itkStochasticGradientDescentOptimizer.h ├── Registrations │ ├── MultiMetricMultiResolutionRegistration │ │ ├── CMakeLists.txt │ │ ├── elxMultiMetricMultiResolutionRegistration.cxx │ │ ├── elxMultiMetricMultiResolutionRegistration.h │ │ ├── elxMultiMetricMultiResolutionRegistration.hxx │ │ ├── itkCombinationImageToImageMetric.h │ │ ├── itkCombinationImageToImageMetric.hxx │ │ ├── itkMultiMetricMultiResolutionImageRegistrationMethod.h │ │ └── itkMultiMetricMultiResolutionImageRegistrationMethod.hxx │ ├── MultiResolutionRegistration │ │ ├── CMakeLists.txt │ │ ├── elxMultiResolutionRegistration.cxx │ │ ├── elxMultiResolutionRegistration.h │ │ └── elxMultiResolutionRegistration.hxx │ └── MultiResolutionRegistrationWithFeatures │ │ ├── CMakeLists.txt │ │ ├── elxMultiResolutionRegistrationWithFeatures.cxx │ │ ├── elxMultiResolutionRegistrationWithFeatures.h │ │ ├── elxMultiResolutionRegistrationWithFeatures.hxx │ │ ├── itkMultiInputMultiResolutionImageRegistrationMethodBase.h │ │ ├── itkMultiInputMultiResolutionImageRegistrationMethodBase.hxx │ │ ├── itkMultiResolutionImageRegistrationMethodWithFeatures.h │ │ └── itkMultiResolutionImageRegistrationMethodWithFeatures.hxx ├── ResampleInterpolators │ ├── BSplineResampleInterpolator │ │ ├── CMakeLists.txt │ │ ├── elxBSplineResampleInterpolator.cxx │ │ ├── elxBSplineResampleInterpolator.h │ │ └── elxBSplineResampleInterpolator.hxx │ ├── BSplineResampleInterpolatorFloat │ │ ├── CMakeLists.txt │ │ ├── elxBSplineResampleInterpolatorFloat.cxx │ │ ├── elxBSplineResampleInterpolatorFloat.h │ │ └── elxBSplineResampleInterpolatorFloat.hxx │ ├── LinearResampleInterpolator │ │ ├── CMakeLists.txt │ │ ├── elxLinearResampleInterpolator.cxx │ │ ├── elxLinearResampleInterpolator.h │ │ └── elxLinearResampleInterpolator.hxx │ ├── NearestNeighborResampleInterpolator │ │ ├── CMakeLists.txt │ │ ├── elxNearestNeighborResampleInterpolator.cxx │ │ ├── elxNearestNeighborResampleInterpolator.h │ │ └── elxNearestNeighborResampleInterpolator.hxx │ ├── RDBSplineResampleInterpolator │ │ ├── CMakeLists.txt │ │ ├── elxRDBSplineResampleInterpolator.cxx │ │ ├── elxRDBSplineResampleInterpolator.h │ │ └── elxRDBSplineResampleInterpolator.hxx │ └── RayCastResampleInterpolator │ │ ├── CMakeLists.txt │ │ ├── elxRayCastResampleInterpolator.cxx │ │ ├── elxRayCastResampleInterpolator.h │ │ └── elxRayCastResampleInterpolator.hxx ├── Resamplers │ ├── DefaultResampler │ │ ├── CMakeLists.txt │ │ ├── elxDefaultResampler.cxx │ │ ├── elxDefaultResampler.h │ │ └── elxDefaultResampler.hxx │ └── OpenCLResampler │ │ ├── CMakeLists.txt │ │ ├── elxOpenCLResampler.cxx │ │ ├── elxOpenCLResampler.h │ │ └── elxOpenCLResampler.hxx ├── Transforms │ ├── AdvancedAffineTransform │ │ ├── CMakeLists.txt │ │ ├── elxAdvancedAffineTransform.cxx │ │ ├── elxAdvancedAffineTransform.h │ │ ├── elxAdvancedAffineTransform.hxx │ │ ├── itkCenteredTransformInitializer2.h │ │ └── itkCenteredTransformInitializer2.hxx │ ├── AdvancedBSplineTransform │ │ ├── CMakeLists.txt │ │ ├── elxAdvancedBSplineTransform.cxx │ │ ├── elxAdvancedBSplineTransform.h │ │ └── elxAdvancedBSplineTransform.hxx │ ├── AffineDTITransform │ │ ├── CMakeLists.txt │ │ ├── elxAffineDTITransform.cxx │ │ ├── elxAffineDTITransform.h │ │ ├── elxAffineDTITransform.hxx │ │ ├── itkAffineDTI2DTransform.h │ │ ├── itkAffineDTI2DTransform.hxx │ │ ├── itkAffineDTI3DTransform.h │ │ ├── itkAffineDTI3DTransform.hxx │ │ └── itkAffineDTITransform.h │ ├── AffineLogStackTransform │ │ ├── CMakeLists.txt │ │ ├── elxAffineLogStackTransform.cxx │ │ ├── elxAffineLogStackTransform.h │ │ ├── elxAffineLogStackTransform.hxx │ │ └── itkAffineLogStackTransform.h │ ├── AffineLogTransform │ │ ├── CMakeLists.txt │ │ ├── elxAffineLogTransform.cxx │ │ ├── elxAffineLogTransform.h │ │ ├── elxAffineLogTransform.hxx │ │ ├── itkAffineLogTransform.h │ │ └── itkAffineLogTransform.hxx │ ├── BSplineDeformableTransformWithDiffusion │ │ ├── CMakeLists.txt │ │ ├── elxBSplineTransformWithDiffusion.cxx │ │ ├── elxBSplineTransformWithDiffusion.h │ │ ├── elxBSplineTransformWithDiffusion.hxx │ │ ├── itkDeformationFieldRegulizer.h │ │ ├── itkDeformationFieldRegulizer.hxx │ │ ├── itkDeformationVectorFieldTransform.h │ │ ├── itkDeformationVectorFieldTransform.hxx │ │ ├── itkVectorMeanDiffusionImageFilter.h │ │ └── itkVectorMeanDiffusionImageFilter.hxx │ ├── BSplineStackTransform │ │ ├── CMakeLists.txt │ │ ├── elxBSplineStackTransform.cxx │ │ ├── elxBSplineStackTransform.h │ │ ├── elxBSplineStackTransform.hxx │ │ └── itkBSplineStackTransform.h │ ├── DeformationFieldTransform │ │ ├── CMakeLists.txt │ │ ├── elxDeformationFieldTransform.cxx │ │ ├── elxDeformationFieldTransform.h │ │ ├── elxDeformationFieldTransform.hxx │ │ ├── itkDeformationFieldInterpolatingTransform.h │ │ └── itkDeformationFieldInterpolatingTransform.hxx │ ├── EulerStackTransform │ │ ├── CMakeLists.txt │ │ ├── elxEulerStackTransform.cxx │ │ ├── elxEulerStackTransform.h │ │ ├── elxEulerStackTransform.hxx │ │ └── itkEulerStackTransform.h │ ├── EulerTransform │ │ ├── CMakeLists.txt │ │ ├── elxEulerTransform.cxx │ │ ├── elxEulerTransform.h │ │ └── elxEulerTransform.hxx │ ├── ExternalTransform │ │ ├── CMakeLists.txt │ │ ├── elxAdvancedTransformAdapter.h │ │ ├── elxExternalTransform.cxx │ │ ├── elxExternalTransform.h │ │ └── elxExternalTransform.hxx │ ├── MultiBSplineTransformWithNormal │ │ ├── CMakeLists.txt │ │ ├── elxMultiBSplineTransformWithNormal.cxx │ │ ├── elxMultiBSplineTransformWithNormal.h │ │ ├── elxMultiBSplineTransformWithNormal.hxx │ │ ├── itkMultiBSplineDeformableTransformWithNormal.h │ │ └── itkMultiBSplineDeformableTransformWithNormal.hxx │ ├── RecursiveBSplineTransform │ │ ├── CMakeLists.txt │ │ ├── elxRecursiveBSplineTransform.cxx │ │ ├── elxRecursiveBSplineTransform.h │ │ └── elxRecursiveBSplineTransform.hxx │ ├── SimilarityTransform │ │ ├── CMakeLists.txt │ │ ├── elxSimilarityTransform.cxx │ │ ├── elxSimilarityTransform.h │ │ ├── elxSimilarityTransform.hxx │ │ └── itkSimilarityTransform.h │ ├── SplineKernelTransform │ │ ├── CMakeLists.txt │ │ ├── elxSplineKernelTransform.cxx │ │ ├── elxSplineKernelTransform.h │ │ ├── elxSplineKernelTransform.hxx │ │ ├── itkElasticBodyReciprocalSplineKernelTransform2.h │ │ ├── itkElasticBodyReciprocalSplineKernelTransform2.hxx │ │ ├── itkElasticBodySplineKernelTransform2.h │ │ ├── itkElasticBodySplineKernelTransform2.hxx │ │ ├── itkKernelTransform2.h │ │ ├── itkKernelTransform2.hxx │ │ ├── itkThinPlateR2LogRSplineKernelTransform2.h │ │ ├── itkThinPlateR2LogRSplineKernelTransform2.hxx │ │ ├── itkThinPlateSplineKernelTransform2.h │ │ ├── itkThinPlateSplineKernelTransform2.hxx │ │ ├── itkVolumeSplineKernelTransform2.h │ │ └── itkVolumeSplineKernelTransform2.hxx │ ├── TranslationStackTransform │ │ ├── CMakeLists.txt │ │ ├── elxTranslationStackTransform.cxx │ │ ├── elxTranslationStackTransform.h │ │ ├── elxTranslationStackTransform.hxx │ │ └── itkTranslationStackTransform.h │ ├── TranslationTransform │ │ ├── CMakeLists.txt │ │ ├── elxTranslationTransform.cxx │ │ ├── elxTranslationTransform.h │ │ ├── elxTranslationTransform.hxx │ │ ├── itkTranslationTransformInitializer.h │ │ └── itkTranslationTransformInitializer.hxx │ └── WeightedCombinationTransform │ │ ├── CMakeLists.txt │ │ ├── elxWeightedCombinationTransform.cxx │ │ ├── elxWeightedCombinationTransform.h │ │ ├── elxWeightedCombinationTransform.hxx │ │ ├── itkWeightedCombinationTransform.h │ │ └── itkWeightedCombinationTransform.hxx └── elxGenericPyramidHelper.h ├── Core ├── CMakeLists.txt ├── ComponentBaseClasses │ ├── elxFixedImagePyramidBase.h │ ├── elxFixedImagePyramidBase.hxx │ ├── elxImageSamplerBase.h │ ├── elxImageSamplerBase.hxx │ ├── elxInterpolatorBase.h │ ├── elxInterpolatorBase.hxx │ ├── elxMetricBase.h │ ├── elxMetricBase.hxx │ ├── elxMovingImagePyramidBase.h │ ├── elxMovingImagePyramidBase.hxx │ ├── elxOptimizerBase.h │ ├── elxOptimizerBase.hxx │ ├── elxRegistrationBase.h │ ├── elxRegistrationBase.hxx │ ├── elxResampleInterpolatorBase.h │ ├── elxResampleInterpolatorBase.hxx │ ├── elxResamplerBase.h │ ├── elxResamplerBase.hxx │ ├── elxTransformBase.h │ └── elxTransformBase.hxx ├── Configuration │ ├── elxConfiguration.cxx │ └── elxConfiguration.h ├── Install │ ├── CMakeLists.txt │ ├── elxBaseComponent.cxx │ ├── elxBaseComponent.h │ ├── elxBaseComponentSE.h │ ├── elxBaseComponentSE.hxx │ ├── elxComponentDatabase.cxx │ ├── elxComponentDatabase.h │ ├── elxComponentInstaller.h │ ├── elxComponentLoader.cxx │ ├── elxComponentLoader.h │ ├── elxConversion.cxx │ ├── elxConversion.h │ ├── elxIncludes.h │ ├── elxInstallAllComponents.h │ ├── elxInstallFunctions.h │ ├── elxMacro.h │ ├── elxOpenCLSupportedImageTypes.h.in │ ├── elxPrepareImageTypeSupport.h │ └── elxSupportedImageTypes.h.in ├── Kernel │ ├── elxElastixBase.cxx │ ├── elxElastixBase.h │ ├── elxElastixMain.cxx │ ├── elxElastixMain.h │ ├── elxElastixTemplate.h │ ├── elxElastixTemplate.hxx │ ├── elxIterationInfo.cxx │ ├── elxIterationInfo.h │ ├── elxMainBase.cxx │ ├── elxMainBase.h │ ├── elxTransformixMain.cxx │ ├── elxTransformixMain.h │ ├── elxlog.cxx │ └── elxlog.h ├── Main │ ├── GTesting │ │ ├── CMakeLists.txt │ │ ├── ElastixLibGTest.cxx │ │ ├── ParameterObjectGTest.cxx │ │ ├── elxCoreMainGTestUtilities.cxx │ │ ├── elxCoreMainGTestUtilities.h │ │ ├── itkElastixRegistrationMethodGTest.cxx │ │ └── itkTransformixFilterGTest.cxx │ ├── elastix.cxx │ ├── elastix.h │ ├── elastixlib.cxx │ ├── elastixlib.h │ ├── elxForEachSupportedImageType.h │ ├── elxLibUtilities.cxx │ ├── elxLibUtilities.h │ ├── elxMainExeUtilities.cxx │ ├── elxMainExeUtilities.h │ ├── elxParameterObject.cxx │ ├── elxParameterObject.h │ ├── elxPixelTypeToString.h │ ├── itkElastixLogLevel.h │ ├── itkElastixRegistrationMethod.h │ ├── itkElastixRegistrationMethod.hxx │ ├── itkTransformixFilter.h │ ├── itkTransformixFilter.hxx │ ├── transformix.cxx │ ├── transformixlib.cxx │ └── transformixlib.h ├── elxGitRevisionInfo.h.in ├── elxProgressCommand.cxx ├── elxProgressCommand.h └── elxVersionMacros.h.in ├── Dockerfile ├── ElastixConfig.cmake.in ├── ElastixConfigVersion.cmake.in ├── GOVERNANCE.md ├── LICENSE ├── NOTICE ├── README.md ├── Testing ├── Baselines │ ├── 3DCT_lung.mha │ ├── 3DCT_lung_groundtruth_point.txt │ ├── TransformParameters_3DCT_lung.Kappa.bspline.ASGD.001.txt.in │ ├── TransformParameters_3DCT_lung.MI.bspline.ASGD.001.txt.in │ ├── TransformParameters_3DCT_lung.MI.bspline.SGD.001.txt.in │ ├── TransformParameters_3DCT_lung.MI.bspline.SGD.002.txt.in │ ├── TransformParameters_3DCT_lung.MI.bspline.SGD.003.txt.in │ ├── TransformParameters_3DCT_lung.MI.bspline.SGD.004.txt.in │ ├── TransformParameters_3DCT_lung.NC.affine.ASGD.001.txt.in │ ├── TransformParameters_3DCT_lung.NC.bspline.ASGD.001a.txt.in │ ├── TransformParameters_3DCT_lung.NC.bspline.ASGD.001b.txt.in │ ├── TransformParameters_3DCT_lung.NC.bspline.ASGD.001c.txt.in │ ├── TransformParameters_3DCT_lung.NC.bspline.ASGD.001d.txt.in │ ├── TransformParameters_3DCT_lung.NC.bspline.ASGD.002.txt.in │ ├── TransformParameters_3DCT_lung.NC.bspline.ASGD.003.txt.in │ ├── TransformParameters_3DCT_lung.NC.bspline.ASGD.004.txt.in │ ├── TransformParameters_3DCT_lung.NC.bspline.ASGD.004b.txt.in │ ├── TransformParameters_3DCT_lung.NC.bspline.QN.001.txt.in │ ├── TransformParameters_3DCT_lung.NC.bspline.SGD.001.txt.in │ ├── TransformParameters_3DCT_lung.NC.bspline_r.ASGD.001a.txt.in │ ├── TransformParameters_3DCT_lung.NC.euler.ASGD.001.txt.in │ ├── TransformParameters_3DCT_lung.NC.translation.ASGD.001.txt.in │ ├── TransformParameters_3DCT_lung.NMI.bspline.ASGD.001.txt.in │ ├── TransformParameters_3DCT_lung.SSD.bspline.ASGD.001.txt.in │ ├── TransformParameters_3DCT_lung.SSD.bspline.ASGD.002.txt.in │ ├── TransformParameters_3DCT_lung.SSD.bspline.ASGD.003.txt.in │ ├── TransformParameters_3DCT_lung.affine.inverse.txt │ ├── TransformParameters_3DCT_lung.example.txt.in │ ├── TransformParameters_BIGR.PCStefan_3DCT_lung.MI.bspline.ASGD.001.txt.in │ ├── TransformParameters_BIGR.PCStefan_3DCT_lung.NMI.bspline.ASGD.001.txt.in │ ├── TransformParameters_BIGR.cluster_3DCT_lung.MI.bspline.ASGD.001.txt.in │ ├── TransformParameters_BIGR.cluster_3DCT_lung.NMI.bspline.ASGD.001.txt.in │ ├── TransformParameters_LKEB-ELDB91_3DCT_lung.MI.bspline.ASGD.001.txt.in │ ├── TransformParameters_LKEB-ELDB91_3DCT_lung.NMI.bspline.ASGD.001.txt.in │ ├── TransformParameters_LKEB.MacMini_3DCT_lung.MI.bspline.ASGD.001.txt.in │ ├── TransformParameters_LKEB.MacMini_3DCT_lung.NMI.bspline.ASGD.001.txt.in │ ├── checksums_BIGR.PCStefan_WinXP-32bit-VS2008.txt │ ├── checksums_BIGR.cluster_Linux-64bit-gcc4.txt │ ├── checksums_LKEB.ELDB91_Linux-64bit-gcc5.txt │ ├── checksums_LKEB.MacMini_MacOSX-64bit-gcc4.txt │ ├── checksums_LKEB.PCMarius_Win10-64bit-VS2015.txt │ ├── example.mha │ ├── example_BIGR.PCStefan.mha │ ├── example_BIGR.cluster.mha │ ├── example_LKEB-ELDB91.mha │ └── example_LKEB.MacMini.mha ├── CI │ └── Azure │ │ └── ci.yml ├── CMakeLists.txt ├── Dashboard │ ├── elxCommonCDash.cmake │ ├── elxDashboardCommon.cmake │ ├── elxDashboard_BIGR_linux64_gcc.cmake │ ├── elxDashboard_BIGR_winXP32_VS2008.cmake │ ├── elxDashboard_LKEB_linux64_clang_Debug.cmake │ ├── elxDashboard_LKEB_linux64_clang_Release.cmake │ ├── elxDashboard_LKEB_linux64_gcc_Debug.cmake │ ├── elxDashboard_LKEB_linux64_gcc_Release.cmake │ ├── elxDashboard_LKEB_linux64_gcc_Release_perf.cmake │ ├── elxDashboard_LKEB_macosx64_gcc.cmake │ ├── elxDashboard_LKEB_win10-64_VS2015.cmake │ └── elxDashboard_LKEB_win7-64_VS2010.cmake ├── Data │ ├── 2DMRI-T1_brain.mha │ ├── 2D_2x2_square_object_at_(1,3).mhd │ ├── 2D_2x2_square_object_at_(1,3).raw │ ├── 2D_2x2_square_object_at_(2,1).mhd │ ├── 2D_2x2_square_object_at_(2,1).raw │ ├── 2D_unit_square_corner_points.txt │ ├── 3DCT_lung_baseline.mha │ ├── 3DCT_lung_baseline.txt │ ├── 3DCT_lung_baseline_landmarks.txt │ ├── 3DCT_lung_baseline_mask.mha │ ├── 3DCT_lung_baseline_small.mha │ ├── 3DCT_lung_followup.mha │ ├── 3DCT_lung_followup.txt │ ├── 3DCT_lung_followup_mask.mha │ ├── 3DCT_lung_followup_segmentation.mha │ ├── Translation(1,-2) │ │ ├── ITK-HDF5-Transform.h5 │ │ ├── ITK-Transform.tfm │ │ ├── InitialTransformParameters.txt │ │ ├── Special characters [(0-9,;!@#$%&)] │ │ │ └── ITK-Transform.tfm │ │ ├── TransformParameters-Size-5x6.txt │ │ ├── TransformParameters-link-to-ITK-HDF5-file.txt │ │ ├── TransformParameters-link-to-ITK-tfm-file.txt │ │ ├── TransformParameters-link-to-file-with-special-chars-in-path-name.txt │ │ ├── TransformParameters.txt │ │ └── TransformParametersWithInitialTransformParameterFile.txt │ ├── parameters.2D.NC.translation.ASGD.txt │ ├── parameters.3D.Kappa.bspline.ASGD.001.txt │ ├── parameters.3D.MI.bspline.ASGD.001.txt │ ├── parameters.3D.MI.bspline.SGD.001.txt │ ├── parameters.3D.MI.bspline.SGD.002.txt │ ├── parameters.3D.MI.bspline.SGD.003.txt │ ├── parameters.3D.MI.bspline.SGD.004.txt │ ├── parameters.3D.NC.affine.ASGD.001.txt │ ├── parameters.3D.NC.affine.SGD.001.txt │ ├── parameters.3D.NC.bspline.ASGD.001.txt │ ├── parameters.3D.NC.bspline.ASGD.001a.txt │ ├── parameters.3D.NC.bspline.ASGD.001b.txt │ ├── parameters.3D.NC.bspline.ASGD.001c.txt │ ├── parameters.3D.NC.bspline.ASGD.001d.txt │ ├── parameters.3D.NC.bspline.ASGD.002.txt │ ├── parameters.3D.NC.bspline.ASGD.003.txt │ ├── parameters.3D.NC.bspline.ASGD.004.txt │ ├── parameters.3D.NC.bspline.ASGD.004b.txt.in │ ├── parameters.3D.NC.bspline.QN.001.txt │ ├── parameters.3D.NC.bspline.SGD.001.txt │ ├── parameters.3D.NC.bspline_r.ASGD.001a.txt │ ├── parameters.3D.NC.euler.ASGD.001.txt │ ├── parameters.3D.NC.translation.ASGD.001.txt │ ├── parameters.3D.NMI.bspline.ASGD.001.txt │ ├── parameters.3D.SSD.bspline.ASGD.001.txt │ ├── parameters.3D.SSD.bspline.ASGD.002.txt │ ├── parameters.3D.SSD.bspline.ASGD.003.txt │ ├── parameters_AdvancedBSplineDeformableTransformTest.txt │ ├── parameters_AdvancedBSplineDeformableTransformTestSml.txt │ ├── parameters_TPSTransformTest.txt │ └── transformparameters.3DCT_lung.affine.txt ├── OpenCLBufferTest.cl ├── OpenCLEventTest.cl ├── OpenCLImageTest.cl ├── OpenCLKernelToImageBridgeTest.cl ├── OpenCLSimpleTest1.cl ├── OpenCLSimpleTest2.cl ├── OpenCLVectorTest.cl ├── PythonTests │ ├── CMakeLists.txt │ ├── ExpectedOutput │ │ ├── test_translation_of_images_and_points │ │ │ └── outputpoints.txt │ │ └── test_translation_of_points │ │ │ └── outputpoints.txt │ ├── TransformParameters │ │ ├── Transform_to_float_5x6.txt │ │ ├── Transform_to_int_5x6.txt │ │ ├── Translation(0,0).txt │ │ ├── Translation(0,0,0).txt │ │ ├── Translation(1,-2)-CustomResultImageName.txt │ │ └── Translation(1,-2).txt │ ├── requirements.txt │ └── transformix_test.py ├── elxComputeOverlap.cxx ├── elxImageCompare.cxx ├── elxInvertTransform.cxx ├── elxTransformParametersCompare.cxx ├── elx_compare_checksum.py ├── elx_compare_finalmetricvalue.py ├── elx_compare_landmarks.py ├── elx_compare_overlap.py ├── elx_get_checksum_list.py ├── elx_get_tp_list.py ├── elx_nightly_dashboard.py ├── itkAccumulateDerivativesParallellizationTest.cxx ├── itkAdvanceOneStepParallellizationTest.cxx ├── itkAdvancedBSplineDeformableTransformTest.cxx ├── itkAdvancedLinearInterpolatorTest.cxx ├── itkAdvancedRecursiveBSplineTransformTest.cxx ├── itkBSplineDerivativeKernelFunctionTest.cxx ├── itkBSplineInterpolationDerivativeWeightFunctionTest.cxx ├── itkBSplineInterpolationSODerivativeWeightFunctionTest.cxx ├── itkBSplineInterpolationWeightFunctionTest.cxx ├── itkBSplineJacobianGradientPerformanceTest.cxx ├── itkBSplineSODerivativeKernelFunctionTest.cxx ├── itkBSplineSecondOrderDerivativeKernelFunction.h ├── itkBSplineTransformPointPerformanceTest.cxx ├── itkCommandLineArgumentParser.cxx ├── itkCommandLineArgumentParser.h ├── itkCompareCompositeTransformsTest.cxx ├── itkGPUBSplineDecompositionImageFilterTest.cxx ├── itkGPUCastImageFilterTest.cxx ├── itkGPUFactoriesTest.cxx ├── itkGPUGenericMultiResolutionPyramidImageFilterTest.cxx ├── itkGPURecursiveGaussianImageFilterTest.cxx ├── itkGPUResampleImageFilterTest.cxx ├── itkGPUShrinkImageFilterTest.cxx ├── itkGPUSmoothingRecursiveGaussianImageFilterTest.cxx ├── itkMevisDicomTiffImageIOTest.cxx ├── itkOpenCLBufferTest.cxx ├── itkOpenCLBufferTest.h ├── itkOpenCLContextTest.cxx ├── itkOpenCLDeviceTest.cxx ├── itkOpenCLEventTest.cxx ├── itkOpenCLEventTest.h ├── itkOpenCLImageTest.cxx ├── itkOpenCLImageTest.h ├── itkOpenCLKernelManagerTest.cxx ├── itkOpenCLKernelTest.cxx ├── itkOpenCLKernelToImageBridgeTest.cxx ├── itkOpenCLKernelToImageBridgeTest.h ├── itkOpenCLPlatformTest.cxx ├── itkOpenCLProfilingTimeProbeTest.cxx ├── itkOpenCLSamplerTest.cxx ├── itkOpenCLSimpleTest.cxx ├── itkOpenCLSimpleTest.h ├── itkOpenCLSizeTest.cxx ├── itkOpenCLStringUtilsTest.cxx ├── itkOpenCLVectorTest.cxx ├── itkOpenCLVectorTest.h ├── itkTestHelper.h ├── itkTestOutputWindow.cxx ├── itkTestOutputWindow.h ├── itkThinPlateSplineTransformPerformanceTest.cxx ├── itkThinPlateSplineTransformTest.cxx └── itkTransformixFilterTest.cxx ├── UseElastix.cmake.in ├── dox ├── ITKCompilationOptions.txt ├── README.txt ├── art │ ├── elastix_logo.gif │ ├── elastix_logo_128.ico │ ├── elastix_logo_32.ico │ ├── elastix_logo_64.ico │ ├── elastix_logo_full.bmp │ ├── elastix_logo_full.gif │ ├── elastix_logo_full_128.ico │ ├── elastix_logo_full_32.ico │ ├── elastix_logo_full_64.ico │ └── elastix_logo_full_small.bmp ├── createWebsite ├── doxygen │ ├── DoxygenFooter.html.in │ ├── DoxygenHeader.html │ ├── MainPage.dox.in │ ├── Topics.dox │ ├── doxdate.bat │ ├── doxyfile.in │ ├── doxygenlayout.xml │ └── elastix.css ├── example ├── example.bat ├── exampleinput │ ├── fixed.mhd │ ├── fixed.raw │ ├── mask_fixed.mhd │ ├── mask_fixed.raw │ ├── mask_moving.mhd │ ├── mask_moving.raw │ ├── moving.mhd │ ├── moving.raw │ ├── parameters_Affine.txt │ ├── parameters_BSpline.txt │ ├── parameters_Rigid.txt │ ├── parameters_Translation.txt │ ├── solution_deformedmovingimage.mhd │ └── solution_deformedmovingimage.raw ├── externalproject │ ├── CMakeLists.txt │ ├── ElastixTranslationExample.cxx │ └── README.txt └── misc │ ├── ReleaseCMakeSettings.txt │ └── penalty.tex ├── pixi.lock ├── pixi.toml └── tools ├── CopyrightNotice_Apache.txt ├── elxCMakeCaseConversion.py ├── elxCheckCopyrightNotice.py ├── pre-commit-setup.bash ├── runelastixlinux └── runtransformixlinux /.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig: https://EditorConfig.org 2 | 3 | # This is the top-most EditorConfig file 4 | root = true 5 | 6 | # Apply to any source file 7 | [*.*] 8 | 9 | # Indentation of two spaces 10 | indent_style = space 11 | indent_size = 2 12 | -------------------------------------------------------------------------------- /.github/workflows/pre-commit.yml: -------------------------------------------------------------------------------- 1 | name: pre-commit 2 | 3 | on: 4 | pull_request: 5 | push: 6 | branches: [master] 7 | 8 | jobs: 9 | pre-commit: 10 | runs-on: ubuntu-24.04 11 | steps: 12 | - uses: actions/checkout@v4 13 | - name: Check install of Python, pre-commit 14 | run: | 15 | ./tools/pre-commit-setup.bash 16 | - uses: actions/setup-python@v5 17 | with: 18 | python-version: '3.12' 19 | - uses: pre-commit/action@v3.0.1 20 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Prerequisites 2 | *.d 3 | 4 | # Compiled Object files 5 | *.slo 6 | *.lo 7 | *.o 8 | *.obj 9 | 10 | # Precompiled Headers 11 | *.gch 12 | *.pch 13 | 14 | # Compiled Dynamic libraries 15 | *.so 16 | *.dylib 17 | *.dll 18 | 19 | # Fortran module files 20 | *.mod 21 | *.smod 22 | 23 | # Compiled Static libraries 24 | *.lai 25 | *.la 26 | *.a 27 | *.lib 28 | 29 | # Executables 30 | *.exe 31 | *.out 32 | *.app 33 | 34 | # Generated files and 35 | help/ 36 | Makefile 37 | CMakeFiles/ 38 | CTestTestfile.cmake 39 | .idea/ 40 | .githooks/clangFormatMac 41 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "dox/manual"] 2 | path = dox/manual 3 | url = https://github.com/SuperElastix/manual.git 4 | update = merge 5 | branch = main 6 | -------------------------------------------------------------------------------- /CMake/elastixVersion.cmake: -------------------------------------------------------------------------------- 1 | # Elastix version number components. 2 | set(ELASTIX_VERSION_MAJOR "5") 3 | set(ELASTIX_VERSION_MINOR "2") 4 | set(ELASTIX_VERSION_PATCH "0") 5 | 6 | set(ELASTIX_VERSION "${ELASTIX_VERSION_MAJOR}.${ELASTIX_VERSION_MINOR}.${ELASTIX_VERSION_PATCH}") 7 | -------------------------------------------------------------------------------- /CTestConfig.cmake: -------------------------------------------------------------------------------- 1 | ## This file should be placed in the root directory of your project. 2 | ## Then modify the CMakeLists.txt file in the root directory of your 3 | ## project to incorporate the testing dashboard. 4 | ## # The following are required to uses Dart and the Cdash dashboard 5 | ## enable_testing() 6 | ## include(CTest) 7 | set(CTEST_PROJECT_NAME "elastix") 8 | set(CTEST_NIGHTLY_START_TIME "00:01:00 CET") 9 | 10 | set(CTEST_DROP_METHOD "https") 11 | set(CTEST_DROP_SITE "my.cdash.org") 12 | set(CTEST_DROP_LOCATION "/submit.php?project=elastix") 13 | set(CTEST_DROP_SITE_CDASH TRUE) 14 | -------------------------------------------------------------------------------- /Common/GTesting/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_executable(CommonGTest 2 | elxConversionGTest.cxx 3 | elxDefaultConstructGTest.cxx 4 | elxElastixMainGTest.cxx 5 | elxGTestUtilities.h 6 | elxResampleInterpolatorGTest.cxx 7 | elxResamplerGTest.cxx 8 | elxTransformIOGTest.cxx 9 | itkAdvancedImageToImageMetricGTest.cxx 10 | itkAdvancedMeanSquaresImageToImageMetricGTest.cxx 11 | itkComputeImageExtremaFilterGTest.cxx 12 | itkCorrespondingPointsEuclideanDistancePointMetricGTest.cxx 13 | itkImageFullSamplerGTest.cxx 14 | itkImageGridSamplerGTest.cxx 15 | itkImageRandomCoordinateSamplerGTest.cxx 16 | itkImageRandomSamplerGTest.cxx 17 | itkImageRandomSamplerSparseMaskGTest.cxx 18 | itkImageSamplerGTest.cxx 19 | itkParameterMapInterfaceTest.cxx 20 | ) 21 | 22 | target_compile_definitions(CommonGTest PRIVATE 23 | _USE_MATH_DEFINES # For M_PI. 24 | ) 25 | 26 | target_link_libraries(CommonGTest 27 | GTest::GTest GTest::Main 28 | ${ITK_LIBRARIES} 29 | elastix_lib 30 | ) 31 | add_test(NAME CommonGTest_test COMMAND CommonGTest) 32 | -------------------------------------------------------------------------------- /Common/MevisDicomTiff/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # include this file in your CMakeLists.txt file using the add_subdirectory command. 2 | project(MevisDicomTiff) 3 | 4 | if(ELASTIX_USE_MEVISDICOMTIFF) 5 | add_definitions(-D_ELASTIX_USE_MEVISDICOMTIFF) 6 | add_library(mevisdcmtiff STATIC 7 | itkMevisDicomTiffImageIO.cxx 8 | itkMevisDicomTiffImageIOFactory.cxx 9 | itkUseMevisDicomTiff.cxx 10 | ) 11 | else() 12 | # avoid dependencies, but compile the lib, so that customers of this 13 | # lib can just call RegisterMevisDicomTiff without checking. 14 | add_library(mevisdcmtiff STATIC 15 | itkUseMevisDicomTiff.cxx 16 | ) 17 | endif() 18 | 19 | if(NOT ELASTIX_NO_INSTALL_DEVELOPMENT) 20 | install(TARGETS mevisdcmtiff 21 | ARCHIVE DESTINATION ${ELASTIX_ARCHIVE_DIR} 22 | LIBRARY DESTINATION ${ELASTIX_LIBRARY_DIR} 23 | RUNTIME DESTINATION ${ELASTIX_RUNTIME_DIR} 24 | COMPONENT Development) 25 | endif() 26 | 27 | target_link_libraries(mevisdcmtiff ${ITK_LIBRARIES}) 28 | 29 | # Group in IDE's like Visual Studio 30 | set_property(TARGET mevisdcmtiff PROPERTY FOLDER "libraries") 31 | 32 | # add mevisdcmtiff to the list of target_link_libraries in your cmakelists.txt file. 33 | 34 | elastix_export_target(mevisdcmtiff) 35 | -------------------------------------------------------------------------------- /Common/MevisDicomTiff/itkUseMevisDicomTiff.h: -------------------------------------------------------------------------------- 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 | #ifndef itkUseMevisDicomTiff_h 19 | #define itkUseMevisDicomTiff_h 20 | 21 | /** Include this file in your main source code */ 22 | 23 | #ifdef _MSC_VER 24 | # pragma warning(disable : 4786) 25 | #endif 26 | 27 | /** Function that registers the Mevis DicomTiff IO factory. 28 | * Call this in your program, before you load/write any images. */ 29 | void 30 | RegisterMevisDicomTiff(); 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /Common/OpenCL/ITKimprovements/itkOpenCLKernels.h.in: -------------------------------------------------------------------------------- 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 | #ifndef itkOpenCLKernels_h 19 | #define itkOpenCLKernels_h 20 | 21 | /** \class OpenCLKernels Debug support file. 22 | * \brief The directory for OpenCL debug kernel files. 23 | * \ingroup OpenCL 24 | */ 25 | namespace itk 26 | { 27 | const char* const OpenCLKernelsDebugDirectory = "@OPENCL_KERNELS_DEBUG_DIR@"; 28 | } // end namespace itk 29 | 30 | #endif /* itkOpenCLKernels_h */ 31 | -------------------------------------------------------------------------------- /Common/ParameterFileParser/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # Sources of non-templated classes. 2 | set(param_SRCS 3 | itkParameterFileParser.h 4 | itkParameterFileParser.cxx 5 | itkParameterMapInterface.h 6 | itkParameterMapInterface.cxx 7 | ) 8 | 9 | source_group("Parser" FILES ${param_SRCS}) 10 | 11 | add_library(param STATIC ${param_SRCS}) 12 | if(NOT ELASTIX_NO_INSTALL_DEVELOPMENT) 13 | install(TARGETS param 14 | ARCHIVE DESTINATION ${ELASTIX_ARCHIVE_DIR} 15 | LIBRARY DESTINATION ${ELASTIX_LIBRARY_DIR} 16 | RUNTIME DESTINATION ${ELASTIX_RUNTIME_DIR} 17 | COMPONENT Development) 18 | endif() 19 | 20 | target_link_libraries(param ${ITK_LIBRARIES}) 21 | 22 | # Group in IDE's like Visual Studio 23 | set_property(TARGET param PROPERTY FOLDER "libraries") 24 | -------------------------------------------------------------------------------- /Common/Transforms/elxTransformFactoryRegistration.h: -------------------------------------------------------------------------------- 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 | #ifndef elxTransformFactoryRegistration_h 20 | #define elxTransformFactoryRegistration_h 21 | 22 | namespace elastix 23 | { 24 | 25 | class TransformFactoryRegistration 26 | { 27 | public: 28 | static void 29 | RegisterTransforms(); 30 | }; 31 | 32 | } // namespace elastix 33 | 34 | #endif 35 | -------------------------------------------------------------------------------- /Components/FixedImagePyramids/FixedGenericPyramid/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( FixedGenericPyramid 3 | elxFixedGenericPyramid.h 4 | elxFixedGenericPyramid.hxx 5 | elxFixedGenericPyramid.cxx) 6 | -------------------------------------------------------------------------------- /Components/FixedImagePyramids/FixedGenericPyramid/elxFixedGenericPyramid.cxx: -------------------------------------------------------------------------------- 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 | #include "elxFixedGenericPyramid.h" 20 | 21 | elxInstallMacro(FixedGenericPyramid); 22 | -------------------------------------------------------------------------------- /Components/FixedImagePyramids/FixedRecursivePyramid/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( FixedRecursivePyramid 3 | elxFixedRecursivePyramid.h 4 | elxFixedRecursivePyramid.hxx 5 | elxFixedRecursivePyramid.cxx) 6 | -------------------------------------------------------------------------------- /Components/FixedImagePyramids/FixedRecursivePyramid/elxFixedRecursivePyramid.cxx: -------------------------------------------------------------------------------- 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 | #include "elxFixedRecursivePyramid.h" 20 | 21 | elxInstallMacro(FixedRecursivePyramid); 22 | -------------------------------------------------------------------------------- /Components/FixedImagePyramids/FixedRecursivePyramid/elxFixedRecursivePyramid.hxx: -------------------------------------------------------------------------------- 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 | #ifndef elxFixedRecursivePyramid_hxx 20 | #define elxFixedRecursivePyramid_hxx 21 | 22 | #include "elxFixedRecursivePyramid.h" 23 | 24 | // nothing 25 | 26 | #endif // #ifndef elxFixedRecursivePyramid_hxx 27 | -------------------------------------------------------------------------------- /Components/FixedImagePyramids/FixedShrinkingPyramid/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( FixedShrinkingPyramid # Was OFF by default before elastix 5.0.1 3 | elxFixedShrinkingPyramid.h 4 | elxFixedShrinkingPyramid.hxx 5 | elxFixedShrinkingPyramid.cxx) 6 | -------------------------------------------------------------------------------- /Components/FixedImagePyramids/FixedShrinkingPyramid/elxFixedShrinkingPyramid.cxx: -------------------------------------------------------------------------------- 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 | #include "elxFixedShrinkingPyramid.h" 20 | 21 | elxInstallMacro(FixedShrinkingPyramid); 22 | -------------------------------------------------------------------------------- /Components/FixedImagePyramids/FixedShrinkingPyramid/elxFixedShrinkingPyramid.hxx: -------------------------------------------------------------------------------- 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 | #ifndef elxFixedShrinkingPyramid_hxx 20 | #define elxFixedShrinkingPyramid_hxx 21 | 22 | #include "elxFixedShrinkingPyramid.h" 23 | 24 | namespace elastix 25 | {} // end namespace elastix 26 | 27 | #endif // #ifndef elxFixedShrinkingPyramid_hxx 28 | -------------------------------------------------------------------------------- /Components/FixedImagePyramids/FixedSmoothingPyramid/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( FixedSmoothingPyramid 3 | elxFixedSmoothingPyramid.h 4 | elxFixedSmoothingPyramid.hxx 5 | elxFixedSmoothingPyramid.cxx) 6 | -------------------------------------------------------------------------------- /Components/FixedImagePyramids/FixedSmoothingPyramid/elxFixedSmoothingPyramid.cxx: -------------------------------------------------------------------------------- 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 | #include "elxFixedSmoothingPyramid.h" 20 | 21 | elxInstallMacro(FixedSmoothingPyramid); 22 | -------------------------------------------------------------------------------- /Components/FixedImagePyramids/FixedSmoothingPyramid/elxFixedSmoothingPyramid.hxx: -------------------------------------------------------------------------------- 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 | #ifndef elxFixedSmoothingPyramid_hxx 20 | #define elxFixedSmoothingPyramid_hxx 21 | 22 | #include "elxFixedSmoothingPyramid.h" 23 | 24 | namespace elastix 25 | {} // end namespace elastix 26 | 27 | #endif // #ifndef elxFixedSmoothingPyramid_hxx 28 | -------------------------------------------------------------------------------- /Components/FixedImagePyramids/OpenCLFixedGenericPyramid/elxOpenCLFixedGenericPyramid.cxx: -------------------------------------------------------------------------------- 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 | #include "elxOpenCLFixedGenericPyramid.h" 20 | 21 | elxInstallMacro(OpenCLFixedGenericPyramid); 22 | -------------------------------------------------------------------------------- /Components/ImageSamplers/Full/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( FullSampler 3 | elxFullSampler.h 4 | elxFullSampler.hxx 5 | elxFullSampler.cxx) 6 | -------------------------------------------------------------------------------- /Components/ImageSamplers/Full/elxFullSampler.cxx: -------------------------------------------------------------------------------- 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 | #include "elxFullSampler.h" 20 | 21 | elxInstallMacro(FullSampler); 22 | -------------------------------------------------------------------------------- /Components/ImageSamplers/Full/elxFullSampler.hxx: -------------------------------------------------------------------------------- 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 | #ifndef elxFullSampler_hxx 20 | #define elxFullSampler_hxx 21 | 22 | #include "elxFullSampler.h" 23 | 24 | namespace elastix 25 | { 26 | 27 | // nothing 28 | 29 | } // end namespace elastix 30 | 31 | #endif // end #ifndef elxFullSampler_hxx 32 | -------------------------------------------------------------------------------- /Components/ImageSamplers/Grid/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( GridSampler 3 | elxGridSampler.h 4 | elxGridSampler.hxx 5 | elxGridSampler.cxx) 6 | -------------------------------------------------------------------------------- /Components/ImageSamplers/Grid/elxGridSampler.cxx: -------------------------------------------------------------------------------- 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 | #include "elxGridSampler.h" 20 | 21 | elxInstallMacro(GridSampler); 22 | -------------------------------------------------------------------------------- /Components/ImageSamplers/MultInputRandomCoordinate/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( MultiInputRandomCoordinateSampler 3 | elxMultiInputRandomCoordinateSampler.h 4 | elxMultiInputRandomCoordinateSampler.hxx 5 | elxMultiInputRandomCoordinateSampler.cxx) 6 | -------------------------------------------------------------------------------- /Components/ImageSamplers/MultInputRandomCoordinate/elxMultiInputRandomCoordinateSampler.cxx: -------------------------------------------------------------------------------- 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 | #include "elxMultiInputRandomCoordinateSampler.h" 20 | 21 | elxInstallMacro(MultiInputRandomCoordinateSampler); 22 | -------------------------------------------------------------------------------- /Components/ImageSamplers/Random/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( RandomSampler 3 | elxRandomSampler.h 4 | elxRandomSampler.hxx 5 | elxRandomSampler.cxx) 6 | -------------------------------------------------------------------------------- /Components/ImageSamplers/Random/elxRandomSampler.cxx: -------------------------------------------------------------------------------- 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 | #include "elxRandomSampler.h" 20 | 21 | elxInstallMacro(RandomSampler); 22 | -------------------------------------------------------------------------------- /Components/ImageSamplers/RandomCoordinate/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( RandomCoordinateSampler 3 | elxRandomCoordinateSampler.h 4 | elxRandomCoordinateSampler.hxx 5 | elxRandomCoordinateSampler.cxx) 6 | -------------------------------------------------------------------------------- /Components/ImageSamplers/RandomCoordinate/elxRandomCoordinateSampler.cxx: -------------------------------------------------------------------------------- 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 | #include "elxRandomCoordinateSampler.h" 20 | 21 | elxInstallMacro(RandomCoordinateSampler); 22 | -------------------------------------------------------------------------------- /Components/ImageSamplers/RandomSparseMask/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( RandomSamplerSparseMask 3 | elxRandomSamplerSparseMask.h 4 | elxRandomSamplerSparseMask.hxx 5 | elxRandomSamplerSparseMask.cxx) 6 | -------------------------------------------------------------------------------- /Components/ImageSamplers/RandomSparseMask/elxRandomSamplerSparseMask.cxx: -------------------------------------------------------------------------------- 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 | #include "elxRandomSamplerSparseMask.h" 20 | 21 | elxInstallMacro(RandomSamplerSparseMask); 22 | -------------------------------------------------------------------------------- /Components/Interpolators/BSplineInterpolator/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( BSplineInterpolator 3 | elxBSplineInterpolator.h 4 | elxBSplineInterpolator.hxx 5 | elxBSplineInterpolator.cxx) 6 | -------------------------------------------------------------------------------- /Components/Interpolators/BSplineInterpolator/elxBSplineInterpolator.cxx: -------------------------------------------------------------------------------- 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 | #include "elxBSplineInterpolator.h" 20 | 21 | elxInstallMacro(BSplineInterpolator); 22 | -------------------------------------------------------------------------------- /Components/Interpolators/BSplineInterpolatorFloat/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( BSplineInterpolatorFloat # Was OFF by default before elastix 5.0.1 3 | elxBSplineInterpolatorFloat.h 4 | elxBSplineInterpolatorFloat.hxx 5 | elxBSplineInterpolatorFloat.cxx) 6 | -------------------------------------------------------------------------------- /Components/Interpolators/BSplineInterpolatorFloat/elxBSplineInterpolatorFloat.cxx: -------------------------------------------------------------------------------- 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 | #include "elxBSplineInterpolatorFloat.h" 20 | 21 | elxInstallMacro(BSplineInterpolatorFloat); 22 | -------------------------------------------------------------------------------- /Components/Interpolators/LinearInterpolator/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( LinearInterpolator 3 | elxLinearInterpolator.h 4 | elxLinearInterpolator.hxx 5 | elxLinearInterpolator.cxx) 6 | -------------------------------------------------------------------------------- /Components/Interpolators/LinearInterpolator/elxLinearInterpolator.cxx: -------------------------------------------------------------------------------- 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 | #include "elxLinearInterpolator.h" 20 | 21 | elxInstallMacro(LinearInterpolator); 22 | -------------------------------------------------------------------------------- /Components/Interpolators/LinearInterpolator/elxLinearInterpolator.hxx: -------------------------------------------------------------------------------- 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 | #ifndef elxLinearInterpolator_hxx 20 | #define elxLinearInterpolator_hxx 21 | 22 | #include "elxLinearInterpolator.h" 23 | 24 | namespace elastix 25 | { 26 | 27 | /** Nothing */ 28 | 29 | } // end namespace elastix 30 | 31 | #endif // end #ifndef elxLinearInterpolator_hxx 32 | -------------------------------------------------------------------------------- /Components/Interpolators/NearestNeighborInterpolator/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( NearestNeighborInterpolator # Was OFF by default before elastix 5.0.1 3 | elxNearestNeighborInterpolator.h 4 | elxNearestNeighborInterpolator.hxx 5 | elxNearestNeighborInterpolator.cxx) 6 | -------------------------------------------------------------------------------- /Components/Interpolators/NearestNeighborInterpolator/elxNearestNeighborInterpolator.cxx: -------------------------------------------------------------------------------- 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 | #include "elxNearestNeighborInterpolator.h" 20 | 21 | elxInstallMacro(NearestNeighborInterpolator); 22 | -------------------------------------------------------------------------------- /Components/Interpolators/NearestNeighborInterpolator/elxNearestNeighborInterpolator.hxx: -------------------------------------------------------------------------------- 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 | #ifndef elxNearestNeighborInterpolator_hxx 20 | #define elxNearestNeighborInterpolator_hxx 21 | 22 | #include "elxNearestNeighborInterpolator.h" 23 | 24 | namespace elastix 25 | { 26 | 27 | /** Nothing */ 28 | 29 | } // end namespace elastix 30 | 31 | #endif // end #ifndef elxNearestNeighborInterpolator_hxx 32 | -------------------------------------------------------------------------------- /Components/Interpolators/RayCastInterpolator/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( RayCastInterpolator # Was OFF by default before elastix 5.0.1 3 | elxRayCastInterpolator.h 4 | elxRayCastInterpolator.hxx 5 | elxRayCastInterpolator.cxx) 6 | -------------------------------------------------------------------------------- /Components/Interpolators/RayCastInterpolator/elxRayCastInterpolator.cxx: -------------------------------------------------------------------------------- 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 | #include "elxRayCastInterpolator.h" 20 | 21 | elxInstallMacro(RayCastInterpolator); 22 | -------------------------------------------------------------------------------- /Components/Interpolators/ReducedDimensionBSplineInterpolator/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( ReducedDimensionBSplineInterpolator 3 | elxReducedDimensionBSplineInterpolator.h 4 | elxReducedDimensionBSplineInterpolator.hxx 5 | elxReducedDimensionBSplineInterpolator.cxx) 6 | -------------------------------------------------------------------------------- /Components/Interpolators/ReducedDimensionBSplineInterpolator/elxReducedDimensionBSplineInterpolator.cxx: -------------------------------------------------------------------------------- 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 | #include "elxReducedDimensionBSplineInterpolator.h" 20 | 21 | elxInstallMacro(ReducedDimensionBSplineInterpolator); 22 | -------------------------------------------------------------------------------- /Components/Metrics/AdvancedKappaStatistic/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( AdvancedKappaStatisticMetric # Was OFF by default before elastix 5.0.1 3 | elxAdvancedKappaStatisticMetric.h 4 | elxAdvancedKappaStatisticMetric.hxx 5 | elxAdvancedKappaStatisticMetric.cxx 6 | itkAdvancedKappaStatisticImageToImageMetric.h 7 | itkAdvancedKappaStatisticImageToImageMetric.hxx) 8 | -------------------------------------------------------------------------------- /Components/Metrics/AdvancedKappaStatistic/elxAdvancedKappaStatisticMetric.cxx: -------------------------------------------------------------------------------- 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 | #include "elxAdvancedKappaStatisticMetric.h" 20 | 21 | elxInstallMacro(AdvancedKappaStatisticMetric); 22 | -------------------------------------------------------------------------------- /Components/Metrics/AdvancedMattesMutualInformation/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( AdvancedMattesMutualInformationMetric 3 | elxAdvancedMattesMutualInformationMetric.h 4 | elxAdvancedMattesMutualInformationMetric.hxx 5 | elxAdvancedMattesMutualInformationMetric.cxx 6 | itkParzenWindowMutualInformationImageToImageMetric.h 7 | itkParzenWindowMutualInformationImageToImageMetric.hxx) 8 | -------------------------------------------------------------------------------- /Components/Metrics/AdvancedMattesMutualInformation/elxAdvancedMattesMutualInformationMetric.cxx: -------------------------------------------------------------------------------- 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 | #include "elxAdvancedMattesMutualInformationMetric.h" 20 | 21 | elxInstallMacro(AdvancedMattesMutualInformationMetric); 22 | -------------------------------------------------------------------------------- /Components/Metrics/AdvancedMeanSquares/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( AdvancedMeanSquaresMetric 3 | elxAdvancedMeanSquaresMetric.h 4 | elxAdvancedMeanSquaresMetric.hxx 5 | elxAdvancedMeanSquaresMetric.cxx 6 | itkAdvancedMeanSquaresImageToImageMetric.h 7 | itkAdvancedMeanSquaresImageToImageMetric.hxx) 8 | -------------------------------------------------------------------------------- /Components/Metrics/AdvancedMeanSquares/elxAdvancedMeanSquaresMetric.cxx: -------------------------------------------------------------------------------- 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 | #include "elxAdvancedMeanSquaresMetric.h" 20 | 21 | elxInstallMacro(AdvancedMeanSquaresMetric); 22 | -------------------------------------------------------------------------------- /Components/Metrics/AdvancedNormalizedCorrelation/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( AdvancedNormalizedCorrelationMetric 3 | elxAdvancedNormalizedCorrelationMetric.h 4 | elxAdvancedNormalizedCorrelationMetric.hxx 5 | elxAdvancedNormalizedCorrelationMetric.cxx 6 | itkAdvancedNormalizedCorrelationImageToImageMetric.h 7 | itkAdvancedNormalizedCorrelationImageToImageMetric.hxx) 8 | -------------------------------------------------------------------------------- /Components/Metrics/AdvancedNormalizedCorrelation/elxAdvancedNormalizedCorrelationMetric.cxx: -------------------------------------------------------------------------------- 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 | #include "elxAdvancedNormalizedCorrelationMetric.h" 20 | 21 | elxInstallMacro(AdvancedNormalizedCorrelationMetric); 22 | -------------------------------------------------------------------------------- /Components/Metrics/BendingEnergyPenalty/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( TransformBendingEnergyPenalty 3 | elxTransformBendingEnergyPenaltyTerm.h 4 | elxTransformBendingEnergyPenaltyTerm.hxx 5 | elxTransformBendingEnergyPenaltyTerm.cxx 6 | itkTransformBendingEnergyPenaltyTerm.h 7 | itkTransformBendingEnergyPenaltyTerm.hxx 8 | ) 9 | -------------------------------------------------------------------------------- /Components/Metrics/BendingEnergyPenalty/elxTransformBendingEnergyPenaltyTerm.cxx: -------------------------------------------------------------------------------- 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 | #include "elxTransformBendingEnergyPenaltyTerm.h" 19 | 20 | elxInstallMacro(TransformBendingEnergyPenalty); 21 | -------------------------------------------------------------------------------- /Components/Metrics/CorrespondingPointsEuclideanDistanceMetric/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( CorrespondingPointsEuclideanDistanceMetric 3 | elxCorrespondingPointsEuclideanDistanceMetric.cxx 4 | elxCorrespondingPointsEuclideanDistanceMetric.h 5 | elxCorrespondingPointsEuclideanDistanceMetric.hxx 6 | itkCorrespondingPointsEuclideanDistancePointMetric.h 7 | itkCorrespondingPointsEuclideanDistancePointMetric.hxx) 8 | -------------------------------------------------------------------------------- /Components/Metrics/CorrespondingPointsEuclideanDistanceMetric/elxCorrespondingPointsEuclideanDistanceMetric.cxx: -------------------------------------------------------------------------------- 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 | #include "elxCorrespondingPointsEuclideanDistanceMetric.h" 20 | 21 | elxInstallMacro(CorrespondingPointsEuclideanDistanceMetric); 22 | -------------------------------------------------------------------------------- /Components/Metrics/DisplacementMagnitudePenalty/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( DisplacementMagnitudePenalty # Was OFF by default before elastix 5.0.1 3 | elxDisplacementMagnitudePenalty.h 4 | elxDisplacementMagnitudePenalty.hxx 5 | elxDisplacementMagnitudePenalty.cxx 6 | itkDisplacementMagnitudePenaltyTerm.h 7 | itkDisplacementMagnitudePenaltyTerm.hxx 8 | ) 9 | -------------------------------------------------------------------------------- /Components/Metrics/DisplacementMagnitudePenalty/elxDisplacementMagnitudePenalty.cxx: -------------------------------------------------------------------------------- 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 | #include "elxDisplacementMagnitudePenalty.h" 19 | 20 | elxInstallMacro(DisplacementMagnitudePenalty); 21 | -------------------------------------------------------------------------------- /Components/Metrics/DistancePreservingRigidityPenalty/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( DistancePreservingRigidityPenalty 3 | elxDistancePreservingRigidityPenaltyTerm.h 4 | elxDistancePreservingRigidityPenaltyTerm.hxx 5 | elxDistancePreservingRigidityPenaltyTerm.cxx 6 | itkDistancePreservingRigidityPenaltyTerm.h 7 | itkDistancePreservingRigidityPenaltyTerm.hxx) 8 | -------------------------------------------------------------------------------- /Components/Metrics/DistancePreservingRigidityPenalty/elxDistancePreservingRigidityPenaltyTerm.cxx: -------------------------------------------------------------------------------- 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 | #include "elxDistancePreservingRigidityPenaltyTerm.h" 19 | 20 | elxInstallMacro(DistancePreservingRigidityPenalty); 21 | -------------------------------------------------------------------------------- /Components/Metrics/GradientDifference/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( GradientDifferenceMetric # Was OFF by default before elastix 5.0.1 3 | elxGradientDifferenceMetric.h 4 | elxGradientDifferenceMetric.hxx 5 | elxGradientDifferenceMetric.cxx 6 | itkGradientDifferenceImageToImageMetric2.h 7 | itkGradientDifferenceImageToImageMetric2.hxx) 8 | -------------------------------------------------------------------------------- /Components/Metrics/GradientDifference/elxGradientDifferenceMetric.cxx: -------------------------------------------------------------------------------- 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 | #include "elxGradientDifferenceMetric.h" 20 | 21 | elxInstallMacro(GradientDifferenceMetric); 22 | -------------------------------------------------------------------------------- /Components/Metrics/KNNGraphAlphaMutualInformation/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( KNNGraphAlphaMutualInformationMetric 3 | elxKNNGraphAlphaMutualInformationMetric.h 4 | elxKNNGraphAlphaMutualInformationMetric.hxx 5 | elxKNNGraphAlphaMutualInformationMetric.cxx 6 | itkKNNGraphAlphaMutualInformationImageToImageMetric.h 7 | itkKNNGraphAlphaMutualInformationImageToImageMetric.hxx 8 | ) 9 | 10 | if(USE_KNNGraphAlphaMutualInformationMetric) 11 | if(ELASTIX_NO_INSTALL_RUNTIME_LIBRARIES AND NOT ELASTIX_NO_INSTALL_DEVELOPMENT) 12 | message(SEND_ERROR "USE_KNNGraphAlphaMutualInformationMetric with ELASTIX_NO_INSTALL_RUNTIME_LIBRARIES enabled requires ELASTIX_NO_INSTALL_DEVELOPMENT enabled") 13 | endif() 14 | add_subdirectory(KNN) 15 | target_include_directories(KNNGraphAlphaMutualInformationMetric 16 | PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/KNN) 17 | target_link_libraries(KNNGraphAlphaMutualInformationMetric KNNlib ANNlib) 18 | elastix_export_target(KNNlib) 19 | elastix_export_target(ANNlib) 20 | endif() 21 | -------------------------------------------------------------------------------- /Components/Metrics/KNNGraphAlphaMutualInformation/KNN/itkBinaryANNTreeBase.hxx: -------------------------------------------------------------------------------- 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 | #ifndef itkBinaryANNTreeBase_hxx 19 | #define itkBinaryANNTreeBase_hxx 20 | 21 | #include "itkBinaryANNTreeBase.h" 22 | 23 | #endif // end #ifndef itkBinaryANNTreeBase_hxx 24 | -------------------------------------------------------------------------------- /Components/Metrics/KNNGraphAlphaMutualInformation/elxKNNGraphAlphaMutualInformationMetric.cxx: -------------------------------------------------------------------------------- 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 | #include "elxKNNGraphAlphaMutualInformationMetric.h" 20 | 21 | elxInstallMacro(KNNGraphAlphaMutualInformationMetric); 22 | -------------------------------------------------------------------------------- /Components/Metrics/MissingStructurePenalty/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | ADD_ELXCOMPONENT( MissingStructurePenalty # Was OFF by default before elastix 5.0.1 2 | elxMissingStructurePenalty.cxx 3 | elxMissingStructurePenalty.h 4 | elxMissingStructurePenalty.hxx 5 | itkMissingStructurePenalty.h 6 | itkMissingStructurePenalty.hxx 7 | vnl_adjugate_fixed.h) 8 | -------------------------------------------------------------------------------- /Components/Metrics/MissingStructurePenalty/elxMissingStructurePenalty.cxx: -------------------------------------------------------------------------------- 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 | #include "elxMissingStructurePenalty.h" 20 | 21 | elxInstallMacro(MissingStructurePenalty); 22 | -------------------------------------------------------------------------------- /Components/Metrics/NormalizedGradientCorrelation/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( NormalizedGradientCorrelationMetric # Was OFF by default before elastix 5.0.1 3 | elxNormalizedGradientCorrelationMetric.h 4 | elxNormalizedGradientCorrelationMetric.hxx 5 | elxNormalizedGradientCorrelationMetric.cxx 6 | itkNormalizedGradientCorrelationImageToImageMetric.h 7 | itkNormalizedGradientCorrelationImageToImageMetric.hxx) 8 | -------------------------------------------------------------------------------- /Components/Metrics/NormalizedGradientCorrelation/elxNormalizedGradientCorrelationMetric.cxx: -------------------------------------------------------------------------------- 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 | #include "elxNormalizedGradientCorrelationMetric.h" 20 | 21 | elxInstallMacro(NormalizedGradientCorrelationMetric); 22 | -------------------------------------------------------------------------------- /Components/Metrics/NormalizedMutualInformation/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( NormalizedMutualInformationMetric 3 | elxNormalizedMutualInformationMetric.h 4 | elxNormalizedMutualInformationMetric.hxx 5 | elxNormalizedMutualInformationMetric.cxx 6 | itkParzenWindowNormalizedMutualInformationImageToImageMetric.h 7 | itkParzenWindowNormalizedMutualInformationImageToImageMetric.hxx) 8 | -------------------------------------------------------------------------------- /Components/Metrics/NormalizedMutualInformation/elxNormalizedMutualInformationMetric.cxx: -------------------------------------------------------------------------------- 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 | #include "elxNormalizedMutualInformationMetric.h" 20 | 21 | elxInstallMacro(NormalizedMutualInformationMetric); 22 | -------------------------------------------------------------------------------- /Components/Metrics/PCAMetric/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | ADD_ELXCOMPONENT( PCAMetric ON 2 | elxPCAMetric.h 3 | elxPCAMetric.hxx 4 | elxPCAMetric.cxx 5 | itkPCAMetric.h 6 | itkPCAMetric.hxx) 7 | -------------------------------------------------------------------------------- /Components/Metrics/PCAMetric/elxPCAMetric.cxx: -------------------------------------------------------------------------------- 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 | #include "elxPCAMetric.h" 20 | 21 | elxInstallMacro(PCAMetric); 22 | -------------------------------------------------------------------------------- /Components/Metrics/PCAMetric2/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | ADD_ELXCOMPONENT( PCAMetric2 ON 2 | elxPCAMetric2.h 3 | elxPCAMetric2.hxx 4 | elxPCAMetric2.cxx 5 | itkPCAMetric2.h 6 | itkPCAMetric2.hxx) 7 | -------------------------------------------------------------------------------- /Components/Metrics/PCAMetric2/elxPCAMetric2.cxx: -------------------------------------------------------------------------------- 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 | #include "elxPCAMetric2.h" 20 | 21 | elxInstallMacro(PCAMetric2); 22 | -------------------------------------------------------------------------------- /Components/Metrics/PatternIntensity/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( PatternIntensityMetric # Was OFF by default before elastix 5.0.1 3 | elxPatternIntensityMetric.h 4 | elxPatternIntensityMetric.hxx 5 | elxPatternIntensityMetric.cxx 6 | itkPatternIntensityImageToImageMetric.h 7 | itkPatternIntensityImageToImageMetric.hxx) 8 | -------------------------------------------------------------------------------- /Components/Metrics/PatternIntensity/elxPatternIntensityMetric.cxx: -------------------------------------------------------------------------------- 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 | #include "elxPatternIntensityMetric.h" 20 | 21 | elxInstallMacro(PatternIntensityMetric); 22 | -------------------------------------------------------------------------------- /Components/Metrics/PolydataDummyPenalty/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | ADD_ELXCOMPONENT( PolydataDummyPenalty # Was OFF by default before elastix 5.0.1 2 | elxPolydataDummyPenalty.cxx 3 | elxPolydataDummyPenalty.h 4 | elxPolydataDummyPenalty.hxx 5 | itkPolydataDummyPenalty.h 6 | itkPolydataDummyPenalty.hxx 7 | ) 8 | -------------------------------------------------------------------------------- /Components/Metrics/PolydataDummyPenalty/elxPolydataDummyPenalty.cxx: -------------------------------------------------------------------------------- 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 | #include "elxPolydataDummyPenalty.h" 20 | 21 | elxInstallMacro(PolydataDummyPenalty); 22 | -------------------------------------------------------------------------------- /Components/Metrics/RigidityPenalty/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( TransformRigidityPenalty 3 | elxTransformRigidityPenaltyTerm.h 4 | elxTransformRigidityPenaltyTerm.hxx 5 | elxTransformRigidityPenaltyTerm.cxx 6 | itkTransformRigidityPenaltyTerm.h 7 | itkTransformRigidityPenaltyTerm.hxx 8 | ) 9 | -------------------------------------------------------------------------------- /Components/Metrics/RigidityPenalty/elxTransformRigidityPenaltyTerm.cxx: -------------------------------------------------------------------------------- 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 | #include "elxTransformRigidityPenaltyTerm.h" 19 | 20 | elxInstallMacro(TransformRigidityPenalty); 21 | -------------------------------------------------------------------------------- /Components/Metrics/StatisticalShapePenalty/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( StatisticalShapePenalty # Was OFF by default before elastix 5.0.1 3 | elxStatisticalShapePenalty.cxx 4 | elxStatisticalShapePenalty.h 5 | elxStatisticalShapePenalty.hxx 6 | itkStatisticalShapePointPenalty.h 7 | itkStatisticalShapePointPenalty.hxx) 8 | -------------------------------------------------------------------------------- /Components/Metrics/StatisticalShapePenalty/elxStatisticalShapePenalty.cxx: -------------------------------------------------------------------------------- 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 | #include "elxStatisticalShapePenalty.h" 20 | 21 | elxInstallMacro(StatisticalShapePenalty); 22 | -------------------------------------------------------------------------------- /Components/Metrics/SumOfPairwiseCorrelationsMetric/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | ADD_ELXCOMPONENT( SumOfPairwiseCorrelationCoefficientsMetric 2 | elxSumOfPairwiseCorrelationCoefficientsMetric.h 3 | elxSumOfPairwiseCorrelationCoefficientsMetric.hxx 4 | elxSumOfPairwiseCorrelationCoefficientsMetric.cxx 5 | itkSumOfPairwiseCorrelationCoefficientsMetric.h 6 | itkSumOfPairwiseCorrelationCoefficientsMetric.hxx 7 | ) 8 | -------------------------------------------------------------------------------- /Components/Metrics/SumOfPairwiseCorrelationsMetric/elxSumOfPairwiseCorrelationCoefficientsMetric.cxx: -------------------------------------------------------------------------------- 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 | #include "elxSumOfPairwiseCorrelationCoefficientsMetric.h" 20 | 21 | elxInstallMacro(SumOfPairwiseCorrelationCoefficientsMetric); 22 | -------------------------------------------------------------------------------- /Components/Metrics/SumSquaredTissueVolumeDifferenceMetric/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( SumSquaredTissueVolumeDifferenceMetric 3 | elxSumSquaredTissueVolumeDifferenceMetric.h 4 | elxSumSquaredTissueVolumeDifferenceMetric.hxx 5 | elxSumSquaredTissueVolumeDifferenceMetric.cxx 6 | itkSumSquaredTissueVolumeDifferenceImageToImageMetric.h 7 | itkSumSquaredTissueVolumeDifferenceImageToImageMetric.hxx) 8 | -------------------------------------------------------------------------------- /Components/Metrics/SumSquaredTissueVolumeDifferenceMetric/elxSumSquaredTissueVolumeDifferenceMetric.cxx: -------------------------------------------------------------------------------- 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 | #include "elxSumSquaredTissueVolumeDifferenceMetric.h" 20 | 21 | elxInstallMacro(SumSquaredTissueVolumeDifferenceMetric); 22 | -------------------------------------------------------------------------------- /Components/Metrics/VarianceOverLastDimension/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( VarianceOverLastDimensionMetric 3 | elxVarianceOverLastDimensionMetric.h 4 | elxVarianceOverLastDimensionMetric.hxx 5 | elxVarianceOverLastDimensionMetric.cxx 6 | itkVarianceOverLastDimensionImageMetric.h 7 | itkVarianceOverLastDimensionImageMetric.hxx 8 | ) 9 | -------------------------------------------------------------------------------- /Components/Metrics/VarianceOverLastDimension/elxVarianceOverLastDimensionMetric.cxx: -------------------------------------------------------------------------------- 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 | #include "elxVarianceOverLastDimensionMetric.h" 20 | 21 | elxInstallMacro(VarianceOverLastDimensionMetric); 22 | -------------------------------------------------------------------------------- /Components/MovingImagePyramids/MovingGenericPyramid/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( MovingGenericPyramid 3 | elxMovingGenericPyramid.h 4 | elxMovingGenericPyramid.hxx 5 | elxMovingGenericPyramid.cxx) 6 | -------------------------------------------------------------------------------- /Components/MovingImagePyramids/MovingGenericPyramid/elxMovingGenericPyramid.cxx: -------------------------------------------------------------------------------- 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 | #include "elxMovingGenericPyramid.h" 20 | 21 | elxInstallMacro(MovingGenericPyramid); 22 | -------------------------------------------------------------------------------- /Components/MovingImagePyramids/MovingRecursivePyramid/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( MovingRecursivePyramid 3 | elxMovingRecursivePyramid.h 4 | elxMovingRecursivePyramid.hxx 5 | elxMovingRecursivePyramid.cxx) 6 | -------------------------------------------------------------------------------- /Components/MovingImagePyramids/MovingRecursivePyramid/elxMovingRecursivePyramid.cxx: -------------------------------------------------------------------------------- 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 | #include "elxMovingRecursivePyramid.h" 20 | 21 | elxInstallMacro(MovingRecursivePyramid); 22 | -------------------------------------------------------------------------------- /Components/MovingImagePyramids/MovingRecursivePyramid/elxMovingRecursivePyramid.hxx: -------------------------------------------------------------------------------- 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 | #ifndef elxMovingRecursivePyramid_hxx 20 | #define elxMovingRecursivePyramid_hxx 21 | 22 | #include "elxMovingRecursivePyramid.h" 23 | 24 | // nothing 25 | 26 | #endif // #ifndef elxMovingRecursivePyramid_hxx 27 | -------------------------------------------------------------------------------- /Components/MovingImagePyramids/MovingShrinkingPyramid/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( MovingShrinkingPyramid # Was OFF by default before elastix 5.0.1 3 | elxMovingShrinkingPyramid.h 4 | elxMovingShrinkingPyramid.hxx 5 | elxMovingShrinkingPyramid.cxx) 6 | -------------------------------------------------------------------------------- /Components/MovingImagePyramids/MovingShrinkingPyramid/elxMovingShrinkingPyramid.cxx: -------------------------------------------------------------------------------- 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 | #include "elxMovingShrinkingPyramid.h" 20 | 21 | elxInstallMacro(MovingShrinkingPyramid); 22 | -------------------------------------------------------------------------------- /Components/MovingImagePyramids/MovingShrinkingPyramid/elxMovingShrinkingPyramid.hxx: -------------------------------------------------------------------------------- 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 | #ifndef elxMovingShrinkingPyramid_hxx 20 | #define elxMovingShrinkingPyramid_hxx 21 | 22 | #include "elxMovingShrinkingPyramid.h" 23 | 24 | namespace elastix 25 | {} // end namespace elastix 26 | 27 | #endif // #ifndef elxMovingShrinkingPyramid_hxx 28 | -------------------------------------------------------------------------------- /Components/MovingImagePyramids/MovingSmoothingPyramid/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( MovingSmoothingPyramid 3 | elxMovingSmoothingPyramid.h 4 | elxMovingSmoothingPyramid.hxx 5 | elxMovingSmoothingPyramid.cxx) 6 | -------------------------------------------------------------------------------- /Components/MovingImagePyramids/MovingSmoothingPyramid/elxMovingSmoothingPyramid.cxx: -------------------------------------------------------------------------------- 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 | #include "elxMovingSmoothingPyramid.h" 20 | 21 | elxInstallMacro(MovingSmoothingPyramid); 22 | -------------------------------------------------------------------------------- /Components/MovingImagePyramids/MovingSmoothingPyramid/elxMovingSmoothingPyramid.hxx: -------------------------------------------------------------------------------- 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 | #ifndef elxMovingSmoothingPyramid_hxx 20 | #define elxMovingSmoothingPyramid_hxx 21 | 22 | #include "elxMovingSmoothingPyramid.h" 23 | 24 | // nothing 25 | 26 | #endif // #ifndef elxMovingSmoothingPyramid_hxx 27 | -------------------------------------------------------------------------------- /Components/MovingImagePyramids/OpenCLMovingGenericPyramid/elxOpenCLMovingGenericPyramid.cxx: -------------------------------------------------------------------------------- 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 | #include "elxOpenCLMovingGenericPyramid.h" 20 | 21 | elxInstallMacro(OpenCLMovingGenericPyramid); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/AdaGrad/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( AdaGrad OFF # OFF by default after elastix 5.0.1 3 | elxAdaGrad.h 4 | elxAdaGrad.hxx 5 | elxAdaGrad.cxx 6 | itkAdaptiveStepsizeOptimizer.h 7 | itkAdaptiveStepsizeOptimizer.cxx 8 | ../StandardGradientDescent/itkStandardGradientDescentOptimizer.cxx 9 | ../StandardGradientDescent/itkGradientDescentOptimizer2.cxx 10 | ) 11 | -------------------------------------------------------------------------------- /Components/Optimizers/AdaGrad/elxAdaGrad.cxx: -------------------------------------------------------------------------------- 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 | #include "elxAdaGrad.h" 20 | 21 | elxInstallMacro(AdaGrad); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/AdaptiveStochasticGradientDescent/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( AdaptiveStochasticGradientDescent 3 | elxAdaptiveStochasticGradientDescent.h 4 | elxAdaptiveStochasticGradientDescent.hxx 5 | elxAdaptiveStochasticGradientDescent.cxx 6 | itkAdaptiveStochasticGradientDescentOptimizer.h 7 | itkAdaptiveStochasticGradientDescentOptimizer.cxx 8 | ../StandardGradientDescent/itkStandardGradientDescentOptimizer.cxx 9 | ../StandardGradientDescent/itkGradientDescentOptimizer2.cxx 10 | ) 11 | -------------------------------------------------------------------------------- /Components/Optimizers/AdaptiveStochasticGradientDescent/elxAdaptiveStochasticGradientDescent.cxx: -------------------------------------------------------------------------------- 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 | #include "elxAdaptiveStochasticGradientDescent.h" 20 | 21 | elxInstallMacro(AdaptiveStochasticGradientDescent); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/AdaptiveStochasticLBFGS/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( AdaptiveStochasticLBFGS OFF # OFF by default after elastix 5.0.1 3 | elxAdaptiveStochasticLBFGS.h 4 | elxAdaptiveStochasticLBFGS.hxx 5 | elxAdaptiveStochasticLBFGS.cxx 6 | itkAdaptiveStochasticLBFGSOptimizer.h 7 | itkAdaptiveStochasticLBFGSOptimizer.cxx 8 | ../StandardStochasticGradientDescent/itkStandardStochasticGradientDescentOptimizer.h 9 | ../StandardStochasticGradientDescent/itkStandardStochasticGradientDescentOptimizer.cxx 10 | ../StandardStochasticGradientDescent/itkStochasticGradientDescentOptimizer.h 11 | ../StandardStochasticGradientDescent/itkStochasticGradientDescentOptimizer.cxx 12 | ) 13 | -------------------------------------------------------------------------------- /Components/Optimizers/AdaptiveStochasticLBFGS/elxAdaptiveStochasticLBFGS.cxx: -------------------------------------------------------------------------------- 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 | #include "elxAdaptiveStochasticLBFGS.h" 20 | 21 | elxInstallMacro(AdaptiveStochasticLBFGS); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/AdaptiveStochasticVarianceReducedGradient/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( AdaptiveStochasticVarianceReducedGradient OFF # OFF by default after elastix 5.0.1 3 | elxAdaptiveStochasticVarianceReducedGradient.h 4 | elxAdaptiveStochasticVarianceReducedGradient.hxx 5 | elxAdaptiveStochasticVarianceReducedGradient.cxx 6 | itkAdaptiveStochasticVarianceReducedGradientOptimizer.h 7 | itkAdaptiveStochasticVarianceReducedGradientOptimizer.cxx 8 | itkStandardStochasticVarianceReducedGradientDescentOptimizer.cxx 9 | itkStochasticVarianceReducedGradientDescentOptimizer.cxx 10 | ) 11 | -------------------------------------------------------------------------------- /Components/Optimizers/AdaptiveStochasticVarianceReducedGradient/elxAdaptiveStochasticVarianceReducedGradient.cxx: -------------------------------------------------------------------------------- 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 | #include "elxAdaptiveStochasticVarianceReducedGradient.h" 20 | 21 | elxInstallMacro(AdaptiveStochasticVarianceReducedGradient); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/CMAEvolutionStrategy/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( CMAEvolutionStrategy # Was OFF by default before elastix 5.0.1 3 | elxCMAEvolutionStrategy.h 4 | elxCMAEvolutionStrategy.hxx 5 | elxCMAEvolutionStrategy.cxx 6 | itkCMAEvolutionStrategyOptimizer.h 7 | itkCMAEvolutionStrategyOptimizer.cxx) 8 | -------------------------------------------------------------------------------- /Components/Optimizers/CMAEvolutionStrategy/elxCMAEvolutionStrategy.cxx: -------------------------------------------------------------------------------- 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 | #include "elxCMAEvolutionStrategy.h" 20 | 21 | elxInstallMacro(CMAEvolutionStrategy); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/ConjugateGradient/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( ConjugateGradient 3 | elxConjugateGradient.h 4 | elxConjugateGradient.hxx 5 | elxConjugateGradient.cxx 6 | itkGenericConjugateGradientOptimizer.h 7 | itkGenericConjugateGradientOptimizer.cxx) 8 | -------------------------------------------------------------------------------- /Components/Optimizers/ConjugateGradient/elxConjugateGradient.cxx: -------------------------------------------------------------------------------- 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 | #include "elxConjugateGradient.h" 20 | 21 | elxInstallMacro(ConjugateGradient); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/ConjugateGradientFRPR/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( ConjugateGradientFRPR # Was OFF by default before elastix 5.0.1 3 | elxConjugateGradientFRPR.h 4 | elxConjugateGradientFRPR.hxx 5 | elxConjugateGradientFRPR.cxx) 6 | -------------------------------------------------------------------------------- /Components/Optimizers/ConjugateGradientFRPR/elxConjugateGradientFRPR.cxx: -------------------------------------------------------------------------------- 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 | #include "elxConjugateGradientFRPR.h" 20 | 21 | elxInstallMacro(ConjugateGradientFRPR); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/FiniteDifferenceGradientDescent/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( FiniteDifferenceGradientDescent 3 | elxFiniteDifferenceGradientDescent.h 4 | elxFiniteDifferenceGradientDescent.hxx 5 | elxFiniteDifferenceGradientDescent.cxx 6 | itkFiniteDifferenceGradientDescentOptimizer.cxx 7 | itkFiniteDifferenceGradientDescentOptimizer.h) 8 | -------------------------------------------------------------------------------- /Components/Optimizers/FiniteDifferenceGradientDescent/elxFiniteDifferenceGradientDescent.cxx: -------------------------------------------------------------------------------- 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 | #include "elxFiniteDifferenceGradientDescent.h" 20 | 21 | elxInstallMacro(FiniteDifferenceGradientDescent); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/FullSearch/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( FullSearch 3 | elxFullSearchOptimizer.h 4 | elxFullSearchOptimizer.hxx 5 | elxFullSearchOptimizer.cxx 6 | itkFullSearchOptimizer.h 7 | itkFullSearchOptimizer.cxx) 8 | -------------------------------------------------------------------------------- /Components/Optimizers/FullSearch/elxFullSearchOptimizer.cxx: -------------------------------------------------------------------------------- 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 | #include "elxFullSearchOptimizer.h" 20 | 21 | elxInstallMacro(FullSearch); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/Powell/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( Powell 3 | elxPowell.h 4 | elxPowell.hxx 5 | elxPowell.cxx) 6 | -------------------------------------------------------------------------------- /Components/Optimizers/Powell/elxPowell.cxx: -------------------------------------------------------------------------------- 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 | #include "elxPowell.h" 20 | 21 | elxInstallMacro(Powell); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/PreconditionedStochasticGradientDescent/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( PreconditionedStochasticGradientDescent 3 | elxPreconditionedStochasticGradientDescent.h 4 | elxPreconditionedStochasticGradientDescent.hxx 5 | elxPreconditionedStochasticGradientDescent.cxx 6 | itkPreconditionedASGDOptimizer.h 7 | itkPreconditionedASGDOptimizer.cxx 8 | ../StandardGradientDescent/itkStandardGradientDescentOptimizer.cxx 9 | ../StandardGradientDescent/itkGradientDescentOptimizer2.cxx 10 | ) 11 | -------------------------------------------------------------------------------- /Components/Optimizers/PreconditionedStochasticGradientDescent/elxPreconditionedStochasticGradientDescent.cxx: -------------------------------------------------------------------------------- 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 | #include "elxPreconditionedStochasticGradientDescent.h" 20 | 21 | elxInstallMacro(PreconditionedStochasticGradientDescent); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/QuasiNewtonLBFGS/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( QuasiNewtonLBFGS 3 | elxQuasiNewtonLBFGS.h 4 | elxQuasiNewtonLBFGS.hxx 5 | elxQuasiNewtonLBFGS.cxx 6 | itkQuasiNewtonLBFGSOptimizer.h 7 | itkQuasiNewtonLBFGSOptimizer.cxx) 8 | -------------------------------------------------------------------------------- /Components/Optimizers/QuasiNewtonLBFGS/elxQuasiNewtonLBFGS.cxx: -------------------------------------------------------------------------------- 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 | #include "elxQuasiNewtonLBFGS.h" 20 | 21 | elxInstallMacro(QuasiNewtonLBFGS); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/RSGDEachParameterApart/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( RSGDEachParameterApart # Was OFF by default before elastix 5.0.1 3 | elxRSGDEachParameterApart.h 4 | elxRSGDEachParameterApart.hxx 5 | elxRSGDEachParameterApart.cxx 6 | itkRSGDEachParameterApartOptimizer.h 7 | itkRSGDEachParameterApartOptimizer.cxx 8 | itkRSGDEachParameterApartBaseOptimizer.h 9 | itkRSGDEachParameterApartBaseOptimizer.cxx) 10 | -------------------------------------------------------------------------------- /Components/Optimizers/RSGDEachParameterApart/elxRSGDEachParameterApart.cxx: -------------------------------------------------------------------------------- 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 | #include "elxRSGDEachParameterApart.h" 20 | 21 | elxInstallMacro(RSGDEachParameterApart); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/RegularStepGradientDescent/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( RegularStepGradientDescent 3 | elxRegularStepGradientDescent.h 4 | elxRegularStepGradientDescent.hxx 5 | elxRegularStepGradientDescent.cxx) 6 | -------------------------------------------------------------------------------- /Components/Optimizers/RegularStepGradientDescent/elxRegularStepGradientDescent.cxx: -------------------------------------------------------------------------------- 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 | #include "elxRegularStepGradientDescent.h" 20 | 21 | elxInstallMacro(RegularStepGradientDescent); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/Simplex/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( Simplex # Was OFF by default before elastix 5.0.1 3 | elxSimplex.h 4 | elxSimplex.hxx 5 | elxSimplex.cxx) 6 | -------------------------------------------------------------------------------- /Components/Optimizers/Simplex/elxSimplex.cxx: -------------------------------------------------------------------------------- 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 | #include "elxSimplex.h" 20 | 21 | elxInstallMacro(Simplex); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/SimultaneousPerturbation/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( SimultaneousPerturbation # Was OFF by default before elastix 5.0.1 3 | elxSimultaneousPerturbation.h 4 | elxSimultaneousPerturbation.hxx 5 | elxSimultaneousPerturbation.cxx) 6 | -------------------------------------------------------------------------------- /Components/Optimizers/SimultaneousPerturbation/elxSimultaneousPerturbation.cxx: -------------------------------------------------------------------------------- 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 | #include "elxSimultaneousPerturbation.h" 20 | 21 | elxInstallMacro(SimultaneousPerturbation); 22 | -------------------------------------------------------------------------------- /Components/Optimizers/StandardGradientDescent/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( StandardGradientDescent 3 | elxStandardGradientDescent.h 4 | elxStandardGradientDescent.hxx 5 | elxStandardGradientDescent.cxx 6 | itkStandardGradientDescentOptimizer.h 7 | itkStandardGradientDescentOptimizer.cxx 8 | itkGradientDescentOptimizer2.h 9 | itkGradientDescentOptimizer2.cxx) 10 | -------------------------------------------------------------------------------- /Components/Optimizers/StandardGradientDescent/elxStandardGradientDescent.cxx: -------------------------------------------------------------------------------- 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 | #include "elxStandardGradientDescent.h" 20 | 21 | elxInstallMacro(StandardGradientDescent); 22 | -------------------------------------------------------------------------------- /Components/Registrations/MultiMetricMultiResolutionRegistration/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( MultiMetricMultiResolutionRegistration 3 | elxMultiMetricMultiResolutionRegistration.h 4 | elxMultiMetricMultiResolutionRegistration.hxx 5 | elxMultiMetricMultiResolutionRegistration.cxx 6 | itkMultiMetricMultiResolutionImageRegistrationMethod.h 7 | itkMultiMetricMultiResolutionImageRegistrationMethod.hxx 8 | itkCombinationImageToImageMetric.h 9 | itkCombinationImageToImageMetric.hxx) 10 | -------------------------------------------------------------------------------- /Components/Registrations/MultiMetricMultiResolutionRegistration/elxMultiMetricMultiResolutionRegistration.cxx: -------------------------------------------------------------------------------- 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 | #include "elxMultiMetricMultiResolutionRegistration.h" 20 | 21 | elxInstallMacro(MultiMetricMultiResolutionRegistration); 22 | -------------------------------------------------------------------------------- /Components/Registrations/MultiResolutionRegistration/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( MultiResolutionRegistration 3 | elxMultiResolutionRegistration.h 4 | elxMultiResolutionRegistration.hxx 5 | elxMultiResolutionRegistration.cxx) 6 | -------------------------------------------------------------------------------- /Components/Registrations/MultiResolutionRegistration/elxMultiResolutionRegistration.cxx: -------------------------------------------------------------------------------- 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 | #include "elxMultiResolutionRegistration.h" 20 | 21 | elxInstallMacro(MultiResolutionRegistration); 22 | -------------------------------------------------------------------------------- /Components/Registrations/MultiResolutionRegistrationWithFeatures/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( MultiResolutionRegistrationWithFeatures 3 | elxMultiResolutionRegistrationWithFeatures.h 4 | elxMultiResolutionRegistrationWithFeatures.hxx 5 | elxMultiResolutionRegistrationWithFeatures.cxx 6 | itkMultiInputMultiResolutionImageRegistrationMethodBase.h 7 | itkMultiInputMultiResolutionImageRegistrationMethodBase.hxx 8 | itkMultiResolutionImageRegistrationMethodWithFeatures.h 9 | itkMultiResolutionImageRegistrationMethodWithFeatures.hxx) 10 | -------------------------------------------------------------------------------- /Components/Registrations/MultiResolutionRegistrationWithFeatures/elxMultiResolutionRegistrationWithFeatures.cxx: -------------------------------------------------------------------------------- 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 | #include "elxMultiResolutionRegistrationWithFeatures.h" 20 | 21 | elxInstallMacro(MultiResolutionRegistrationWithFeatures); 22 | -------------------------------------------------------------------------------- /Components/ResampleInterpolators/BSplineResampleInterpolator/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( BSplineResampleInterpolator 3 | elxBSplineResampleInterpolator.h 4 | elxBSplineResampleInterpolator.hxx 5 | elxBSplineResampleInterpolator.cxx) 6 | -------------------------------------------------------------------------------- /Components/ResampleInterpolators/BSplineResampleInterpolator/elxBSplineResampleInterpolator.cxx: -------------------------------------------------------------------------------- 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 | #include "elxBSplineResampleInterpolator.h" 20 | 21 | elxInstallMacro(BSplineResampleInterpolator); 22 | -------------------------------------------------------------------------------- /Components/ResampleInterpolators/BSplineResampleInterpolatorFloat/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( BSplineResampleInterpolatorFloat # Was OFF by default before elastix 5.0.1 3 | elxBSplineResampleInterpolatorFloat.h 4 | elxBSplineResampleInterpolatorFloat.hxx 5 | elxBSplineResampleInterpolatorFloat.cxx) 6 | -------------------------------------------------------------------------------- /Components/ResampleInterpolators/BSplineResampleInterpolatorFloat/elxBSplineResampleInterpolatorFloat.cxx: -------------------------------------------------------------------------------- 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 | #include "elxBSplineResampleInterpolatorFloat.h" 20 | 21 | elxInstallMacro(BSplineResampleInterpolatorFloat); 22 | -------------------------------------------------------------------------------- /Components/ResampleInterpolators/LinearResampleInterpolator/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( LinearResampleInterpolator # Was OFF by default before elastix 5.0.1 3 | elxLinearResampleInterpolator.h 4 | elxLinearResampleInterpolator.hxx 5 | elxLinearResampleInterpolator.cxx) 6 | -------------------------------------------------------------------------------- /Components/ResampleInterpolators/LinearResampleInterpolator/elxLinearResampleInterpolator.cxx: -------------------------------------------------------------------------------- 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 | #include "elxLinearResampleInterpolator.h" 20 | 21 | elxInstallMacro(LinearResampleInterpolator); 22 | -------------------------------------------------------------------------------- /Components/ResampleInterpolators/LinearResampleInterpolator/elxLinearResampleInterpolator.hxx: -------------------------------------------------------------------------------- 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 | #ifndef elxLinearResampleInterpolator_hxx 20 | #define elxLinearResampleInterpolator_hxx 21 | 22 | #include "elxLinearResampleInterpolator.h" 23 | 24 | // nothing 25 | 26 | #endif // end #ifndef elxLinearResampleInterpolator_hxx 27 | -------------------------------------------------------------------------------- /Components/ResampleInterpolators/NearestNeighborResampleInterpolator/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( NearestNeighborResampleInterpolator # Was OFF by default before elastix 5.0.1 3 | elxNearestNeighborResampleInterpolator.h 4 | elxNearestNeighborResampleInterpolator.hxx 5 | elxNearestNeighborResampleInterpolator.cxx) 6 | -------------------------------------------------------------------------------- /Components/ResampleInterpolators/NearestNeighborResampleInterpolator/elxNearestNeighborResampleInterpolator.cxx: -------------------------------------------------------------------------------- 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 | #include "elxNearestNeighborResampleInterpolator.h" 20 | 21 | elxInstallMacro(NearestNeighborResampleInterpolator); 22 | -------------------------------------------------------------------------------- /Components/ResampleInterpolators/NearestNeighborResampleInterpolator/elxNearestNeighborResampleInterpolator.hxx: -------------------------------------------------------------------------------- 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 | #ifndef elxNearestNeighborResampleInterpolator_hxx 20 | #define elxNearestNeighborResampleInterpolator_hxx 21 | 22 | #include "elxNearestNeighborResampleInterpolator.h" 23 | 24 | // nothing 25 | 26 | #endif // end #ifndef elxNearestNeighborResampleInterpolator_hxx 27 | -------------------------------------------------------------------------------- /Components/ResampleInterpolators/RDBSplineResampleInterpolator/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( ReducedDimensionBSplineResampleInterpolator 3 | elxRDBSplineResampleInterpolator.h 4 | elxRDBSplineResampleInterpolator.hxx 5 | elxRDBSplineResampleInterpolator.cxx) 6 | -------------------------------------------------------------------------------- /Components/ResampleInterpolators/RDBSplineResampleInterpolator/elxRDBSplineResampleInterpolator.cxx: -------------------------------------------------------------------------------- 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 | #include "elxRDBSplineResampleInterpolator.h" 20 | 21 | elxInstallMacro(ReducedDimensionBSplineResampleInterpolator); 22 | -------------------------------------------------------------------------------- /Components/ResampleInterpolators/RayCastResampleInterpolator/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( RayCastResampleInterpolator # Was OFF by default before elastix 5.0.1 3 | elxRayCastResampleInterpolator.h 4 | elxRayCastResampleInterpolator.hxx 5 | elxRayCastResampleInterpolator.cxx) 6 | -------------------------------------------------------------------------------- /Components/ResampleInterpolators/RayCastResampleInterpolator/elxRayCastResampleInterpolator.cxx: -------------------------------------------------------------------------------- 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 | #include "elxRayCastResampleInterpolator.h" 20 | 21 | elxInstallMacro(RayCastResampleInterpolator); 22 | -------------------------------------------------------------------------------- /Components/Resamplers/DefaultResampler/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( DefaultResampler 3 | elxDefaultResampler.h 4 | elxDefaultResampler.hxx 5 | elxDefaultResampler.cxx) 6 | -------------------------------------------------------------------------------- /Components/Resamplers/DefaultResampler/elxDefaultResampler.cxx: -------------------------------------------------------------------------------- 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 | #include "elxDefaultResampler.h" 20 | 21 | elxInstallMacro(DefaultResampler); 22 | -------------------------------------------------------------------------------- /Components/Resamplers/DefaultResampler/elxDefaultResampler.hxx: -------------------------------------------------------------------------------- 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 | #ifndef elxDefaultResampler_hxx 20 | #define elxDefaultResampler_hxx 21 | 22 | #include "elxDefaultResampler.h" 23 | 24 | // nothing 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /Components/Resamplers/OpenCLResampler/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | if(ELASTIX_USE_OPENCL) 3 | ADD_ELXCOMPONENT( OpenCLResampler 4 | elxOpenCLResampler.h 5 | elxOpenCLResampler.hxx 6 | elxOpenCLResampler.cxx) 7 | 8 | if(USE_OpenCLResampler) 9 | target_link_libraries(OpenCLResampler elxOpenCL) 10 | endif() 11 | else() 12 | # If the user set USE_OpenCLResampler ON, but ELASTIX_USE_OPENCL was OFF, 13 | # then issue a warning. 14 | if(USE_OpenCLResampler) 15 | message(WARNING "You selected to compile OpenCLResampler, " 16 | "but ELASTIX_USE_OPENCL is OFF.\n" 17 | "Set both options to ON to be able to build this component.") 18 | endif() 19 | 20 | # If ELASTIX_USE_OPENCL is not selected, then the elxOpenCL 21 | # library is not created, and we cannot compile this component. 22 | set(USE_OpenCLResampler OFF CACHE BOOL "Compile this component" FORCE) 23 | mark_as_advanced(USE_OpenCLResampler) 24 | 25 | # This is required to get the OpenCLResampler out of the AllComponentLibs 26 | # list defined in Components/CMakeLists.txt. 27 | REMOVE_ELXCOMPONENT( OpenCLResampler) 28 | endif() 29 | -------------------------------------------------------------------------------- /Components/Resamplers/OpenCLResampler/elxOpenCLResampler.cxx: -------------------------------------------------------------------------------- 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 | #include "elxOpenCLResampler.h" 20 | 21 | elxInstallMacro(OpenCLResampler); 22 | -------------------------------------------------------------------------------- /Components/Transforms/AdvancedAffineTransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( AdvancedAffineTransformElastix 3 | elxAdvancedAffineTransform.h 4 | elxAdvancedAffineTransform.hxx 5 | elxAdvancedAffineTransform.cxx 6 | itkCenteredTransformInitializer2.h 7 | itkCenteredTransformInitializer2.hxx) 8 | -------------------------------------------------------------------------------- /Components/Transforms/AdvancedAffineTransform/elxAdvancedAffineTransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxAdvancedAffineTransform.h" 20 | 21 | elxInstallMacro(AdvancedAffineTransformElastix); 22 | -------------------------------------------------------------------------------- /Components/Transforms/AdvancedBSplineTransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( AdvancedBSplineTransform 3 | elxAdvancedBSplineTransform.h 4 | elxAdvancedBSplineTransform.hxx 5 | elxAdvancedBSplineTransform.cxx) 6 | -------------------------------------------------------------------------------- /Components/Transforms/AdvancedBSplineTransform/elxAdvancedBSplineTransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxAdvancedBSplineTransform.h" 19 | 20 | elxInstallMacro(AdvancedBSplineTransform); 21 | -------------------------------------------------------------------------------- /Components/Transforms/AffineDTITransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( AffineDTITransformElastix # Was OFF by default before elastix 5.0.1 3 | elxAffineDTITransform.h 4 | elxAffineDTITransform.hxx 5 | elxAffineDTITransform.cxx 6 | itkAffineDTI2DTransform.h 7 | itkAffineDTI2DTransform.hxx 8 | itkAffineDTI3DTransform.h 9 | itkAffineDTI3DTransform.hxx 10 | itkAffineDTITransform.h) 11 | -------------------------------------------------------------------------------- /Components/Transforms/AffineDTITransform/elxAffineDTITransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxAffineDTITransform.h" 20 | 21 | elxInstallMacro(AffineDTITransformElastix); 22 | -------------------------------------------------------------------------------- /Components/Transforms/AffineLogStackTransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | ADD_ELXCOMPONENT( AffineLogStackTransform 2 | elxAffineLogStackTransform.h 3 | elxAffineLogStackTransform.hxx 4 | elxAffineLogStackTransform.cxx 5 | itkAffineLogStackTransform.h) 6 | -------------------------------------------------------------------------------- /Components/Transforms/AffineLogStackTransform/elxAffineLogStackTransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxAffineLogStackTransform.h" 19 | 20 | elxInstallMacro(AffineLogStackTransform); 21 | -------------------------------------------------------------------------------- /Components/Transforms/AffineLogTransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( AffineLogTransformElastix # Was OFF by default before elastix 5.0.1 3 | elxAffineLogTransform.h 4 | elxAffineLogTransform.hxx 5 | elxAffineLogTransform.cxx 6 | itkAffineLogTransform.h 7 | itkAffineLogTransform.hxx) 8 | -------------------------------------------------------------------------------- /Components/Transforms/AffineLogTransform/elxAffineLogTransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxAffineLogTransform.h" 20 | 21 | elxInstallMacro(AffineLogTransformElastix); 22 | -------------------------------------------------------------------------------- /Components/Transforms/BSplineDeformableTransformWithDiffusion/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( BSplineTransformWithDiffusion OFF 3 | elxBSplineTransformWithDiffusion.h 4 | elxBSplineTransformWithDiffusion.hxx 5 | elxBSplineTransformWithDiffusion.cxx 6 | itkDeformationFieldRegulizer.h 7 | itkDeformationFieldRegulizer.hxx 8 | itkDeformationVectorFieldTransform.h 9 | itkDeformationVectorFieldTransform.hxx 10 | itkVectorMeanDiffusionImageFilter.h 11 | itkVectorMeanDiffusionImageFilter.hxx) 12 | -------------------------------------------------------------------------------- /Components/Transforms/BSplineDeformableTransformWithDiffusion/elxBSplineTransformWithDiffusion.cxx: -------------------------------------------------------------------------------- 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 | #include "elxBSplineTransformWithDiffusion.h" 20 | 21 | elxInstallMacro(BSplineTransformWithDiffusion); 22 | -------------------------------------------------------------------------------- /Components/Transforms/BSplineStackTransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( BSplineStackTransform 3 | elxBSplineStackTransform.h 4 | elxBSplineStackTransform.hxx 5 | elxBSplineStackTransform.cxx 6 | itkBSplineStackTransform.h) 7 | -------------------------------------------------------------------------------- /Components/Transforms/BSplineStackTransform/elxBSplineStackTransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxBSplineStackTransform.h" 19 | 20 | elxInstallMacro(BSplineStackTransform); 21 | -------------------------------------------------------------------------------- /Components/Transforms/DeformationFieldTransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( DeformationFieldTransform 3 | itkDeformationFieldInterpolatingTransform.h 4 | itkDeformationFieldInterpolatingTransform.hxx 5 | elxDeformationFieldTransform.h 6 | elxDeformationFieldTransform.hxx 7 | elxDeformationFieldTransform.cxx) 8 | -------------------------------------------------------------------------------- /Components/Transforms/DeformationFieldTransform/elxDeformationFieldTransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxDeformationFieldTransform.h" 20 | 21 | elxInstallMacro(DeformationFieldTransform); 22 | -------------------------------------------------------------------------------- /Components/Transforms/EulerStackTransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | ADD_ELXCOMPONENT( EulerStackTransform 2 | elxEulerStackTransform.h 3 | elxEulerStackTransform.hxx 4 | elxEulerStackTransform.cxx 5 | itkEulerStackTransform.h) 6 | -------------------------------------------------------------------------------- /Components/Transforms/EulerStackTransform/elxEulerStackTransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxEulerStackTransform.h" 20 | 21 | elxInstallMacro(EulerStackTransform); 22 | -------------------------------------------------------------------------------- /Components/Transforms/EulerTransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( EulerTransformElastix 3 | elxEulerTransform.h 4 | elxEulerTransform.hxx 5 | elxEulerTransform.cxx) 6 | -------------------------------------------------------------------------------- /Components/Transforms/EulerTransform/elxEulerTransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxEulerTransform.h" 20 | 21 | elxInstallMacro(EulerTransformElastix); 22 | -------------------------------------------------------------------------------- /Components/Transforms/ExternalTransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( ExternalTransform 3 | elxAdvancedTransformAdapter.h 4 | elxExternalTransform.h 5 | elxExternalTransform.hxx 6 | elxExternalTransform.cxx) 7 | -------------------------------------------------------------------------------- /Components/Transforms/ExternalTransform/elxExternalTransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxExternalTransform.h" 20 | 21 | elxInstallMacro(ExternalTransform); 22 | -------------------------------------------------------------------------------- /Components/Transforms/MultiBSplineTransformWithNormal/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( MultiBSplineTransformWithNormal # Was OFF by default before elastix 5.0.1 3 | elxMultiBSplineTransformWithNormal.h 4 | elxMultiBSplineTransformWithNormal.hxx 5 | elxMultiBSplineTransformWithNormal.cxx 6 | itkMultiBSplineDeformableTransformWithNormal.h 7 | itkMultiBSplineDeformableTransformWithNormal.hxx) 8 | -------------------------------------------------------------------------------- /Components/Transforms/MultiBSplineTransformWithNormal/elxMultiBSplineTransformWithNormal.cxx: -------------------------------------------------------------------------------- 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 | #include "elxMultiBSplineTransformWithNormal.h" 19 | 20 | elxInstallMacro(MultiBSplineTransformWithNormal); 21 | -------------------------------------------------------------------------------- /Components/Transforms/RecursiveBSplineTransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | ADD_ELXCOMPONENT( RecursiveBSplineTransform 2 | elxRecursiveBSplineTransform.h 3 | elxRecursiveBSplineTransform.hxx 4 | elxRecursiveBSplineTransform.cxx) 5 | -------------------------------------------------------------------------------- /Components/Transforms/RecursiveBSplineTransform/elxRecursiveBSplineTransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxRecursiveBSplineTransform.h" 20 | 21 | elxInstallMacro(RecursiveBSplineTransform); 22 | -------------------------------------------------------------------------------- /Components/Transforms/SimilarityTransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( SimilarityTransformElastix # Was OFF by default before elastix 5.0.1 3 | elxSimilarityTransform.h 4 | elxSimilarityTransform.hxx 5 | elxSimilarityTransform.cxx 6 | itkSimilarityTransform.h) 7 | -------------------------------------------------------------------------------- /Components/Transforms/SimilarityTransform/elxSimilarityTransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxSimilarityTransform.h" 20 | 21 | elxInstallMacro(SimilarityTransformElastix); 22 | -------------------------------------------------------------------------------- /Components/Transforms/SplineKernelTransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( SplineKernelTransform 3 | elxSplineKernelTransform.h 4 | elxSplineKernelTransform.hxx 5 | elxSplineKernelTransform.cxx 6 | itkElasticBodyReciprocalSplineKernelTransform2.h 7 | itkElasticBodyReciprocalSplineKernelTransform2.hxx 8 | itkElasticBodySplineKernelTransform2.h 9 | itkElasticBodySplineKernelTransform2.hxx 10 | itkKernelTransform2.h 11 | itkKernelTransform2.hxx 12 | itkThinPlateR2LogRSplineKernelTransform2.h 13 | itkThinPlateR2LogRSplineKernelTransform2.hxx 14 | itkThinPlateSplineKernelTransform2.h 15 | itkThinPlateSplineKernelTransform2.hxx 16 | itkVolumeSplineKernelTransform2.h 17 | itkVolumeSplineKernelTransform2.hxx) 18 | -------------------------------------------------------------------------------- /Components/Transforms/SplineKernelTransform/elxSplineKernelTransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxSplineKernelTransform.h" 20 | 21 | elxInstallMacro(SplineKernelTransform); 22 | -------------------------------------------------------------------------------- /Components/Transforms/TranslationStackTransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | ADD_ELXCOMPONENT( TranslationStackTransform 2 | elxTranslationStackTransform.h 3 | elxTranslationStackTransform.hxx 4 | elxTranslationStackTransform.cxx 5 | itkTranslationStackTransform.h) 6 | -------------------------------------------------------------------------------- /Components/Transforms/TranslationStackTransform/elxTranslationStackTransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxTranslationStackTransform.h" 20 | 21 | elxInstallMacro(TranslationStackTransform); 22 | -------------------------------------------------------------------------------- /Components/Transforms/TranslationTransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( TranslationTransformElastix 3 | itkTranslationTransformInitializer.h 4 | itkTranslationTransformInitializer.hxx 5 | elxTranslationTransform.h 6 | elxTranslationTransform.hxx 7 | elxTranslationTransform.cxx) 8 | -------------------------------------------------------------------------------- /Components/Transforms/TranslationTransform/elxTranslationTransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxTranslationTransform.h" 20 | 21 | elxInstallMacro(TranslationTransformElastix); 22 | -------------------------------------------------------------------------------- /Components/Transforms/WeightedCombinationTransform/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | ADD_ELXCOMPONENT( WeightedCombinationTransformElastix # Was OFF by default before elastix 5.0.1 3 | elxWeightedCombinationTransform.h 4 | elxWeightedCombinationTransform.hxx 5 | elxWeightedCombinationTransform.cxx 6 | itkWeightedCombinationTransform.h 7 | itkWeightedCombinationTransform.hxx) 8 | -------------------------------------------------------------------------------- /Components/Transforms/WeightedCombinationTransform/elxWeightedCombinationTransform.cxx: -------------------------------------------------------------------------------- 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 | #include "elxWeightedCombinationTransform.h" 20 | 21 | elxInstallMacro(WeightedCombinationTransformElastix); 22 | -------------------------------------------------------------------------------- /Core/ComponentBaseClasses/elxInterpolatorBase.hxx: -------------------------------------------------------------------------------- 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 | #ifndef elxInterpolatorBase_hxx 20 | #define elxInterpolatorBase_hxx 21 | 22 | #include "elxInterpolatorBase.h" 23 | 24 | // nothing 25 | 26 | #endif // #ifndef elxInterpolatorBase_hxx 27 | -------------------------------------------------------------------------------- /Core/Main/GTesting/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_executable(ElastixLibGTest 2 | elxCoreMainGTestUtilities.h 3 | elxCoreMainGTestUtilities.cxx 4 | ElastixLibGTest.cxx 5 | itkElastixRegistrationMethodGTest.cxx 6 | itkTransformixFilterGTest.cxx 7 | ParameterObjectGTest.cxx 8 | ) 9 | 10 | target_compile_definitions(ElastixLibGTest PRIVATE 11 | _USE_MATH_DEFINES # For M_PI. 12 | ) 13 | 14 | target_link_libraries(ElastixLibGTest 15 | GTest::GTest 16 | GTest::Main 17 | elastix_lib 18 | transformix_lib 19 | ${ITK_LIBRARIES} 20 | ) 21 | 22 | target_compile_definitions(ElastixLibGTest PRIVATE ELX_CMAKE_SOURCE_DIR="${CMAKE_SOURCE_DIR}" ELX_CMAKE_CURRENT_BINARY_DIR="${CMAKE_CURRENT_BINARY_DIR}") 23 | 24 | if(ELASTIX_USE_OPENCL) 25 | target_link_libraries(ElastixLibGTest elxOpenCL) 26 | endif() 27 | 28 | add_test(NAME ElastixLibGTest_test COMMAND ElastixLibGTest) 29 | -------------------------------------------------------------------------------- /Core/elxGitRevisionInfo.h.in: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | * 3 | * Copyright Leiden University Medical Center, Erasmus University Medical 4 | * Center and contributors 5 | * 6 | * Licensed under the Apache License, Version 2.0 (the "License"); 7 | * you may not use this file except in compliance with the License. 8 | * You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0.txt 11 | * 12 | * Unless required by applicable law or agreed to in writing, software 13 | * distributed under the License is distributed on an "AS IS" BASIS, 14 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | * See the License for the specific language governing permissions and 16 | * limitations under the License. 17 | * 18 | *=========================================================================*/ 19 | 20 | #ifndef elxGitRevisionSha_h 21 | #define elxGitRevisionSha_h 22 | 23 | namespace elastix 24 | { 25 | constexpr const char* gitRevisionSha = "@ELX_GIT_REVISION_SHA@"; 26 | constexpr const char* gitRevisionDate = "@ELX_GIT_REVISION_DATE@"; 27 | 28 | } 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ubuntu:20.04 2 | 3 | # Add labels to image 4 | LABEL documentation="https://github.com/SuperElastix/elastix/wiki" 5 | LABEL license="Apache License Version 2.0" 6 | LABEL modelzoo="https://lkeb.ml/modelzoo/" 7 | 8 | # Prepare system packages, libgomp1 is required by elastix 9 | RUN apt-get update && apt-get -qq install libgomp1 -y 10 | 11 | # Copy necessary files 12 | COPY uploads/bin/* /usr/local/bin/ 13 | COPY uploads/lib/* /usr/lib/ 14 | 15 | COPY uploads/LICENSE / 16 | COPY uploads/NOTICE / 17 | 18 | CMD elastix 19 | -------------------------------------------------------------------------------- /ElastixConfigVersion.cmake.in: -------------------------------------------------------------------------------- 1 | set(PACKAGE_VERSION "@ELASTIX_VERSION@") 2 | 3 | if("${PACKAGE_FIND_VERSION_MAJOR}" EQUAL "@ELASTIX_VERSION_MAJOR@" 4 | AND NOT "${PACKAGE_FIND_VERSION}" VERSION_GREATER "${PACKAGE_VERSION}") 5 | set(PACKAGE_VERSION_COMPATIBLE 1) # compatible with older 6 | if("${PACKAGE_FIND_VERSION}" VERSION_EQUAL "${PACKAGE_VERSION}") 7 | set(PACKAGE_VERSION_EXACT 1) # exact match for this version 8 | endif() 9 | endif() 10 | -------------------------------------------------------------------------------- /GOVERNANCE.md: -------------------------------------------------------------------------------- 1 | # Governance of `elastix` # 2 | 3 | The elastix project is still under governance and supervision of the original lead developers Marius Staring and Stefan Klein. 4 | 5 | Nowadays many subprojects of elastix exist and the supervision of these projects is also in hands of several other developers/scientists. 6 | The subprojects and their main other supervisors are: 7 | 8 | * `elastix`: Niels Dekker 9 | * `elastix model zoo`: Viktor van der Valk 10 | * `elastix_napari`: Viktor van der Valk 11 | * `elastix docker image`: Viktor van der Valk 12 | * `SimpleElastix`: Kasper Marstal 13 | * `ITKElastix`: Matt McCormick, Dženan Zukić 14 | -------------------------------------------------------------------------------- /Testing/Baselines/3DCT_lung.mha: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Baselines/3DCT_lung.mha -------------------------------------------------------------------------------- /Testing/Baselines/TransformParameters_3DCT_lung.NC.euler.ASGD.001.txt.in: -------------------------------------------------------------------------------- 1 | (Transform "EulerTransform") 2 | (NumberOfParameters 6) 3 | (TransformParameters 0.009456 -0.002044 -0.043565 -6.868766 -5.713796 39.343262) 4 | (InitialTransformParameterFileName "NoInitialTransform") 5 | (HowToCombineTransforms "Compose") 6 | 7 | // Image specific 8 | (FixedImageDimension 3) 9 | (MovingImageDimension 3) 10 | (FixedInternalImagePixelType "float") 11 | (MovingInternalImagePixelType "float") 12 | (Size 115 157 129) 13 | (Index 0 0 0) 14 | (Spacing 1.3660000000 1.3660000000 2.5000000000) 15 | (Origin -153.8270000000 -150.3520000000 -1434.5000000000) 16 | (Direction 1.0000000000 0.0000000000 0.0000000000 0.0000000000 1.0000000000 0.0000000000 0.0000000000 0.0000000000 1.0000000000) 17 | (UseDirectionCosines "true") 18 | 19 | // EulerTransform specific 20 | (CenterOfRotationPoint -75.9650000000 -43.8040000000 -1274.5000000000) 21 | (ComputeZYX "false") 22 | 23 | // ResampleInterpolator specific 24 | (ResampleInterpolator "FinalBSplineInterpolator") 25 | (FinalBSplineInterpolationOrder 3) 26 | 27 | // Resampler specific 28 | (Resampler "DefaultResampler") 29 | (DefaultPixelValue 0.000000) 30 | (ResultImageFormat "mhd") 31 | (ResultImagePixelType "short") 32 | (CompressResultImage "false") 33 | -------------------------------------------------------------------------------- /Testing/Baselines/TransformParameters_3DCT_lung.NC.translation.ASGD.001.txt.in: -------------------------------------------------------------------------------- 1 | (Transform "TranslationTransform") 2 | (NumberOfParameters 3) 3 | (TransformParameters -6.893321 -7.963786 39.342333) 4 | (InitialTransformParameterFileName "NoInitialTransform") 5 | (HowToCombineTransforms "Compose") 6 | 7 | // Image specific 8 | (FixedImageDimension 3) 9 | (MovingImageDimension 3) 10 | (FixedInternalImagePixelType "float") 11 | (MovingInternalImagePixelType "float") 12 | (Size 115 157 129) 13 | (Index 0 0 0) 14 | (Spacing 1.3660000000 1.3660000000 2.5000000000) 15 | (Origin -153.8270000000 -150.3520000000 -1434.5000000000) 16 | (Direction 1.0000000000 0.0000000000 0.0000000000 0.0000000000 1.0000000000 0.0000000000 0.0000000000 0.0000000000 1.0000000000) 17 | (UseDirectionCosines "true") 18 | 19 | // ResampleInterpolator specific 20 | (ResampleInterpolator "FinalBSplineInterpolator") 21 | (FinalBSplineInterpolationOrder 3) 22 | 23 | // Resampler specific 24 | (Resampler "DefaultResampler") 25 | (DefaultPixelValue 0.000000) 26 | (ResultImageFormat "mhd") 27 | (ResultImagePixelType "short") 28 | (CompressResultImage "false") 29 | -------------------------------------------------------------------------------- /Testing/Baselines/TransformParameters_3DCT_lung.affine.inverse.txt: -------------------------------------------------------------------------------- 1 | (Transform "AffineTransform") 2 | (NumberOfParameters 12) 3 | (TransformParameters 0.964398 0.00727308 0.00824159 -0.0199649 0.948468 0.00732794 -0.00431705 -0.00325992 0.964282 3.70947 6.66325 -34.4232) 4 | (InitialTransformParameterFileName "NoInitialTransform") 5 | (HowToCombineTransforms "Compose") 6 | 7 | // Image specific 8 | (FixedImageDimension 3) 9 | (MovingImageDimension 3) 10 | (FixedInternalImagePixelType "float") 11 | (MovingInternalImagePixelType "float") 12 | (Size 115 166 131) 13 | (Index 0 0 0) 14 | (Spacing 1.366000056 1.366000056 2.5) 15 | (Origin -161.831 -162.449 -1399.5) 16 | (Direction 1 0 0 0 1 0 0 0 1) 17 | (UseDirectionCosines "true") 18 | 19 | // AffineTransform specific 20 | (CenterOfRotationPoint -75.965 -43.804 -1274.5) 21 | (ComputeZYX "true") 22 | 23 | // ResampleInterpolator specific 24 | (ResampleInterpolator "FinalBSplineInterpolator") 25 | (FinalBSplineInterpolationOrder 3) 26 | 27 | // Resampler specific 28 | (Resampler "DefaultResampler") 29 | (DefaultPixelValue 0) 30 | (ResultImageFormat "mhd") 31 | (ResultImagePixelType "short") 32 | (CompressResultImage "false") 33 | -------------------------------------------------------------------------------- /Testing/Baselines/example.mha: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Baselines/example.mha -------------------------------------------------------------------------------- /Testing/Baselines/example_BIGR.PCStefan.mha: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Baselines/example_BIGR.PCStefan.mha -------------------------------------------------------------------------------- /Testing/Baselines/example_BIGR.cluster.mha: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Baselines/example_BIGR.cluster.mha -------------------------------------------------------------------------------- /Testing/Baselines/example_LKEB-ELDB91.mha: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Baselines/example_LKEB-ELDB91.mha -------------------------------------------------------------------------------- /Testing/Baselines/example_LKEB.MacMini.mha: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Baselines/example_LKEB.MacMini.mha -------------------------------------------------------------------------------- /Testing/Data/2DMRI-T1_brain.mha: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Data/2DMRI-T1_brain.mha -------------------------------------------------------------------------------- /Testing/Data/2D_2x2_square_object_at_(1,3).mhd: -------------------------------------------------------------------------------- 1 | ObjectType = Image 2 | NDims = 2 3 | BinaryData = True 4 | BinaryDataByteOrderMSB = False 5 | CompressedData = False 6 | TransformMatrix = 1 0 0 1 7 | Offset = 0 0 8 | CenterOfRotation = 0 0 9 | ElementSpacing = 1 1 10 | DimSize = 5 6 11 | AnatomicalOrientation = ?? 12 | ElementType = MET_FLOAT 13 | ElementDataFile = 2D_2x2_square_object_at_(1,3).raw 14 | -------------------------------------------------------------------------------- /Testing/Data/2D_2x2_square_object_at_(1,3).raw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Data/2D_2x2_square_object_at_(1,3).raw -------------------------------------------------------------------------------- /Testing/Data/2D_2x2_square_object_at_(2,1).mhd: -------------------------------------------------------------------------------- 1 | ObjectType = Image 2 | NDims = 2 3 | BinaryData = True 4 | BinaryDataByteOrderMSB = False 5 | CompressedData = False 6 | TransformMatrix = 1 0 0 1 7 | Offset = 0 0 8 | CenterOfRotation = 0 0 9 | ElementSpacing = 1 1 10 | DimSize = 5 6 11 | AnatomicalOrientation = ?? 12 | ElementType = MET_FLOAT 13 | ElementDataFile = 2D_2x2_square_object_at_(2,1).raw 14 | -------------------------------------------------------------------------------- /Testing/Data/2D_2x2_square_object_at_(2,1).raw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Data/2D_2x2_square_object_at_(2,1).raw -------------------------------------------------------------------------------- /Testing/Data/2D_unit_square_corner_points.txt: -------------------------------------------------------------------------------- 1 | point 2 | 4 3 | 0 0 4 | 0 1 5 | 1 0 6 | 1 1 -------------------------------------------------------------------------------- /Testing/Data/3DCT_lung_baseline.mha: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Data/3DCT_lung_baseline.mha -------------------------------------------------------------------------------- /Testing/Data/3DCT_lung_baseline.txt: -------------------------------------------------------------------------------- 1 | index 2 | 10 3 | 94 92 114 4 | 77 81 105 5 | 87 110 96 6 | 68 110 85 7 | 46 93 78 8 | 52 132 65 9 | 62 51 64 10 | 76 106 47 11 | 63 86 40 12 | 60 131 31 13 | -------------------------------------------------------------------------------- /Testing/Data/3DCT_lung_baseline_mask.mha: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Data/3DCT_lung_baseline_mask.mha -------------------------------------------------------------------------------- /Testing/Data/3DCT_lung_baseline_small.mha: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Data/3DCT_lung_baseline_small.mha -------------------------------------------------------------------------------- /Testing/Data/3DCT_lung_followup.mha: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Data/3DCT_lung_followup.mha -------------------------------------------------------------------------------- /Testing/Data/3DCT_lung_followup.txt: -------------------------------------------------------------------------------- 1 | index 2 | 10 3 | 96 96 117 4 | 78 85 107 5 | 90 115 96 6 | 70 114 84 7 | 48 95 77 8 | 54 136 63 9 | 68 53 62 10 | 80 107 46 11 | 66 85 37 12 | 66 136 30 13 | -------------------------------------------------------------------------------- /Testing/Data/3DCT_lung_followup_mask.mha: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Data/3DCT_lung_followup_mask.mha -------------------------------------------------------------------------------- /Testing/Data/3DCT_lung_followup_segmentation.mha: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Data/3DCT_lung_followup_segmentation.mha -------------------------------------------------------------------------------- /Testing/Data/Translation(1,-2)/ITK-HDF5-Transform.h5: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/Testing/Data/Translation(1,-2)/ITK-HDF5-Transform.h5 -------------------------------------------------------------------------------- /Testing/Data/Translation(1,-2)/ITK-Transform.tfm: -------------------------------------------------------------------------------- 1 | #Insight Transform File V1.0 2 | #Transform 0 3 | Transform: TranslationTransform_double_2_2 4 | Parameters: 1 -2 5 | FixedParameters: 6 | -------------------------------------------------------------------------------- /Testing/Data/Translation(1,-2)/InitialTransformParameters.txt: -------------------------------------------------------------------------------- 1 | (InitialTransformParameterFileName "NoInitialTransform") 2 | (NumberOfParameters 2) 3 | (Transform "TranslationTransform") 4 | (TransformParameters 1 0) -------------------------------------------------------------------------------- /Testing/Data/Translation(1,-2)/Special characters [(0-9,;!@#$%&)]/ITK-Transform.tfm: -------------------------------------------------------------------------------- 1 | #Insight Transform File V1.0 2 | #Transform 0 3 | Transform: TranslationTransform_double_2_2 4 | Parameters: 1 -2 5 | FixedParameters: 6 | -------------------------------------------------------------------------------- /Testing/Data/Translation(1,-2)/TransformParameters-Size-5x6.txt: -------------------------------------------------------------------------------- 1 | (Direction 1 0 0 1) 2 | (FixedImageDimension 2) 3 | (Index 0 0) 4 | (InitialTransformParameterFileName "InitialTransformParameters.txt") 5 | (MovingImageDimension 2) 6 | (NumberOfParameters 2) 7 | (Origin 0 0) 8 | (ResultImagePixelType "float") 9 | (ResampleInterpolator "FinalLinearInterpolator") 10 | (Size 5 6) 11 | (Spacing 1 1) 12 | (Transform "TranslationTransform") 13 | (TransformParameters 0 -2) -------------------------------------------------------------------------------- /Testing/Data/Translation(1,-2)/TransformParameters-link-to-ITK-HDF5-file.txt: -------------------------------------------------------------------------------- 1 | (Transform "File") 2 | (TransformFileName "ITK-HDF5-Transform.h5") -------------------------------------------------------------------------------- /Testing/Data/Translation(1,-2)/TransformParameters-link-to-ITK-tfm-file.txt: -------------------------------------------------------------------------------- 1 | (Transform "File") 2 | (TransformFileName "ITK-Transform.tfm") -------------------------------------------------------------------------------- /Testing/Data/Translation(1,-2)/TransformParameters-link-to-file-with-special-chars-in-path-name.txt: -------------------------------------------------------------------------------- 1 | (Transform "File") 2 | (TransformFileName "Special characters [(0-9,;!@#$%&)]/ITK-Transform.tfm") -------------------------------------------------------------------------------- /Testing/Data/Translation(1,-2)/TransformParameters.txt: -------------------------------------------------------------------------------- 1 | (NumberOfParameters 2) 2 | (Transform "TranslationTransform") 3 | (TransformParameters 1 -2) -------------------------------------------------------------------------------- /Testing/Data/Translation(1,-2)/TransformParametersWithInitialTransformParameterFile.txt: -------------------------------------------------------------------------------- 1 | (InitialTransformParameterFileName "InitialTransformParameters.txt") 2 | (NumberOfParameters 2) 3 | (Transform "TranslationTransform") 4 | (TransformParameters 0 -2) -------------------------------------------------------------------------------- /Testing/Data/parameters.2D.NC.translation.ASGD.txt: -------------------------------------------------------------------------------- 1 | // This parameter file is used to register the images 2 | // 2D_square_object_at_(1,3) and 2D_square_object_at_(2,1). 3 | 4 | (FixedInternalImagePixelType "float") 5 | (FixedImageDimension 2) 6 | (MovingInternalImagePixelType "float") 7 | (MovingImageDimension 2) 8 | 9 | (Metric "AdvancedNormalizedCorrelation") 10 | (Optimizer "AdaptiveStochasticGradientDescent") 11 | (Transform "TranslationTransform") 12 | (MaximumNumberOfIterations 2) 13 | (ImageSampler "Full") 14 | -------------------------------------------------------------------------------- /Testing/OpenCLBufferTest.cl: -------------------------------------------------------------------------------- 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 | __kernel void SetFloat( __global float *output, float input ) 20 | { 21 | uint index = get_global_id( 0 ); 22 | 23 | output[index] = input; 24 | } 25 | -------------------------------------------------------------------------------- /Testing/OpenCLEventTest.cl: -------------------------------------------------------------------------------- 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 | __kernel void AddToVector( __global float *vector, float value ) 20 | { 21 | vector[get_global_id( 0 )] += value; 22 | } 23 | -------------------------------------------------------------------------------- /Testing/OpenCLKernelToImageBridgeTest.cl: -------------------------------------------------------------------------------- 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 | __kernel void SetDirection( float4 input, __global float *output ) 20 | { 21 | output[0] = input.x; 22 | output[1] = input.y; 23 | output[2] = input.z; 24 | output[3] = input.w; 25 | } 26 | -------------------------------------------------------------------------------- /Testing/OpenCLSimpleTest1.cl: -------------------------------------------------------------------------------- 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 | __kernel void SimpleKernel1( __global float *output, float input ) 20 | { 21 | output[0] = input; 22 | } 23 | -------------------------------------------------------------------------------- /Testing/OpenCLSimpleTest2.cl: -------------------------------------------------------------------------------- 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 | __kernel void SimpleKernel2( __global float *output, float input ) 20 | { 21 | output[0] = input; 22 | } 23 | -------------------------------------------------------------------------------- /Testing/OpenCLVectorTest.cl: -------------------------------------------------------------------------------- 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 | __kernel void SetUChar( __global uchar *output, uchar input ) 20 | { 21 | uint index = get_global_id( 0 ); 22 | 23 | output[index] = input; 24 | } 25 | 26 | 27 | __kernel void SetFloat( __global float *output, float input ) 28 | { 29 | uint index = get_global_id( 0 ); 30 | 31 | output[index] = input; 32 | } 33 | -------------------------------------------------------------------------------- /Testing/PythonTests/CMakeLists.txt: -------------------------------------------------------------------------------- 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 | if(python_executable AND ELASTIX_BUILD_EXECUTABLE) 20 | add_test(NAME TransformixTest COMMAND ${python_executable} 21 | "${CMAKE_CURRENT_LIST_DIR}/transformix_test.py") 22 | set_tests_properties(TransformixTest PROPERTIES ENVIRONMENT 23 | "TRANSFORMIX_EXE=$/transformix;TRANSFORMIX_TEST_TEMP_DIR=${CMAKE_CURRENT_BINARY_DIR}") 24 | endif() 25 | -------------------------------------------------------------------------------- /Testing/PythonTests/ExpectedOutput/test_translation_of_images_and_points/outputpoints.txt: -------------------------------------------------------------------------------- 1 | Point 0 ; InputIndex = [ 0 0 ] ; InputPoint = [ 0.000000 0.000000 ] ; OutputIndexFixed = [ 1 -2 ] ; OutputPoint = [ 1.000000 -2.000000 ] ; Deformation = [ 1.000000 -2.000000 ] ; OutputIndexMoving = [ 1 -2 ] 2 | Point 1 ; InputIndex = [ 0 1 ] ; InputPoint = [ 0.000000 1.000000 ] ; OutputIndexFixed = [ 1 -1 ] ; OutputPoint = [ 1.000000 -1.000000 ] ; Deformation = [ 1.000000 -2.000000 ] ; OutputIndexMoving = [ 1 -1 ] 3 | Point 2 ; InputIndex = [ 1 0 ] ; InputPoint = [ 1.000000 0.000000 ] ; OutputIndexFixed = [ 2 -2 ] ; OutputPoint = [ 2.000000 -2.000000 ] ; Deformation = [ 1.000000 -2.000000 ] ; OutputIndexMoving = [ 2 -2 ] 4 | Point 3 ; InputIndex = [ 1 1 ] ; InputPoint = [ 1.000000 1.000000 ] ; OutputIndexFixed = [ 2 -1 ] ; OutputPoint = [ 2.000000 -1.000000 ] ; Deformation = [ 1.000000 -2.000000 ] ; OutputIndexMoving = [ 2 -1 ] 5 | -------------------------------------------------------------------------------- /Testing/PythonTests/ExpectedOutput/test_translation_of_points/outputpoints.txt: -------------------------------------------------------------------------------- 1 | Point 0 ; InputIndex = [ 0 0 ] ; InputPoint = [ 0.000000 0.000000 ] ; OutputIndexFixed = [ 1 -2 ] ; OutputPoint = [ 1.000000 -2.000000 ] ; Deformation = [ 1.000000 -2.000000 ] 2 | Point 1 ; InputIndex = [ 0 1 ] ; InputPoint = [ 0.000000 1.000000 ] ; OutputIndexFixed = [ 1 -1 ] ; OutputPoint = [ 1.000000 -1.000000 ] ; Deformation = [ 1.000000 -2.000000 ] 3 | Point 2 ; InputIndex = [ 1 0 ] ; InputPoint = [ 1.000000 0.000000 ] ; OutputIndexFixed = [ 2 -2 ] ; OutputPoint = [ 2.000000 -2.000000 ] ; Deformation = [ 1.000000 -2.000000 ] 4 | Point 3 ; InputIndex = [ 1 1 ] ; InputPoint = [ 1.000000 1.000000 ] ; OutputIndexFixed = [ 2 -1 ] ; OutputPoint = [ 2.000000 -1.000000 ] ; Deformation = [ 1.000000 -2.000000 ] 5 | -------------------------------------------------------------------------------- /Testing/PythonTests/TransformParameters/Transform_to_float_5x6.txt: -------------------------------------------------------------------------------- 1 | (Direction 1 0 0 1) 2 | (FixedImageDimension 2) 3 | (Index 0 0) 4 | (MovingImageDimension 2) 5 | (NumberOfParameters 2) 6 | (Origin 0 0) 7 | (ResultImagePixelType "float") 8 | (Size 5 6) 9 | (Spacing 1 1) 10 | (Transform "TranslationTransform") 11 | (TransformParameters 0 0) 12 | -------------------------------------------------------------------------------- /Testing/PythonTests/TransformParameters/Transform_to_int_5x6.txt: -------------------------------------------------------------------------------- 1 | (Direction 1 0 0 1) 2 | (FixedImageDimension 2) 3 | (Index 0 0) 4 | (MovingImageDimension 2) 5 | (NumberOfParameters 2) 6 | (Origin 0 0) 7 | (ResultImagePixelType "int") 8 | (Size 5 6) 9 | (Spacing 1 1) 10 | (Transform "TranslationTransform") 11 | (TransformParameters 0 0) 12 | -------------------------------------------------------------------------------- /Testing/PythonTests/TransformParameters/Translation(0,0).txt: -------------------------------------------------------------------------------- 1 | (Direction 1 0 0 1) 2 | (FixedImageDimension 2) 3 | (Index 0 0) 4 | (MovingImageDimension 2) 5 | (NumberOfParameters 2) 6 | (Origin 0 0) 7 | (Size 1 1) 8 | (Spacing 1 1) 9 | (Transform "TranslationTransform") 10 | (TransformParameters 0 0) 11 | -------------------------------------------------------------------------------- /Testing/PythonTests/TransformParameters/Translation(0,0,0).txt: -------------------------------------------------------------------------------- 1 | (Direction 1 0 0 0 1 0 0 0 1) 2 | (FixedImageDimension 3) 3 | (Index 0 0 0) 4 | (MovingImageDimension 3) 5 | (NumberOfParameters 3) 6 | (Origin 0 0 0) 7 | (Size 1 1 1) 8 | (Spacing 1 1 1) 9 | (Transform "TranslationTransform") 10 | (TransformParameters 0 0 0) 11 | -------------------------------------------------------------------------------- /Testing/PythonTests/TransformParameters/Translation(1,-2)-CustomResultImageName.txt: -------------------------------------------------------------------------------- 1 | (Direction 1 0 0 1) 2 | (FixedImageDimension 2) 3 | (Index 0 0) 4 | (MovingImageDimension 2) 5 | (NumberOfParameters 2) 6 | (Origin 0 0) 7 | (ResultImageName "CustomResultImageName") 8 | (ResultImagePixelType "float") 9 | (Size 5 6) 10 | (Spacing 1 1) 11 | (Transform "TranslationTransform") 12 | (TransformParameters 1 -2) 13 | -------------------------------------------------------------------------------- /Testing/PythonTests/TransformParameters/Translation(1,-2).txt: -------------------------------------------------------------------------------- 1 | (Direction 1 0 0 1) 2 | (FixedImageDimension 2) 3 | (Index 0 0) 4 | (MovingImageDimension 2) 5 | (NumberOfParameters 2) 6 | (Origin 0 0) 7 | (ResultImagePixelType "float") 8 | (Size 5 6) 9 | (Spacing 1 1) 10 | (Transform "TranslationTransform") 11 | (TransformParameters 1 -2) 12 | -------------------------------------------------------------------------------- /Testing/PythonTests/requirements.txt: -------------------------------------------------------------------------------- 1 | itk 2 | SimpleITK 3 | numpy 4 | -------------------------------------------------------------------------------- /Testing/itkOpenCLBufferTest.h: -------------------------------------------------------------------------------- 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 | #ifndef itkOpenCLBufferTest_h 19 | #define itkOpenCLBufferTest_h 20 | 21 | #include "itkMacro.h" 22 | 23 | namespace itk 24 | { 25 | /** Create a helper GPU Kernel class for OpenCLBufferTest.cl kernel */ 26 | itkGPUKernelClassMacro(OpenCLBufferTestKernel); 27 | } // end namespace itk 28 | 29 | #endif /* itkOpenCLBufferTest_h */ 30 | -------------------------------------------------------------------------------- /Testing/itkOpenCLEventTest.h: -------------------------------------------------------------------------------- 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 | #ifndef itkOpenCLEventTest_h 19 | #define itkOpenCLEventTest_h 20 | 21 | #include "itkMacro.h" 22 | 23 | namespace itk 24 | { 25 | /** Create a helper GPU Kernel class for OpenCLEventTest.cl kernel */ 26 | itkGPUKernelClassMacro(OpenCLEventTestKernel); 27 | } // end namespace itk 28 | 29 | #endif /* itkOpenCLEventTest_h */ 30 | -------------------------------------------------------------------------------- /Testing/itkOpenCLImageTest.h: -------------------------------------------------------------------------------- 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 | #ifndef itkOpenCLImageTest_h 19 | #define itkOpenCLImageTest_h 20 | 21 | #include "itkMacro.h" 22 | 23 | namespace itk 24 | { 25 | /** Create a helper GPU Kernel class for OpenCLImageTest.cl kernel */ 26 | itkGPUKernelClassMacro(OpenCLImageTestKernel); 27 | } // end namespace itk 28 | 29 | #endif /* itkOpenCLImageTest_h */ 30 | -------------------------------------------------------------------------------- /Testing/itkOpenCLKernelTest.cxx: -------------------------------------------------------------------------------- 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 | #include "itkOpenCLKernel.h" 19 | 20 | int 21 | main() 22 | { 23 | itk::OpenCLKernel kernel; 24 | 25 | if (!kernel.IsNull()) 26 | { 27 | return EXIT_FAILURE; 28 | } 29 | 30 | return EXIT_SUCCESS; 31 | } 32 | -------------------------------------------------------------------------------- /Testing/itkOpenCLKernelToImageBridgeTest.h: -------------------------------------------------------------------------------- 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 | #ifndef itkOpenCLKernelToImageBridgeTest_h 19 | #define itkOpenCLKernelToImageBridgeTest_h 20 | 21 | #include "itkMacro.h" 22 | 23 | namespace itk 24 | { 25 | /** Create a helper GPU Kernel class for OpenCLKernelToImageBridgeTest.cl kernel 26 | */ 27 | itkGPUKernelClassMacro(OpenCLKernelToImageBridgeTestKernel); 28 | } // end namespace itk 29 | 30 | #endif /* itkOpenCLKernelToImageBridgeTest_h */ 31 | -------------------------------------------------------------------------------- /Testing/itkOpenCLProfilingTimeProbeTest.cxx: -------------------------------------------------------------------------------- 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 | #include "itkOpenCLProfilingTimeProbe.h" 19 | 20 | int 21 | main() 22 | { 23 | { 24 | itk::OpenCLProfilingTimeProbe timer("Hello ITK OpenCL!"); 25 | } 26 | 27 | return EXIT_SUCCESS; 28 | } 29 | -------------------------------------------------------------------------------- /Testing/itkOpenCLVectorTest.h: -------------------------------------------------------------------------------- 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 | #ifndef itkOpenCLVectorTest_h 19 | #define itkOpenCLVectorTest_h 20 | 21 | #include "itkMacro.h" 22 | 23 | namespace itk 24 | { 25 | /** Create a helper GPU Kernel class for OpenCLVectorTest.cl kernel */ 26 | itkGPUKernelClassMacro(OpenCLVectorTestKernel); 27 | } // end namespace itk 28 | 29 | #endif /* itkOpenCLVectorTest_h */ 30 | -------------------------------------------------------------------------------- /Testing/itkTestOutputWindow.cxx: -------------------------------------------------------------------------------- 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 | #include "itkTestOutputWindow.h" 19 | 20 | namespace itk 21 | { 22 | //------------------------------------------------------------------------------ 23 | void 24 | TestOutputWindow::DisplayText(const char * text) 25 | { 26 | std::cout << text; 27 | } 28 | 29 | 30 | } // end namespace itk 31 | -------------------------------------------------------------------------------- /UseElastix.cmake.in: -------------------------------------------------------------------------------- 1 | # 2 | # To use elastix-code in your own program, add the following 3 | # cmake code to your CMakeLists file: 4 | # 5 | # set( Elastix_DIR "path/to/elastix/binary/directory" ) 6 | # find_package( Elastix REQUIRED ) 7 | # include( ${ELASTIX_USE_FILE} ) 8 | # 9 | 10 | # Add include dirs 11 | include_directories( ${ELASTIX_INCLUDE_DIRS} ) 12 | 13 | # Add library dirs 14 | link_directories( ${ELASTIX_LIBRARY_DIRS} ) 15 | 16 | # If Elastix_FOUND is set, this file is included via find_package() which provides 17 | # ELASTIX_CONFIG_TARGETS_FILE and elxLIBRARY_DEPENDS_FILE. Guarding the following 18 | # include statements allow users to include this file directly for backwards 19 | # compatibility. 20 | if( Elastix_FOUND ) 21 | # This file was found by find_package 22 | include( ${ELASTIX_CONFIG_TARGETS_FILE} ) 23 | else() 24 | # Include linking dependency info for backwards compatibility 25 | include( ${elxLIBRARY_DEPENDS_FILE} ) 26 | endif() 27 | -------------------------------------------------------------------------------- /dox/ITKCompilationOptions.txt: -------------------------------------------------------------------------------- 1 | elastix 5.0.0 compiles with ITK 5.0.1 compiled with the default options. 2 | 3 | 4 | Optionally use ITK_USE_64BITS_IDS and ITK_LEGACY_REMOVE. 5 | -------------------------------------------------------------------------------- /dox/README.txt: -------------------------------------------------------------------------------- 1 | Welcome to elastix! 2 | 3 | This directory contains the documentation of elastix. 4 | 5 | doxygen: In this directory we put files that help to generate the doxygen pages in a style that we like. These pages give a lot of information about the setup of elastix, and can be found at http://elastix.dev/doxygen/index.html. 6 | 7 | manual: This directory is a submodule that links to the (most recent commit in the) git repository that contains the LaTeX files and the images needed to generate the manual of elastix. 8 | Be aware that cloning the elastix repository doesn't also clone the submodules. In order to do this the following command should be typed after clone the repo: 9 | 10 | git submodule update --init --remote --merge 11 | 12 | to get the most recent version: 13 | 14 | cd dox/manual 15 | 16 | git checkout main 17 | 18 | exampleinput: In this directory you can find example images and parameter files, that can help you to get started with elastix. In the directory of this README file you can find scripts that show you how to call elastix. 19 | -------------------------------------------------------------------------------- /dox/art/elastix_logo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/dox/art/elastix_logo.gif -------------------------------------------------------------------------------- /dox/art/elastix_logo_128.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/dox/art/elastix_logo_128.ico -------------------------------------------------------------------------------- /dox/art/elastix_logo_32.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/dox/art/elastix_logo_32.ico -------------------------------------------------------------------------------- /dox/art/elastix_logo_64.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/dox/art/elastix_logo_64.ico -------------------------------------------------------------------------------- /dox/art/elastix_logo_full.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/dox/art/elastix_logo_full.bmp -------------------------------------------------------------------------------- /dox/art/elastix_logo_full.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/dox/art/elastix_logo_full.gif -------------------------------------------------------------------------------- /dox/art/elastix_logo_full_128.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/dox/art/elastix_logo_full_128.ico -------------------------------------------------------------------------------- /dox/art/elastix_logo_full_32.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/dox/art/elastix_logo_full_32.ico -------------------------------------------------------------------------------- /dox/art/elastix_logo_full_64.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/dox/art/elastix_logo_full_64.ico -------------------------------------------------------------------------------- /dox/art/elastix_logo_full_small.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/dox/art/elastix_logo_full_small.bmp -------------------------------------------------------------------------------- /dox/doxygen/DoxygenFooter.html.in: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |
6 |
7 | 8 | 10 |
9 | Generated on @ELASTIX_DOXYGEN_DATE@ for elastix by doxygen @ELASTIX_DOXYGEN_VERSION@ elastix logo 11 |
12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /dox/doxygen/doxdate.bat: -------------------------------------------------------------------------------- 1 | 2 | @date /T 3 | -------------------------------------------------------------------------------- /dox/exampleinput/fixed.mhd: -------------------------------------------------------------------------------- 1 | ObjectType = Image 2 | NDims = 2 3 | BinaryData = True 4 | BinaryDataByteOrderMSB = False 5 | DimSize = 256 256 6 | ElementType = MET_SHORT 7 | ElementDataFile = fixed.raw 8 | -------------------------------------------------------------------------------- /dox/exampleinput/fixed.raw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/dox/exampleinput/fixed.raw -------------------------------------------------------------------------------- /dox/exampleinput/mask_fixed.mhd: -------------------------------------------------------------------------------- 1 | ObjectType = Image 2 | NDims = 2 3 | BinaryData = True 4 | BinaryDataByteOrderMSB = False 5 | DimSize = 256 256 6 | ElementType = MET_CHAR 7 | ElementDataFile = mask_fixed.raw 8 | -------------------------------------------------------------------------------- /dox/exampleinput/mask_moving.mhd: -------------------------------------------------------------------------------- 1 | ObjectType = Image 2 | NDims = 2 3 | BinaryData = True 4 | BinaryDataByteOrderMSB = False 5 | DimSize = 256 256 6 | ElementType = MET_CHAR 7 | ElementDataFile = mask_moving.raw 8 | -------------------------------------------------------------------------------- /dox/exampleinput/moving.mhd: -------------------------------------------------------------------------------- 1 | ObjectType = Image 2 | NDims = 2 3 | BinaryData = True 4 | BinaryDataByteOrderMSB = False 5 | Color = 1 0 0 1 6 | ElementSpacing = 1 1 7 | DimSize = 256 256 8 | ElementType = MET_SHORT 9 | ElementDataFile = moving.raw 10 | -------------------------------------------------------------------------------- /dox/exampleinput/moving.raw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/dox/exampleinput/moving.raw -------------------------------------------------------------------------------- /dox/exampleinput/solution_deformedmovingimage.mhd: -------------------------------------------------------------------------------- 1 | NDims = 2 2 | DimSize = 256 256 3 | ElementType = MET_SHORT 4 | Offset = 0.0 0.0 5 | ElementSpacing = 1.0 1.0 6 | ElementByteOrderMSB = False 7 | ElementNumberOfChannels = 1 8 | ElementDataFile = solution_deformedmovingimage.raw 9 | -------------------------------------------------------------------------------- /dox/exampleinput/solution_deformedmovingimage.raw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuperElastix/elastix/4023b8046ddc76abbaea1f75ec8e2ac0416e05bf/dox/exampleinput/solution_deformedmovingimage.raw -------------------------------------------------------------------------------- /dox/externalproject/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # Example project for using elastix code from external projects. 2 | project(elxExternalProject) 3 | 4 | # Minimum CMake version. Intended to correspond with the `cmake_minimum_required` version of elastix. 5 | cmake_minimum_required(VERSION 3.16.3) 6 | 7 | find_package(Elastix REQUIRED) 8 | 9 | # Use the version of ITK from Elastix. 10 | if ( DEFINED ELASTIX_ITK_DIR) 11 | set(ITK_DIR "${ELASTIX_ITK_DIR}" CACHE PATH "ITK_DIR from Elastix" FORCE) 12 | endif() 13 | find_package(ITK REQUIRED) 14 | 15 | include(${ELASTIX_CONFIG_TARGETS_FILE}) 16 | 17 | # Build a small example executable. 18 | add_executable(elastix_translation_example ElastixTranslationExample.cxx) 19 | 20 | set_property(TARGET elastix_translation_example PROPERTY CXX_STANDARD 17) 21 | 22 | target_include_directories(elastix_translation_example 23 | PRIVATE ${ELASTIX_INCLUDE_DIRS} ${ITK_INCLUDE_DIRS}) 24 | 25 | target_link_libraries(elastix_translation_example 26 | PRIVATE ${ITK_LIBRARIES} elastix_lib) 27 | -------------------------------------------------------------------------------- /dox/externalproject/README.txt: -------------------------------------------------------------------------------- 1 | This folder contains an example of an external project that uses code/libraries from elastix. It is meant to be built outside the elastix tree. You need to have compiled elastix first. Then run cmake with this folder as source directory. A small test executable will be created. 2 | -------------------------------------------------------------------------------- /dox/misc/ReleaseCMakeSettings.txt: -------------------------------------------------------------------------------- 1 | 2 | message( STATUS "Setting user-defined variables from CMakeSettings.txt for making an elastix release.") 3 | 4 | # Set ITK_DIR 5 | # Set CMAKE_INSTALL_PREFIX 6 | 7 | SET( CMAKE_BUILD_TYPE "Release" CACHE STRING "Build type" ) 8 | SET( ELASTIX_BUILD_TESTING OFF CACHE BOOL "Build the testing tree" ) 9 | SET( ELASTIX_ENABLE_PACKAGER ON CACHE BOOL "Enable the packaging make targets") 10 | SET( ELASTIX_USE_CUDA OFF CACHE BOOL "Use GPU (limited support)" ) 11 | SET( ELASTIX_USE_MEVISDICOMTIFF ON CACHE BOOL "Support Mevis dcmtiff format") 12 | SET( ELASTIX_IMAGE_DIMENSION "2;3;4" CACHE STRING "Image dimensions" ) 13 | SET( ELASTIX_IMAGE_2D_PIXELTYPES "float" CACHE STRING "2D support" ) 14 | SET( ELASTIX_IMAGE_3D_PIXELTYPES "short;float" CACHE STRING "3D support" ) 15 | SET( ELASTIX_IMAGE_4D_PIXELTYPES "short" CACHE STRING "4D support" ) 16 | SET( USE_ALL_COMPONENTS ON CACHE BOOL "Compile all elastix components") 17 | -------------------------------------------------------------------------------- /pixi.toml: -------------------------------------------------------------------------------- 1 | [project] 2 | name = "elastix" 3 | channels = ["conda-forge"] 4 | platforms = ["linux-64", "linux-aarch64", "win-64", "osx-64", "osx-arm64"] 5 | 6 | [tasks] 7 | clean = { cmd = "git clean -fdx", description = "Clean the repository" } 8 | 9 | [dependencies] 10 | python = ">=3.12.0,<3.13" 11 | 12 | [feature.pre-commit.dependencies] 13 | pre-commit = ">=4.1.0,<5" 14 | 15 | [feature.pre-commit.tasks] 16 | pre-commit-install = { cmd = "pre-commit install -f -t pre-commit -t prepare-commit-msg -t commit-msg", description = "Install pre-commit hooks" } 17 | pre-commit-run = { cmd = "pre-commit run --all", description = "Run pre-commit hooks on all repository files" } 18 | 19 | [environments] 20 | pre-commit = ["pre-commit"] 21 | -------------------------------------------------------------------------------- /tools/CopyrightNotice_Apache.txt: -------------------------------------------------------------------------------- 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 | -------------------------------------------------------------------------------- /tools/pre-commit-setup.bash: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | die() { 4 | echo 1>&2 "$@" ; exit 1 5 | } 6 | 7 | # Make sure we are inside the repository. 8 | cd "${BASH_SOURCE%/*}" && 9 | 10 | exe_ext="" 11 | if [[ "$(uname -o)" == "Msys" ]]; then 12 | exe_ext=".exe" 13 | fi 14 | 15 | # check if curl executable exists 16 | if ! command -v curl &> /dev/null; then 17 | die "curl is required." 18 | fi && 19 | git_dir=$(git rev-parse --git-dir) && 20 | mkdir -p "$git_dir/hooks" && 21 | ( 22 | cd "$git_dir/hooks" && 23 | pixi_exe=$git_dir/hooks/pixi/bin/pixi$exe_ext && 24 | if [[ -f "$pixi_exe" ]]; then 25 | $pixi_exe run pre-commit-install 26 | exit $? 27 | fi && 28 | curl -fsSL https://pixi.sh/install.sh | PIXI_HOME=$git_dir/hooks/pixi PIXI_NO_PATH_UPDATE=1 bash && 29 | $pixi_exe run pre-commit-install 30 | ) 31 | -------------------------------------------------------------------------------- /tools/runelastixlinux: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # runelastixlinux 4 | # 5 | # Script to run elastix on linux when the 6 | # libANNlib.so cannot be found. 7 | # 8 | # Usage: 9 | # 10 | # runelastixlinux ... 11 | # 12 | # with ... referring to all arguments you normally 13 | # would use for elastix. 14 | # 15 | 16 | 17 | # find elastix executable that is used 18 | whichelastix=`which elastix` 19 | 20 | # extract the path to elastix 21 | # 22 | # ${string%substring} 23 | # strips shortest match of $substring from back of $string. 24 | elastixpath=${whichelastix%/elastix} 25 | 26 | # add the path temporarily to the LD_LIBRARY_PATH 27 | export LD_LIBRARY_PATH=$elastixpath:$LD_LIBRARY_PATH 28 | 29 | # run elastix with the supplied command-line arguments 30 | elastix $* 31 | 32 | # after exitting this script, the LD_LIBRARY_PATH is 33 | # automatically as it was before running this script. 34 | -------------------------------------------------------------------------------- /tools/runtransformixlinux: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # runtransformixlinux 4 | # 5 | # Script to run transformix on linux when the 6 | # libANNlib.so cannot be found. 7 | # 8 | # Usage: 9 | # 10 | # runtransformixlinux ... 11 | # 12 | # with ... referring to all arguments you normally 13 | # would use for transformix. 14 | # 15 | 16 | 17 | # find transformix executable that is used 18 | whichtransformix=`which transformix` 19 | 20 | # extract the path to transformix 21 | # 22 | # ${string%substring} 23 | # strips shortest match of $substring from back of $string. 24 | transformixpath=${whichtransformix%/transformix} 25 | 26 | # add the path temporarily to the LD_LIBRARY_PATH 27 | export LD_LIBRARY_PATH=$transformixpath:$LD_LIBRARY_PATH 28 | 29 | # run transformix with the supplied command-line arguments 30 | transformix $* 31 | 32 | # after exitting this script, the LD_LIBRARY_PATH is 33 | # automatically as it was before running this script. 34 | --------------------------------------------------------------------------------