Back to PLS Help

extracting saliences for particular voxels
alenarto
Posted on 05/10/07 16:49:06
Number of posts: 41
alenarto posts:

hi all ~

one more question!

i would like to extract saliences (fromt the brainlv) for particular voxels. my question is - how can i do this (in command line is fine) using the st_coords or any other variables saved when data and results files are created. i understand i can extract DATA using the GUI and the cluster_report - however in this case i want to understand how to decode the time/space order of the st_datamat and brainlv to have access to any voxel saliences i might want (e.g., based on an xyz coordinate for a peak).

(i.e., i am actually aiming to create brain scores using saliences from my analyses & the datamat from a different analysis - and want to do so for a small ROI rather than the whole volume).

thanks very much!
agatha

Replies:

Untitled Post

I'm Online
jshen
Posted on 05/11/07 10:07:34
Number of posts: 291
jshen replies:

I believe that to extract saliance for particular voxels has nothing to do with the cluster report. In addition, voxel extraction provided by PLSgui can only give you values of datamat at this particular voxel location, not the saliance.

In order to get saliance value at any particular voxel location, follow the procedures below:
  1. Open result window, and make sure that it is in BLV plot rather than BSR plot;
  2. Click "Save BLV result to IMG files" item under "File" menu;
  3. Enter a prefix in the "File Name" field of the pop up window, and click "Save";
  4. Now, you have several image files saved in such prefix, and they are all ended with "_lag?", which are the time order you mentioned;
  5. load all them in MATLAB using command like: lag0=load_nii('filename_part1_lag0.img'); etc.
  6. write a for i loop to loop all the xyz locations (xyz is in voxel unit, not mm unit);
  7. Now you have all the saliance results: saliance_lag0(i)=double(nii.img(x(i),y(i),z(i)));
I hope this will help you.



Untitled Post

I'm Online
jshen
Posted on 05/11/07 10:10:30
Number of posts: 291
jshen replies:

quote:
I believe that to extract saliance for particular voxels has nothing to do with the cluster report. In addition, voxel extraction provided by PLSgui can only give you values of datamat at this particular voxel location, not the saliance.

In order to get saliance value at any particular voxel location, follow the procedures below:
  1. Open result window, and make sure that it is in BLV plot rather than BSR plot;
  2. Click "Save BLV result to IMG files" item under "File" menu;
  3. Enter a prefix in the "File Name" field of the pop up window, and click "Save";
  4. Now, you have several image files saved in such prefix, and they are all ended with "_lag?", which are the time order you mentioned;
  5. load all them in MATLAB using command like: lag0=load_nii('filename_part1_lag0.img'); etc.
  6. write a for i loop to loop all the xyz locations (xyz is in voxel unit, not mm unit);
  7. Now you have all the saliance results: saliance_lag0(i)=double(nii.img(x(i),y(i),z(i)));
I hope this will help you.

sorry, the step 7 should be:
saliance_lag0(i)=double(lag0.img(x(i),y(i),z(i))); etc.


Untitled Post
alenarto
Posted on 05/11/07 12:05:16
Number of posts: 41
alenarto replies:

jimmy ~ thanks for the quick reply - i will try that recipe. i assume the img files will be in 3D format so that xyz will be obvious?

also - is there no recipe to use the st_coords variable to extract directly from the brainlv variable (saved in the ***_fMRI_result.mat file? that would be most convenient!

thanks
agatha




helper scripts
alenarto
Posted on 05/11/07 12:30:23
Number of posts: 41
alenarto replies:

i found 2 scripts rri_coord2xyz.m and rri_xyz2coord.m which i believe will accomplish the appropriate conversion to obtain intedeces that can then be used to extract appropriate  vectors from the brainlv or any other brain matrix.

do correct me if my assumption is incorrect!!!
best ~

agatha



Untitled Post

I'm Online
jshen
Posted on 05/11/07 13:14:34
Number of posts: 291
jshen replies:

You might find a way to use variable st_coords, and to use 2 scripts rri_coord2xyz.m and rri_xyz2coord.m to get saliance. However, the most convenient way to do so is what I mentioned.

In addition, by using "lag=load_nii('NIfTI or ANALYZE image')", you can always have a complete structure with lag.hdr & lag.img, where lag.img is a 3D matrix.




Untitled Post
jlabus
Posted on 06/20/07 18:26:04
Number of posts: 8
jlabus replies:

could we use the bootstrap ratio values in place of the saliences?


Untitled Post
rmcintosh
Posted on 06/20/07 19:10:10
Number of posts: 394
rmcintosh replies:

quote:
could we use the bootstrap ratio values in place of the saliences?
For creating scores, you are better off with the saliences since these are more like parameter estimates.  The bootstrap ratios are a measure of reliability and since you can get a high ratio with either a large numerator or small denominator, they don't quite convey the same pattern as the saliences (which are the singular vector weights).  The ratios are what is reported in the cluster report.



Login to reply to this topic.

  • Keep in touch

Enter your email above to receive electronic messages from Baycrest, including invitations to programs and events, newsletters, updates and other communications.
You can unsubscribe at any time.
Please refer to our Privacy Policy or contact us for more details.

  • Follow us on social
  • Facebook
  • Instagram
  • Linkedin
  • Pinterest
  • Twitter
  • YouTube

Contact Us:

3560 Bathurst Street
Toronto, Ontario
Canada M6A 2E1
Phone: (416) 785-2500

Baycrest is an academic health sciences centre fully affiliated with the University of Toronto