- MNE version: e.g. 0.24.0
- operating system: Windows 10
Hi all,
I am working with sEEG data and trying to plot the channels and use their locations. I have the RAS locations and I use them to make a montage as you can see below:
montage = mne.channels.make_dig_montage(
ch_pos, coord_frame=‘mri’, nasion=nasion, lpa=lpa, rpa=rpa)
(1) Then I ask for channels locations (3D locations) from this montage as below:
montage.get_positions()[‘ch_pos’]
Then, I set the montage for the raw file:
raw_data.set_montage(montage)
(2) then I ask for the locations from this raw file as below:
raw_data.get_montage().get_positions()[‘ch_pos’]
But the results are different for all channels, for example:
(‘RA16’, array([0.06265729, 0.03354087, 0.04306897]))
vs.
(‘RA16’, array([0.0644109, 0.0024748, 0.0036177]))
Can someone explain to me what is going on here?
Also, if I want to go from the coord_frame
: “head” to “mri” (RAS), can I use the inverse of the transform matrix that mne.channels.compute_native_head_t gives me?
Thank you,