Coregistration using FastSCAN 3D surface data

Hi brainstorm experts,

We have started using the polhemus FastSCAN II ( to collect, 3d headshape surfaces for our infant/child MEG subjects. At the moment we are using in house python software to manually pick HPI and anatomical fiducial points and to convert to CTF head coordinates and output text files (*.pos) that we use with our MEG data to do the MEG->Head coordinates co-registration.

We were wondering if there was any plans to add support for Fastscan surface (it exports a number of standard surface formats : stl, ply, vtk) or to provide a more general tool to facilitate co-registration of HPIs and anatomical fiducials.

If there is interest we would be happy to help.


Dear Yuhan,

It would be a great feature to support the output of the FastSCAN scanners in Brainstorm. We had this question before, but there was no easy solution for marking the head positioning coils.
We never had any access to this scanner in any of the labs actively developing Brainstorm so this was never set a priority, and it is also difficult to develop support software not having the device in hand.

What is your Python code doing, and how?
How easy would it be to reuse/distribute it?
How would you picture the integration with Brainstorm?
Do you have Matlab code that reads the native output of the scanner?

If you're interested in contributing some tools for FastSCAN users in Brainstorm, your help would be very welcome! We could help you find your way through the Brainstorm code and interface (with @Marc.Lalancette maybe?), let you draft some Matlab code (or Python, if you're not familiar with Matlab) that does what you need, and then help you integrating it to Brainstorm.

A great addition would be a short tutorial similar to the Fastrak/Isotrak one (, explaining how to use a FastSCAN scanner with Braintorm (it would be a good solution to demonstrate you're the author of this tool as well).