MIC-DKFZ/nnDetection
nnDetection is a self-configuring framework for 3D (volumetric) medical object detection which can be applied to new data sets without manual intervention. It includes guides for 12 data sets that were used to develop and evaluate the performance of the proposed method.
What it solves
nDetection addresses the challenge of medical object detection—the simultaneous localization and categorization of objects in medical images. Traditionally, configuring the methods for this task is a cumbersome and iterative process. nnDetection automates this configuration, allowing the system to adapt to arbitrary medical detection problems without manual intervention while maintaining or exceeding state-of-the-art performance.
How it works
Following the philosophy of nnU-Net, nnDetection systematizes the configuration process. It uses a pipeline that includes:
- Planning & Preprocessing: The system analyzes the dataset properties and normalizes/resamples the data to create a configuration "plan" for training.
- Training: It utilizes a self-configuring architecture (such as RetinaUNet) and typically employs a 5-fold cross-validation scheme.
- Inference: After training, it consolidates models from different folds and can perform a hyperparameter sweep to find the best inference settings.
The project uses Hydra for dynamic configuration and Pytorch Lightning for its core modules, with registries for augmentations, dataloaders, and planners to allow easy swapping of components.
Who it’s for
Medical imaging researchers and clinicians who need to detect and categorize objects in 3D medical images (e.g., CT scans) without spending extensive time on manual hyperparameter tuning and method configuration.
Highlights
- Self-configuring: Automatically adapts to the specific medical detection problem at hand.
- Standardized Interface: Provides a consistent input format for various medical datasets, making it easy to integrate new data.
- Comprehensive Evaluation: Demonstrated effectiveness on public benchmarks like ADAM and LUNA16.
- Extensible Architecture: Uses a registry-based system for planners, modules, and augmentations.
Related
- Project
- Project
- Dispatch
- Project
- Project