Project-MONAI / Project-MONAI/tutorials
Add introductory k-space basics tutorial for MRI reconstruction
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Jupyter Notebook
- Sterne
- 2.5k
- Forks
- 803
- Ø Merge
- 6 T. 22 Std.
- Gemergte PRs (30 T.)
- 3
Beschreibung
Summary
Adds a beginner-friendly introductory tutorial for MRI reconstruction using the fastMRI knee single-coil dataset and MONAI's reconstruction transforms.
Changes
- New notebook:
reconstruction/MRI_reconstruction/tutorials/01_kspace_basics_fastmri_knee.ipynb- Part 1: What is k-space (loading real data, inverse FFT)
- Part 2: Fourier transform connection (low vs. high frequencies)
- Part 3: Undersampling and aliasing artifacts (1x, 2x, 4x, 8x)
- Part 4: Random vs. equispaced masks using
RandomKspaceMaskd/EquispacedKspaceMaskd - Part 5: Full MONAI preprocessing pipeline (
FastMRIReader→CenterSpatialCropd→ReferenceBasedNormalizeIntensityd) - Part 6: Zero-filled reconstruction → deep learning connection
- New README:
reconstruction/MRI_reconstruction/tutorials/README.md - Updated
README.md: Added missing Reconstruction section listing this tutorial plus existingunet_demoandvarnet_demo - Updated
runner.sh: Added notebook todoesnt_contain_max_epochs(no training loop)
Dataset
- Uses fastMRI knee single-coil validation set (non-commercial license)
- Only one
.h5file (~300 MB) required — no need for the full ~1.5 TB brain multi-coil download - Added to
skip_run_papermillvia existing.*MRI_reconstruction.*pattern
Design decisions
- Bridges the gap between newcomers and production tutorials (
unet_demo,varnet_demo) - Uses
CenterSpatialCropdinstead ofReferenceBasedSpatialCropdto handle the k-space (640×368) vs ground truth (320×320) dimension mismatch - No training loop — purely educational, runs without GPU
Test plan
- Notebook runs end-to-end on Google Colab with real fastMRI knee data (
file1000000.h5) - All 5 matplotlib visualizations render correctly
- Pipeline output shapes:
kspace_masked_ifftandreconstruction_escboth(1, 320, 320) - PEP 8 passes via
./runner.sh -t reconstruction/MRI_reconstruction/tutorials/01_kspace_basics_fastmri_knee.ipynb --no-run - Copyright header present with correct formatting
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit reconstruction/MRI_reconstruction/tutorials/01_kspace_basics_fastmri_knee.ipynb und vergleiche es mit den vorhandenen unet_demo- und varnet_demo-Tutorials. Führe ./runner.sh -t reconstruction/MRI_reconstruction/tutorials/01_kspace_basics_fastmri_knee.ipynb --no-run aus und validiere anschließend das Notebook mit der fastMRI-Datei file1000000.h5 in Colab. Als erledigt gilt die Aufgabe, wenn die Visualisierungen gerendert werden, die angegebenen Ausgabedimensionen übereinstimmen und die Einträge in README und runner.sh aktualisiert sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- jupyter-notebook, pytorch
- Bereich
- documentation, machine-learning
- Issue-Typ
- Dokumentation
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 68/100