-
Notifications
You must be signed in to change notification settings - Fork 229
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
Inferring GE Slice Timing From Protocol Data Block #311
Comments
neurolabusc
added a commit
to neurolabusc/dcm_qa_stc
that referenced
this issue
Jul 19, 2019
neurolabusc
added a commit
to neurolabusc/dcm_qa_nih
that referenced
this issue
Jul 19, 2019
neurolabusc
added a commit
that referenced
this issue
Jul 19, 2019
yarikoptic
added a commit
to neurodebian/dcm2niix
that referenced
this issue
May 6, 2020
* tag 'v1.0.20190720': Update dcm_qa submodule. Handle rare VRs (https://www.aliza-dicom-viewer.com/download/datasets) New default merge option "-m o" will merge CTs and segment MRIs (https://discourse.slicer.org/t/odd-dicom-import/7576) --progress option (rordenlab#314; rordenlab#312) Tune verbosity (rordenlab#312) GE Slice Timing From Protocol Data Block (rordenlab#311) Desparate guess of GE slice times from ProtocolDataBlock (clone dicm2nii, assumes TA close to TR) Support interleaved (rordenlab#309) Slice times from ucMode (rordenlab#309) GE number of slice discrepancy (rordenlab#306) Simplify slice timing code, develop stc validation (https://github.com/neurolabusc/dcm_qa_stc) hdr.vox_offset is a float not integer (https://www.nitrc.org/forum/message.php?msg_id=27155) BIDS tags for PASL fairest sequent Read 0019,1029 (rordenlab#296) Generate warning rather than error when palette colors are detected (UNFmontreal/Dcm2Bids#54) Update tinydir call (rordenlab#298) Bruker 4D datasets: correct slice ordering Bruker 4D datasets: Fix parametric maps grouping Changes up to divest v0.8.1 Support isotropic scans for NRRD
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
There are three methods to determine slice times for GE EPI data:
The methods are described here.
In the past, dcm2niix only attempted the first two methods. The latest commit will attempt the third method if the first two fail (just like dicm2nii). The private data block only reports whether the data was acquired in sequential or interleaved order. We can infer the slice times by knowing the order, repetition time and number of slices. Unfortunately, there does not seem to be a reliable way to determine the acquisition time with GE, so this formula will only be precise for continuous fMRI (with no temporal gap between volumes) and will fail for sparse acquisitions (though we do not apply slice time correction when there are large gaps). When this method is applied, dcm2niix will generate the warning
Guessing slice times using ProtocolBlock SliceOrder
to warn the user that this is an estimate.I have added examples to dcm_qa_stc that show this method for sequential and interleaved series, each acquired in inferior-to-superior and superior-to-inferior order. dcm2niix stores GE axial slices to disk in inferior-to-superior order regardless of acquisiton order, and when it flips the slices it transforms the sform, qform and slice timing so they remain in register.
This should resolve issues for many users.
The text was updated successfully, but these errors were encountered: