Hi Nico
That sounds strange. To see what is going on you could you try another
slice as reference slice. Then you can subtract one of the corrected
volumes from the corresponding uncorrected volume. In the reference
slice there should be no difference between the two volumes.
Best
Torben
Torben Ellegaard Lund
Assistant Professor, PhD
The Danish National Research Foundation's Center of Functionally
Integrative Neuroscience (CFIN)
Aarhus University
Aarhus University Hospital
Building 10G, 5th floor
Noerrebrogade 44
8000 Aarhus C
Denmark
Phone: +4589494380
Fax: +4589494400
http://www.cfin.au.dk
[log in to unmask]
Den 07/07/2009 kl. 16.34 skrev Mark Jenkinson:
> Hi,
>
> I'm afraid I'm not very familiar with the workings of SPM at this
> level.
> However, what you'd done looks sensible to me. Is there any sform
> or qform information in the nifti image? It is possible that SPM
> might
> use this to determine the order of the slices, whereas FSL just uses
> the
> voxel coordinates.
>
> All the best,
> Mark
>
>
>
>
> On 30 Jun 2009, at 08:59, Nico wrote:
>
>> Hi everyone!
>>
>> We have encountered a rather strange behaviour using “Slice
>> timing“– during
>> preprocessing - in FSL compared to SPM.
>>
>> First I tell you what we did.
>>
>> Overall info:
>>
>> Linux Version: debian lenny
>> FSL Version 4.2.1
>> SPM Version 5
>> TR: 2,5 sec
>> Nr.of Slices: 31
>> Measurement: Interleaved – starting with Slice 1 ( 1,3,5 ... 31,
>> 2,4,6...30)
>>
>>
>> 1. We converted the raw DICOMs into a 4D Nifti-file
>>
>> 2. During pre-processing we found a striking difference in the
>> slice timing
>> operation between FSL and SPM.
>>
>> 3. Looking at the slice timing specs in detail:
>>
>>
>> i. with FSL we used:
>> slicetimer –i raw4dnifti –o output –r 2.5 –ocustom=ST_FILE
>> ST_FILE is ascii text with one number per line (1 3 5 etc.).
>> Using option “odd” yields exactly the same result.
>>
>>
>> ii. with SPM5 we used:
>> spm_slice_timing(P, sliceorder , refslice, timing);
>> with:
>> nslices = 31; TR = 2.5; TA = TR-TR/nslices;
>> timing(2) = TR - TA;
>> timing(1) = TA / (nslices -1);
>> refslice=31;
>> sliceorder=[1:2:31 2:2:31]
>> P the volumes from raw4dnifti (fslsplit)
>>
>> (in FSL and SPM the same raw data and the same TR were entered.
>> Both Systems
>> used TR/2 as reference)
>>
>>
>> 4. Looking at the results there is a discrete difference between
>> these two
>> analyzes.
>>
>> The surprise was that when we _reverse_ the Sliceorder on one
>> System (FSL or
>> SPM) we can create the result of the other system. Meaning changing
>> the
>> Sliceorder in SPM (sliceorder=[30:-2:1 31:-2:1]) creates the FSL
>> results and
>> reversing the file ST_FILE
>> (tac ST_FILE > reverse_ST_FILE and using this; ) yields exactly the
>> SPM results.
>>
>>
>>
>>
>> Now the question:
>> Did we make any mistakes concerning entering the sliceorder?
>> Do you have any idea to explain this discrepancy between SPM and FSL?
>>
>>
>> Cheers,
>> Nico
>>
|