Spaces:
Sleeping
Sleeping
File size: 988 Bytes
1cc0005 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
import SimpleITK as sitk
import glob
import os
import platform
directory_split = "\\" if platform.system() == "Windows" else '/'
def read_itk(filename):
return sitk.ReadImage(filename)
def read_dicoms(dicom_folder):
reader = sitk.ImageSeriesReader()
dicoms = reader.GetGDCMSeriesFileNames(dicom_folder)
reader.SetFileNames(dicoms)
return reader.Execute()
def write_nrrd(nrrd, filename):
writer = sitk.ImageFileWriter()
writer.SetFileName(filename)
writer.Execute(nrrd)
def itk_to_nrrd(source, destination):
queue = glob.glob(source)
for f in queue:
if(os.path.isdir(f)):
os.mkdir(destination + f.split(directory_split)[-1])
itk_to_nrrd(f + "\\*", destination + f.split(directory_split)[-1] + "\\")
elif(os.path.isfile(f)):
itk = read_itk(f)
dst = destination + "\\" + f.split(directory_split)[-1]
dst = dst[:dst.rfind('.')] + ".nrrd"
write_nrrd(itk, dst) |