[VBMEG-users:00112] ROI of a vertex

64 views
Skip to first unread message

Giuseppe Lisi

unread,
Aug 10, 2012, 2:43:17 AM8/10/12
to vbmeg...@lists.sourceforge.jp
Dear VBMEG users,
I am using VBMEG functions from the command window.
I am using the functions:

vb_calc_current()
and
vb_load_cortex()

vb_calc_current() returns the cortical current with reduction ratio 0.2,
therefore I have a reduced matrix with only 4004 cortical currents.

I am interested in finding the cortical currents at a specific vertex
and at the nearest 10 vertexes(ROI). Is there a function which returns
the ROI associated to a vertex, possibly for the reduced vertexes?

Thank you.
Best regards,
Giuseppe Lisi

_________________________________________________________
VBMEG users mailing list
vbmeg...@lists.sourceforge.jp
Options:
http://lists.sourceforge.jp/mailman/listinfo/vbmeg-users
Archives:
http://groups.google.com/group/vbmeg-users

taku-y

unread,
Aug 10, 2012, 3:20:07 AM8/10/12
to vbmeg...@lists.sourceforge.jp
Dear Giuseppe,

Z-current obtained with the reduced model corresponds to J-current of the original model such as J=WZ, where W is a Gaussian smoothing matrix. In the case of your analysis, size(Z,1)=4004.

The following explanation may help you to find vertices of the reduced model corresponding to the original model.

---
!! How do I get the original vertex indices for estimation results with reduce parameter less than 1?
- If you performed current estimation with a vertex reduction parameter <1, you may want to get vertex indices for the reduced vertices. Specifically, cortical current estimation with the reduced vertices use the equation J=WZ, where J is the cortical current, W is the smoothing matrix, and Z is the auxiliary variable. You can transform Z to J using the following MATLB code:

{{{
V = vb_load_cortex('your_brain_file.brain.mat');
Jinfo = vb_load_current_info('your_current_file.curr.mat');
W = Jinfo.Wact;

T = 100; % number of time points
I = size(V,1); % number of vertices of the original model
I_ext = size(W,1); % note: it can be different with size(V,1) because the maximum radius of the smoothing filter can not be large enough to cover the cortical region
I_act = size(W,2);

Z = rand(I_act,T); % pseudo data on the reduced model

J = zeros(I,T);
ix_trans = (I_ext,1);
ix_trans(1:I_ext,:) = Jinfo.ix_act_ex;

J(ix_trans,:) = W*Z; % transformation from reduced model to the original model
}}}

Note that size(W,2) can be less than size(J,1) (==I). It means that W can include only a subset of the whole cortical model. To compensate this inconsistency, here, indices are transformed via variable ix_trans.
---

Taku

---
Taku Yoshioka
tak...@atr.jp

Giuseppe Lisi

unread,
Aug 10, 2012, 3:24:29 AM8/10/12
to vbmeg...@lists.sourceforge.jp
Dear Yoshioka-san,
thank you for the reply.
Is there any function which finds the nearest neighbors to a vertex?
Best,
Giuseppe Lisi

taku-y

unread,
Aug 10, 2012, 3:37:09 AM8/10/12
to vbmeg...@lists.sourceforge.jp
Dear Giuseppe,

You can get nearest vertices as follows.

---
!! How do I get the nearest neighbors to a vertex?
The cortical model file includes distances from each vertex to neighbors. The following code is an example to get neighbors to a vertex within 10mm radius.

{{{
[nextDD,nextIX] = vb_load_cortex_neighbor('your_brain_file.brain.mat');
ix_center = 1000; % center of ROI is vertex #1000
ixx = find(nextDD{ix_center}<=10e-3);
ix_roi = nextIX{ixx}; % ix_roi is the set of vertices within 10mm from ix_center
}}}
---

Giuseppe Lisi

unread,
Aug 10, 2012, 4:11:13 AM8/10/12
to vbmeg...@lists.sourceforge.jp
Dear Yoshioka-san,

this code is wrong. It always returns the same region on the brain, no
matter what is the root vertex.
But I found what I needed, actually only:
nextIX{root_vertex_id}

Best regards,
Giuseppe Lisi


On 08/10/2012 04:37 PM, taku-y wrote:
> [nextDD,nextIX] = vb_load_cortex_neighbor('your_brain_file.brain.mat');
> ix_center = 1000; % center of ROI is vertex #1000
> ixx = find(nextDD{ix_center}<=10e-3);
> ix_roi = nextIX{ixx}; % ix_roi is the set of vertices within 10mm from ix_center

taku-y

unread,
Aug 10, 2012, 4:18:49 AM8/10/12
to vbmeg...@lists.sourceforge.jp
Dear Giuseppe

Thank you for your notice. As you said, my code is wrong.

>> ix_roi = nextIX{ixx}; % ix_roi is the set of vertices within 10mm from ix_center


This should be

ix_roi = nextIX{ix_center}(ixx);

---
Taku Yoshioka
tak...@atr.jp
Reply all
Reply to author
Forward
0 new messages