Bad MEG-MRI coregistration with Polhemus


I am wondering, how is the MEG-MRI registration done in Brainstorm with Polhemus?
A reference to the script would be sufficient.

For example, I once had this coregistration:

My guess is, the script first tries to match the digitized head points. If so, it could have gone wrong because I only have one line of digitized points ; which is not sufficient to find a unique solution.

Thank you,

Hi Vito,

There are many scripts that are called one after the other, corresponding to different options, it’s not easy to read.
You should try to fix the options that are applied rather than looking at the code.

When you import a channel file, it automatically converts it to the Brainstorm subject coordinate system (SCS), based on the NAS/LPA/RPA points from the head points:

The surfaces are also automatically converted to SCS, but using the NAS/LPA/RPA points defined in the MRI.
If you get a bad result after this first level of registration, it’s because the fiducial points in the channel file are not matching the ones in the MRI.
You can estimate the distance between those points with a right-click on the channel file > MRI registration > Check. The blue points are the MRI fiducials, the red+yellow ones are the ones from the channel file (Polhemus head shape).

This registration can then be refined using the head points (fitting algorithm between the green Polhemus points and the grey FreeSurfer surface, in bst_meshfit.m).
You always get an explicit dialog window that asks you if you want to run this process, as shown in this tutorial:

In this case you should answer NO to this question, as this line of head points will obviously lead to an bad registration. You really need a full head coverage.

If there was an error of manipulation during the acquisition of the NAS/LPA/RPA points with the Polhemus, and if you don’t have enough head points, you can always try to fix manually the registration to your best guess (right-click on the channel file > MRI registration > Edit).


Dear Fançois,

Thank’s a lot for your very complete answer, it is very nice of you!

After investigation, on some subject I do not have enough Polhemus points for refining the coregistration. In this case, I should indeed only use the fiduciales.
In other cases, I have Polhemus points where there is no head reconstruction (e.g. on the chin), as a result it biases the automatic coregistration.