DCAN-Labs / DCAN-Labs/dcan_bold_processing

movement calculation bug

オープン
#28 コメント 4 件 リアクション 0 件 担当者 2 名 @madisoth が担当を希望しています GitHub で見る
主要言語
MATLAB
スター
9
フォーク
8
PR マージ指標
30日以内にマージされた PR はありません

説明

Hi I found some issues with the code to calculate movement:

1) The notch filter was applied multiple times instead of changing the "order" of the filter. Running the filter multiple times seem to affect neighboring frequencies. Also iirnotch() makes a 2nd order filter and the filtfilt() function already doubles the order of the filter because it applies the filter forward and backward. I believe the current code assumes that iirnotch makes a filter with order = 1? The iirnotch() filter will be removed for future release and is best for removing a single peak frequency rather than a band, maybe butter() for butterworth filter is more suitable for the bandstop filter?

2) The degree-to-arc-length conversion was done once in the filtered_movement_regressors.m and once in the calc_FD_HCP.m or make_friston_regressor.m. This effectively underestimates the FD and Friston regressors because the actual arc length was multiplied by a factor of 0.87 (50 mm x pi/180 assuming a head radius of 50 mm).

3) Head radius is a user-defined input in dcan_bold_processing.py but it was not fed in as an input to the MATLAB call of dcan_signal_processing.m. The default head radius of 50 mm was used in the calculation of FD and Friston regressors. This might overestimate the FD for small brains.

4) The CIFTI grayordinates were not bandstop filtered, so it would make more sense to use the raw movement parameters to calculate the Friston regressors instead of the bandstop filtered version for nuisance regression?

![image](https://github.com/user-attachments/assets/23c925a8-045b-4387-a632-0da15abf45cd)
![image](https://github.com/user-attachments/assets/698ed79f-b3ec-4dea-af86-37f95262680c)
![image](https://github.com/user-attachments/assets/9789000e-843e-42b5-adcb-5a3eeff7dd8b)

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。