Dear Jan and all,
Sorry for my late reply and thanks again for all your help.
From your previous explanations and further reading over the past few days, I understood you propose to find the information I need inside the SPM structure at "SPM.xGX.rg" and that SPM computes the global mean of each image using the m-file "spm_global.m".
I could find the file "spm_global.m" at C:\MATLAB6p5\spm\spm5, but I could not find any structure containing "SPM.xGX.rg". I believe the explanation for this derives from the fact that I should have previous statistical results involving global means to find the structure.
In fact, I don't need more than to obtain the output mean (for nonzero voxels) for a given (coregistered, normalized and segmented) image after multiplying it by a binary mask.
In FSL, the command is avwstats <input image> -M
Is there a corresponding command (or toolbox) in SPM?
Regards,
Antonio
-----Mensagem original-----
De: Jan Gläscher [mailto:[log in to unmask]]
Enviada: sexta-feira, 8 de Setembro de 2006 15:47
Para: Bastos Leite, Antonio
Assunto: Re: [SPM] Average intensity (for nonzero voxels)
Dear Antonio,
alright, so you know that SPM runs under Matlab. It's actually a bunch of
so-called m-files which contain code that Matlab can interpret.
In Matlab there is something called the workspace which is your current
environment that contains all the matrices etc. that you are currently
working with. You can see what's in the workspace by type 'who' (without
the ') at the Matlab prompt.
SPM saves most of its calculations in a Matlab structure called SPM. For
instance, if you start spm and click on results, you are propted to select
a file called SPM.mat. This file contains the SPM structure. A structure
(or in Matlab file type, a struct) is a data entity that contains *named*
fields, which themselves contain the various information. These fields have
abbreviated names that may seem a little cryptic to the novice, but that's
the way it is. For instance SPM.xY contains the information regarding the
input images (your Y in the GLM). Then there are various sub-fields, it
just continues ...
Anyhow, when you specify you first-level analysis you are asked about
Global Normalization. Usually people select 'none', which is a little
misleading since there is some scaling carried when you select 'none'. SPM
then scales the mean of all images within one session to 100, i.e. the
differences of the images' global mean *within a session* session is
preserved, but the overall mean of each session is 100. In a way, this
deals with the session offsets in the BOLD signal. Anyways, in order to
scale this, SPM computes the global mean of each image (using the m-file
spm_global.m). These global means are the ones you are looking for. They
are saved with the SPM structure at SPM.xGX.rg. Just type at the Matlab
prompt 'SPM.xGX.rg' (again without the ') and you will see a vector of your
global means (of each image).
For go a little further with the scaling issue. The mean across all images
is scaled to 100 (the value in SPM.xGX.GM). But each session's mean can
differ from the this global mean. These individual session means are save
in SPM.xGX.gSF (actually it's a vector of the length Nimages, so for each
image you have the deviation of the session mean from the global mean.
Does this make sense?
If you are just looking for the global means of each image, you'll find
them in the vector SPM.xGX.rg
Cheers,
Jan
Bastos Leite, Antonio wrote:
> Dear Jan,
>
> As much as I appreciate your efforts to help me, honestly I cannot understand your information completely.
>
> Apparently, I should use Matlab, which is something I never did before (besides using it to launch SPM).
>
> Surely there are some tutorials on the subject (that I will try to find). Anyway, if you think you can give me some more details on the process to achieve what I need, I would appreciate a lot.
>
> Sorry for taking your time and thank you very much again,
>
> Antonio
>
> -----Mensagem original-----
> De: Jan Gläscher [mailto:[log in to unmask]]
> Enviada: sexta-feira, 8 de Setembro de 2006 13:16
> Para: Bastos Leite, Antonio
> Assunto: Re: [SPM] Average intensity (for nonzero voxels)
>
> Dear Antonio,
>
> if I remember correctly, this information is in SPM structure that you find
> in the Matlab workspace, AFTER 1st level design specification (and Global
> normalization ("Calculating globals ...")
>
> I think, the globals (global means of an image after non-important voxels
> have been eliminated) are in SPM.xGX.g. The global mean by which each image
> is scaled is in SPM.xGX.GM, and the scaled means are in SPM.xGX.gSF.
> Please do some verification on this, as I am not entirely positive about this.
>
> Cheers,
> Jan
>
> Bastos Leite, Antonio wrote:
>> Dear experts,
>>
>>
>>
>> Again, as a beginner in SPM, I'm very sorry to bother you...
>>
>>
>>
>> Could you please explain how is it possible to obtain (as a numeric
>> output) the mean intensity of an image using SPM5 or SPM2?
>>
>>
>>
>> NB: the aimed value should be the one obtained after excluding voxel
>> intensities = 0 ...
>>
>>
>>
>> Best wishes,
>>
>>
>>
>> Antonio
>>
>
--
Jan Gläscher, Ph.D. Caltech Brain Imaging Center
+1 (626) 395-4976 (office) Caltech, Broad Center, M/C 114-96
+1 (626) 395-2000 (fax) 1200 California Blvd
[log in to unmask] Pasadena, CA 91125
|