| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
|
|
| from nnunet.paths import nnUNet_raw_data, preprocessing_output_dir, nnUNet_cropped_data, network_training_output_dir |
| from batchgenerators.utilities.file_and_folder_operations import * |
| import numpy as np |
|
|
|
|
| def convert_id_to_task_name(task_id: int): |
| startswith = "Task%03.0d" % task_id |
| if preprocessing_output_dir is not None: |
| candidates_preprocessed = subdirs(preprocessing_output_dir, prefix=startswith, join=False) |
| else: |
| candidates_preprocessed = [] |
|
|
| if nnUNet_raw_data is not None: |
| candidates_raw = subdirs(nnUNet_raw_data, prefix=startswith, join=False) |
| else: |
| candidates_raw = [] |
|
|
| if nnUNet_cropped_data is not None: |
| candidates_cropped = subdirs(nnUNet_cropped_data, prefix=startswith, join=False) |
| else: |
| candidates_cropped = [] |
|
|
| candidates_trained_models = [] |
| if network_training_output_dir is not None: |
| for m in ['2d', '3d_lowres', '3d_fullres', '3d_cascade_fullres']: |
| if isdir(join(network_training_output_dir, m)): |
| candidates_trained_models += subdirs(join(network_training_output_dir, m), prefix=startswith, join=False) |
|
|
| all_candidates = candidates_cropped + candidates_preprocessed + candidates_raw + candidates_trained_models |
| unique_candidates = np.unique(all_candidates) |
| if len(unique_candidates) > 1: |
| raise RuntimeError("More than one task name found for task id %d. Please correct that. (I looked in the " |
| "following folders:\n%s\n%s\n%s" % (task_id, nnUNet_raw_data, preprocessing_output_dir, |
| nnUNet_cropped_data)) |
| if len(unique_candidates) == 0: |
| raise RuntimeError("Could not find a task with the ID %d. Make sure the requested task ID exists and that " |
| "nnU-Net knows where raw and preprocessed data are located (see Documentation - " |
| "Installation). Here are your currently defined folders:\nnnUNet_preprocessed=%s\nRESULTS_" |
| "FOLDER=%s\nnnUNet_raw_data_base=%s\nIf something is not right, adapt your environemnt " |
| "variables." % |
| (task_id, |
| os.environ.get('nnUNet_preprocessed') if os.environ.get('nnUNet_preprocessed') is not None else 'None', |
| os.environ.get('RESULTS_FOLDER') if os.environ.get('RESULTS_FOLDER') is not None else 'None', |
| os.environ.get('nnUNet_raw_data_base') if os.environ.get('nnUNet_raw_data_base') is not None else 'None', |
| )) |
| return unique_candidates[0] |
|
|
|
|
| def convert_task_name_to_id(task_name: str): |
| assert task_name.startswith("Task") |
| task_id = int(task_name[4:7]) |
| return task_id |
|
|