In the saving of the predicted mask, only partial alignment is completed:
|
# Save mask |
|
save_mask = sitk.GetImageFromArray(segs_3D) |
|
save_mask.SetSpacing(spacing) |
|
sitk.WriteImage(save_mask, masks_dir / f"{patient_id}.nii.gz") |
The spacing is one part, but the origin needs to be copied over as well, or else the images won't overlay in a display (like in 3DSlicer)
To add:
origin = image.GetOrigin()
save_mask.SetOrigin(origin)
We also have a function for this in readii, so alternatively could use:
from readii.image_processing import alignImages
save_mask = alignImages(image, save_mask)