scallops.registration.itk.itk_align_to_reference_time

scallops.registration.itk.itk_align_to_reference_time(moving_image, moving_channel, parameter_object, moving_image_spacing=None, output_dir=None, unroll_channels=False, reference_timepoint=0)

Align a time-series of moving images to the specified time point using ITK registration.

This function performs time-dependent registration using the ITK library. It aligns each time point of a moving image stack to the specified time point

Parameters:
  • moving_image (DataArray | list[DataArray]) – The time-series of moving images to be aligned, represented as a DataArray or a list of data arrays representing each timepoint.

  • moving_channel (int | list[int]) – The channel index to consider during registration.

  • parameter_object (elastixParameterObject) – The ITK parameter object containing registration parameters.

  • moving_image_spacing (None | tuple[float, float]) – Optional spacing information for the moving images. If not provided, it is determined from the image metadata.

  • output_dir (str | None) – Optional directory to save intermediate outputs and ITK parameters per timepoint. If None, outputs are not saved.

  • unroll_channels (bool) – Whether to concatenate time along the channel dimension.

  • reference_timepoint (int) – Index of the timepoint to align to

Returns:

The aligned DataArray.

Return type:

DataArray