[Neuroimaging] using nibabel to convert a dtscalar parcellation (1-N for each greyordinate) to a 4d (binary slice for each parcel) dtseries

Uri Elias uri.urie at gmail.com
Sat Oct 24 14:05:58 EDT 2020


Hi All,

Top level - I'd like to apply dual regression on rest fMRI based on
parcellation where my rs-fMRI data in in CIFTI format.

For a dual-regression SW I've chosen FSL, also because it works on Cifti
(according to manual).
For parcellation I've chosen the Schaefer parcellation, as it is
Cifti-available and also partially based on rest-fMRI.

Now, the Cifti parcellation file is a dscalar file (that is - a single
volume/surface), with each greyordinate belongs to one of N parcels. FSL
(AFAIU) requires a 4D file as a reference
Working with nibabel, reformatting the matrix is easy - reading it with
nibabel and do something like: for k in range(N):
    newdata[k,:] = (orgdata==k+1).astype(float)

Updating the Nifti header is also easy -
    newobj = nb.Cifti2Image(newdata, dscobj.header, dscobj.nifti_header)
    newobj.update_headers()

The problem with this way is the the Cifti header is not being updated -
    newobj.header.matrix.get_data_shape()
yeilds
    (1, 64984)

What's a good way of doing this? - either by sticking to the nibabel->FSL
line right or by any alternative

Thanks all so much,
Uri

-- 
Uri Elias

Computational Neuropsychiatry Lab

Hadassah Hebrew University Medical School
[image: www.neuropsychiatrylab.com] <http://www.neuropsychiatrylab.com/>

[image: facebook] <https://www.facebook.com/uri.urie>
[image: linkedin] <https://www.linkedin.com/in/uri-elias-99a43546/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.python.org/pipermail/neuroimaging/attachments/20201024/b6fb04dd/attachment.html>


More information about the Neuroimaging mailing list