[FieldTrip] Ft_VolumeRealign Shifting Manually Set Fiducials

Konstantinos Tsilimparis konstantinos.tsilimparis at outlook.com
Fri Jul 26 20:09:55 CEST 2024


Hi,

I think it's best not to change your headshape fiducials. These fiducials define the coordinate system relative to which the points in headshape.pos are specified.

The problem with the fiducials not being well-defined after headshape refinement could be due to two reasons:

  1.  As Jan-Mathijs nicely pointed out, your headshape might not have enough points, causing the ICP to worsen your coregistration.
  2.  The fiducials from the headshape might be incorrect, as you believe.

Given these issues, I wouldn't trust the headshape. I suggest performing only step 1 and skipping the headshape refinement.

Best,
Konstantinos

PS. Theoretically, you could change your headshape fiducials to match your fiducials from step 1 and then adjust headshape.pos relative to the new coordinate system. However, can you fully trust the manually selected points in step 1? My advice is to ensure in the future that your headshape fiducials are well-specified during the experimental acquisition (e.g., by using pen markings or earmolds).


From: fieldtrip <fieldtrip-bounces at science.ru.nl> On Behalf Of Parker via fieldtrip
Sent: Friday, July 26, 2024 2:34 PM
To: fieldtrip at science.ru.nl
Cc: Parker <pjosephsmith6791 at gmail.com>
Subject: Re: [FieldTrip] Ft_VolumeRealign Shifting Manually Set Fiducials

I appreciate your feedback. Given that my manually selected fiducials don't agree with the ones stored in the MEG headshape variable (which were set up before by the researcher prior to running the scan), is it acceptable to first modify the headshape variable by removing the fiducial field prior to inputting it into the ft_voluemrealign function to use ICP.

(I understand ICP would benefit from more headshape points but I notice it still works well and that ICP does not seem like the source of the issue here but rather just the disagreeing fiducials.)

Thank you again!

On Mon, Jul 8, 2024 at 9:22 PM Parker <pjosephsmith6791 at gmail.com<mailto:pjosephsmith6791 at gmail.com>> wrote:

Hi,



I have a question about MEG anatomical coregistration, particularly when using ft_volumerealign to do fiducial selection and coregistration refinement with headshape and ICP.



My current steps with ft_volumerealign are: 1) adding ‘coordsys = neuromag’ field to my mri by manually selecting N,LPA,RPA fiducials 2) refining fit with cfg.method = 'headshape' and cfg.headshape.icp = 'yes' with the headshape provided from my MEG file 3) plotting realigned mri to do a visual check on coordinate system with ft_determine_coordsys. (My code is also below)



After doing the refinement step, I notice the fiducial positions I initially set are almost always shifted. I have linked a picture for example showing 1) coordinates after my fiducial selection, 2) coordinates after headshape refinement - https://drive.google.com/drive/folders/13SAOL7FYM2yCiUPTV9StJh1HfNr_hDGP?usp=sharing



In the second image, the nasion is shifted upwards to what I would consider an incorrect position. (I also noticed that when plotting my source model, the source points appear to be slightly shifted up compared to one of the subjects from FT tutorials).



I am guessing the reason why, for ex, my nasion fiducial shift upwards after headshape refinement is because my headshape variable from my MEG file has a fiducial field, which are instead the fiducials that are being used instead of my manually selected ones.



Nevertheless, I was wondering how I could still perform headshape refinement with ICP and ensure MRI/MEG shape alignment but instead re select the fiducial positions.



I appreciate the help,

Parker



Step 1 - Fiducial selection

cfg                           = [];

cfg.method                    = 'interactive';

cfg.coordsys                  = 'neuromag';

cfg.flip                     = 'no';

mri_realigned               = ft_volumerealign(cfg, mri);



Step 2 - headshape refinement

cfg = [];

cfg.method              = 'headshape';

cfg.headshape.headshape = My_MEG_fif_file;

cfg.headshape.icp       = 'yes';

mri_realigned           = ft_volumerealign(cfg,mri_realigned);



Step 3 - Plotting Realigned mri + coordinate system:

cfg = [];

cfg.method              = 'headshape';

shape                   = ft_read_headshape(filename);

shape = ft_convert_units(shape,'mm');



ft_determine_coordsys(mri_realigned, 'interactive', 'no');

hold on;

drawnow;

ft_plot_headshape(shape);
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.science.ru.nl/pipermail/fieldtrip/attachments/20240726/ec54a692/attachment.htm>


More information about the fieldtrip mailing list