gitextract_vkpapda3/ ├── .github/ │ └── workflows/ │ ├── codespell.yml │ └── run_tests_nnunet.yml ├── .gitignore ├── CONTRIBUTING.md ├── LICENSE ├── documentation/ │ ├── __init__.py │ ├── benchmarking.md │ ├── changelog.md │ ├── competitions/ │ │ ├── AortaSeg24.md │ │ ├── AutoPETII.md │ │ ├── FLARE24/ │ │ │ ├── Task_1/ │ │ │ │ ├── __init__.py │ │ │ │ ├── inference_flare_task1.py │ │ │ │ └── readme.md │ │ │ ├── Task_2/ │ │ │ │ ├── __init__.py │ │ │ │ ├── inference_flare_task2.py │ │ │ │ └── readme.md │ │ │ └── __init__.py │ │ ├── Toothfairy2/ │ │ │ ├── __init__.py │ │ │ ├── inference_script_semseg_only_customInf2.py │ │ │ └── readme.md │ │ └── __init__.py │ ├── convert_msd_dataset.md │ ├── dataset_format.md │ ├── dataset_format_inference.md │ ├── explanation_logging.md │ ├── explanation_normalization.md │ ├── explanation_plans_files.md │ ├── extending_nnunet.md │ ├── how_to_use_nnunet.md │ ├── ignore_label.md │ ├── installation_instructions.md │ ├── manual_data_splits.md │ ├── pretraining_and_finetuning.md │ ├── region_based_training.md │ ├── resenc_presets.md │ ├── run_inference_with_pretrained_models.md │ ├── set_environment_variables.md │ ├── setting_up_paths.md │ └── tldr_migration_guide_from_v1.md ├── nnunetv2/ │ ├── __init__.py │ ├── batch_running/ │ │ ├── __init__.py │ │ ├── benchmarking/ │ │ │ ├── __init__.py │ │ │ ├── generate_benchmarking_commands.py │ │ │ └── summarize_benchmark_results.py │ │ ├── collect_results_custom_Decathlon.py │ │ ├── collect_results_custom_Decathlon_2d.py │ │ ├── generate_lsf_runs_customDecathlon.py │ │ ├── jobs.sh │ │ └── release_trainings/ │ │ ├── __init__.py │ │ └── nnunetv2_v1/ │ │ ├── __init__.py │ │ ├── collect_results.py │ │ └── generate_lsf_commands.py │ ├── configuration.py │ ├── dataset_conversion/ │ │ ├── Dataset015_018_RibFrac_RibSeg.py │ │ ├── Dataset021_CTAAorta.py │ │ ├── Dataset023_AbdomenAtlas1_1Mini.py │ │ ├── Dataset027_ACDC.py │ │ ├── Dataset042_BraTS18.py │ │ ├── Dataset043_BraTS19.py │ │ ├── Dataset073_Fluo_C3DH_A549_SIM.py │ │ ├── Dataset114_MNMs.py │ │ ├── Dataset115_EMIDEC.py │ │ ├── Dataset119_ToothFairy2_All.py │ │ ├── Dataset120_RoadSegmentation.py │ │ ├── Dataset137_BraTS21.py │ │ ├── Dataset218_Amos2022_task1.py │ │ ├── Dataset219_Amos2022_task2.py │ │ ├── Dataset220_KiTS2023.py │ │ ├── Dataset221_AutoPETII_2023.py │ │ ├── Dataset223_AMOS2022postChallenge.py │ │ ├── Dataset224_AbdomenAtlas1.0.py │ │ ├── Dataset226_BraTS2024-BraTS-GLI.py │ │ ├── Dataset227_TotalSegmentatorMRI.py │ │ ├── Dataset987_dummyDataset4.py │ │ ├── Dataset989_dummyDataset4_2.py │ │ ├── __init__.py │ │ ├── convert_MSD_dataset.py │ │ ├── convert_raw_dataset_from_old_nnunet_format.py │ │ ├── datasets_for_integration_tests/ │ │ │ ├── Dataset996_IntegrationTest_Hippocampus_regions_ignore.py │ │ │ ├── Dataset997_IntegrationTest_Hippocampus_regions.py │ │ │ ├── Dataset998_IntegrationTest_Hippocampus_ignore.py │ │ │ ├── Dataset999_IntegrationTest_Hippocampus.py │ │ │ └── __init__.py │ │ └── generate_dataset_json.py │ ├── ensembling/ │ │ ├── __init__.py │ │ └── ensemble.py │ ├── evaluation/ │ │ ├── __init__.py │ │ ├── accumulate_cv_results.py │ │ ├── evaluate_predictions.py │ │ └── find_best_configuration.py │ ├── experiment_planning/ │ │ ├── __init__.py │ │ ├── dataset_fingerprint/ │ │ │ ├── __init__.py │ │ │ └── fingerprint_extractor.py │ │ ├── experiment_planners/ │ │ │ ├── __init__.py │ │ │ ├── default_experiment_planner.py │ │ │ ├── network_topology.py │ │ │ ├── resampling/ │ │ │ │ ├── __init__.py │ │ │ │ ├── planners_no_resampling.py │ │ │ │ └── resample_with_torch.py │ │ │ ├── resencUNet_planner.py │ │ │ └── residual_unets/ │ │ │ ├── __init__.py │ │ │ └── residual_encoder_unet_planners.py │ │ ├── plan_and_preprocess_api.py │ │ ├── plan_and_preprocess_entrypoints.py │ │ ├── plans_for_pretraining/ │ │ │ ├── __init__.py │ │ │ └── move_plans_between_datasets.py │ │ └── verify_dataset_integrity.py │ ├── imageio/ │ │ ├── __init__.py │ │ ├── base_reader_writer.py │ │ ├── natural_image_reader_writer.py │ │ ├── nibabel_reader_writer.py │ │ ├── reader_writer_registry.py │ │ ├── readme.md │ │ ├── simpleitk_reader_writer.py │ │ └── tif_reader_writer.py │ ├── inference/ │ │ ├── JHU_inference.py │ │ ├── __init__.py │ │ ├── data_iterators.py │ │ ├── examples.py │ │ ├── export_prediction.py │ │ ├── predict_from_raw_data.py │ │ ├── readme.md │ │ └── sliding_window_prediction.py │ ├── model_sharing/ │ │ ├── __init__.py │ │ ├── entry_points.py │ │ ├── model_download.py │ │ ├── model_export.py │ │ └── model_import.py │ ├── paths.py │ ├── postprocessing/ │ │ ├── __init__.py │ │ └── remove_connected_components.py │ ├── preprocessing/ │ │ ├── __init__.py │ │ ├── cropping/ │ │ │ ├── __init__.py │ │ │ └── cropping.py │ │ ├── normalization/ │ │ │ ├── __init__.py │ │ │ ├── default_normalization_schemes.py │ │ │ ├── map_channel_name_to_normalization.py │ │ │ └── readme.md │ │ ├── preprocessors/ │ │ │ ├── __init__.py │ │ │ └── default_preprocessor.py │ │ └── resampling/ │ │ ├── __init__.py │ │ ├── default_resampling.py │ │ ├── no_resampling.py │ │ ├── resample_torch.py │ │ └── utils.py │ ├── run/ │ │ ├── __init__.py │ │ ├── load_pretrained_weights.py │ │ └── run_training.py │ ├── tests/ │ │ ├── __init__.py │ │ └── integration_tests/ │ │ ├── __init__.py │ │ ├── add_lowres_and_cascade.py │ │ ├── cleanup_integration_test.py │ │ ├── lsf_commands.sh │ │ ├── prepare_integration_tests.sh │ │ ├── readme.md │ │ ├── run_integration_test.sh │ │ ├── run_integration_test_bestconfig_inference.py │ │ ├── run_integration_test_trainingOnly_DDP.sh │ │ └── run_nnunet_inference.py │ ├── training/ │ │ ├── __init__.py │ │ ├── data_augmentation/ │ │ │ ├── __init__.py │ │ │ ├── compute_initial_patch_size.py │ │ │ └── custom_transforms/ │ │ │ ├── __init__.py │ │ │ ├── cascade_transforms.py │ │ │ ├── deep_supervision_donwsampling.py │ │ │ ├── masking.py │ │ │ ├── region_based_training.py │ │ │ └── transforms_for_dummy_2d.py │ │ ├── dataloading/ │ │ │ ├── __init__.py │ │ │ ├── data_loader.py │ │ │ ├── nnunet_dataset.py │ │ │ └── utils.py │ │ ├── logging/ │ │ │ ├── __init__.py │ │ │ └── nnunet_logger.py │ │ ├── loss/ │ │ │ ├── __init__.py │ │ │ ├── compound_losses.py │ │ │ ├── deep_supervision.py │ │ │ ├── dice.py │ │ │ └── robust_ce_loss.py │ │ ├── lr_scheduler/ │ │ │ ├── __init__.py │ │ │ ├── polylr.py │ │ │ └── warmup.py │ │ └── nnUNetTrainer/ │ │ ├── __init__.py │ │ ├── nnUNetTrainer.py │ │ ├── primus/ │ │ │ ├── __init__.py │ │ │ └── primus_trainers.py │ │ └── variants/ │ │ ├── __init__.py │ │ ├── benchmarking/ │ │ │ ├── __init__.py │ │ │ ├── nnUNetTrainerBenchmark_5epochs.py │ │ │ └── nnUNetTrainerBenchmark_5epochs_noDataLoading.py │ │ ├── competitions/ │ │ │ ├── __init__.py │ │ │ └── aortaseg24.py │ │ ├── data_augmentation/ │ │ │ ├── __init__.py │ │ │ ├── nnUNetTrainerDA5.py │ │ │ ├── nnUNetTrainerDAOrd0.py │ │ │ ├── nnUNetTrainerNoDA.py │ │ │ ├── nnUNetTrainerNoMirroring.py │ │ │ └── nnUNetTrainer_noDummy2DDA.py │ │ ├── loss/ │ │ │ ├── __init__.py │ │ │ ├── nnUNetTrainerCELoss.py │ │ │ ├── nnUNetTrainerDiceLoss.py │ │ │ └── nnUNetTrainerTopkLoss.py │ │ ├── lr_schedule/ │ │ │ ├── __init__.py │ │ │ ├── nnUNetTrainerCosAnneal.py │ │ │ └── nnUNetTrainer_warmup.py │ │ ├── network_architecture/ │ │ │ ├── __init__.py │ │ │ ├── nnUNetTrainerBN.py │ │ │ └── nnUNetTrainerNoDeepSupervision.py │ │ ├── optimizer/ │ │ │ ├── __init__.py │ │ │ ├── nnUNetTrainerAdam.py │ │ │ └── nnUNetTrainerAdan.py │ │ ├── sampling/ │ │ │ ├── __init__.py │ │ │ └── nnUNetTrainer_probabilisticOversampling.py │ │ └── training_length/ │ │ ├── __init__.py │ │ ├── nnUNetTrainer_Xepochs.py │ │ └── nnUNetTrainer_Xepochs_NoMirroring.py │ └── utilities/ │ ├── __init__.py │ ├── collate_outputs.py │ ├── crossval_split.py │ ├── dataset_name_id_conversion.py │ ├── ddp_allgather.py │ ├── default_n_proc_DA.py │ ├── file_path_utilities.py │ ├── find_class_by_name.py │ ├── get_network_from_plans.py │ ├── helpers.py │ ├── json_export.py │ ├── label_handling/ │ │ ├── __init__.py │ │ └── label_handling.py │ ├── network_initialization.py │ ├── overlay_plots.py │ ├── plans_handling/ │ │ ├── __init__.py │ │ └── plans_handler.py │ └── utils.py ├── pyproject.toml ├── readme.md └── setup.py