Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New dataset lumbar-nusantara #313

Open
Nilser3 opened this issue May 15, 2024 · 12 comments
Open

New dataset lumbar-nusantara #313

Nilser3 opened this issue May 15, 2024 · 12 comments

Comments

@Nilser3
Copy link

Nilser3 commented May 15, 2024

Description

Open lumbar spine MRI dataset of 515 subjects (T1w sag, T2w sag, T1w axial, T2w axial), acquired at the Universitas Multimedia Nusantara, Indonesia.
Published in Natalia et al. (2019), dataset available online here (.ima files).

The dataset also has clinical information available here (added to participants.tsv file), and also has GT available here (PNG files).

Details

├── sub-0XYZ
│   └── anat
│       ├── sub-0XYZ_acq-sagittal_T1w.json
│       ├── sub-0XYZ_acq-sagittal_T1w.nii.gz
│       ├── sub-0XYZ_acq-sagittal_T2w.json
│       └── sub-0XYZ_acq-sagittal_T2w.nii.gz
├── derivatives
│   └── labels
│       ├── sub-0XYZ
│       │   └── anat
│       └──────  
  • Each subject sub-0XYZ corresponds to subject 0XYZ in the original folder
  • sub-0XYZ/anat/*.json files are the outputs of dcm2niix of each subject
  • All subjects were reoriented to RPI

TODO:

  • Fix conversion dcm to nii of T1w axial, T2w axial images, @NathanMolinier comments please .
  • LOCALIZER and Position Display available, add to git-annex also?
  • Convert PNG GTs to nii images

@mguaypaq could you please create a repo for lumbar-nusantara, thanks you

@Nilser3
Copy link
Author

Nilser3 commented May 16, 2024

I have been applying the latest version of the contrast-agnostic-softseg-spinalcord model (SCT v.6.3) for T1w and T2w

sct_deepseg -i lumbar-nusantara/sub-0001/anat/sub-0001_acq-sagittal_T1w.nii.gz -task seg_sc_contrast_agnostic -o lumbar-nusantara/derivatives/labels/sub-0001/anat/sub-0001_acq-sagittal_T1w_label-SC_seg.nii.gz
sct_deepseg -i lumbar-nusantara/sub-0001/anat/sub-0001_acq-sagittal_T2w.nii.gz -task seg_sc_contrast_agnostic -o lumbar-nusantara/derivatives/labels/sub-0001/anat/sub-0001_acq-sagittal_T2w_label-SC_seg.nii.gz

and lumbar_seg_EPFL on T2w to generate the SC segmentations:

sct_deepseg -i lumbar-nusantara/sub-001/anat/sub-0001_acq-sagittal_T2w.nii.gz -task seg_lumbar_sc_t2w -o lumbar-nusantara/derivatives/labels/sub-0001/anat/sub-0001_acq-sagittal_T2w_label-SC_seg_lumbar_sc_t2w.nii.gz

Here the QC,

Comments please @naga-karthik

sub-0019 contrast-agnostic on T2w
image

Legend of masks on QC

  • _T1w_label-SC_seg.nii.gz -> contrast-agnostic on T1w
  • _T2w_label-SC_seg.nii.gz -> contrast-agnostic on T2w
  • _T2w_label-SC_seg_lumbar_sc_t2w.nii.gz -> lumbar_seg_EPFL on T2w

@naga-karthik
Copy link
Member

Thanks for generating the segmentation masks, Nilser! I see that the segmentations from both models are indeed incomplete (undersegmentation and/or oversegmentation).

Could you also add sct_deepseg_sc 2d to the comparison? It might perform better in some cases.

@Nilser3
Copy link
Author

Nilser3 commented May 16, 2024

Agree @naga-karthik
Here the results adding sct_deepseg_sc -kernel 2d

Legend of masks on QC

  • _T1w_label-SC_seg_deepseg_sc.nii.gz -> sct_deepseg_sc on T1w
  • _T1w_label-SC_seg.nii.gz -> contrast-agnostic on T1w
  • _T2w_label-SC_seg_deepseg_sc.nii.gz -> sct_deepseg_sc on T2w
  • _T2w_label-SC_seg.nii.gz -> contrast-agnostic on T2w
  • _T2w_label-SC_seg_lumbar_sc_t2w.nii.gz -> lumbar_seg_EPFL on T2w

@mguaypaq
Copy link
Member

Ok, I created the repository and gave write access to @Nilser3:
https://data.neuro.polymtl.ca/datasets/lumbar-nusantara

@Nilser3
Copy link
Author

Nilser3 commented May 16, 2024

Thank you @mguaypaq , the dataset has been added
branch: nlm/initial_data

also tagging @NathanMolinier @naga-karthik

@NathanMolinier
Copy link

NathanMolinier commented May 22, 2024

I'm not able to fetch the data on this branch nlm/initial_data:

...
get sub-0573/anat/sub-0573_acq-sagittal_T2w.nii.gz (not available) 
  No other repository is known to contain the file.
failed
get sub-0575/anat/sub-0575_acq-sagittal_T1w.nii.gz (not available) 
  No other repository is known to contain the file.
failed
get sub-0575/anat/sub-0575_acq-sagittal_T2w.nii.gz (not available) 
  No other repository is known to contain the file.
failed
get: 1030 failed

Any idea @mguaypaq ?

@mguaypaq
Copy link
Member

I commented to @Nilser3 on https://data.neuro.polymtl.ca/datasets/lumbar-nusantara/pulls/1:

The contents of the git-annexed files don't seem to be there. Can you run this command please?

git annex copy --all --to origin

@Nilser3
Copy link
Author

Nilser3 commented May 22, 2024

Thank you @mguaypaq ,
I did it!

@naga-karthik
Copy link
Member

Hey @Nilser3 ! I just realized that SCT v6.3 has an older version of contrast-agnostic which was not trained on lumbar cord images ! (sorry I though SCT v6.3 already had that model).

I just released a new version of the model today which was trained on lumbar cord T2w (in addition to other contrasts). More details here.

Now, this new model can be part of SCT v6.4 but we don't have to wait that long until the release. In your cloned version of SCT, please update this line with the following url (shown below) and the you should be able to use the new model.

"https://github.com/sct-pipeline/contrast-agnostic-softseg-spinalcord/releases/download/v2.4/model_soft_bin_20240425-170840.zip"

I would be very curious to see how the new model works on lumbar-nusantara images!

@Nilser3
Copy link
Author

Nilser3 commented Jun 16, 2024

Thanks you @naga-karthik , sorry for the delay.

I have updated my deepseg models with v2.4 of the contrast-agnostic model. Thanks

Here the QC for 86 subjects

Legend of QC

  1. _T1w_label-SC_seg_deepseg_sc.nii.gz -> sct_deepseg_sc on T1w
  2. _T1w_label-SC_seg.nii.gz -> contrast-agnostic v2.4 on T1w
  3. _T2w_label-SC_seg_deepseg_sc.nii.gz -> sct_deepseg_sc on T2w
  4. _T2w_label-SC_seg.nii.gz -> contrast-agnostic v2.4 on T2w
  5. _T2w_label-SC_seg_lumbar_sc_t2w.nii.gz -> lumbar_seg_EPFL on T2w

In general I think that the model works better than sct_deeseg_sc and lumbar_seg_EPFL fot T2w images, but in T1w images no model generates a good segmentation.

Here some examples of contrast-agnostic SC segmentation:

image
sub-0013_acq-sagittal_T2w

image
sub-0006_acq-sagittal_T1w

image
sub-0009_acq-sagittal_T1w

I think segment SC is a challenge for the model because the lumbar-nusantara data are highly anisotropic images:

  • resolution on T2w = 4.8x7.3x7.3
  • resolution on T1w = 4.8x8.7x8.7

So we should train the next version of contrast-agnostic model by adding this data perhaps?

@jcohenadad
Copy link
Member

warning! the examples above are from the
lumbo-sacral spine, there is not spinal cord to segment there! (the images only show the cauda equinea)

@Nilser3
Copy link
Author

Nilser3 commented Jun 20, 2024

Currently this data is in Master branch in the git-annex,
we continue to discuss here how to generate the SC GTs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants