BSpline Automatic Registration Dialog box
Whenever BSpline registration is selected by the user, a dialog is displayed for the user to select the registration reference and the options related to how the registration is to be performed. A different dialog is displayed depending on whether the user selects 2D/3D registration between two images, or 2.5D registration of slices within a single image. The displayed dialogs differ only in how the registration reference is specified which depends on whether 2D/3D registration or 2.5D registration was selected; otherwise, options related to how the registration is to be performed are the same.
Contents
 1 Contents
 2 Selecting the appropriate BSpline registration algorithm
 3 BSpline Single  Pass Automatic Registration 2D/3D dialog box
 4 BSpline Two  Pass Automatic Registration 2D/3D dialog box
 5 BSpline Single  Pass Automatic Registration 2.5D dialog box
 6 BSpline Two  Pass Automatic Registration 2.5D dialog box
 7 Transformation options
 8 Output files
 9 Next
Contents
BSpline Automatic Registration chapter contains several sections:
Selecting the appropriate BSpline registration algorithm
The choice of 2D/3D or 2.5D BSpline registration is made by selecting the appropriate menu item from the Algorithms: Registration submenu of MIPAV.
The 2D/3D Bspline registration is available through the Bspline automatic registration 2D/3D menu item. This menu item is enabled when a 2D or 3D image (intensity or color) is the currently active image. The dialog is displayed only if there is at least one other loaded image in MIPAV which is compatible for registering to the currently active image. A compatible image is one that has the same number of channels of data and the same number of dimensions, but not necessarily the same sizes for each dimension.
Refer to the main BSpline Automatic Registration algorithm section. The 2.5D Bspline registration is available through the Bspline automatic registration 2.5D menu item. This menu item is enabled only when a 3D image (intensity or color) is the currently active image. Refer to Figure 6. Since the options related to how the registration is to be performed are identical for 2D/2.5D/3D and intensity/color images, and the only difference is how the registration reference is selected for 2D/3D vs. 2.5D, the dialog for presenting these options to the user is implemented in the same class. This class is JDialogRegistrationBSpline and is in the mipav/model/view/dialogs package. The class dynamically creates a dialog to present to the user with options that are appropriate for the type of registration.
BSpline Single  Pass Automatic Registration 2D/3D dialog box
General
 
Register

Displays a list of currently active 2D/3D images to registration. The drop down list of options show the names of available images currently loaded to which this image can be registered. This list will only contain the names of images currently loaded in MIPAV which are compatible.


Cost function

This drop down list contains the following choices for cost measure to use during registration: Least Squares, Correlation Ratio, and Normalized Mutual Information.
 
Perform twopass registration

This dialog is shown with the default options for singlepass registration. If the Perform twopass registration option is enabled, then the dialog will change to make options for twopass registration available.
 
Transformation Options The following is a discussion of the dialog options which control each registration pass, one set of options per pass. For more information refer to Transformation options
 
Subsample image for speed

If this option is enabled, the image will be subsample in power of 2 for each dimension. Subsampling increases performance of the algorithm, but it exhibits lower accuracy of registration.
 
BSpline Degree (same for all axes)

This is the degree of the BSpline to use for all axes of the image. The drop list of options show the values of 1 (linear), 2 (quadratic), 3 (cubic), and 4 which are available. Although, the underlying BSpineBasisf class supports any degree, this dialog restricts the degrees to these values. Choosing a smaller degree executes faster than a larger degree, but a higher degree offers a higher order of continuity.
 
BSpline Control Points(same for all axes)

This is the number of Bspline control points to use for all axes of the image.The minimum number of control points is the larger of the number 2 and the degree of the BSpline. This dialog limits the maximum number of control points to onehalf of the number of samples in the smallest dimension.
 
Gradient Descent Minimize Step Size (sample units)<a name="wp1022724"></a>

This is the size of steps each control point is moved along the gradientbased direction when searching for a minimum of the error. The registration does not take into account the size of an image sample in each dimension, so this step size is specified in units of a sample. E.g., a value of 0.5 will move the control point in increments of half of a sample while searching for the minimum error. The minimum step size is 0.1 sample and the maximum is 5 samples.
 
Gradient Descent Minimize Max Search Steps

This is the maximum number of steps the control point is moved along the gradientbased direction when searching for a minimum of the error. If the distance from the control point current position to the bounding polygon/polyhedron of its neighboring control points along the gradientbased direction is less than this specified value, then the computed distance value will be used for this control point instead. The minimum number of steps is 1 and the maximum is 100.<
 
Iteration options (one iteration=move each control point once)
 
Convergence limit (min change rate for one iteration)

This is a rate of change threshold such that if the rate the error changes between starting and ending of each iteration is smaller than this value, then the registration terminates.
 
Maximum Number of Iterations

If the convergence limit is not satisfied after this many iterations have been executed, then the registration terminates. The range of possible values is 1 to 100.
 
Results
 
Create deformation field image

If this checkbox is enabled, then the deformation image is computed after the last pass of registration is performed. The image that is created has the same dimensions as the target and the registered source images, and has the name of the source image appended with deformation suffix. The deformation image will be automatically displayed along with the registered source image upon completion of registration. Refer to Figure 5 for details.
 
<b>OK</b>

Applies the algorithm to the input image that you chose in this dialog box.
 
<b>Cancel</b>

Disregards any changes that you made in this dialog box and closes the dialog box.
 
<b>Help</b><

Displays online help for this dialog box.</a>

BSpline Two  Pass Automatic Registration 2D/3D dialog box
If the Perform twopass registration check box is selected, then the dialog will change to the following:
General
 
Register

Displays a list of currently active 2D/3D images to registration. The drop down list of options show the names of available images currently loaded to which this image can be registered. This list will only contain the names of images currently loaded in MIPAV which are compatible.


Cost function

This drop down list contains the following choices for cost measure to use during registration: Least Squares, Correlation Ratio, and Normalized Mutual Information.
 
Perform twopass registration

This dialog is shown with the default options for twopass registration. If the Perform twopass registration option is disabled, then the dialog will change to make options for singlepass registration available.
 
Transformation Options The following is a discussion of the dialog options which control each registration pass, one set of options per pass. For more information refer to Transformation options
 
Subsample image for speed

If this option is enabled, the image will be subsample in power of 2 for each dimension. Subsampling increases performance of the algorithm, but it results lower accuracy of registration.
 
BSpline Degree (same for all axes)

This is the degree of the BSpline to use for all axes of the image. The drop list of options show the values of 1 (linear), 2 (quadratic), 3 (cubic), and 4 which are available. Although, the underlying BSpineBasisf class supports any degree, this dialog restricts the degrees to these values. Choosing a smaller degree executes faster than a larger degree, but a higher degree offers a higher order of continuity.
 
BSpline Control Points(same for all axes)

This is the number of Bspline control points to use for all axes of the image.The minimum number of control points is the larger of the number 2 and the degree of the BSpline. This dialog limits the maximum number of control points to onehalf of the number of samples in the smallest dimension.
 
Gradient Descent Minimize Step Size (sample units)

This is the size of steps each control point is moved along the gradientbased direction when searching for a minimum of the error. The registration does not take into account the size of an image sample in each dimension, so this step size is specified in units of a sample. E.g., a value of 0.5 will move the control point in increments of half of a sample while searching for the minimum error. The minimum step size is 0.1 sample and the maximum is 5 samples.
 
Gradient Descent Minimize Max Search Steps

This is the maximum number of steps the control point is moved along the gradientbased direction when searching for a minimum of the error. If the distance from the control point current position to the bounding polygon/polyhedron of its neighboring control points along the gradientbased direction is less than this specified value, then the computed distance value will be used for this control point instead. The minimum number of steps is 1 and the maximum is 100.
 
Iteration options (one iteration=move each control point once)
 
Convergence limit (min change rate for one iteration)

This is a rate of change threshold such that if the rate the error changes between starting and ending of each iteration is smaller than this value, then the registration terminates.
 
Maximum Number of Iterations

If the convergence limit is not satisfied after this many iterations have been executed, then the registration terminates. The range of possible values is 1 to 100.
 
Results
 
Create deformation field image

If this checkbox is enabled, then the deformation image is computed after the last pass of registration is performed. The image that is created has the same dimensions as the target and the registered source images, and has the name of the source image appended with deformation suffix. The deformation image will be automatically displayed along with the registered source image upon completion of registration. Refer to Figure 5for details.
 
OK

Applies the algorithm to the input image that you chose in this dialog box.
 
Cancel

Disregards any changes that you made in this dialog box and closes the dialog box.
 
Help

Displays online help for this dialog box.

This dialog is shown with the default options for a twopass registration. As previously mentioned and as indicated in the dialog, a single iteration involves the movement of each interior control point in a gradient descent minimization manner.
BSpline Single  Pass Automatic Registration 2.5D dialog box
The following is an example of the dialog which is displayed for 2.5D intensity/color image registration: This dialog is show with the default options for a singlepass registration. If the Perform twopass registration check box is selected, then the dialog will change in a manner similar to that for the 2D/3D image registration shown in BSpline Two  Pass Automatic Registration 2D/3D dialog box.
General
 
Register

The Register source field is already filled with the name of the currently selected 2.5D image. The reference slice is selected from among the slices in the selected image. Radio buttons are used to select whether the reference slice is the the adjacent (previous) slice or a particular slice number in the image. If the Reference Slice radio button is selected, then a drop down list of slices numbers is enabled where the middle slice is selected by default.


Cost function

This drop down list contains the following choices for cost measure to use during registration: Least Squares, Correlation Ratio, and Normalized Mutual Information.
 
Perform twopass registration

This dialog is shown with the default options for singlepass registration. If the Perform twopass registration option is enabled, then the dialog will change to make options for twopass registration</em> available. Refer to Figure 7
 
Transformation Options The following is a discussion of the dialog options which control each registration pass, one set of options per pass. For more information refer to Transformation options.
 
Subsample image for speed

If this option is enabled, the image will be subsample in power of 2 for each dimension. Subsampling increases performance of the algorithm, but it results lower accuracy of registration.
 
BSpline Degree (same for all axes)

This is the degree of the BSpline to use for all axes of the image. The drop list of options show the values of 1 (linear), 2 (quadratic), 3 (cubic), and 4 which are available. Although, the underlying BSpineBasisf class supports any degree, this dialog restricts the degrees to these values. Choosing a smaller degree executes faster than a larger degree, but a higher degree offers a higher order of continuity.
 
BSpline Control Points(same for all axes)

This is the number of Bspline control points to use for all axes of the image.The minimum number of control points is the larger of the number 2 and the degree of the BSpline. This dialog limits the maximum number of control points to onehalf of the number of samples in the smallest dimension.
 
Gradient Descent Minimize Step Size (sample units)

This is the size of steps each control point is moved along the gradientbased direction when searching for a minimum of the error. The registration does not take into account the size of an image sample in each dimension, so this step size is specified in units of a sample. E.g., a value of 0.5 will move the control point in increments of half of a sample while searching for the minimum error. The minimum step size is 0.1 sample and the maximum is 5 samples.
 
Gradient Descent Minimize Max Search Steps

This is the maximum number of steps the control point is moved along the gradientbased direction when searching for a minimum of the error. If the distance from the control point current position to the bounding polygon/polyhedron of its neighboring control points along the gradientbased direction is less than this specified value, then the computed distance value will be used for this control point instead. The minimum number of steps is 1 and the maximum is 100.
 
Iteration options (one iteration=move each control point once)
 
Convergence limit (min change rate for one iteration)

This is a rate of change threshold such that if the rate the error changes between starting and ending of each iteration is smaller than this value, then the registration terminates.
 
Maximum Number of Iterations

If the convergence limit is not satisfied after this many iterations have been executed, then the registration terminates. The range of possible values is 1 to 100.
 
Results
 
Create deformation field image

If this checkbox is enabled, then the deformation image is computed after the last pass of registration is performed. The image that is created has the same dimensions as the target and the registered source images, and has the name of the source image appended with deformation suffix. The deformation image will be automatically displayed along with the registered source image upon completion of registration. Refer to
Figure 2 for details.
 
OK

Applies the algorithm to the input image that you chose in this dialog box.
 
Cancel

Disregards any changes that you made in this dialog box and closes the dialog box.
 
Help

Displays online help for this dialog box.

BSpline Two  Pass Automatic Registration 2.5D dialog box
General
 
Register

The Register source field is already filled with the name of the currently selected 2.5D image. The reference slice is selected from among the slices in the selected image. Radio buttons are used to select whether the reference slice is the the adjacent (previous) slice or a particular slice number in the image. If the Reference Slice radio button is selected, then a drop down list of slices numbers is enabled where the middle slice is selected by default.


Cost function

This drop down list contains the following choices for cost measure to use during registration: Least Squares, Correlation Ratio, and Normalized Mutual Information.
 
Perform twopass registration<

This dialog is shown with the default options for twopass registration.
 
Transformation Options The following is a discussion of the dialog options which control each registration pass, one set of options per pass. For more information refer to Transformation options.
 
Subsample image for speed

If this option is enabled, the image will be subsample in power of 2 for each dimension. Subsampling increases performance of the algorithm, but it results lower accuracy of registration.
 
BSpline Degree (same for all axes)

This is the degree of the BSpline to use for all axes of the image. The drop list of options show the values of 1 (linear), 2 (quadratic), 3 (cubic), and 4 which are available. Although, the underlying BSpineBasisf class supports any degree, this dialog restricts the degrees to these values. Choosing a smaller degree executes faster than a larger degree, but a higher degree offers a higher order of continuity.
 
BSpline Control Points(same for all axes)

This is the number of Bspline control points to use for all axes of the image.The minimum number of control points is the larger of the number 2 and the degree of the BSpline. This dialog limits the maximum number of control points to onehalf of the number of samples in the smallest dimension.
 
Gradient Descent Minimize Step Size (sample units)

This is the size of steps each control point is moved along the gradientbased direction when searching for a minimum of the error. The registration does not take into account the size of an image sample in each dimension, so this step size is specified in units of a sample. E.g., a value of 0.5 will move the control point in increments of half of a sample while searching for the minimum error. The minimum step size is 0.1 sample and the maximum is 5 samples.
 
Gradient Descent Minimize Max Search Steps

This is the maximum number of steps the control point is moved along the gradientbased direction when searching for a minimum of the error. If the distance from the control point current position to the bounding polygon/polyhedron of its neighboring control points along the gradientbased direction is less than this specified value, then the computed distance value will be used for this control point instead. The minimum number of steps is 1 and the maximum is 100.
 
Iteration options (one iteration=move each control point once)
 
Convergence limit (min change rate for one iteration)

This is a rate of change threshold such that if the rate the error changes between starting and ending of each iteration is smaller than this value, then the registration terminates.
 
Maximum Number of Iterations

If the convergence limit is not satisfied after this many iterations have been executed, then the registration terminates. The range of possible values is 1 to 100.
 
Results
 
Create deformation field image

If this checkbox is enabled, then the deformation image is computed after the last pass of registration is performed. The image that is created has the same dimensions as the target and the registered source images, and has the name of the source image appended with deformation suffix. The deformation image will be automatically displayed along with the registered source image upon completion of registration. Refer to Figure 2 for details.
 
OK

Applies the algorithm to the input image that you chose in this dialog box.
 
Cancel

Disregards any changes that you made in this dialog box and closes the dialog box.
 
Help

Displays online help for this dialog box.

Transformation options
The following is a discussion of the dialog options which control each registration pass, one set of options per pass:
Bspline Degree (same for all axes): This is the degree of the Bspline to use for all axes of the image. Even though the BSplineRegistration2Df and BSplineRegistration3Df classes allow for specification of separate degrees for each axis, this dialog restricts the degrees to be the same. The drop list of options show the values of 1 (linear), 2 (quadratic), 3 (cubic), and 4 which are available. Although, the underlying BSpineBasisf class supports any degree, this dialog restricts the degrees to these values.Choosing a smaller degree executes faster than a larger degree, but a higher degree offers a higher order of continuity.
Bspline Control Points (same for all axes): This is the number of Bspline control points to use for all axes of the image. Even though the BSplineRegistration2Df and BSplineRegistration3Df classes allow for specification of separate number of control points for each axis, this dialog restricts the numbers of control points to be the same. Initially, the control points are evenly spaced in each dimension, and the registration algorithm moves the interior control points to minimize the error difference between the target image and the registered source image. The minimum number of control points is the larger of the number 2 and the degree of the Bspline. This dialog option limits the maximum number of control points to onehalf of the number of samples in the smallest dimension. Choosing more control points generally results in better overall fitting, but a limitation may be that the control points will be closer to each other and that will limit how much a control point can move to minimize the error (in order to satisfy the constraint that an interior control point must be within the bounding polygon/polyhedron formed by its neighboring control points). Also, since choosing more control points means that control points will be closer to each other, it may be helpful to reduce the maximum number of steps for searching for the gradient descent minimum.
Choosing more control points rather than fewer should result in a longer execution time. Even though more control points means fewer samples (for the same size input image) are affected by a single control point, the fact that there are more control points to move and each one requires a gradient descent sample search for a minimum error most likely results in the longer execution time.
Choosing more control points may require a different convergence limit. Since the convergence limit is tested once per iteration and an iteration involves moving each interior control point once, it may be that more control points could result in more (or less) overall changes in the error between starting and ending one iteration.
Gradient Descent Minimize Step Size (sample size units): This is the size of steps each control point is moved along the gradientbased direction when searching for a minimum of the error. The registration does not take into account the size of an image sample in each dimension, so this step size is specified in units of a sample. For instance, a value of 0.5 will move the control point in increments of half a sample while searching for the minimum error. The minimum step size is 0.1 sample and the maximum is 5 samples.
Gradient Descent Minimize Max Search Steps: This is the maximum number of steps the control point is moved along the gradientbased direction when searching for a minimum of the error. If the distance from the control points current position to the bounding polygon/polyhedron of its neighboring control points along the gradientbased direction is less than this specified value, then the computed distance value will be used for this control point instead. The minimum number of steps is 1 and the maximum is 100.
Convergence limit (min change rate for one iteration): This is a rate of change threshold such that if the rate the error changes between starting and ending of each iteration is smaller than this value, then the registration terminates. As mentioned previously, the rate of change is computed as
(previousErrorcurrentError) / previousError
where previousError is the error measured before starting an iteration and currentError is the error measured after completing an iteration. The error being measured here depends on the particular cost function selected.
Maximum Number of Iterations: If the convergence limit is not satisfied after this many iterations have been executed, then the registration terminates. The range of possible values is 1 to 100.
Output files
After the Bspline registration algorithm finishes running, the following files can be found in the image directory:
 the source and target image,
 the *.xmp files with the recorded history for both source and target images,
 the NonLinear Transformation (*.nlt) file that contains the information about the performed Bspline transformation, such as the dimensionality of the transformed image, the degree of the Bspline, the number of control points, and the values of the control points. This file is used for the Transform Nonlinear algorithm, refer to [TransformNonlinear.html#wp999048 "Transform Nonlinear"],
 the result file.
Next