ENHANCE-PET / FALCON

FALCON is a Python-based software application designed to facilitate PET motion correction, both for head and total-body scans. Our program is built around the fast 'greedy' registration toolkit, which serves as the registration engine. With FALCON, users can enjoy a streamlined experience for implementing motion correction.
GNU General Public License v3.0
36 stars 6 forks source link

Analysis: Write script for generating presegmentations for FALCON validation #22

Closed LalithShiyam closed 2 years ago

LalithShiyam commented 2 years ago

Clinicians will find it remarkably hard to segment all the major regions in PET. Would make sense if we could do some presegmentations using MOOSE models.

LalithShiyam commented 2 years ago

Update 1: Presegmentations of the CT are done for all the Siemens healthy volunteers.

Remaining task: Need to register the CT (moving) to the PET frames (fixed) individually and transfer the presegmentations to the PET, for the clinicians to rectify. Boy this is gonna take long.

LalithShiyam commented 2 years ago

Update 2: Presegmentations of the CT needs to be cleared of trachea. Will definitely need @josefyu's efforts.

josefyu commented 2 years ago

so the last status was, morph CT to make it visible with PET, since the PET are the dynamic images and CT is only avaible for 1 timepoint. Please let me know, when we can look together on the CT presegmentations (file location).

LalithShiyam commented 2 years ago

@josefyu Basically it's what I had mentioned in update: 2, we have the datasets (CT + CT segmentation), we need to clean up the trachea before I warp the CTs to different PET frames (along with their segmentations). So the to-do list is the following:

LalithShiyam commented 2 years ago

Folder structure implemented:

.
├── Sub001
│   ├── AC_LOWD_CT_WB_4_0_2_0_HD_FOV
│   ├── nifti
│   │   ├── CT           # CT image in nifti
│   │   ├── label        # Actual label in nifti after @josefyu correction
│   │   ├── label-NRRD   # Actual label in nrrd after @josefyu correction    
│   │   ├── paired-CT    # Multiple CT frames now in alignment with 3d PT 
│   │   ├── paired-label # Multiple label frames now in alignment with 3d PT
│   │   ├── paired-PT    # Individual 3d PT frames  
│   │   └── PT           # 4d PT frame
│   └── PET_WB_DYNAMIC_(QC)_0006
│       └── nifti
│           └── split3d
│               └── moco
├── Sub002
│   ├── AC_LOWD_CT_WB_4_0_2_0_HD_FOV
│   ├── nifti
│   │   ├── CT
│   │   ├── label
│   │   ├── label-NRRD
│   │   ├── paired-CT
│   │   ├── paired-label
│   │   ├── paired-PT
│   │   └── PT
│   └── PET_WB_DYNAMIC_(QC)_0006
│       └── nifti
│           └── split3d
│               └── moco
LalithShiyam commented 2 years ago

Script workflow align_ct_with_3dpet.py

josefyu commented 2 years ago

@josefyu Basically it's what I had mentioned in update: 2, we have the datasets (CT + CT segmentation), we need to clean up the trachea before I warp the CTs to different PET frames (along with their segmentations). So the to-do list is the following:

  • [x] @LalithShiyam creates a standardised folder structure optimised for the subsequent process
  • [x] @josefyu: clears the trachea from the dataset, uploaded to MOOSE PC, I would be needing the names as usual (segment names renamed)
  • [ ] @LalithShiyam: will convert the corrected nrrd to nifti with the correct segmentation.
  • [x] @LalithShiyam: will create a script to align the CT and its segmentation with the dynamic PET.
  • [ ] @josefyu: will check if the aligned segmentations are accurate (different task).

https://filesender.aco.net/?s=download&token=ece76841-f41b-42b0-a533-5cb5627a0b76

Labels cleared from trachea, saved as .nrrd, segments renamed as anatomical namings. note: some of the liver/kidneys segmentations are bad, tried to correct all errors.

LalithShiyam commented 2 years ago

Awesome, thank you @josefyu! The segmentations and the CT's are being aligned with the dynamic PET frames. We should have the results in a couple of hours! So I am closing this issue!