Forum

Notifications
Clear all

AtlasViewer - MCX sensitivity profile error

Page 1 / 2

Augusto Bonilauri
Posts: 4
Customer
Topic starter
(@abonilauri)
New Member
Joined: 1 year ago

Hello Homer3 and AtlasViewer community, 

I am using AtlasViewer from github. I have some questions concerning MCX and MCXlab to get sensitivity profiles.

I have run a simulation with 10^8 photons over the atlas using optical properties from Tak et al. (NeuroImage 111 (2015) 338–349) and . Eggebrecht et al. (NeuroImage 61 (2012) 1120–1128). Visual results are provided in the attachment.

Initially, computed sensitivity profile seems to work fine. However at a closer inspection of channel-wise sensitivity profiles, I observe "spurious" values over cerebral areas not related to the channel of interest (distant from the original channel, where I expect a small weights associated to that channel). This effect is especially evident for frontal vs. occipital areas (Adot-frontal in attachment). I am wondering if this is a graphical issue or it is related to a mistake I made. I have also tried to change through code the value of anisotropy and refraction indexes (default to 0.001 and 1 respectively), but this effect still occurred. Moreover, when computing localization error and resolution metrics, most of resulting values are equal to 0 (see final images in the attachment).

As additional issue, it seems that there is a disparity in sensitivity profile computation between left vs right hemisphere. This effect gets more evident if running simulations with a lower number of photons (Adot-10^7 photons in attachment). Looking at the actual sensitivity profiles, I do not notice differences. However, this may still be related to my mistake.

 

Finally, I would like to ask if I can get more details on how to use the option "Get brain actiovation sensitivity at MNI coordinates", because I always get the error message "You need first to generate a sensitivity profile with matrix volume option enabled". 

Best regards, 

 

Augusto 

Topic Tags
6 Replies
David Boas
Posts: 201
Registered
(@dboas)
Estimable Member
Joined: 2 years ago
Posted by: @abonilauri

This effect is especially evident for frontal vs. occipital areas (Adot-frontal in attachment)

I suspect your scale for the right panel showing S1-D1 on occipital cortex is lower than the scale on the left panel. Those spurious values appear there because we project the sensitivity values from the voxels in the brain to the closest mesh point on the brain surface. The MC would have generated some photon sensitivity deep in the brain volume that just happened to be closer to the back of the head even though the photons launched from the front of the head. Again, the scale must be much much smaller than what you used in the front of the head such that they are insignificant.

 

Posted by: @abonilauri

Moreover, when computing localization error and resolution metrics, most of resulting values are equal to 0 (see final images in the attachment).

Localization and resolution values are only being presented for brain surface mesh points with a sensitivity within your specified range. You can change this specified range. I don't have atlasViewer open at the moment to confirm where this range is set. It should be in the lower right where you selected to view the resolution.

 

Posted by: @abonilauri

As additional issue, it seems that there is a disparity in sensitivity profile computation between left vs right hemisphere.

This asymetry arises because the Colin head atlas is asymmetric. I suspect most heads are asymmetric.

 

Posted by: @abonilauri

Finally, I would like to ask if I can get more details on how to use the option "Get brain actiovation sensitivity at MNI coordinates", because I always get the error message "You need first to generate a sensitivity profile with matrix volume option enabled". 

Under the tools menu you can select this option. Be warned that this will generate potentially gigabytes of files on your computer and bring it to a screeching halt. John Spencer pushed us to add this. It worked in the past. We haven't tested it in a while.

 

Reply
Augusto Bonilauri
Posts: 4
Customer
Topic starter
(@abonilauri)
New Member
Joined: 1 year ago

Thank you for your prompt reply. 

Localization error and resolution display problems were just due the setting of display range. The range for loc error is [0 10] mm by default. I suppose display options are set to cut values equal to the lower limit. Therefore, simply setting [0.01 10] range solved the problem.

The same concept is valid for the channel-wise display of sensitivity profile, even if I used the same scale for frontal vs occipital cortex ([-2 0] log10 scale). Spurious values at occipital cortex are still present after working on the display range. However, this is not a problem, since they have lower sensitivity values than frontal cortex.

 

The issue of "Get brain actiovation sensitivity at MNI coordinates" option persists. Looking at the code, Atlasviewer looks for  fw\AdotVolSum.3pt file, which is not generated by the MC computation. Is there a method to generate this file in Atlasviewer and store it in fw folder?

Kind regards,

 

Augusto

Reply
David Boas
Posts: 201
Registered
(@dboas)
Estimable Member
Joined: 2 years ago

I am glad you figured out the other issues.

As for the volumetric sensitivity, when I added capabilities for MCxLab last month, I did not include the code for the volumetric sensitivity. If you run tMCimg or MCx, it should work. But that takes a lot more time to run the MC.

I would have preferred to just report the sensitivity for the MNI coordinate projected to the cortical surface. AtlasViewer is really efficient for dealing with sensitivity profiles on the brain surface. Does that sound like a viable solution for you?

Reply
Augusto Bonilauri
Posts: 4
Customer
Topic starter
(@abonilauri)
New Member
Joined: 1 year ago

I totally agree with providing only the sensitivity for MNI coordinates projected to the cortical surface in Atlasviewer. Indeed, I thought that "Get brain actiovation" option was referred to this approach. Will this feature be available in future releases? Otherwise, do you suggest to work on headvol.T_2mc and labelssurf.T_2vol transformations to get this information? 

I think that volumetric sensitivity can be obtained by using MCX separately.

Best regards, 

Augusto

Reply
Page 1 / 2
Share:
en_USEnglish