SPM2 Spatial Normalization of Population Average Landmark Surface-based (PALS) Atlas Fiducial Surfaces

Updated: 2005-04-14; originally authored 2004-10-08, Donna Hanlon, Van Essen Lab

Thanks to John Ashburner, fil.ion.ucl.ac.uk, for all his help via the SPM mailing list. The following posts are relevant:

The Van Essen Lab uses a right-handed coordinate system (i.e., defaults.analyze.flip=0 in spm_defaults.m, neurological convention, right-on-right). The input volumes were Minc files whose X increases from patient left to right, and no flipping was done during normalization.

With the exception of using the template bounding box and cubic 1mm voxel dimensions, the default settings were used for estimating parameters and writing normalized. For Human_Buckner_Case12, the input file had an artifact (very bright skull that may have been wrap-around from the 711-2C registration) near where the subject's right ear. This caused a bulge in the normalized output with no brain mask ("cone ear" effect). The normalized output using the default brain mask had no "cone ear" problem, but in April 2005, I discovered it was much larger than the other subjects' normalized brains (i.e., as if the pial surface registered to avg152T1's skull). To get around the problem, I reverted to no brain mask, but zeroed out sagittal slices 163-172 in the input volume (hyper-intensity area along the skull near subject's right ear), giving a satisfactory result (i.e., proper scale with no cone ear). Sample differences in the average mapping results before and after Case 12 was fixed are shown here.

Normalize volume and invert deformation field in SPM

  1. Start matlab; enter spm at prompt.
  2. Select fMRI Time Series.
  3. Select Defaults: Spatial Normalization: Writing Normalized: Template bounding box.
  4. Select Defaults: Spatial Normalization: Writing Normalized: Voxel size 1 1 1.
  5. Select Normalize: Determine parameters and write normalized.
  6. Select Template image: T1.mnc.
  7. Select Source image: Human_Buckner_Case1.mnc.
  8. Select Image to write: Human_Buckner_Case1.mnc.
  9. Select Source image, subj 2: Done.
  10. Several minutes later, check for output files wHuman_Buckner_Case1.hdr and wHuman_Buckner_Case1.img.
  11. Select Toolboxes: Deformations.
  12. Select Deformations: Deformations from sn.mat.
  13. Select sn.mat file: Human_Buckner_Case1_sn.mat.
  14. A few minutes later, check for output files y_Human_Buckner_Case1.hdr and y_Human_Buckner_Case1.img; there is no indication (beep/stickup) when the process is done. When your main SPM menu is active, then it is done.
  15. Select Deformations: Invert deformation.
  16. Select deformation field: y_Human_Buckner_Case1.img.
  17. Select Image to base inverses on: Change filter to read .mnc instead of .img, and select Human_Buckner_Case1.mnc.
  18. A few minutes later, check for output files iy_Human_Buckner_Case1.hdr, iy_Human_Buckner_Case1.img, and iy_Human_Buckner_Case1.mat. When your main SPM menu is active, then it is done.
  19. Quit SPM.

Apply the inverse deformation to the coordinate files

  1. Create a coord file stripped of header and node numbers: tail +13 Human_Buck_Case1.L.F.RegToPALS_B12.LR.FIDUCIAL_711-2C.73730.coord | cut -f2-4 -d' ' > Human_Buck_Case1.L.F.RegToPALS_B12.LR.FIDUCIAL_711-2C.73730.coord.stripped.
  2. Start matlab and enter "norm_pals_coord ('Human_Buck_Case1.L.F.RegToPALS_B12.LR.FIDUCIAL_711-2C.73730.coord.stripped')" at the prompt.
  3. Select iy_Human_Buckner_Case1.img.
  4. When the matlab prompt returns, check for output file spm_Human_Buck_Case1.L.F.RegToPALS_B12.LR.FIDUCIAL_711-2C.73730.coord.stripped.
  5. Add caret header via text editor (for right hemisphere, replace left with right and LEFT with RIGHT):
    comment Spatially normalized per http://brainmap.wustl.edu/help/spm2_normalization_pals.html using SPM2.
    configuration_id FIDUCIAL
    coordframe_id ACPC
    date Thu Oct 7 09:23:02 2004
    encoding ASCII
    hem_flag left
    orientation LPI
    scale 1.0
    topo_file Human.sphere_6.LEFT_HEM.73730.topo
  6. Save as Human_Buck_Case1.L.F.RegToPALS_B12.LR.FIDUCIAL_SPM2.73730.coord.
  7. Use a text editor to create a spec file like this:
    CLOSEDtopo_file Human.sphere_6.LEFT_HEM.73730.topo
    FIDUCIALcoord_file Human_Buck_Case1.L.F.RegToPALS_B12.LR.FIDUCIAL_SPM2.73730.coord
    volume_anatomy_file wHuman_Buckner_Case1.hdr
  8. Start caret; select this spec file; select all; and load.
  9. Switch view to VOLUME; press D/C and select Overlay/Underlay - Volume.
  10. Toggle on the Show surface contour checkbox in the lower right of the menu.
  11. Switch between Horizontal, Parasagittal, and Coronal views, scrolling up and down through the volume, to make sure that the contour aligns perfectly with the wHuman_Buckner_Case1.hdr volume.