forked from spf13/spf13-vim
/
plRobustAnatFuncProcessing4rest.ini
179 lines (159 loc) · 10 KB
/
plRobustAnatFuncProcessing4rest.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
[HPC]
ncpu-per-node = 1
[anat]
run = 1 #1 means Yes, 0 means No
working-dir = anat # working directory
postfix = "" #postfix for working-dir
overwrite = 0 #0 means trying to continue from last time's trying if files in progress exist, 1 means ignore all intermediate files and start all over again
clean-intermediates = 1 #clean intermediate files after calculation
#if template-brain is set, it has highest priority
#if not, try to use template-head
#if using template-head, if brain-mask specified, use it; if not, bet it.
#if non is set, use MNI152_T1_2MM_BRAIN
template-brain = $FSL_DIR/data/standard/MNI152_T1_2mm_brain.nii.gz #specify anat template to be the normalized template
template-head = $FSL_DIR/data/standard/MNI152_T1_2mm.nii.gz #specify anat template to be the normalized template
template-brain-mask = $FSL_DIR/data/standard/MNI152_T1_2mm_brain_mask.nii.gz #specify anat template to be the normalized template
refine = 0 # use 3-stages refinement for dof 6, 9, 12
robust-affine = 1 # use robust dof 12 refinement
fnirt = 0 # run FNIRT
first = 0 # run FIRST sub-cortical segmentations
vbm = 0 #VBM/DARTEL instead of Xiaowei's robust way
vbm-config-m = "" #blank means using default VBM config, user can upload the one tested in user's computer
#Skull stripping part
brainmask = "" #user-specified brain mask, then will use this mask instead of doing skull stripping. If set ,this option will suppress the following strip option, blank means disabled
strip-cmd = "" #blank means using ROBEX as default
#strip='bet %s brain.nii -r 90 -m; ln -s brain_mask.nii brain.msk.nii;' #if not specified, use ROBEX as default, otherwise using the command line included, such as FSL bet, '3dSkullStrip' to use AFNI's 3dSkullStrip ...
#example: (has to make sure there is a brain mask named as brain.msk.nii)
#strip='bet %s brain.nii -r 90 -m; ln -s brain_mask.nii brain.msk.nii;'
lesionmask = "" # user-perfect mask/ground truth mask for lesion in T1 space
lesion-smoothing-times-min-voxelsize = "" # by default 4, which means 4 times min voxel size as FWHM smoothing for lesion mask after normalization, it can kill the ring effect for non-smooth surface of lesion
lesion-thrd-after-smoothing = 0.5 # by default 0.5, which means after smoothing, re-binarize the lesion mask by using this threshold
hybrid-clinical-tool = 0 #1 if choosing hybrid clinical toolbox by Chris Rorden
enantiomorphic = 0 #1 if choosing enantiomorphic way instead of CostFunctionMasking which is default way if lesion mask is specified
no-tar-filelist = "" #a file list containing all filters, should append my default filters before setting the list param here
do-tar = 1 #keep in mind about re-runing the script and processing func need the option to be explicitly set if it is tar balled
[func]
run = 1
working-dir = func
postfix = "" #postfix for working-dir
overwrite = 0
clean-intermediates = 1
t1dir = anat # specify anat processed directory
anat-is-t2 = 0 #by default, MPRAGE would be anat; but it can be FLAIR too
epitpl = "" #if not specified, use t1 template to generate a EPI template
dxyz = "" #if specified, will make the generated EPI template match this voxel size. Even this is specified, the resampling is still only one step to escape over-resampling or over-smoothing
fnirt = 0 #apply FNIRT/warping
vbm = 0 #1 if anat is using VBM/DARTEL to align
hybrid-clinical-tool = 0 #1 if choosing hybrid clinical toolbox by Chris Rorden
discard = 4 #discard first 4 time points
tpattern = "" # alt+z, alt+z2, alt-z, alt-z2, seq+z, seq-z, ...; 3dTshift needed parameters, blank means using default detected from DICOM header
despike = 1 #determine if using 3dDespike to despike EPI time points
despike-opt = -nomask #3dDespike options, don't try to specify -prefix option which will not has effect, the other options would be accepted, -ignore would also be suppressed by discard option
#scrubbing, generated to be a comprehensive time mask from the following thresholds
afni-censor = "" #apply AFNI censor (Euclidean Norm of 6 motion parameters) threshold 1.2mm
fd = "" #0.5 # fd=0.5 as a threshold
dvars = "" #50 #0.5% dvars threshold
upper-boxplot-as-thrd4fd-dvars = 1 #by default, FD/DVARS are set as 3/4 percentile + 1.5 x InterQuartile. User specified FD/DVARS have higher priority.
censor-pre = 1 #also scrub 1 pre-time point
censor-post = 2 #also scrub 2 post-time point
#disabled, 2017 Mar
#scrubbing2regressoring=0
#it controls if regress out temporal 0/1 mask or do hard scrubbing/censoring.
#If 1, I will make the scrubbing temporal mask (0/1, instead of real FD/DVARS/AfniEuclidean values) to be regressors,
#and ignore scrubbing.
Motion-Regression = 1
Motion-Scrubbing = 1
coregister-cmd = "" #flirt -in head.nii -dof 6 -ref refunc.nii -omat head2func.omat -out head2func.nii #input and output filename must be same as this sample cmd line
dilate-mm-func-mask = 3 #by default, dilate 3mm EPI mask which is combined by anatomical brain mask and 3dAutomask generated EPI mask (which can indicate FoV automatically), 0 means disable
bbr = 1 # 0 means turning off BBR based coregistration, 1 for normal people BBR, 2 for only local search, 3 changed cost function from default signed to local_abs of flirt
#nuiance variable regressing
regress-global-mean = 0 # regress out global mean signals within brain mask
csf = 1 #regress out csf signal
csf-prob-gt = 0.5 #default 0.5
csf-erosion = 1 #default 1 voxel for morphological erosion
csf-pca = 3 #regress out first 4 pca components of CSF, 0 means no PCA, but regress out the mean CSF signal if csf=1, -1 means no CSF regressors
wm = 1 #regress out wm signal
wm-prob-gt = 0.5 #default 0.5
wm-erosion = 1 #default 1 voxel for morphological erosion
wm-pca = 3 #regress out first 4 wm components of WM, 0 means no PCA, but regress out the mean WM signal if wm=1, -1 means no WM regressors
friston24-count = 0 #build 24 motion parameters from 6 as co-variable. Possible choices' values: 24 means 24 generated regressors, 6 means only 6 original motion parameters as regressors, 0 means no motion regressors
user-nuisance = "" #user defined nuisance regressors
percent-signal = 2 #convert EPI signals to percent change signals,
#1: scale each voxel's mean value to 100;
#2: scale global mean to 100 and add each voxel's mean to the mean scaled func
smooth = 6 # 6mm FWHM
smooth-cmd = "" #3dmerge, 3dBlurInMask, 3dBlurToFWHM, 3dBlurToFWHM -ACF , blank/default means 3dBlurToFWHM
#bandpass filtering, both must be specified. BLANK means disabled
bandlow = 0.01 #high pass filtering
bandhigh = 0.1 #low pass filtering
no-tar-filelist = "" #a file list containing all filters, should append my default filters before setting the list param here
do-tar = 1 #keep in mind about re-runing the script and processing func need the option to be explicitly set if it is tar balled
[func.conn]
run = 1
anat-dir = ""
func-dirs = ""
input = snlfunc.nii #lfunc.nii slfunc.nii nlfunc.nii , calculate the functional connectivity for these pre-processed files
working-dir = ""
mask = "" #calculate the correlation within the mask
ort_file = "" #nuiance factors
underlay = $FSL_DIR/data/standard/MNI152_T1_2mm_brain.nii.gz #Default MNI152_T1_2mm_brain
ROI-list = "" # a filename defining the ROI, each line is a ROI
no-tar-filelist = "" #a file list containing all filters, should append my default filters before setting the list param here
[func.ConnStrength]
run=0
func-dirs= ""
input = snlfunc.nii
working-dir = ""
mask= ""
thrd-P = 0.05 #P threshold for correlation
thrd-r = 0.1 #Rho correlation threshold , has priority over thrd-P
absolute-thrd-r = 1 #0/1, to threshold both tails or single tail
average-corr = 1 #calculate average correlation
average-z = 1 #calculate average z score
sum-nodes = 1 #calculate sum of nodes count, i.e., degree centrality
postfix= #postfix to distinguish output files
[func.ReHo]
run = 1
anat-dir = ""
func-dirs = ""
working-dir = ""
input = lfunc.nii nlfunc.nii #calculate ReHo for these pre-processed files, remember not including smoothed files before ReHo
nneigh = 27 #calculate 27-neighbours ReHo as 1st level analysis
mask = t1tplmsk_func_size.nii
underlay = $FSL_DIR/data/standard/MNI152_T1_2mm_brain.nii.gz
[func.ALFF]
run = 1
func-dirs = ""
working-dir = ""
input = lfunc.nii nlfunc.nii #calculate ALFF
mask = t1tplmsk_func_size.nii
underlay = $FSL_DIR/data/standard/MNI152_T1_2mm_brain.nii.gz
freq-low = 0.01
freq-high = 0.08
tr = "" #depends on user, should be automatically cared by Robust pipeline
ort_file = "" #a file including same time length, to be regressed before calculation of ALFF
anat-dir = "" #The T1/Anat preprocessed directory
vbm = "" #1/0, 1 means preprocessed by using VBM
spm-interpolation = 1 #VBM/DARTEL B-spline interpolation order when applied to native space calculated ALFF, higher order than 1 may introduce negative values (which is also denoted in SPM manual about interpolation)
coreg-ref = "" #the coregistration reference filename, which should have same space with the input specified above, and will be used to align to T1 template
affine-input2ref = "" #linear affine matrix file used to be normalized to ref space if the input is in its native space, not in ref's space
affine-input2tpl = "" #linear affine matrix file used to be normalized to tpl space if the input is in its native space, not in tpl's space
[func.FEAT]
run = 0
anat-dir = ""
func-dirs = "" #this pre-processed func-dir is implicit requirement for FEAT, which means if it is empty or not exist or not found, it will not run even if run=1. This is direct dependency
working-dir = "" #this WD has to be empty for multi-func-directories specification
input = lfunc.nii slfunc.nii nlfunc.nii snlfunc.nii
design-zip = ""
[func.SPM]
run = 0
anat-dir = ""
func-dirs = ""
input = lfunc.nii slfunc.nii nlfunc.nii snlfunc.nii
working-dir = ""
design-zip = ""
multiple-inputs = 0
no-tar-filelist = "" #a file list containing all filters, should append my default filters (song_proc4spm.sh.no_tar_filelist) before setting the list param here
[plRobustAnatFuncProcessing4rest.ini]
MI_linear2Tpl = ""
MI_nonlinear2Tpl = ""