Print

Print


Hi, Mark,

Thanks a lot for the helpful response. Let me just make sure I made myself clear, so the topic can be also useful to other people with the same question.

>> Now, let's suppose you define some masks in the low-resolution space, based on tstat maps you got from one scan. You want to apply this mask onto tstat maps from other scans.

>I don't really follow why you start off saying that you never want to do second level analysis, but now you want to transfer images from one scan to another (where I assume "scans" are separate experiments - that is, separate first-level analyses).  But I'll answer as best I can.

I'm not trying to do anything complicated here. When I'm saying "scans", I mean scans in FSL jargon, which some people might call "run". But you're right, I'm referring to separate first-level analyses.

What I want to do is very simple: use the thresholded tstat maps from a functional localizer run to define a subject-specific FFA-mask. Then, I want to analyze the data from *each* of the other runs (which have my main experimental manipulations), but restricting my attention to the defined FFA. To accomplish this, I'm masking each scan's COPEs, separately, and looking for the average effect within FFA.

When I said I'm not planning to run a second-level analysis, I'm just saying that I don't want to group multiple runs for each subject, or multiple runs from different subjects.

Do you see a major flaw or inconsistence with this approach?




>> 2) If not, what do I need to do if I want to apply a single mask to 1st-level tstat maps from different scans? I don't want to upsample my data to the standard (in my case, anatomical) space (in which case I know I should be using the flirt command with the -applyxfm option), which would guarantee that every map is registered to the standard space. Is that the only option I have?

>You should combine the transformations from the example_func where the mask is defined, to the standard space and then from standard space to the new example_func space.  That is: example_func2highres_warp (or mat, if you did not use any fieldmap correction) and highres2standard_warp plus the inverses of these for the other first-level analysis.  You can combine these with convertwarp, and then apply the combined one (that goes from one example_func to the other) with a single call to applywarp.  This will avoid creating any upsampled versions. 

>Mind you, it would be simpler if you just had a mask in standard space, but as I don't really understand what you are trying to do then I'm not sure what is possible or not.

OK, so I understand now that, in order to apply the same mask onto different runs' maps, I'd need to register this mask to the standard space.

You're right, it really doesn't make sense to upsample the masks to high-res, and then go back to low-res, as the interpolations necessary to upsample the data will have to be made, anyways. When I asked about a way to apply the low-res mask to the low-res stat maps, I just wanted to avoid these interpolations and keep my data always in the same, low-res, space.



Thanks a lot for your help, this was very helpful.