Skip to content

Commit

Permalink
Nvahmadi/3dregistration learn2reg (Project-MONAI#1513)
Browse files Browse the repository at this point in the history
### Description
Added MONAI tutorial for paired lung-CT **3D registration** with
keypoint matching ([Learn2Reg
2023](https://learn2reg.grand-challenge.org/), NLST task), in
collaboration with @brudfors. This is a modified version of the of the
training code for the Learn2Reg-NLST submission by @brudfors (currently
rank 14/111) in the challenge (see
[leaderboard](https://learn2reg.grand-challenge.org/evaluation/nlst-validation/leaderboard/)).

### Contributions beyond current tutorial
Compared to the current tutorial (`paired_lung_ct.ipynb`), this tutorial
uses data from the current NLST task of the Learn2Reg 2023 challenge.
The solution was developed in close alignment with the challenge
organizer Mattias Heinrich (@mattiaspaul on GitHub) and collaborators,
who will create a template test submission based on this solution.
Together, these tutorials will serve as a MONAI-native guide on how to
participate this year and in upoming iterations of Learn2Reg .

Beyond challenge participation, the tutorial introduces a new datatype
to MONAI (pointclouds) and demonstrates how easy it is to write custom
transforms for them (I/O and linear transforms). It also shows how to
write a custom multi-target loss function for registration that uses
loss components from MONAI/PyTorch/custom-code. This composite loss can
be flexibly used in both unsupervised (image-based) registration
scenarios, as well as supervised registration tasks (i.e. with auxiliary
keypoints and/or labelmaps).

### Checks
- [ X ] Avoid including large-size files in the PR.
- [ X ] Clean up long text outputs from code cells in the notebook.
- [ X ] For security purposes, please check the contents and remove any
sensitive info such as user names and private key.
- [ X ] Ensure (1) hyperlinks and markdown anchors are working (2) use
relative paths for tutorial repo files (3) put figure and graphs in the
`./figure` folder
- [ X ] Notebook runs automatically `./runner.sh -t <path to .ipynb
file>`. Note: The execution takes very long (approx. 50 mins, output of
`runner.sh` below:

```
Executing: 100%|█████████████████████████████████████████████████████████████████████| 37/37 [49:42<00:00, 80.61s/cell]
/home/ahmad/.local/lib/python3.8/site-packages/papermill/iorw.py:153: UserWarning: the file is not specified with any extension : -
  warnings.warn(

real    49m46.070s
user    10m25.173s
sys     4m0.110s

Testing finished. 0 of 1 executed tests passed!
```

---------
  • Loading branch information
nvahmadi authored Sep 11, 2023
1 parent 08e2aa9 commit 5c04902
Show file tree
Hide file tree
Showing 2 changed files with 1,280 additions and 1 deletion.
Loading

0 comments on commit 5c04902

Please sign in to comment.