Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2020
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.90 KB | None | 0 0
  1. # -*- coding: utf-8 -*-
  2. """
  3. Reads in a folder containing nifti scans and saves scan1,3,5 windowed into output folder
  4. window means all pixels below a specified intensity are set to zero
  5. """
  6.  
  7.  
  8. import SimpleITK as sitk
  9. import numpy as np
  10. import matplotlib.pyplot as plt
  11. import os
  12.  
  13.  
  14.  
  15. folder= "D:/data/MPhys2019/PETCT-HN/26-11/NonRigid/BigDoseCropNonRigid/"
  16. output_folder= "D:/data/MPhys2019/PETCT-HN/03-01/"
  17.  
  18.  
  19.  
  20. registration_method = sitk.ImageRegistrationMethod()    
  21. registration_method.SetMetricAsCorrelation()
  22.  
  23. for filename in os.listdir(folder):
  24.     if "scan1" in filename:
  25.         #print(filename.replace("_scan1.nii",""))
  26.         patientpack= filename.replace("_scan1.nii","")
  27.         print(patientpack)
  28.        
  29.         scan1= folder + filename
  30.         scan3= folder + patientpack + "_scan3.nii"
  31.         scan5= folder + patientpack + "_scan5.nii"
  32.        
  33.         scan1_image= sitk.ReadImage(scan1, sitk.sitkFloat32)
  34.         scan3_image= sitk.ReadImage(scan3, sitk.sitkFloat32)
  35.         scan5_image= sitk.ReadImage(scan5, sitk.sitkFloat32)
  36.        
  37.         window = sitk.IntensityWindowingImageFilter()
  38.         #window.SetWindowMinimum(930)
  39.         window.SetWindowMinimum(1224)
  40.         window.SetWindowMaximum(5000)
  41.         window.SetOutputMinimum(0)
  42.         window.SetOutputMaximum(5000)
  43.        
  44.         scan1_image_window = window.Execute(scan1_image)
  45.         scan3_image_window = window.Execute(scan3_image)
  46.         scan5_image_window = window.Execute(scan5_image)
  47.        
  48.         writer = sitk.ImageFileWriter()
  49.         writer.SetFileName(output_folder+filename)
  50.         writer.Execute(scan1_image_window)
  51.        
  52.         writer.SetFileName(output_folder+patientpack+"_scan3.nii")
  53.         writer.Execute(scan3_image_window)
  54.        
  55.         writer.SetFileName(output_folder+patientpack+"_scan5.nii")
  56.         writer.Execute(scan5_image_window)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement