Thanks very much for your help. We've been doing VBM outside the batch
mode and we're wondering how to use spm_write_sn for modulation outside the
batch mode (how to get it to call up the .img and the .mat files necessary).
Also, looking through the optimised VBM match mode you sent out, it seems
that it uses the default SPM T1 template rather than a template created from
our population. How can we change the batch to use our population template?
Thanks very much,
Andrew
-----Original Message-----
From: John Ashburner
To: [log in to unmask]
Sent: 2/28/2003 7:51 AM
Subject: Fwd: Re: VBM: Normalization error - Preserve Total
> We have been using the modulation step in VBM for the last step before
> segmentation. With spm99 we would modulate the data after segmenting
it in
> the last step of VBM. We figured that with spm2b we could save a step
and
> modulate the data during normalization before segmentation, but that
> doesn't work for some of my images and now we realize is actually
different
> than what we did before. Should we be normalizing the images after
> segmentation like in spm99 using spm_preserve_volume? Does that
script
> work in spm2b?
The segmented images should be modulated, rather than the images
that get segmented. This is what the
spm_write_sn(VT(1),prm,'modulate');
bit does. It is the SPM2b equivalent of spm_preserve_volume.
If the spm_write_sn(V(i),prm,dnrm.write) part includes modulation, then
this may cause problems for the segmentation.
If the pre-processing involved segmenting before spatially normalising,
then this would save a couple of steps. Unfortunately, I suspect that
this is suboptimal because the segmentation routines work best on
spatially normalised data, as it allows the prior probability images
to be overlaid better. If un-normalised images are segmented, then only
an affine registration is done in order to overlay the priors. This
is not as accurate as overlaying the priors on non-linearly warped
images.
> And how can I look to see if Inf and -Inf values are in my image?
If you are using the script containing:
VN = spm_write_sn(V(i),prm,dnrm.write);
Then insert a line that says:
disp([min(VN.dat(:)) max(VN.dat(:))])
Best regards,
-John
> The only way I have so far been able to replicate creating an image
with
> such problems is by including Inf and -Inf in the image that is
written.
> The spm_write_vol.m function does not check for these, so it messes
> up the scalefactors etc. I can't figure out why such Inf and -Inf
> values
> should arise though.
>
> Are you sure that modulating the original normalised images is the
right
> thing to do? This is likely to cause problems during the segmentation
> stage. If the images were initially fairly uniformly scaled, then the
> modulation will introduce a lot of smooth intensity non-uniformity,
> making
> segmentation slightly harder.
>
>
> The "preserve total" or "preserve concentration" options relate to the
> modulation done during VBM. If spatial normalisation doubles the
volume
> of a region, then the "preserve total" option will reduce its
intensity
> by a half so that the total amount of signal is preserved.
>
> Consider a multi-subject fMRI experiment where all subjects uniformly
> activate a region of 10 voxels such that an activation causes a signal
> increase of 1 unit. After spatial normalisation, these 10 voxels will
> be shrunk for some subjects, and enlarged for others. If the signal
> concentration is preserved, then after smoothing, the subjects that
> have the shrunken region will have lower activation signal than the
> subjects with an expanded region. This is probably not what people
want
> from their analyses.
>
> The preserve total option is an alternative that should allow signal
> to be preserved. I don't know if this option has a long term future,
> but I can envisage situations in which it maybe useful.
--
Dr John Ashburner.
Functional Imaging Lab., 12 Queen Square, London WC1N 3BG, UK.
tel: +44 (0)20 78337491 or +44 (0)20 78373611 x4381
fax: +44 (0)20 78131420 http://www.fil.ion.ucl.ac.uk/~john
|