Hi,
I'm a relatively new user of FSL (4.0.2), and I'm very impressed with the range of things that is
does, and how well it does them! However, I'm having some trouble with some specific issues
having to do with FEAT, and I'm not sure if this is due to bugs, conceptual errors on my part, or
both. I should preface this by saying I have looked for the answers to these questions in previous
list posts, and in the online documentation, and while this has gotten me past most of my issues,
there are some that remain. I thought I'd ask this list. Some of these issues are probably just me
not "getting" the FSL way of doing things, so please forgive me if that is the case...
In theory, you can redo parts of an analysis as you gain more information, or decide to try
different things. Specifically, say I run a full analysis (which runs to completion correctly), and
then realize I left out a contrast that I wanted. So I reload the .fsf file that I saved before running
the full analysis, change the input 4D dataset to the name of the output directory from the full
analysis (in this case, cg.feat), then I add the contrast of interest, and select the menu item for
"Stats and Post-stats", since there is no reason to redo motion correction, slice timing correction,
and filtering.
a) I'd like to check the "add motion parameters to model" button, but I can't. Why not? The
prestats have been calculated, so the motion information exists. I was able to check the button
when I originally calculated the model, and did, so those parameters (which won't change, since
I'm not redoing prestats) should still be valid, right? The documentation even says that I can't do
this, but I still don't understand why not.
b) In any case, the partial analysis does not run. I press "Go" and I get the following:
Prestats
/usr/local/fsl/bin/fslmaths /Users/frederic/Documents/MR_data/GSGfsl/cg/func/cg.feat
prefiltered_func_data
** ERROR (nifti_image_read): failed to find header file for
'/Users/frederic/Documents/MR_data/GSGfsl/cg/func/cg.feat'
** ERROR: nifti_image_open(/Users/frederic/Documents/MR_data/GSGfsl/cg/func/cg.feat): bad
header info
Error: failed to open file /Users/frederic/Documents/MR_data/GSGfsl/cg/func/cg.feat
Cannot open volume /Users/frederic/Documents/MR_data/GSGfsl/cg/func/cg.feat for reading!
Total original volumes = 0
Error - prefiltered_func_data has a different number of time points to that in FEAT setup
So, clearly it really doesn't want the name of the previous output directory as the name of the 4D
data. But what does it want? I've tried file that is the output of prestats
(cg.feat/filtered_func.nii.gz), which seems to get farther:
Prestats
/usr/local/fsl/bin/fslmaths
/Users/frederic/Documents/MR_data/GSGfsl/cg/func/cg.feat/filtered_func_data
prefiltered_func_data
Total original volumes = 250
/usr/local/fsl/bin/fslroi prefiltered_func_data example_func 125 1
/usr/local/fsl/bin/fslmaths prefiltered_func_data filtered_func_data
/usr/local/fsl/bin/fslmaths filtered_func_data -Tmin -bin mask -odt char
/usr/local/fsl/bin/fslstats filtered_func_data -k mask -R | awk '{ print }' -
1266.371948
/usr/local/fsl/bin/fslmaths filtered_func_data -Tmean mean_func
/bin/rm -rf prefiltered_func_data*
Stats
mkdir -p custom_timing_files ; /bin/cp
/Users/frederic/Documents/MR_data/GSGfsl/cg/func/RVF.txt custom_timing_files/ev1.txt
mkdir -p custom_timing_files ; /bin/cp
/Users/frederic/Documents/MR_data/GSGfsl/cg/func/LVF.txt custom_timing_files/ev2.txt
mkdir -p custom_timing_files ; /bin/cp
/Users/frederic/Documents/MR_data/GSGfsl/cg/func/BVF.txt custom_timing_files/ev3.txt
/usr/local/fsl/bin/film_gls -rn stats -sa -ms 5 -sp /usr/local/fsl/bin/susan_smooth
filtered_func_data design.mat 1266.371948
Log directory is: stats
Num scans = 250, design matrix rows = 248
An exception has been thrown
size of design matrix does not match number of scans
Error: FILM did not complete - it probably ran out of memory
So that looks better, but now it forgets that the dataset it is using has had some dummies
removed from the beginning. However, if I change the number of scans to 248, stats fails,
thinking there should be 250:
Prestats
/usr/local/fsl/bin/fslmaths
/Users/frederic/Documents/MR_data/GSGfsl/cg/func/cg.feat/filtered_func_data
prefiltered_func_data
Total original volumes = 250
Error - prefiltered_func_data has a different number of time points to that in FEAT setup
Clearly I'm not understanding something... help!
Blaise
P.S. I know I could just fix my fsf files and completely rerun everything (which is what I've been
doing as a workaround), but this seems silly, since there is no reason to redo the prestats
calculations (or the registrations); and when I do this on a big dataset, that is an extra 24 hours
worth of CPU time, which is not an inconsiderable amount of time and electricity. I'm trying to
reduce the carbon footprint of my data processing :-)
|