compneuro-da / rsHRF

rsHRF: A Toolbox for Resting State HRF Deconvolution and Connectivity Analysis (MATLAB)
BSD 3-Clause "New" or "Revised" License
48 stars 15 forks source link

Parameters editing #61

Open Bea9619 opened 5 months ago

Bea9619 commented 5 months ago

Dear experts,

I installed your toolbox and I've encountered some issues setting the parameters. First, is there a way to choose the best HRF basis function based on my data? Could be a correct approach to estimate both canonical and gamma functions and then compare them? If so, how should I do it operatively?

Then, in the case of gamma function, how can I estimate the number of basis functions?

In Threshold (SD) for event detection should I change the value (i.e 1)? (considering both the options: canonical and gamma function). I read here in the solved issues that your advice is to do not change if I don't know what parameter set.

Also, what is K (local peak)? How is it calculated?

Many thanks in advance

Beatrice

danielemarinazzo commented 5 months ago

Dear Beatrice

thanks for your questions, please see some replies inline below

First, is there a way to choose the best HRF basis function based on my data?

There's no universal rule. The gamma mixtures will best reproduce a wide variety of shapes. FIR is more agnostic and data driven, and possibly more suitable if your target property is the whole hrf shape, for example with afni 3dMSS. It's also more suitable for unusual shapes, like animal or pathology.

Could be a correct approach to estimate both canonical and gamma functions and then compare them? If so, how should I do it operatively?

Unless there's a "ground truth" to compare to, then it's difficult. Indicators such as spatial or temporal variance can be useful though.

In the case of gamma function, how can I estimate the number of basis functions?

It's a choice you make, rather than an estimation. To avoid overfitting, the number should not be too high.

In Threshold (SD) for event detection should I change the value (i.e 1)? (considering both the options: canonical and gamma function)

This is not necessary, but it's indeed a parameter that you can choose to tune.

Also, what is K (local peak)? How is it calculated?

See eq. [3] of the tutorial paper, where K is defined as the range of x values in which we look for a peak.: 

y(i) is defined as peak: y(i)>y(i+x),  x=[-K: K];     

I hope this helps