Source code for omni.resample

"""Image resampling function.
"""
import numpy as np
import nibabel as nib
from .interface import OmniInterface


[docs]def resample(target: nib.Nifti1Image, source: nib.Nifti1Image, affine: np.ndarray) -> nib.Nifti1Image: """Resamples an image to target image space. Resamples image from source to target image space. An optional affine can be given to also transform the image. Parameters ---------- target: nib.Nifti1Image Target image to resample to. source: nib.Nifti1Image Source image to transform. affine: np.ndarray Affine matrix to transform source to target. Returns ------- nib.Nifti1Image Resampled/transformed source image. """ # setup interface oi = OmniInterface() oi.set_img("target", target) oi.set_img("source", source) # resample the image oi.link.resample("target", "source", "output", affine) # return output array (using header information of target) output_img = oi.get_img("output", ref=target) # return output image return output_img