GSoC 2020 project idea 1: TVB: Improving personalized models of fMRI recordings including individual region-specific HRF in The Virtual Brain

The Virtual Brain (TVB - is a powerful and increasingly used neuroinformatic platforms to build personalized models of brain activity. Neural population models are implemented on the structural brain connectome, and model parameters are tuned to maximize resemblance with the spectral characteristics and connectivity patterns of empirical data. When modelling fMRI data, the simulated neural activity is convolved with a standard model of the hemodynamic response function (HRF), the same across the brain and across subjects.

To improve this last step we propose to use a toolbox developed in our lab (including past GSoC work), the rsHRF ( We would retrieve the resting state HRF for each voxel and each subject. We would then average it across the regions used in the TVB and use them as transfer functions in the model. This modification would be a valid and effective addition to the TVB package.

Mentor: Daniele Marinazzo

Knowledge: python, git. Preferred: bash scripting, high performance computing, knowledge of dynamical systems and/or neuroscience.

Hello. I’m PhD student in Tokyo Denki University. My major is biotechnology, and curretly I’m working on neural network for classification MEG and fMRI data. I’m Interested in this projects. Could you please let me know where better to start with it?

Hi @PilyuginaNina
Thanks for your interest.

Did you get a chance to go through the links already provided in the project idea?
Feel free to ask any specific questions or doubts you might have.

Tagging project mentor @Daniele_Marinazzo

Dear Nina

thanks a lot for the interest, and thank you @arnab1896 for the ping, and for giving the same answer that I would have given.
If after skimming through the material (code and papers) referred to in the links, you have further questions, or you want to continue the discussion towards the actual implementation of the project, please don’t hesitate to get back to me.



Dear Daniele

I’m still checking with some articles from resources from below, but I want to clear up something.
It supposed to take input as a 3d image, then retrieve it in rsHRF toolbox, and then we input HRF shape parameters to TVB, right? So this modification is supposed to be like sort of interlayer between rsHRF and TVB or it should become an added feature of TVB itself?


Dear Nina,

At the moment we are working on the most effective and scientifically sound way to integrate the rsHRF in TVB.
The idea is to make the integration as smooth as possible. Depending on how fast we go, we could either have the two toolboxes still separate, and just implement a set of functions to transfer the rsHRF parameters to TVB, or making rsHRF part of the TWB workflow.

Dear Daniele,

I’m sorry for the late replay, but because of the coronavirus situation in Japan becomes absolutely crazy, and my university is closed now for several weeks.
So let’s say we take the output of rsHRF and keep it in a buffer, then send it as an input to TWB. How TVB works with Docker?

Dear Nina,
thanks for your message, sorry about the stressful situation there.
What you propose certainly makes sense. The HRF should then be uspampled to be at the same sampling rate of the simulated synaptic gating.
I am not sure I understand what you are asking about Docker. There certainly is a Docker version of TVB Maybe @liadomide or @Popa_Paula can tell you more.

Yes, you can use TVB inside a Docker.
Pls check
It should give you access to a Jupyter Notebook when you can run tvb interactively.
Let us know in case you need technical support with that.

My name is Amogh Johri, and I am a third-year student at the International Institute of Information Technology Bangalore (India) pursuing an integrated Bachelors’s and Master’s (5 years program) in Computer Science and Engineering. I am interested in your project on, “TVB: Improving personalized models of fMRI recordings including individual region-specific HRF in The Virtual Brain.” I have went through the links and code mentioned under the project idea and on the previous discussions.
I wanted help with respect to how should I go about the actual implementation of the project from this stage. Thank you :slight_smile:

Dear Amogh

thank you for your interest.
Do you have any speific question at this stage? The general idea is described in the conversation above.

Best regards


Dear Daniele,

Just to be clear. As Nina pointed out, we are taking the fMRI input and then retrieving it in rsHRF toolbox and then we use the obtained rsHRF as a corrective to the BOLD simulations (fMRI modelling) in the TVB?
Also, I was a little confused about ‘averaging it across the regions used in the TVB’ as mentioned. Does that mean we are averaging it over the voxels in the ROI?

Thank you for your patience.
Warm regards,
Amogh Johri

Dear Amogh

thanks a lot for your interest and your questions.

yes, and yes.

Sorry for the lack of clarity.


Hello. I am pursuing my Master’s Degree at Cognitive Science Lab, IIIT Hyderabad. While my focus is on Music Cognition, I have previously used TVB to model cocaine addicts brain data.

I am interested to work on the project and have gone through the links mentioned in the project idea and the discussion on the same. The project idea seems straight-forward to me in its implementation, but I just think that making rsHRF a part of TVB workflow would be a better option than just implementing a different set of functions. Also, what is the difficulty level of the project given I have a decent coding experience in Python and neuroscience.