Thanks so much Markus. I just have a couple quick follow-up questions,
which are below your response.
Markus Burgmer wrote:
> dear marc.
> i encountered the same question a few days ago.
> - if you would like to compare the volume of gray or white matter in total
> between two or more groups, you have to extract the data with help of an vbm
> tool (maybe dartel or vbm 5.1 in spm5) from the normalized and modulated
> tissue images (either gray or white matter). in vbm 5.1 there is a simple
> tool under the options which extracts the volumes for each subject
> separately. maybe you should look in the manual.
Do you know where I can download the vbm toolbox and manual? My version
of SPM 5 has Dartel, but not the vbm toolbox.
> - if you would like to compare the volumes of gray matter between two groups
> for a specified ROI, john ashburner provided me with a very helpful script
> to extract those. For this you should habe a binary (o,1) mask for your Roi
> which is used to extract the data from the modulated and normalized gray
> matter images. the script is as follows. just copy this into matlab and
> follow the instructions. the output is in litre.
Great, the code below looks perfect. Would you recommend an anatomical
ROI that was conceived with the PickAtlas? In addition, in my reading
of the script, it is not clear to me how the script knows whether some
voxel in the ROI is in fact gray matter or not. In other words, I
would've expected some sort of contrast threshold for my high resolution
anatomical to be counted as gray matter. I guess I need to use a gray
matter mask first and apply it to my high resolution images so that only
gray matter is present in my high resolution anatomical? I suppose if
my ROI mask is a gray matter mask, then I don't need to worry about
masking my anatomical for gray matter only. Lastly, what do you mean by
> good luck
> Vmask = spm_vol(spm_select(1,'image','Select the binary mask')); Vdata =
> spm_vol(spm_select(Inf,'image','Select modulated warped GM')); volume =
> for j=1:numel(Vdata),
> tot = 0;
> for i=1:Vdata(j).dim(3),
> M = spm_matrix([0 0 i]);
> img = spm_slice_vol(Vdata(j),M,Vdata(j).dim(1:2),0);
> Mmsk = Vmask.mat\Vdata(j).mat*M;
> mask = spm_slice_vol(Vmask,Mmsk,Vdata(j).dim(1:2),0);
> img = img.*mask;
> img(~isfinite(img)) = 0;
> tot = tot + sum(img(:));
> voxvol = abs(det(Vdata(j).mat))/100^3;
> volume(j) = tot*voxvol;