Skip to content
New issue

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

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

Already on GitHub? # to your account

How to handle the reconstructed FOV when remove_oversampling is used. #239

Open
aTrotier opened this issue Feb 26, 2025 · 1 comment
Open
Labels
bug Something isn't working enhancement New feature or request

Comments

@aTrotier
Copy link
Contributor

I am reconstructing a siemens MPRAGE acquisition with readout and phase oversampling
The readout oversampling is now handle by the function remove_oversampling which does not edit the encodedFOV / reconFOV.

After performing the reconstruction with MRIReco I get an image with correct FOV along the readout but the oversampling is still present in the phase direction.

If I write a nifti in order to get the correct pixel spacing I need to take the reconFOV for the first dimension and the encodedFOV for the y and z direction.

Multiple possibilities :

  1. After removing the oversample I change the encodedFOV[1] to the reconFOV[1] and we used that to create the pixel spacing for nifti
  2. We should apply the remove_oversampling along the y/z direction after reconstruction and in that case the reconFOV should be used

The 2nd option seems better but we need to pass the encodedFOV/reconFOV which are not stored in the acq struct.

Should we automatically store raw.params in acq.sequenceInfo in order to keep thus informations ?

  acq = AcquisitionData(tr, kdata,
                          idx = subsampleIdx,
                          encodingSize = ntuple(d->f.params["encodedSize"][d], ndims(tr[1])),
                          fov = Float64.(ntuple(d->f.params["encodedFOV"][d], 3)))

In that case the second step of remove_oversampling will be something like :

remove_oversampling!(image, acq ;readout=false, phase = true, partition = true) 
@aTrotier aTrotier added bug Something isn't working enhancement New feature or request labels Feb 26, 2025
@aTrotier
Copy link
Contributor Author

Actually MRICoilSensitivities.crop(im_sense.data,Tuple(raw_imaging.params["reconSize"])) seems to works

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
bug Something isn't working enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant