The way we've implemented the use of registration to the Talairach coordinate system is by keeping track of a single transform. We don't currently support anything other than a single transformation of the whole brain. Once a transform is defined for a given brain, (see below) it can be saved to the base volume for that brain and then it will be inherited by everything aligned to or defined on that base volume. In this way, scans and ROIs from different subjects can be aligned with one another by transforming to Talairach space instead of magnet space. This happens behind the scenes, so that scan2scan and base2base and roi2roi are all computed using the Talairach transform if it's available.
We keep everything in the base structure, and don't change the NIFTI headers, e.g., we do not re-set sform code to 3, we do not actually rotate the volume, and we do not change s-form to the TalXform. Rather, we leave sform code as 1, leave sform as that which is calculated during alignment,and save talXform to the base structure to be used for viewing or aligning.
The basic idea is to define the anterior and posterior commissures (AC and PC; I find this website useful in identifying them), and then several points relative to the AC and PC: the anterior and posterior extensions of the AC/PC line (the AAC and PPC), the superior and inferior extensions of the AC perpendicular to the AC/PC line (the SAC and IAC), and the right and left extensions of the AC perpendicular to the AC/PC line (the RAC and LAC). Once these 8 points have been defined, the transform from those coordinates to the standard Talairach coordinates is calculated. The 8 points are saved in the .talInfo field in the base volume on which they were defined, and are used to initialize the Talairach program in case the user decides to refine the choice of points. The (4×4) transform is saved in the .vol2tal field of the base volume on which it was defined.
NB These directions and the Talairach setting interface have not been thoroughly debugged. The Talairach transformations have been used successfully for one project, but there are some details particularly with the Talairach setting program in which the interface may still be a bit buggy. Caveat Emptor.
You can define the Talairach points on a subject's volume, using mrAlign (Also, note that if you just want an interface for defining Talairach points w/out using them in MLR you can use the program talairach directly). First startup mrAlign and load the volume you want to define Talairach coordinates on as the destination. Then select the menu item “Set Talairach Transform” from the Talairach menu. You should see three views of your anatomy and a control panel.
The views are linked, so if you click on a point in any view it will update the other two views to show the corresponding location. The idea is that you should go look for each one of the Talairach points and select them by using the setPoint drop down on the control panel. You can change the points by hand in the GUI if you want to. You can set them in any order that you like.
So, first, go find the anterior commissure point and get the red dot at its location:
Then choose setPoint AC. After that the AC line in the control should show the point that you have selected:
You can change the coordinates by hand in the GUI if you want to. Also, note that you can set coordinates in any order that you want and you can modify them at any time. If you need to go back later and change the TAL coordinates you can always go back and run from mrAlign again.
Go find the posterior commissure point:
You may want to turn on the displayPlane (AC-PC-SAC axis) now, and you should see a line in the sagittal plane that looks like:
Note that if your AC and PC points are not in the same plane, you may need to do “straighten” AC-PC so that they appear in the same plane. Now, you can find the SAC point, by clicking near the top of the brain on the midline and selecting setPoint SAC (don't worry very much about where as long as it is near the top of the brain and in between the two hemispheres):
You should now be able to see the perpendicular from the AC/PC line. The SAC point should be where that perpendicular crosses the top of the brain. Click on that and reselect setPoint SAC.
Now set the displayPlane to be the AC-PC-SAC axial plane, click showPoint AC. You can now find the point where the AC cross the front of the brain and call that the AAC and the point where the line crosses the back of the brain and call that the PPC.
Now set the displayPlane to be the AC-PC-SAC axial plane, click showPoint AC. Then in the coronal view click on the right and left most points of the plane in the brain and set those as RAC and LAC
Finally, select the IAC point by displaying the AC-PC-SAC axis, click showPoint AC and then looking for the point where the line crosses through the inferior part of the brain. It may be helpful to straighten around AC-PC-SAC.
When you have set all 8 points, click OK. The talairach info you have just set will get saved as the “vol2tal” and “talInfo” fields in your base anatomy.
mrLR saves the base's .vol2tal field in any scan (or roi) that is aligned to the base. The transform can also be exported to sessions that have already been aligned, using mrAlign. Then viewGet uses this information when aligning scans (or rois) using scan2scan (or roi2roi).