Hello everyone,
For some experiments, I would like to use Elastix to register Ultrasound and MRI images ( RESECT Dataset) using Advanced Mutual information and adaptive stochastic gradient descent.
So far, the target registration error isn't changing or is getting worse (larger).
Knowing how difficult registering ultrasound and MRI is, does anyone have a suggestion of parameters I could use to get a first "good enough" registration?
Thanks in advance.
Please find below the parameter file I use for an Euler transform:
(FixedInternalImagePixelType "float")
(MovingInternalImagePixelType "float")
(UseDirectionCosines "true")
// **************** Main Components **************************
(Registration "MultiResolutionRegistration")
(Interpolator "BSplineInterpolator")
(ResampleInterpolator "FinalBSplineInterpolator")
(Resampler "DefaultResampler")
(FixedImagePyramid "FixedRecursiveImagePyramid")
(MovingImagePyramid "MovingRecursiveImagePyramid")
(Optimizer "AdaptiveStochasticGradientDescent")
(Transform "EulerTransform")
(Metric "AdvancedMattesMutualInformation")
// ***************** Transformation **************************
(AutomaticScalesEstimation "true")
(AutomaticTransformInitialization "false")
(HowToCombineTransforms "Compose")
// ******************* Similarity measure *********************
(NumberOfHistogramBins 32)
(ErodeMask "false")
// ******************** Multiresolution **********************
(NumberOfResolutions 2)
// ******************* Optimizer ****************************
(MaximumNumberOfIterations 50)
(MaximumStepLength 0.1)
// **************** Image sampling **********************
(NumberOfSpatialSamples 2048)
(NewSamplesEveryIteration "true")
(ImageSampler "Random")
// ************* Interpolation and Resampling ****************
(BSplineInterpolationOrder 1)
(FinalBSplineInterpolationOrder 3)
(DefaultPixelValue 0)
(WriteResultImage "true")
(ResultImagePixelType "float")
(ResultImageFormat "nii.gz")
(CompressResultImage "true")