Невозможно просмотреть изображения в SimpleITK - PullRequest
0 голосов
/ 03 декабря 2018

Я хочу прочитать изображения в разных папках.Я написал следующий код

     for Case_id in range(1,6):

     path ='/Users/XXXXXX/Desktop/pyradiomics/Converted/Case{}/'.format(Case_id)
     print(path)
     for files in os.listdir(path):
       if files.endswith("Image.nii"):
          print(files)
          image=sitk.ReadImage (files)
       if files.endswith("label.nii"):
          print(files)
          mask=sitk.ReadImage (files)

Когда я запускаю это, я получаю сообщение об ошибке:

RuntimeError: Исключение, генерируемое в SimpleITK ReadImage: / scratch / dashboard / SimpleITK-OSX10.6-x86_64-pkg / SimpleITK / Code / IO / src / sitkImageReaderBase.cxx: 89:

sitk :: ОШИБКА: файл "xxxx_image.nii" не существует.

Если я просто запускаю команду печати, я вижу все файлы вместе с путем в указанной папке.Буду признателен за помощь.

Ответы [ 2 ]

0 голосов
/ 14 декабря 2018

@ Дэйв-чен правильный.Вам нужно присоединиться к пути, чтобы получить полный путь.Попробуйте:

 for Case_id in range(1,6):

 path ='/Users/XXXXXX/Desktop/pyradiomics/Converted/Case{}/'.format(Case_id)
 print(path)
 for files in os.listdir(path):
   if files.endswith("Image.nii"):
      print(files)
      image=sitk.ReadImage(os.path.join(path, files))
   if files.endswith("label.nii"):
      print(files)
      mask=sitk.ReadImage(os.path.join(path, files))
0 голосов
/ 07 декабря 2018

Полагаю, вам нужно передать полный путь к ReadImage.«files» - это только имя файла.Если вы не запускаете сценарий в этом каталоге «путь», ReadImage не будет штрафовать файлы, поэтому он будет искать в текущем рабочем каталоге.

...