Skip to content

Add introductory k-space basics tutorial for MRI reconstruction #2055

@ViSaReVe

Description

@ViSaReVe

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 (FastMRIReaderCenterSpatialCropdReferenceBasedNormalizeIntensityd)
    • 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 existing unet_demo and varnet_demo
  • Updated runner.sh: Added notebook to doesnt_contain_max_epochs (no training loop)

Dataset

  • Uses fastMRI knee single-coil validation set (non-commercial license)
  • Only one .h5 file (~300 MB) required — no need for the full ~1.5 TB brain multi-coil download
  • Added to skip_run_papermill via existing .*MRI_reconstruction.* pattern

Design decisions

  • Bridges the gap between newcomers and production tutorials (unet_demo, varnet_demo)
  • Uses CenterSpatialCropd instead of ReferenceBasedSpatialCropd to 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_ifft and reconstruction_esc both (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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions