Skip to content

Adapting ExploreASL pipeline to multi-PLD data #759

@BeatrizPadrela

Description

@BeatrizPadrela

Description

Import module:
Merging of multiple single-PLD files is done automatically according to file-placement in directories.
Should provide option to disable merge if preferred, see issue #917.

Output: ASL4D (consisting of according to BIDS structure: PLD1(C-L,C-L,C-L)PLD2(C-L,C-L,C-L))

ASL module:
At the beginning of the module (after LoadParams in line 206): recognition of multi-TE, multi-PLD, time encoded (Hadamard)

  • TopUp: no changes 👍
    -> check if it can be applied to more dimensions ( see issue TopUp for multiple dimensions #918)

  • Motion correction: 👍 (ASL module - step 2) @BeatrizPadrela
    Default is on.
    -> zigzag=false
    -> xASL_wrp_Realign_ASL:
    -- bENABLE instead of bExecuteENABLE 👍
    -- bENABLE = 0 at the beginning of the function if multiPLD. Default bENABLE=1 👍
    --bZigZag defined at the beginning of the Realign function 👍

Check what others do in multi-PLD motion correction (see issue #919)

  • Registration (ASL module - step 3) @BeatrizPadrela
    -> xASL_wrp_RegisterASL:
    -- Step H: There's this Pairwise subtraction that creates this PWI_Clipped image. Jan checked that this PWI_Clipped image is only used in this function and in the Realign [this Clipped_ORI can be deleted in the future because is not used anywhere else]. So, since in this function we want to obtain a single volume:
    • if multi-PLD, we can run the Pairwise subtraction (since we have control and label images for each PLD) and take an average of all the PLDs (->later on we might want to do some extra-check because instead of average with all of the PLDs, we probably don't want to include the early PLDs but only the later ones that look like CBF) -> Optimize the registration of multi-PLD #914
      -We don't need to change this step, just test if it works

And after this, the PWI_Clipped is going to work irrespectively how the Clipped was created (bRegistrationCBF loop in the step H)

  • Resampling (ASL module - step 4)
    ->xASL_wrp_ResampleASL:
    We currently use PWI (a 4 dimensional matrix), however we can also use PWI4D (containing all repeats). For now, insert warning that we use only PWI
    -- check if BASIL uses multiple repeats to optimise quantification (PVC) and implement that in future issue PWI4D for BASIL #920

    -- Step8: pair-wise subtraction: (discuss with @HenkMutsaerts)

    • for multiPLD: stays the same - subtracting controls and labels (Paired subtraction part). For the PWI, we need to calculate the mean across the repetitions and keep the PLDs separate (Average PWI part).
      BASIL-> 4D PWI file, containing the repeats and PLD's. Basil inputs a txt file with the order of the volumes (PLD, Repetitions - check BIDS structure)
  • Process M0 (ASL module - step 6) @MDijsselhof
    -> Acquired M0
    -> Non-background suppressed mean control of the latest (or only) PLD

  • Quantification (ASL module - step 8) @MDijsselhof
    ->xASL_wrp_Quantify -> Perform Quantification (step 8 of xASL_wrp_Quantify) -> xASL_quant_SinglePLD, line 131 -> xASL_quant_Basil
    -> Check which outputs we want from Basil
    -> Create config file

How to test

With the multiPLD dataset we have

Requirements

Optional: add feature requirements here

Metadata

Metadata

Labels

featureNew feature, enhancement or request

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions