We must be getting closer now. I know how tedious this is, and I very much appreciate your help.
Responses interspersed.
On Fri, 27 May 2005 10:37:11 +0000
John Ashburner <[log in to unmask]> wrote:
> Hi,
>
>> Thanks, again, John, for continuing in your efforts to helping me solve
>> this. I have replies interspersed below, but most important, I think are
>> these responses from spm_orientations. They confirm that something must be
>> wrong - but I'm not sure what, although I have a theory...
>
> Your theory may be a good one.
>
>>
>> >> spm_defaults
>> >> spm_orientations
>>
>> LAI Left-handed ... bold3_7.img
>> RAI Right-handed ... rbold3_7.img
>> LPI Right-handed ... wrbold3_14.img
>> LPI Right-handed ... swrbold3_16.img
>>
>> The odd bit is that the LAI raw data images are called Left-handed and the
>> RAI, realigned images are called Right-handed.
>
> LAI is left handed and RAI is right-handed (I checked with my left hand, by
> pointing my thumb L->r, my index finger A->p and my middle finger I->s. I
> look a bit silly doing it though).
At the risk of looking silly, I tried as well.
>
>> Is this because they run
>> Inferior to Superior? Images that are flipped top to bottom would appear
>> to an on-looker to be reversed left-right from each other. See the
>> response below about negative voxels for more info about this.
>
> Your w*.img files should be written in the orientation specified by
> defaults.analyze.flip, so that behaviour is as expected. We just need to
> worry about why your r*.img files appear to have flipped.
>
> At any point, did the value for flip change in the defaults file?
> Alternatively, did you do any processing not via the buttons on the user
> interface? Another possibility is an intermittent glitch in Matlab whereby
> global variables are not properly loaded.
To be sure that there wasn't a problem with flip change, I copied the raw data into a new
directory. Confirmed that defaults.analyze.flip was set at 0, and then redid the
realignment/resplicing. Same results:
>> spm_defaults
>> spm_orientations
LAI Left-handed bold3_5.img
RAI Right-handed rbold3_6.img
My raw bold files have a .mat file associated with them. If I copy just the .img and .hdr files
to
a /no_mat directory, and run spm_orientations:
>> spm_defaults
>> spm_orientations
LPI Right-handed bold3_5.img
In these no .mat file images the eyeballs face right in sagital view, down in axial.
They retain these features LPI, right handed, eyeball direction after realignment. A .mat file
was created after realignment for the raw data images (before reslicing). But not for the first
image. Also, the realigned images do not have .mat files. Based on your comments below, I take
this to indicate that (1) there was sufficient information in the .hdr file so the first image
didn't get a .mat file (is this correct, I wasn't entirely sure I got your info about this clear);
(2) the origin field in the first image's .hdr is NOT [0 0 0])
>
> A possible reason is that the value of flip changed since doing the
> realignment. Was flip==1 when you did the realignment (maybe the defaults
> file wasn't loaded, or was changed since then)? This could explain the
> discrepancy, although you would have needed to have reoriented the images
> afterwards.
>
> In SPM2, images that have .mat files have their handedness represented by the
> .mat file. When you realign images that have no .mat files to begin with,
> then the handedness is read from the defaults. The .mat files that are
> created are written with that handedness. .mat files are only written when
> the necessary information is not available from the .hdr files, so after
> realignment (estimation), the first image often does not have one.
>
> When images are resliced, they take the orientation of the first image. If
> the first image has no .mat file, then the resliced r*.img images will not
> have one (unless the origin field in the first image's .hdr is [0 0 0]).
>
> If the flip is then changed at this point, then the images (original ones)
> with .mat files will retain their original orientations, whereas the
> (resliced) images without .mat files will have their orientations changed.
>
> In order for the data to be considered as LAI or RAI (rather than LPI or RPI),
> then the data must have had .mat files introduced at a later point - or some
> of the voxel sizes were negative to begin with.
O.K., I for some reason thought that I should check the voxel sizes by surfing around on the
Display, rather than checking in the right hand box. These data do have the x value negative for
the raw images with a .mat file. After realignment, the x value is positive. Presumably, this
doesn't actually flip the data, though, right? This subjects midline is angled a bit so it's
possible to see if the brain was actually flipped (as in when I do -x) but the angle is the same
for the raw and realigned images (although the raw have -x, y, z; and realigned have x, y, z for
Voxel Size).
>
>>
>> Million-dollar question:
>> And, ultimately, if my normalized images are indeed LPI, right handed, and
>> defaults.analyze.flip is set to 0, then does that mean my results on the
>> glass brain should show right on the right and left on the left? This is
>> the question that started this all...
>
> Unfortunately, I can't say what the orientations of your normalised images
> really are. I can only say what orientation SPM thinks they are in. If the
> flip variable changes or remains unloaded at any point in the processing,
> then the real orientations could be anything. This is why I repeat many
> times on the list that the flip variable should be fixed and never changed -
> ever.
Believe me, that I've learned this lesson. I am analyzing data on a laptop that isn't (and never
was) part of the larger lab's network (the lab for which this data were originally collected has
disbanded naturally as the PI took a new position and others, including myself, moved as well).
That's part of why this is coming up now.
>
>
>> > The best way to check is to look for any negative voxel sizes.
O.K., so if the Display Voxel Size is: -x, y, z and the eyeballs look up and to the left, does
this tell me what the orientation is...?
>>
>> Hmmm...if I am anywhere on the brain, then all voxel sizes are positive.
>> However, if I am on the very outskirts of the display, then:
>> RAS corner: x, -y, z 98.5 91.6 0.0
>> LAS corner: -x, y, z -107.1 94.1 0.0
>> LPS corner: all positive -99.5 -102.8 0.0
>> RPS corner: all positive 93.4 -104.1 0.0
>> The same pattern holds for RAI, LAI, LPI, and RPI.
>
> If you use the Display button, you will see the voxel sizes in the lower right
> panel. These shouldn't change with position.
>
> I'm not sure how you are refining the RAS, LAS, LPS and RPS corners. Could
> you check the position in voxels with the reported position in mm?
See above, I put that info in, if it's still relevant.
>
>>
>> >> Also, before normalization, spm_orientations runs without warning
>> >> messages, after normalization, it returns an answer preceded by
>> >> "Warning, can't get default Analyze orientation, assuming flipped".
>
> Spatially normalised images don't usually have .mat files. SPM2 only checks
> the flip variable for images without .mat files.
That makes sense.
>
>> >
>> > When you start spm, it runs spm_defaults.m , which loads the default
>> > settings, which are stored in the global variable called 'defaults'. If
>> > you run spm_orientations without first running spm_defaults, then the
>> > routines can not find defaults.analyze.flip . If this can not be found,
>> > then you get the warning message, which means exactly what it says. The
>> > routines are assuming that your data are stored left-handed (i.e.
>> > defaults.analyze.flip=1) - which may not be the correct orientation for
>> > you.
>>
>> O.K. if I run spm_defaults.m in matlab, and then use spm_orientations, I
>> don't the the warning message, the responses for spm_orientations are the
>> same whether I run the spm_defaults.m first or not.
>
> This really surprises me because you should get different results for the
> spatially normalised images.
NO DEFAULTS LOADED:
>> spm_orientations
LAI Left-handed bold3_6.img
RAI Right-handed rbold3_5.img (WARNING MESSAGE FOR RBOLD DELETED FOR EASE(!?) OF PRESENTATION)
LPI Right-handed wrbold3_9.img Warning: Cant get default Analyze orientation - assuming flipped
LPI Right-handed swrbold3_9.img
>> spm_defaults
>> spm_orientations
LAI Left-handed bold3_4.img
RAI Right-handed rbold3_5.img
LPI Right-handed wrbold3_9.img
LPI Right-handed swrbold3_6.img
>
>> >> Prior to normalization, looking at my input files in display gives
>> >> results that DO MATCH spm_orientations output.
>> >> Left handed (LAS)
>> >
>> > Something is wrong. LAS indicates right-handed storage.
>>
>> yes, weird, see the first part of the this message. maybe related to the
>> negative voxel values in the far corners of my images?
>
> None of those images were LAS.
To add to the confusion, I'm dealing with two data sets, one collected during Summer 1, the other
during Summer 1, on different Sonata's (at the same location). Unbeknownst to me, the defaults
for flipping on the two were different. I discovered this as I was processing the data, this is
part of the process of my sorting out the specifics associated, in part, with those defaults. The
LAS image was from the Summer 1 data set, this entire email is about Summer 2 subjects.
>
> I hope we are getting closer.
Me too!
Many, many, thanks.
Juliana
|