La partie principale est la suivante. Si vous spécifiez tiff dans la sortie, il deviendra automatiquement un fichier de pile.
import SimpleITK as sitk
reader = sitk.ImageFileReader()
reader.SetImageIO("MetaImageIO")
reader.SetFileName(inputImageFileName)
image = reader.Execute();
writer = sitk.ImageFileWriter()
writer.SetImageIO("TIFFImageIO")
writer.SetFileName(outputImageFileName)
writer.Execute(image)
Vous pouvez lire et écrire d'autres fichiers en modifiant SetImageIO
.
Pour faciliter son utilisation dans le terminal, je fais ce qui suit:
mhd2tif
#!/usr/bin/env python3
import os,sys
import SimpleITK as sitk
if len(sys.argv)!=3 :
print("usage: mhd2tif infile.mhd out.tif")
exit()
inputImageFileName = sys.argv[1]
outputImageFileName = sys.argv[2]
if os.path.isfile(inputImageFileName)==False :
print(inputImageFileName + ": not found.")
exit()
reader = sitk.ImageFileReader()
reader.SetImageIO("MetaImageIO")
reader.SetFileName(inputImageFileName)
image = reader.Execute();
writer = sitk.ImageFileWriter()
writer.SetImageIO("TIFFImageIO")
writer.SetFileName(outputImageFileName)
writer.Execute(image)
https://simpleitk.readthedocs.io/en/master/IO.html